12.07.2015 Views

Dual Simplex, Cutting-Plane

Dual Simplex, Cutting-Plane

Dual Simplex, Cutting-Plane

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Lecture 10LINEAR PROGRAMMING&INTEGER PROGRAMMING


Lecture 10• Outline:– Linear Programming: <strong>Dual</strong> <strong>Simplex</strong>– Integer Programming: Introduction– Integer Programming: <strong>Cutting</strong> <strong>Plane</strong>• References:– Frederick Hillier and Gerald J. Lieberman. Introductionto Operations Research. 7th ed. The McGraw-HillCompanies, Inc, 2001.– Hamdy A. Taha. Operations Research: An Introduction.8th Edition. Prentice-Hall, Inc, 2007.


LINEAR PROGRAMMINGDUAL SIMPLEX


<strong>Dual</strong> <strong>Simplex</strong>-basic concept-‣Variation of simplex method‣<strong>Dual</strong> feasible but not primal feasible‣Mirror image of simplex method terkait dengan penentuan leaving dan enteringvariable‣Mengeliminasi penggunaan artificial variable‣Digunakan dalam sensitivity analysis‣Hanya digunakan sebagai pelengkap solusipada dual problem


<strong>Dual</strong> <strong>Simplex</strong>-contoh-Primal Problem<strong>Dual</strong> Problem


<strong>Dual</strong> <strong>Simplex</strong>-langkah pengerjaan-1. Initialization.– Convert constraints in ≥ to ≤ (by multiplying both sides by -1)– Add slack variables as needed– Find a basic solution (Optimal solution is feasible if the values are zero forbasic variables and nonnegative for non basic variables)– Go to feasiblity test.2. Feasibility test.– If all basic variables are nonnegative, then it is feasible, therefore optimal– Otherwise, go to iteration.3. Iterasia. Determine the leaving variable. Select basic variable with most negativevalue.b. Determine the entering variable. Select non basic variable with mostnegative coefficient in the leaving variable row.c. Determine the new basic solution. Solve by Gaussian elimination.d. Return to feasibility test.


● Contoh:<strong>Dual</strong> <strong>Simplex</strong>-latihan soal-Min 2x 1 + 3x 2 + 4x 3s.t.x 1 + 2x 2 + x 3 32x 1 – x 2 + 3x 3 4x 1 , x 2 , x 3 0Max -2x 1 – 3x 2 – 4x 3s.t.-x 1 – 2x 2 – x 3 + x 4 -3-2x 1 + x 2 – 3x 3 + x 5 -4x i 0


<strong>Dual</strong> <strong>Simplex</strong>-latihan soal-z x 1x 2x 3x 4x 5RHSz 1 2 3 4 0 0 0x 4 0 -1 -2 -1 1 0 -3x 5 0 -2 1 -3 0 1 -4z x 1x 2x 3x 4x 5RHSzx …x …zz x 1x 2x 3x 4x 5RHSx …x …


INTEGER PROGRAMMINGINTRODUCTION


Integer Linear Programming(ILP)• 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).


Klasifikasi ILPInteger programming dapat diklasifikasikan menjadi empat(berdasarkan banyaknya variable keputusan yang bernilai bulat):1) Pure Integer Programmingsemua variable keputusan harus bernilai bilangan bulat2) Mixed Integer Programming (MIP)tidak semua variable keputusan berupa bilangan bulat3) 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).


Integer linear ProgrammingPermasalahan yang mengharuskan variabel keputusan bernilai integerdiantaranya adalah Investasi Multiperiode Budgeting Routing Knapsack Vehicle Loading Set Covering Scheduling Mixed Product Location Distribution Assignment Transportasi ….


Penjadwalan Pekerja (Scheduling)• Pengelola obyek wisata pantai sedang merencanakan untuk melakukan perekrutanlifeguard. Lifeguard bertugas untuk membantu pengunjung obyek wisata yangmengalami kesulitan misalnya kecelakan yang membahayakan jiwa, menjadikorban tindak kejahatan, kehilangan barang, terpisah dari keluarga dan lain-lain.Pada hari-hari libur pantai selalu ramai dikunjungi oleh wisatawan sedangkan padahari-hari kerja pantai realtif tidak ramai. Hal ini menyebabkan banyaknya lifeguardyang diperlukan juga berbeda.senin Selasa rabu Kamis Jumat sabtu Minggu5 4 4 6 6 9 12• Lifeguard bekerja lima hari dalam seminggu• Tentukanlah banyaknya lifeguard yang harus direkrut!


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


Capital BudgetingModel ILP :x i = investasi ke i , i=1,2,3,4x i = 0 jika tidak mengambil investasi i= 1 jika mengambil investasi iMaksimasi :Z = 8x 1 + 11x 2 + 6x 3 + 4x 4Kendala :5x 1 + 7x 2 + 4x 3 + 3x 4 ≤ 14x i {0,1} , i = 1,2,3,4


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 = 8x 1 + 11x 2 + 6x 3 + 4x 4Kendala :5x 1 + 7x 2 + 4x 3 + 3x 4 ≤ 14x 1 + x 2 + x 3 + x 4 ≤ 2x 2 – x 4 ≤ 0x 1 + x 3 ≤ 1x i {0,1} ,i = 1,2,3,4


Multiperiod Capital Budgeting• Terdapat 4 pilihan investasi yaitu investasi 1,2,3 dan 4. Dana yangdibutuhkan dan laba yang dihasilkan oleh masing-masing investasi adalahsebagai berikut:Dana yang dibutuhkanInvestasi A B C DPeriode 1 7 8 7 4Periode 2 5 11 4 4Periode 3 6 6 4 4Total Laba 15 20 13 12• Dana yang dimiliki oleh perusahaan dalam tiga periode ke depan adalah 30,35 dan40.• Investasi manakan yang seharusnya dipilih?


Knapsack Problem• Terdapat 7 jenis barang, setiap jenis barang mempunyaiukuran dan keuntungan yang berbeda sbb :Barangke-1 2 3 4 5 6 7Ukuran 5 7 4 3 4 3 7Nilai 8 11 6 4 6 5 6• Alat angkut hanya mampu mengangkut 40 m 3 , barangmanakah yang seharusnya diangkut?


Vehicle Loading• Alat angkut (truck) memiliki batas maksimal muatan yang bisa diangkut.Batas maksimal muatan dibatasi oleh volume dan berat. Jika truckdigunakan mengangkut benda dengan berat jenis yang relatif kecil makabatas angkutan akan ditentukan oleh volume dan sebaliknya.• Berat maksimal yang bisa diangkut oleh truck adalah 2000 kg dan volume1000 m3• Tentukan produk mana yang seharusnya diangkut oleh truck supayamendapatkan laba maksimal!Item1 2 3 4 5 6Laba $15,500 $14,400 $10,350 $14,525 $13,000 $9,625Berat(kg) 500 450 300 350 400 350Volume(m3) 125 64 144 218 280 180


Pemilihan Lokasi Pabrik• Perusahaan berencana untuk mendirikan satu atau beberapa pabrik untuk memenuhipermintaan 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:A B C DBiaya Investasi 1000 1500 700 400Kapasitas 2000 4000 1000 900• Biaya untuk mengirim barang dari suatu pabrik ke pasar adalah sebagai berikut1 2 3 4 5 6 7 8 9 10 11 12A 3 4 1 2 3 5 5 2 3 4 5 5B 6 6 4 5 7 3 4 1 2 4 4 4C 4 2 3 5 4 5 4 3 6 5 4 3D 5 5 2 3 4 5 5 6 2 3 5 5• Permintaan Tentukan dimanakah 500 200 pabrik 400 harus 100 dibangun 600 dan 400 berapa 200 pabrik 250 yang 200 harus dibangun??300 220 100


DietKebutuhan : energy(2000kcal), protein(55g), calcium(800mg)ServingEnergyProteinCalciumPrice perMax servingFoodsize(kcal)(g)(mg)serving (cents)allowedOatmeal 28g 110 4 2 3 4Chicken 100g 205 32 12 24 3Eggs 2 large 160 13 54 13 2Wholemilk 237cc 160 8 285 9 8Cherry pie 170g 420 4 22 20 2Pork with beans 260g 260 14 80 19 2


Formulasi654321 1920913243:MinimisasixxxxxxPembatas:202080203040654321xxxxxx800802228554122551448133242000260420160160205110654321654321654321xxxxxxxxxxxxxxxxxx


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:GrainA B CHarga per pound 3300 4700 3800Minimum DailyRequirementProtein per pound 22 28 21 3Riboflavin per pound 16 14 25 2Phosphorus per pound 8 7 9 1Magnesium per pound 5 0 6 0.425• 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!


Either-Or Constrains• Perusahaan Dorian automotif memproduksi 3 tipe model mobil yaitu ; compact(kecil), midsize (menengah), dan large (besar).• Ada 6 ton baja dan 60,000 jam kerja tersedia• Jika suatu tipe mobil diproduksi, maka mobil itu harus diproduksi paling sedikit1,000 unit mobil• Data produksi seperti terlihat di tabel bawah ini:Compact Midsize LargeKebutuhan baja 1.5 ton 3 ton 5 tonKebutuhan jam tenaga kerja 30 jam 25 jam 40 jamProfit $2000 $3000 $4000• Formulasikan permasalahan perencanaan produksi tersebut untukmemaksimumkan profit.


ModelVariabel keputusan• xi = jumlah mobil tipe ke-i yang diproduksi• yi = 1 jika mobil tipe ke-i diproduksi, dan yi=0 jika tidakFormulasi :Maks z = 2 x1 + 3 x2 + 4 x3Subject to:x1 ≤ M y1x2 ≤ M y2x3 ≤ M y31000 – x1 ≤ M (1 – y1)1000 – x2 ≤ M (1 – y2)1000 – x3 ≤ M (1 – y3)1.5 x1 + 3 x2 + 5 x3 ≤ 600030 x1 + 25 x2 + 40 x3 ≤ 60000x1, x2, x3 ≥ 0 dan integery1, y2, y3 = 0 atau 1


Set Covering• Propinsi sukolilo mempunyai 6 kota• Pemerintah berencana untuk membangun kantor pusat pemadam kebakaran. Pada kantor pusatpemadam kebakaran akan ditempatkan kendaraan pemadam kebakaran, peralatan pemadam kebakarandan personelnya, sehingga jika ada kebakaran maka petugas akan berangkat dari kantor pusatpemadam 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.Kota ke- 1 2 3 4 5 61 0 10 20 30 30 202 10 0 25 35 20 103 20 25 0 15 30 204 30 35 15 0 15 255 30 20 30 15 0 146 20 10 20 25 14 0• Tentukan dimanakah kantor pusat pemadam kebakaran harus dibangun supaya banyaknya kantor yangharus dibangun tidak banyak(minimal) sehingga dana APBD bisa dihemat untuk dialokasikan padabidang lain?


Set Covering• Sebuah kota dapat dicover oleh stasiun pemadam kebakaran jika jaraktempuhnya tidak lebih dari 15 menit• Covering set untuk setiap kotaKotaCovering sets (15 menit)1 1,22 1,2,63 3,44 3,4,55 4,5,66 2,5,6


Variabel keputusan :x iFungsi tujuan :Set Covering= 1 jika dibangun stasiun pemadam kebakaran pada kota-i= 0 jika TIDAK dibangun stasiun pemadam kebakaran pada kota-iMinimum Z= x 1 + x 2 + x 3 + x 4 + x 5 + x 6Fungsi pembatas:x 1 +x 2 ≥ 1x 1 +x 2 + x 6 ≥ 1x 3 +x 4 ≥ 1x 3 +x 4 +x 5 ≥ 1x 4 +x 5 +x 6 ≥ 1x 2 +x 5 +x 6 ≥ 1


Assignment (Penugasan)Pak Ali harus menugaskan stafnya untuk mengerjakan tugas-tugas pada divisinya. Pak Ali memiliki 5 stafyaitu Rita, Tari, Rani, Nira, Tara. Divisi pak ALi harus menyelesaikan 5 tugas. Pak Ali menemui kesulitandalam menugaskan kelima stafnya karena Rita tidak mempunyai keahlian dalam mengerjakan tugas 2sedangkan Tari tidak mampu mengerjakan tugas 1. Biaya menugaskan setiap staff adalah berbeda bedakarena untuk bisa menyelesaikan tugas dengan baik, staff seringkali harus mendapatkan pelatihan danbiaya akomodasi yang berbeda beda. Biaya menugaskan setiap staff untuk mengerjakan satu tugasadalah sebagai berikut:TugasStaff 1 2 3 4 5Rita 4 10 6 5Tari 5 1 5 10Rani 3 5 8 4 7Nira 4 2 7 1 10Tara 8 8 2 10 5Bagaimanakah cara menugaskan kelima staff tersebut supaya biaya yang harus dikeluarkan perusahaanminimal?


Assignment (Penugasan)• PT. Jaya Selalu membeli tiga buah mesin baru. Tiga mesin tersebut dapatditempatkan pada empat lokasi yang tersedia dalam pabrik. Penempatanmesin-mesin tersebut harus mempertimbangkan workflow (aliran produkdalam proses pengerjaan) mesin-mesin tersebut dengan stasiun kerja lain.Sebagai manajer produksi anda harus menentukan penempatan mesin-mesintersebut yang bisa meminimalkan biaya material handling. Biaya penempatanmasing-masing mesin pada setiap lokasi adalah sebagai berikut.• Mesin 2 tidak boleh ditempatkan pada lokasi 2, karena lokasi 2 dengan tangkibahan bakar dan mesin dua merupakan mesin Oven yang selalu bersuhu tinggi.Assignee(Mesin)Lokasi1 2 3 41 13 16 12 112 15 - 13 203 5 7 10 6


<strong>Cutting</strong> Stock(1)PT. Kayubagus menjual kayu batangan untuk berbagai keperluan. Kayu batangan yangdijual oleh PT.Kayubagus memiliki panjang 4 meter, 6 meter dan 8 meter. Perusahaanyang memasok kayu ke PT.Kayubagus mengirimkan kayu dengan panjang 18 metersehingga sebelum dijual kayu-kayu tersebut harus dipotong terlebih dahulu. Dalammemotong kayu-kayu tersebut PT.Kayubagus menetapkan 7 pola pemotongan sebagaiberikut:Pola Pemotongan 4 meter 6 meter 8 meter Sisa (limbah)1 4 0 0 22 3 1 0 03 2 0 1 24 1 2 0 25 1 1 1 06 0 3 0 07 0 0 2 2Jika misalnya PT.kayubagus menerima satu order saja dan order tersebut meminta 100batang kayu dengan panjang 6 meter maka PT.Kayubagus akan memotong persediaankayunya yang memiliki panjang 18 meter dengan pola pemotongan 6 sehingga tidakada limbah sama sekali (tidak ada sisa kayu yang harus dibuang).


<strong>Cutting</strong> Stock(2)PT.Kayubagus menerima order dari berbagai konsumen dengan panjang danjumlah yang berbeda-beda, misalnya jika PT.kayubagus menerima order 100batang dengan panjang 4 meter, 50 batang dengan panjang 6 meter, dan 25batang dengan panjang 8 meter. Berapa banyaknya batangan kayu (yangmemiliki panjang 18 meter) yang harus dipotong dengan pola pemotongan 1?Pola pemotongan 2? Pola pemotongan 3? dan seterusnya supaya banyaknyasisa pemotongan(limbah) sesedikit mungkin.Pemilihan kombinasi pola pemotongan akan menentukan banyaknya sisapemotongan(limbah kayu) yang dibuang atau dengan kata lain polapemotongan harus dipilih sedemikian rupa sehingga sisa pemotongan (limbahkayu) menjadi sesedikit mungkin.


Distribusi• Sebuah perusahaan Air Cargo memiliki 8 pesawat tipe 1, 15 pesawat tipe2, dan sebelas pesawat tipe 3. Pesawat tipe 1 mampu mengangkut barangseberat 45 ton, pesawat tipe 2 mampu mengangkut barang seberat 7 tondan pesawat tipe 3 hanya mampu mengangkut 5 ton.• Hari ini perusahaan harus mengirim barang seberat 20 ton ke kota A dan28 ton ke kota B. Setiap pesawat hanya bisa terbang sekali dalam sehari.• Biaya menerbangkan pesawat dari terminal (bandara) ke kota A dan Badalah sebagai berikut:Pesawat 1 Pesawat 2 Pesawat 3Kota A 23 15 2Kota B 58 20 3• Pesawat manakah yang harus terbang? Dan kemanakah tujuannya?


Latihan 1Perusahaan A adalah perusahaan yang bergerak pada bisnis rumah makan cepat saji(fast food). Perusahaan ini berkembang dengan pesat sehingga berencana untukmembuka cabang baru di beberapa kota besar di Indonesia termasuk Surabaya. Dikota Surabaya terdapat delapan lokasi potensial yang dapat dipilih oleh perusahaan.Lokasi cabang yang dipilih harus bisa memastikan bahwa jika ada konsumen yangmemesan maka pesanan harus sudah sampai ke konsumen tidak lebih dari 30 menitsetelah pesanan diterima.Diperlukan 10 menit untuk menyiapkan pesanan konsumen.Perusahaan berusaha untuk membuka cabang sesedikit mungkin namun bisamengcover semua permintaan di kota Surabaya. Berikut data lokasi dan waktutempuh ke setiap daerah.ke- 1 2 3 4 5 6 71 0 10 20 12 20 15 142 10 0 25 35 20 10 233 20 25 0 15 15 20 174 12 35 15 0 15 25 205 20 20 15 15 0 14 256 15 10 20 25 14 0 247 14 23 17 20 25 24 0Modelkan masalah tersebut!


Latihan 2Selain waktu tempuh, perusahaan juga memilih lokasi berdasarkanbesarnya kapasitas cabang dan besarnya permintaan pada setiap lokasi.Kapasitas cabang yang bisa didirikan disetiap daerah dan permintaanadalah sebagai berikut: Lokasi Kapasitas Permintaan1 2000 40002 1500 30003 3000 10004 2000 10005 2500 15006 2000 20007 1000 1000a) Modifikasi model anda!b) Tentukan nilai-nilai parameter yang bisa anda coba untuk melakukan validasi!c) Tentukan solusi dari nilai-nilai parameter yang anda cobakan tadi berdasarkanintuisi anda!


INTEGER PROGRAMMINGCUTTING PLANE METHOD


ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm• Start at the continous optimum LP solution• Add special constraint (called cuts) to rendersan integer optimum extreme point• The cuts do not eliminate any original feasibleinteger points• The cuts must through at least one feasible orinfeasible integer point• Number of cuts is independent of the size ofthe problem


ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm• Contoh permasalahan ILP:


• Solusi:ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm-graphical approach-


ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm• Optimum LP tableau:-algebra approach-• Develops the cut– with assumption that all variables (includingslacks) are integer


ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm-algebra approach-• Steps to generate a cut:– Choose a source row– Factoring the source row– Generate fractional cut– Form equation of the cut• Implement the cut– Add constraint (equation) to the optimal tableu– Use dual simplex to solve the problem, if the tableauis optimal but infeasible– Start to generate another cut until all the variables areinteger.


• Sources row:ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm-algebra approach-• Factoring: x 2 -equation– factored as:• Factorial cut:• Cut’s equation form:


ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm• New tableau:-algebra approach-• Solve with dual simplex– Result:


• Start to generate another cut– Until all variables are integer• Final Result:ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm-algebra approach-


ILP: <strong>Cutting</strong>-<strong>Plane</strong> Algorithm-latihan soal-


Lecture 11 – Preparation• Materi:– Metode Branch and Bound

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!