materi 9 integer programming cutting plane alg

32
Widha Kusumaningdyah, ST., MT 2012 INTEGER PROGRAMMING

Upload: yudha-adi-kusuma

Post on 11-Aug-2015

146 views

Category:

Documents


6 download

DESCRIPTION

Materi 9 Integer Programming Cutting Plane Alg

TRANSCRIPT

Page 1: Materi 9 Integer Programming Cutting Plane Alg

Widha Kusumaningdyah, ST., MT

2012

INTEGER PROGRAMMING

Page 2: Materi 9 Integer Programming Cutting Plane Alg

INTRODUCTIONINTEGER PROGRAMMING

Page 3: Materi 9 Integer Programming Cutting Plane Alg

INTEGER PROGRAMMING (IP)

• Untuk permasalahan optimasi dengan beberapaatau semua variabel keputusan bernilaibulat(integer).

• Tidak dapat diselesaikan langsung denganmetode simpleks karena adanya beberapa atausemua variable yang berupa bilangan bulatmelanggar salah satu asumsi metode simpleks(semua variable keputusan adalah bilangan real /tidak harus bulat).

Page 4: Materi 9 Integer Programming Cutting Plane Alg

KLASIFIKASI IP

Integer programming dapat diklasifikasikan menjadi empat(berdasarkan banyaknya variable keputusan yang bernilai bulat):

1) Pure Integer Programming

semua variable keputusan harus bernilai bilangan bulat

2) Mixed Integer Programming (MIP)

tidak semua variable keputusan berupa bilangan bulat

3) Binary Integer Programming (BIP)

semua variable keputusan memiliki nilai berupa bilangan biner(0 atau 1).

4) Mixed Binary Integer Programming (MBIP)

Jika beberapa variable keputusan memiliki nilai biner, beberapa variable keputusan memiliki nilai integer dansisanya memiliki nilai real (boleh pecahan).

Page 5: Materi 9 Integer Programming Cutting Plane Alg

PROBLEM IP

Permasalahan yang mengharuskan variabel keputusan bernilai integer diantaranya adalah InvestasiMultiperiode Budgeting Routing Knapsack Vehicle Loading Set Covering SchedulingMixed Product Location Distribution Assignment Transportasi ….

Page 6: Materi 9 Integer Programming Cutting Plane Alg

CONTOH PROBLEM IP

Page 7: Materi 9 Integer Programming Cutting Plane Alg

1. PENJADWALAN PEKERJA (SCHEDULING)• Bank Swasta buka mulai jam 9 pagi sampai dengan jam 5 sore. Banyaknya

konsumen yang datang ke bank cukup bervariasi sehingga banyaknya teller yangdiperlukan pada setiap jam juga berbeda. Teller merupakan tenaga outsourcing,pihak bank bisa menentukan pada jam berapa teller tersebut harus mulai bekerja.Setiap teller bekerja selama 5 jam sehari. Tentukan banyaknya setiap teller yangharus masuk pada setiap jam supaya biaya yang dikeluarkan bank minimal !

Periode Jumlah teller yang

diperlukan

9 – 10 10

10 – 11 12

11 – 12 14

12 – 1 16

1 – 2 18

2 - 3 17

3 – 4 15

4 – 5 10

Page 8: Materi 9 Integer Programming Cutting Plane Alg

X5

X4

X3

X2

X1

9 10 11 12 13 14 15 16 17 18

Xi: banyaknya teller yang mulai masuk kerja pada jam ke i

Page 9: Materi 9 Integer Programming Cutting Plane Alg

2. CAPITAL BUDGETING

• Punya uang utk investasi Rp 14.000.000.

• Ada 4 jenis kesempatan investasi :– Investasi 1 : butuh Rp 5.000.000 , akan berkembang mjd Rp 8.000.000

– Investasi 2 : butuh Rp 7.000.000 , akan berkembang mjd Rp11.000.000

– Investasi 3 : butuh Rp 4.000.000 , akan berkembang mjd Rp 6.000.000

– Investasi 4 : butuh Rp 3.000.000 , akan berkembang mjd Rp 4.000.000

Page 10: Materi 9 Integer Programming Cutting Plane Alg

FORMULASI : Capital Budgeting

Model ILP : xi : investasi ke i , i=1,2,3,4xi = 0 jika tidak mengambil investasi i

= 1 jika mengambil investasi i

Maksimasi : Z = 8x1 + 11x2 + 6x3 + 4x4

Kendala : 5x1 + 7x2 + 4x3 + 3x4 ≤ 14xi {0,1} , i = 1,2,3,4

Page 11: Materi 9 Integer Programming Cutting Plane Alg

3. CONTOH & FORMULASI : Capital Budgeting

• Apabila ditambah kendala :– Kita hanya dapat membuat paling banyak dua investasi– Jika investasi 2 diambil, maka investasi 4 juga diambil– Jika investasi 1 diambil, maka investasi 3 tidak dapat diambil

• Model matematikanya :Maksimasi :

Z = 8x1 + 11x2 + 6x3 + 4x4

Kendala : 5x1 + 7x2 + 4x3 + 3x4 ≤ 14x1 + x2 + x3 + x4 ≤ 2 x2 – x4 ≤ 0x1 + x3 ≤ 1 xi {0,1} , i = 1,2,3,4

Page 12: Materi 9 Integer Programming Cutting Plane Alg

3. KNAPSACK PROBLEM• Terdapat 7 jenis barang, setiap jenis barang mempunyai

ukuran dan keuntungan yang berbeda sbb :

• Alat angkut hanya mampu mengangkut 40 m3, barangmanakah yang seharusnya diangkut?

Barang

ke-1 2 3 4 5 6 7

Ukuran 5 7 4 3 4 3 7

Nilai 8 11 6 4 6 5 6

Page 13: Materi 9 Integer Programming Cutting Plane Alg

4. PEMILIHAN LOKASI PABRIK• Perusahaan berencana untuk mendirikan satu atau beberapa pabrik untuk memenuhi

permintaan produk pada berbagai daerah (pasar). Terdapat 4 lokasi dimana pabrik dapatdibangun dan terdapat 12 pasar yang harus dipenuhi oleh perusahaan. Produk akan langsungdikirim dari pabrik ke pasar.

• Biaya untuk mendirikan pabrik dan kapasitas pabrik di masing-masing lokasi adalah sebagaiberikut:

• Biaya untuk mengirim barang dari suatu pabrik ke pasar adalah sebagai berikut

• Tentukan dimanakah pabrik harus dibangun dan berapa pabrik yang harus dibangun??

A B C D

Biaya Investasi 1000 1500 700 400

Kapasitas 2000 4000 1000 900

1 2 3 4 5 6 7 8 9 10 11 12

A 3 4 1 2 3 5 5 2 3 4 5 5

B 6 6 4 5 7 3 4 1 2 4 4 4

C 4 2 3 5 4 5 4 3 6 5 4 3

D 5 5 2 3 4 5 5 6 2 3 5 5

Permintaan 500 200 400 100 600 400 200 250 200 300 220 100

Page 14: Materi 9 Integer Programming Cutting Plane Alg

5. DIET PROBLEM

Food

Serving

size

Energy

(kcal)

Protein

(g)

Calcium

(mg)

Price per

serving (cents)

Max serving

allowed

Oatmeal 28g 110 4 2 3 4

Chicken 100g 205 32 12 24 3

Eggs 2 large 160 13 54 13 2

Wholemilk 237cc 160 8 285 9 8

Cherry pie 170g 420 4 22 20 2

Pork with beans 260g 260 14 80 19 2

Kebutuhan : energy(2000kcal), protein(55g), calcium(800mg)

Page 15: Materi 9 Integer Programming Cutting Plane Alg

Formulasi : DIET PROBLEM

654321 1920913243:Minimisasi xxxxxx

Pembatas:

20

20

80

20

30

40

6

5

4

3

2

1

x

x

x

x

x

x

800802228554122

55144813324

2000260420160160205110

654321

654321

654321

xxxxxx

xxxxxx

xxxxxx

Page 16: Materi 9 Integer Programming Cutting Plane Alg

6. BLENDING

• Perusahaan eaglefood akan memproduksi cereal dalam kemasan sebesar 2 pound.Cereal yang diproduksi harus memenuhi kebutuhan gizi dalam sehari. Kebutuhangizi dalam sehari dapat dilihat dalam tabel berikut ini:

• Terdapat tiga alternatif bahan baku yang dapat digunakan, bahan baku tersebutbisa dicampur untuk memproduksi cereal.

• Tentukan bagaimana perbandingan(komposisi) bahan baku A, B dan C dalamcereal sehingga biaya untuk memproduksi cereal minimum!

Grain

Minimum Daily

Requirement

A B C

Harga per pound 3300 4700 3800

Protein per pound 22 28 21 3

Riboflavin per pound 16 14 25 2

Phosphorus per pound 8 7 9 1

Magnesium per pound 5 0 6 0.425

Page 17: Materi 9 Integer Programming Cutting Plane Alg

FORMULASI : MODELVariabel keputusan

• xi = jumlah mobil tipe ke-i yang diproduksi

• yi = 1 jika mobil tipe ke-i diproduksi, dan yi=0 jika tidak

Formulasi :

Maks z = 2 x1 + 3 x2 + 4 x3

Subject to:

x1 ≤ M y1

x2 ≤ M y2

x3 ≤ M y3

1000 – x1 ≤ M (1 – y1)

1000 – x2 ≤ M (1 – y2)

1000 – x3 ≤ M (1 – y3)

1.5 x1 + 3 x2 + 5 x3 ≤ 6000

30 x1 + 25 x2 + 40 x3 ≤ 60000

x1, x2, x3 ≥ 0 dan integer

y1, y2, y3 = 0 atau 1

Page 18: Materi 9 Integer Programming Cutting Plane Alg

7. SET COVERING PROBLEM• Propinsi sukolilo mempunyai 6 kota

• Pemerintah berencana untuk membangun kantor pusat pemadam kebakaran. Pada kantor pusatpemadam kebakaran akan ditempatkan kendaraan pemadam kebakaran, peralatan pemadamkebakaran dan personelnya, sehingga jika ada kebakaran maka petugas akan berangkat dari kantorpusat pemadam kebakaran menuju lokasi kebakaran.

• Petugas tidak boleh mencapai lokasi kebakaran lebih dari 15 menit (waktu tempuh) dari stasiunpemadam kebakaran.

• Waktu yang dibutuhkan dari kota yang satu ke kota yang lain adalah sebagai berikut.

• Tentukan dimanakah kantor pusat pemadam kebakaran harus dibangun supaya banyaknya kantoryang harus dibangun tidak banyak(minimal) sehingga dana APBD bisa dihemat untuk dialokasikanpada bidang lain?

Kota ke- 1 2 3 4 5 6

1 0 10 20 30 30 20

2 10 0 25 35 20 10

3 20 25 0 15 30 20

4 30 35 15 0 15 25

5 30 20 30 15 0 14

6 20 10 20 25 14 0

Page 19: Materi 9 Integer Programming Cutting Plane Alg

7. SET COVERING PROBLEM (CONT’D)

• Sebuah kota dapat dicover oleh stasiun pemadam kebakaran jika jaraktempuhnya tidak lebih dari 15 menit

• Covering set untuk setiap kota

Kota Covering sets (15 menit)

1 1,2

2 1,2,6

3 3,4

4 3,4,5

5 4,5,6

6 2,5,6

Page 20: Materi 9 Integer Programming Cutting Plane Alg

FORMULASI SET COVERING PROBLEMVariabel keputusan :

xi = 1 jika dibangun stasiun pemadam kebakaran pada kota-i

= 0 jika TIDAK dibangun stasiun pemadam kebakaran pada kota-i

Fungsi tujuan :

Minimum Z= x1+ x2+ x3+ x4+ x5 + x6

Fungsi pembatas:

x1+x2 ≥ 1

x1+x2 + x6 ≥ 1

x3+x4 ≥ 1

x3+x4+x5 ≥ 1

x4+x5+x6 ≥ 1

x2+x5+x6 ≥ 1

Page 21: Materi 9 Integer Programming Cutting Plane Alg

Pak Ali harus menugaskan stafnya untuk mengerjakan tugas-tugas pada divisinya. Pak Alimemiliki 5 staf yaitu Rita, Tari, Rani, Nira, Tara. Divisi pak ALi harus menyelesaikan 5tugas. Pak Ali menemui kesulitan dalam menugaskan kelima stafnya karena Rita tidakmempunyai keahlian dalam mengerjakan tugas 2 sedangkan Tari tidak mampumengerjakan tugas 1. Biaya menugaskan setiap staff adalah berbeda beda karena untukbisa menyelesaikan tugas dengan baik, staff seringkali harus mendapatkan pelatihan danbiaya akomodasi yang berbeda beda. Biaya menugaskan setiap staff untuk mengerjakansatu tugas adalah sebagai berikut:

Bagaimanakah cara menugaskan kelima staff tersebut supaya biaya yang harusdikeluarkan perusahaan minimal?

Staff

Tugas

1 2 3 4 5

Rita 4 10 6 5

Tari 5 1 5 10

Rani 3 5 8 4 7

Nira 4 2 7 1 10

Tara 8 8 2 10 5

8. ASSIGNMENT (PENUGASAN)

Page 22: Materi 9 Integer Programming Cutting Plane Alg

METODE CUTTING PLANEINTEGER PROGRAMMING

Page 23: Materi 9 Integer Programming Cutting Plane Alg

IP SOLVING: ALGORITMA CUTTING-PLANE

• Temukan solusi optimal untuk Linier Problem (menggunakan prosedur standar).

• Tambahkan fungsi pembatas khusus (disebut cuts) untuk menghasilkan titik ekstrim optimal integer.

• Cuts tidak menghilangkan titik feasible integer asal.

• The cuts must through at least one feasible or infeasible integer point

• Number of cuts is independent of the size of the problem

Page 24: Materi 9 Integer Programming Cutting Plane Alg

IP SOLVING: ALGORITMA CUTTING-PLANE

• Contoh permasalahan ILP:

Page 25: Materi 9 Integer Programming Cutting Plane Alg

IP SOLVING: ALGORITMA CUTTING-PLANE

PENDEKATAN GRAFIS • Solusi:

Page 26: Materi 9 Integer Programming Cutting Plane Alg

IP SOLVING: ALGORITMA CUTTING-PLANE

PENDEKATAN ALJABAR

• Tabel Optimal LP:

• Buat cuts

– Dengan asumsi bahwa semua variable (termasuk slacks) adalah integer.

Page 27: Materi 9 Integer Programming Cutting Plane Alg

IP SOLVING: ALGORITMA CUTTING-PLANE

PENDEKATAN ALJABAR• Langkah untuk membuat cuts:

– Pilih ‘baris sumber’– Faktorkan baris sumber– Buat cuts dari faktor baris sumber – Buat persamaan dari cuts

• Selesaikan problem dari fraksi pecahan– Tambahkan fungsi pembatas pada tabel simples

optimal– Gunakan dual simplex untuk menyelesaikan

permasalahan, jika tabel optimal tidak feasible. – Buat fraksi selanjutnya hingga semua variable integer.

Page 28: Materi 9 Integer Programming Cutting Plane Alg

1. MEMBUAT CUTS

Pilih baris sumber

Faktorkan baris sumber

Faktor baris sumber – x2

Buat cuts dari faktor baris sumber

Buat persamaan dari cuts

Page 29: Materi 9 Integer Programming Cutting Plane Alg

• Table baru :

• Selesaikan dengan dual simplex

– Hasil:

2. SELESAIKAN DENGAN SIMPLEX

Page 30: Materi 9 Integer Programming Cutting Plane Alg

• Buat cut selanjutnya hingga semua variabel integer

• Final Result:

Page 31: Materi 9 Integer Programming Cutting Plane Alg

LATIHAN

Page 32: Materi 9 Integer Programming Cutting Plane Alg

• References:

– Eunike, Agustina. Materi Ajar Penelitian Operasional 1. PSTI – Universitas Brawijaya. 2012

– Frederick Hillier and Gerald J. Lieberman. Introduction to Operations Research. 7th ed. The McGraw-Hill Companies, Inc, 2001.

– Hamdy A. Taha. Operations Research: An Introduction. 8th Edition. Prentice-Hall, Inc, 2007