penelitian operasional i integer linear … · metode simpleks karena adanya beberapa atau semua...

8
19/11/2013 1 PENELITIAN OPERASIONAL I (TIN 4109) Lecture 9 INTEGER LINEAR PROGRAMMING Lecture 9 (Part 1) Outline: Integer Linear Programming: Introduction References: 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. Sriram, Sankaranarayanan. Computer Science, University of Colorado, Boulder. Http/www.coursera.org. Winston, Wayne L. Operations Research: Applications and Algorithms. 3rd edition. Wadsworth Inc.1994. INTRODUCTION INTEGER PROGRAMMING Integer Linear Programming (ILP) Untuk permasalahan optimasi dengan beberapa atau semua variabel keputusan bernilai bulat (integer). Tidak dapat diselesaikan langsung dengan metode simpleks karena adanya beberapa atau semua variable yang berupa bilangan bulat melanggar salah satu asumsi metode simpleks (semua variable keputusan adalah bilangan real / tidak harus bulat). Integer Linear Programming Feasible Region: Z-Polyhedron (n dimensional) Integrality Constraint Integrality Constraint

Upload: votuyen

Post on 02-Mar-2019

228 views

Category:

Documents


5 download

TRANSCRIPT

19/11/2013

1

PENELITIAN OPERASIONAL I

(TIN 4109)

Lecture 9

INTEGER LINEAR PROGRAMMING

Lecture 9 (Part 1)

• Outline: – Integer Linear Programming: Introduction

• References: – 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.

– Sriram, Sankaranarayanan. Computer Science, University of Colorado, Boulder. Http/www.coursera.org.

– Winston, Wayne L. Operations Research: Applications and Algorithms. 3rd edition. Wadsworth Inc.1994.

INTRODUCTION

INTEGER PROGRAMMING

Integer Linear Programming (ILP)

• Untuk permasalahan optimasi dengan beberapa atau semua variabel keputusan bernilai bulat (integer).

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

Integer Linear Programming

Feasible Region: Z-Polyhedron (n dimensional)

Integrality Constraint Integrality Constraint

19/11/2013

2

Integer Linear Program

• Feasibility of ILP:

– Integer feasible solution.

• Unbounded ILP:

– Integer feasible solutions can achieve arbitrarily large values for the objective.

Linear Programming Relaxation

Q: What happens to the answer if we take away the integrality constraints?

Feasible Regions

ILP feasible region LP feasible region

Case-1: Both LP and ILP are feasible.

Opt. Solution of

ILP

Opt. Solution of

LP relaxation

Case-I

Optimal Objective of ILP ≤ Optimal solution of LP relaxation.

Opt. Solution of

ILP

Case-II: LP relaxation is feasible, ILP is infeasible.

0 1

0.3 0.5

ILP is infeasible.

LP relaxation has optimal solution: 0.5

19/11/2013

3

Case III: ILP is infeasible, LP is unbounded.

Example:

0.3 0.5

ILP is infeasible.

LP relaxation is unbounded

ILP outcomes vs. LP relaxation outcomes

Infeasible Unbounded Optimal

Infeasible Possible Impossible Impossible

Unbounded Possible Possible Possible (*)

Optimal Possible Impossible Possible

Integer Linear Program (ILP)

LP

Relaxation

(*) Impossible if ILP has

rational coefficients

(*) Impossible if ILP has

rational coefficients

Klasifikasi ILP

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 dan sisanya memiliki nilai real (boleh pecahan).

Integer linear Programming

Permasalahan yang mengharuskan variabel keputusan bernilai integer diantaranya adalah Investasi Multiperiode Budgeting Routing Knapsack Vehicle Loading Set Covering Scheduling Mixed Product Location Distribution Assignment Transportasi ….

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 yang diperlukan 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 yang harus 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

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

19/11/2013

4

Penjadwalan Pekerja (Scheduling)

• Pengelola obyek wisata pantai sedang merencanakan untuk melakukan perekrutan lifeguard. Lifeguard bertugas untuk membantu pengunjung obyek wisata yang mengalami kesulitan misalnya kecelakan yang membahayakan jiwa, menjadi korban tindak kejahatan, kehilangan barang, terpisah dari keluarga dan lain-lain. Pada hari-hari libur pantai selalu ramai dikunjungi oleh wisatawan sedangkan pada hari-hari kerja pantai realtif tidak ramai. Hal ini menyebabkan banyaknya lifeguard yang diperlukan juga berbeda.

• Lifeguard bekerja lima hari dalam seminggu

• Tentukanlah banyaknya lifeguard yang harus direkrut!

senin Selasa rabu Kamis Jumat sabtu Minggu

5 4 4 6 6 9 12

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 Rp 11.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 Budgeting

Model ILP : xi = investasi ke i , i=1,2,3,4 xi = 0 jika tidak mengambil investasi i = 1 jika mengambil investasi i Maksimasi : Z = 8x1 + 11x2 + 6x3 + 4x4

Kendala : 5x1 + 7x2 + 4x3 + 3x4 ≤ 14 xi {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 = 8x1 + 11x2 + 6x3 + 4x4

Kendala : 5x1 + 7x2 + 4x3 + 3x4 ≤ 14

x1 + x2 + x3 + x4 ≤ 2 x2 – x4 ≤ 0 x1 + x3 ≤ 1 xi {0,1} , i = 1,2,3,4

Multiperiod Capital Budgeting

• Terdapat 4 pilihan investasi yaitu investasi 1,2,3 dan 4. Dana yang dibutuhkan dan laba yang dihasilkan oleh masing-masing investasi adalah sebagai berikut:

• Dana yang dimiliki oleh perusahaan dalam tiga periode ke depan adalah 30,35 dan

40. • Investasi manakan yang seharusnya dipilih?

Dana yang dibutuhkan

Investasi A B C D

Periode 1 7 8 7 4

Periode 2 5 11 4 4

Periode 3 6 6 4 4

Total Laba 15 20 13 12

Knapsack Problem • Terdapat 7 jenis barang, setiap jenis barang mempunyai

ukuran dan keuntungan yang berbeda sbb :

• Alat angkut hanya mampu mengangkut 40 m3, barang manakah 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

19/11/2013

5

Vehicle Loading

• Alat angkut (truck) memiliki batas maksimal muatan yang bisa diangkut. Batas maksimal muatan dibatasi oleh volume dan berat. Jika truck digunakan mengangkut benda dengan berat jenis yang relatif kecil maka batas angkutan akan ditentukan oleh volume dan sebaliknya.

• Berat maksimal yang bisa diangkut oleh truck adalah 2000 kg dan volume 1000 m3

• Tentukan produk mana yang seharusnya diangkut oleh truck supaya mendapatkan laba maksimal!

Item

1 2 3 4 5 6

Laba $15,500 $14,400 $10,350 $14,525 $13,000 $9,625

Berat(kg) 500 450 300 350 400 350

Volume(m3) 125 64 144 218 280 180

Pemilihan Lokasi Pabrik • Perusahaan berencana untuk mendirikan satu atau beberapa pabrik untuk memenuhi

permintaan produk pada berbagai daerah (pasar). Terdapat 4 lokasi dimana pabrik dapat

dibangun dan terdapat 12 pasar yang harus dipenuhi oleh perusahaan. Produk akan langsung dikirim dari pabrik ke pasar.

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

• 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

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

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

Formulasi

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

Blending

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

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

• Tentukan bagaimana perbandingan(komposisi) bahan baku A, B dan C dalam cereal 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

• 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 sedikit

1,000 unit mobil

• Data produksi seperti terlihat di tabel bawah ini:

• Formulasikan permasalahan perencanaan produksi tersebut untuk

memaksimumkan profit.

Compact Midsize Large

Kebutuhan baja 1.5 ton 3 ton 5 ton

Kebutuhan jam tenaga kerja 30 jam 25 jam 40 jam

Profit $2000 $3000 $4000

Either-Or Constrains

19/11/2013

6

Model

Variabel 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

Set Covering

• Propinsi sukolilo mempunyai 6 kota

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

• Petugas tidak boleh mencapai lokasi kebakaran lebih dari 15 menit (waktu tempuh) dari stasiun pemadam 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 kantor yang harus dibangun tidak banyak(minimal) sehingga dana APBD bisa dihemat untuk dialokasikan pada 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

Set Covering

• Sebuah kota dapat dicover oleh stasiun pemadam kebakaran jika jarak

tempuhnya 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

Set Covering

Variabel 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

Pak Ali harus menugaskan stafnya untuk mengerjakan tugas-tugas pada divisinya. Pak Ali memiliki 5 staf

yaitu Rita, Tari, Rani, Nira, Tara. Divisi pak ALi harus menyelesaikan 5 tugas. Pak Ali menemui kesulitan

dalam menugaskan kelima stafnya karena Rita tidak mempunyai keahlian dalam mengerjakan tugas 2 sedangkan Tari tidak mampu mengerjakan tugas 1. Biaya menugaskan setiap staff adalah berbeda beda

karena untuk bisa menyelesaikan tugas dengan baik, staff seringkali harus mendapatkan pelatihan dan

biaya akomodasi yang berbeda beda. Biaya menugaskan setiap staff untuk mengerjakan satu tugas adalah sebagai berikut:

Bagaimanakah cara menugaskan kelima staff tersebut supaya biaya yang harus dikeluarkan 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

Assignment (Penugasan) Assignment (Penugasan)

• PT. Jaya Selalu membeli tiga buah mesin baru. Tiga mesin tersebut dapat ditempatkan pada empat lokasi yang tersedia dalam pabrik. Penempatan mesin-mesin tersebut harus mempertimbangkan workflow (aliran produk dalam proses pengerjaan) mesin-mesin tersebut dengan stasiun kerja lain. Sebagai manajer produksi anda harus menentukan penempatan mesin-mesin tersebut yang bisa meminimalkan biaya material handling. Biaya penempatan masing-masing mesin pada setiap lokasi adalah sebagai berikut.

• Mesin 2 tidak boleh ditempatkan pada lokasi 2, karena lokasi 2 dengan tangki bahan bakar dan mesin dua merupakan mesin Oven yang selalu bersuhu tinggi.

Lokasi

1 2 3 4

Assignee (Mesin)

1 13 16 12 11

2 15 - 13 20

3 5 7 10 6

19/11/2013

7

Cutting Stock(1)

PT. Kayubagus menjual kayu batangan untuk berbagai keperluan. Kayu batangan yang dijual oleh PT.Kayubagus memiliki panjang 4 meter, 6 meter dan 8 meter. Perusahaan yang memasok kayu ke PT.Kayubagus mengirimkan kayu dengan panjang 18 meter sehingga sebelum dijual kayu-kayu tersebut harus dipotong terlebih dahulu. Dalam memotong kayu-kayu tersebut PT.Kayubagus menetapkan 7 pola pemotongan sebagai berikut:

Jika misalnya PT.kayubagus menerima satu order saja dan order tersebut meminta 100 batang kayu dengan panjang 6 meter maka PT.Kayubagus akan memotong persediaan kayunya yang memiliki panjang 18 meter dengan pola pemotongan 6 sehingga tidak ada limbah sama sekali (tidak ada sisa kayu yang harus dibuang).

Pola Pemotongan 4 meter 6 meter 8 meter Sisa (limbah)

1 4 0 0 2

2 3 1 0 0

3 2 0 1 2

4 1 2 0 2

5 1 1 1 0

6 0 3 0 0

7 0 0 2 2

Cutting Stock(2)

PT.Kayubagus menerima order dari berbagai konsumen dengan panjang dan jumlah yang berbeda-beda, misalnya jika PT.kayubagus menerima order 100 batang dengan panjang 4 meter, 50 batang dengan panjang 6 meter, dan 25 batang dengan panjang 8 meter. Berapa banyaknya batangan kayu (yang memiliki panjang 18 meter) yang harus dipotong dengan pola pemotongan 1? Pola pemotongan 2? Pola pemotongan 3? dan seterusnya supaya banyaknya sisa pemotongan(limbah) sesedikit mungkin.

Pemilihan kombinasi pola pemotongan akan menentukan banyaknya sisa pemotongan(limbah kayu) yang dibuang atau dengan kata lain pola pemotongan harus dipilih sedemikian rupa sehingga sisa pemotongan (limbah kayu) menjadi sesedikit mungkin.

Distribusi • Sebuah perusahaan Air Cargo memiliki 8 pesawat tipe 1, 15 pesawat tipe

2, dan sebelas pesawat tipe 3. Pesawat tipe 1 mampu mengangkut barang seberat 45 ton, pesawat tipe 2 mampu mengangkut barang seberat 7 ton dan pesawat tipe 3 hanya mampu mengangkut 5 ton.

• Hari ini perusahaan harus mengirim barang seberat 20 ton ke kota A dan 28 ton ke kota B. Setiap pesawat hanya bisa terbang sekali dalam sehari.

• Biaya menerbangkan pesawat dari terminal (bandara) ke kota A dan B adalah sebagai berikut:

• Pesawat manakah yang harus terbang? Dan kemanakah tujuannya?

Pesawat 1 Pesawat 2 Pesawat 3

Kota A 23 15 2

Kota B 58 20 3

Latihan 1 Perusahaan A adalah perusahaan yang bergerak pada bisnis rumah makan cepat saji (fast food). Perusahaan ini berkembang dengan pesat sehingga berencana untuk membuka cabang baru di beberapa kota besar di Indonesia termasuk Surabaya. Di kota Surabaya terdapat delapan lokasi potensial yang dapat dipilih oleh perusahaan. Lokasi cabang yang dipilih harus bisa memastikan bahwa jika ada konsumen yang memesan maka pesanan harus sudah sampai ke konsumen tidak lebih dari 30 menit setelah pesanan diterima.Diperlukan 10 menit untuk menyiapkan pesanan konsumen. Perusahaan berusaha untuk membuka cabang sesedikit mungkin namun bisa mengcover semua permintaan di kota Surabaya. Berikut data lokasi dan waktu tempuh ke setiap daerah.

ke- 1 2 3 4 5 6 7

1 0 10 20 12 20 15 14

2 10 0 25 35 20 10 23

3 20 25 0 15 15 20 17

4 12 35 15 0 15 25 20

5 20 20 15 15 0 14 25

6 15 10 20 25 14 0 24

7 14 23 17 20 25 24 0

Modelkan masalah tersebut!

Latihan 2

Selain waktu tempuh, perusahaan juga memilih lokasi berdasarkan besarnya kapasitas cabang dan besarnya permintaan pada setiap lokasi. Kapasitas cabang yang bisa didirikan disetiap daerah dan permintaan adalah sebagai berikut:

Lokasi Kapasitas Permintaan

1 2000 4000

2 1500 3000

3 3000 1000

4 2000 1000

5 2500 1500

6 2000 2000

7 1000 1000 a) 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 berdasarkan

intuisi anda!

Solving ILPs

Solve LP relaxation of the ILP.

Case-1: LP relaxation solution satisfies integrality constraint.

Case-2: LP relaxation solution does not satisfy the integrality constraint.

19/11/2013

8

Dealing with Case-2

Branch and Bound Cutting Plane Method.

1 1

2 2