Makalah POT

21
KATA PENGANTAR Puji Syukur penulis ucapkan kepada Allah SWT karena berkat rahmat dan karunia-Nya, penulis dapat menyelesaikan paper dengan pokok bahasan "Pemrograman Matematis; Pemrograman Bilangan Bulat (Integer Programming)” sesuai waktu yang ditentukan. Paper ini disusun untuk memenuhi tugas mata kuliah Penelitian Operasional Tambang. Penulis juga mengucapkan terimakasih kepada dosen pengajar yang telah mengarahkan materi kepada penulis. Dan terima kasih kepada pihak-pihak yang tulisannya penulis kutip dalam pembahasan paper ini. Penulis juga menyadari bahwa dalam proses penulisan, paper ini masih belum sempurna baik materi maupun tulisannya. Oleh karena itu, penulis mohon kritik dan saran yang sifatnya membangun dalam penyempurnaan paper ini. Akhir kata, penulis berharap semoga paper ini dapat bermanfaat bagi pembaca dan komponen yang terkait dalam kependidikan untuk kemajuan ilmu pengetahuan. Padang, Maret 2015 i

description

m

Transcript of Makalah POT

Page 1: Makalah POT

KATA PENGANTAR

Puji Syukur penulis ucapkan kepada Allah SWT karena berkat rahmat dan

karunia-Nya, penulis dapat menyelesaikan paper dengan pokok bahasan

"Pemrograman Matematis; Pemrograman Bilangan Bulat (Integer

Programming)” sesuai waktu yang ditentukan. Paper ini disusun untuk memenuhi

tugas mata kuliah Penelitian Operasional Tambang.

Penulis juga mengucapkan terimakasih kepada dosen pengajar yang telah

mengarahkan materi kepada penulis. Dan terima kasih kepada pihak-pihak yang

tulisannya penulis kutip dalam pembahasan paper ini.

Penulis juga menyadari bahwa dalam proses penulisan, paper ini masih

belum sempurna baik materi maupun tulisannya. Oleh karena itu, penulis mohon

kritik dan saran yang sifatnya membangun dalam penyempurnaan paper ini.

Akhir kata, penulis berharap semoga paper ini dapat bermanfaat bagi

pembaca dan komponen yang terkait dalam kependidikan untuk kemajuan ilmu

pengetahuan.

Padang, Maret 2015

Penulis

i

Page 2: Makalah POT

DAFTAR ISI

KATA PENGANTAR.............................................................................................i

DAFTAR ISI...........................................................................................................ii

A. Pendahuluan .....................................................................................................1

B. Pembahasan.......................................................................................................2

C. Kesimpulan.....................................................................................................11

DAFTAR PUSTAKA

ii

Page 3: Makalah POT

A. PENDAHULUAN

Pertambangan merupakan rangkaian kegiatan yang dimulai dari tahapan

eksplorasi, eksploitasi, produksi dan pemasaran. Dalam setiap kegiatan

penambangan tersebut selalu didukung oleh peralatan dan perlengkapan yang

memiliki fungsi spesifik. Tidak hanya dalam bidang pertambangan, hampir dalam

setiap kegiatan seperti industri, bisnis, produksi dan lain-lain membutuhkan

peralatan dan perlengkapan.

Keberadaan peralatan dan perlengkapan tersebut dimaksudkan agar

tahapan kegiatan yang dilakukan dapat terlaksana dengan maksimal. Oleh karena

itu, perlu diketahui spesifikasi dan produktifitas alat dalam mencapai target

produksi. Kemudian parameter yang telah diketahui ini disesuaikan dengan

jumlah unitnya.

Jumlah unit pada umumnya dinyatakan dalam satuan bilangan bulat. Akan

tetapi, tidak jarang dalam perhitungannya jumlah unit yang diperoleh merupakan

bilangan pecahan atau desimal sehingga pembulatan yang dilakukan begitu saja

akan mengakibatkan solusi tidak optimal, bahkan dapat menghasilkan jawaban

yang tak layak. Salah satu solusi untuk menyelesaikan permasalahan

ketidaksesuaian tersebut adalah integer programming.

Integer programming merupakan suatu pemrograman linear dengan

tambahan persyaratan bahwa semua atau beberapa variabel bernilai bulat non

negatif, tetapi tidak perlu bahwa parameter model juga bernilai bulat. Diperlukan

perhitungan untuk membulatkan nilai-nilai pecah variabel basis yang menjamin

tetap memenuhi semua kendala dan tidak menyimpang cukup jauh dari solusi

bulat yang tepat. Karena itu, prosedur sistematis pemrograman bilangan bulat ini

diperlukan untuk mendapatkan solusi bulat optimum terhadap masalah yang

dihadapi.

1

Page 4: Makalah POT

B. PEMBAHASAN

Pemrograman matematis adalah pembuatan model matematis atas suatu

permasalahan yang sedang dihadapi dan menggunakan sebuah proses atau

prosedur yang dapat di program. Model matematis adalah sekumpulan persamaan

atau pertidaksamaan dari satu atau beberapa fungsi matematis.

Model-model pemrograman matematis yang banyak digunakan adalah:

1. Pemrograman linier (linear programming),

2. Pemrograman bilangan bulat (integer programming),

3. Pemrograman nonlinier (non linear programming),

4. Analisis jaringan (network analysis),

5. Pemrograman dinamis (dynamic programming).

Prosedur umum penyelesaian pemrograman matematis diawali dengan

mendefinisikan komponen persoalan berikut ini:

1. Decision Variables (variabel keputusan) adalah sebagai besaran yang akan di-

cari nilainya.

2. Parameters adalah ukuran-ukuran bernilai tetap dan dapat diterapkan dalam

perhitungan seperti harga, biaya, benefit dan lain-ain.

3. Constraints (batasan) adalah sebagai faktor pembatas/kendala yang perlu diru-

muskan secara matematis.

4. Objective Function (fungsi tujuan) adalah pernyataan kuantitatif dari kasus

optimasi, sebagai contoh: memaksimumkan benefit, menentukan biaya operasi

minimum.

Bentuk pemrograman matematis adalah memaksimumkan atau meminimumkan

fungsi tujuan yang memenuhi kendala, syarat atau batasan.

2

Page 5: Makalah POT

Berikut ini adalah lagkah-langkah dalam pembuatan model matematis:

1. Identifikasi Masalah

a. Masalah maksimisasi (berkaitan dengan Profit/Revenue)

b. Masalah minimisasi (berkaitan dengan dengan Cost/biaya)

2. Penentuan Variabel Masalah

a. Variabel keputusan (Variabel yang menyebabkan tujuan maksimal atau

minimal)

b. Fungsi tujuan (Objective Function) Z   maksimal atau minimal.

c. Fungsi kendala (Constraint Function) Identifikasi dan merumuskan fungsi

kendala yang ada.

Bilangan bulat adalah bilangan bukan pecahan yang terdiri dari bilangan :

a. Bulat positif (1, 2, 3, 4, 5, …)

b. Nol : 0

c. Bulat Negatif ( …,-5,-4,-3,-2,-1)

Pemrograman bilangan bulat adalah pemrograman linear dengan batas

tambahan bahwa semua atau sebagian variabelnya disyaratkan bernilai bilangan

bulat.

Pemrograman bilangan bulat (integer programming) dilakukan dengan

merumuskan masalah dari informasi yang tersedia, kemudian menterjemahkannya

kedalam bentuk model matematika. Salah satu penggunaan pemrograman

bilangan bulat dalam bidang industri yaitu masalah optimalisasi produksi, yang

membutuhkan variabel bernilai bulat.

Pemrograman linear integer (bilangan bulat) tergolong dalam

pemrograman linear. Pemrograman linear integer ini menjadi linear jika beberapa

atau semua variabel tidak dibatasi oleh integer. Program linear integer pada

intinya berkaitan dengan pemrograman-pemrograman linear di mana atau semua

variabel memiliki nilai-nilai integer.

3

Page 6: Makalah POT

Banyak persoalan praktis menginginkan nilai varibel yang bulat agar

persoalan menjadi realistik. Jumlah orang, mesin-mesin, kendaraan, untuk

persoalan praktis tidak akan realistik jika dinyatakan dengan bilangan pecahan.

Akan terasa sangat janggal jika dikatakan untuk menyelesaikan pekerjaan tertentu

diperlukan  buah mesin dan   orang. Sebaliknya jika dikatakan bahwa pekerjaan

itu diperlukan dua atau tiga buah mesin dan 5 orang akan terasa menjadi realistik

dalam lebih gampang mengambil keputusan. Pemrograman

linear integer menyelesaikan soal alokasi yang nilai variabelnya

merupakan integer (bilangan bulat). Pemrograman linear integer berhubungan

dengan fungsi yang bernilai integer. 

Penyelesaian masalah pemrograman bilangan bulat tidak dapat

diselesaikan dengan cara membulatkan nilai pecahan hasil optimal pemrograman

linearnya, karena belum ada jaminan bahwa nilai pecahan yang dibulatkan itu

akan rnemenuhi batasan-batasan yang ada. Oleh karena itu dibutuhkan suatu

metode yang dapat digunakan untuk menyelesaikan masalah pemrograman

bilangan bulat.

Permasalahan pemrograman linear bilangan bulat muncul ketika kita harus

memutuskan masalah barang yang kita perlukan berbentuk bilangan bulat, seperti

menentukan banyaknya mesin untuk suatu pabrik, banyaknya foto copy untuk

layanan di suatu kantor, banyaknya komputer di suatu ruangan untuk mengerjakan

sejumlah pekerjaan, banyaknya orang yang mengerjakan suatu proyek, dan

sebagainya. Tidaklah mungkin banyaknya mesin giling padi di suatu pabrik 2,38

buah untuk menggiling padi di suatu wilayah tertentu, keputusan akan menjadi 3

buah, atau 2 buah dengan kerja lembur, dan sebagainya. Pemrograman bilangan

bulat dapat digunakan untuk menyelesaikan masalah tersebut. Pomrograman

bilangan bulat adalah suatu metode yang digunakan untuk menyelesaikan masalah

optimassi dengan beberapa ataupun seluruh variabel keputusan harus bernilai

bulat.

1. Klasifikasi pemrograman bilangan bulat

4

Page 7: Makalah POT

Berdasarkan banyaknya variable keputusan yang bernilai bulat, integer

programming dapat dibedakan menjadi empat, yaitu:

a. Pure Integer Programming

Jika model matematis mengharapkan semua variabel keputusan berupa

bilangan integer (bulat atau nol), dinamakan Pure Integer Programming

b. Mixed Integer Programming(MIP)

Mixed Integer Programming(MIP) adalah apabila hanya sebagian variabel

keputusan yang harus bernilai integer.

c. Binary Integer Programming(BIP)

Binary Integer Programming(BIP) digunakan ketika variabel keputusan

harus berupa nilai biner (0 atau 1). Hal ini biasa digunakan saat memilih

suatau keputusan antara iya atau tidak.

d. 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).

2. Metode penyelesaian pemrograman bilangan bulat

Pemrograman bilangan bulat dapat diselesaikan dengan beberapa metode,

antara lain:

a. Metode round off (pembulatan)

b. Metode grafik

c. Metode percabangan

a. Metode round off (pembulatan)

Metode pembulatan merupakan suatu pendekatan yang praktis dan

sederhana dengan membulatkan hasil yang diperoleh dari pemrograman

linear. Pendekatan pembulatan dapat merupakan cara yang sangat efektif

untuk masalah integer programming dengan nilai solusi-solusi variabel

kepuusan yang sangat besar. Namun, sebab utama kegagalan pendekatan

5

Page 8: Makalah POT

ini adalah karena solusi yang diperoleh mungkin bukan solusi integer

optimum yang sesungguhnya.

b. Metode grafik

Masalah integer programming yang melibatkan dua variabel dapat

diselesaikan secara grafik. Keterbatasan metode grafik adalah bahwa

hanya tersedia dua sumbu koordinat, sehingga tidak bisa digunakan untuk

menyelesaikan kasus yang lebih dari dua variabel keputusan.

Berikut langkah penyelesaian pemrograman bilangan bulat dengan

metode grafis :

1) Langkah pertama dalam penyelesaian dengan metode grafik adalah

menentukan fungsi kendalanya.

2) Cari titik potong garis tersebut dengan kedua sumbu.

3) Cari titik potong garis dari fungsi kendala dengan cara eliminasi

ataupun substitusi.

c. Metode percabangan

Langkah-langkah dalam penyelesaian integer programming dengan

metode percabangan adalah sebagai berikut:

1) Selesaikan masalah linear programming tanpa pembatasan bilangan

bulat.

2) Teliti solusi optimumnya. Jika solusi variabel tujuan yang diharapkan

telah berbentuk bilangan bulat, maka solusi optimumnya telah tercapai.

Jika ada variabel tujuan yang diharapkan berbentuk bilangan bulat

ternyata tidak berbentuk bilangan bulat maka lanjut kelangkah

berikutnya.

3) Nilai solusi pecah yang layak dicabangkan kedalam sub-sub masalah.

Tujuannya adalah untuk menghilangkan solusi kontinyu yang tidak

memenuhi persyaratan bulat dalam masalah tersebut.

4) Untuk setiap sub-masalah, nilai solusi optimum kotinyu fungsi tujuan

ditetapkan sebagai batas atas. Sub-sub masalah yang memiliki batas

6

Page 9: Makalah POT

atas kurang dari kurang dari batas bawah yang ada, tidak diiku

sertakan dalam analisa selanjutnya. Jika suatu solusi bulat layak adalah

sama baik atau lebih baik dari batas atas untuk setiap sub masalah yang

dicari maka sub masalah dengan batas atas terbaik dipilih untuk

dicabangkan.

Contoh Soal :

Sebuah perusahaan mesin pengolah pangan “ESEMKA” memproduksi dua jenis

produk, yaitu drum dryer dan spraydryer. Masing-masing produk tersebut

membutuhkan dua tahapan produksi, yaitu kelistrikan dan perakitan. Waktu

kelistrikan adalah dua jam untuk drumdryer dan tiga jam untuk spraydryer.

Sedangkan waktu perakitan adalah enam jam untuk drumdryer dan lima jam

untuk spraydryer. Perusahaan tersebut hanya mempunyai waktu untuk kelistrikan

12 jam, dan waktu untuk perakitan 30 jam kerja perminggu. Drumdryer

memberikan keuntungan 70juta perunitnya, sedangkan spraydryer 60juta

perunitnya. Tentukan banyaknya drumdryer dan spraydryer yang sebaiknya

diproduksi untuk mendapatkan keuntungan yang maksimal!

Penyelesaian:

Jika X1 = drumdryer dan X2 = spraydryer, maka:

Maksimisasi profit Z = 70X1 + 60X2 (dalam juta)

Pada kondisi 2X1 + 3X2 ≤ 12

6X1 + 5X2 ≤ 30

X1, X2 ≥ 0

7

Page 10: Makalah POT

Dari hasil yang diperoleh, perusahaan akan memperoleh keuntungan maksimal

apabila memproduksi 3,75 unit drumdyer (X1) dan 1,5 unit spraydryer (X2). Akan

tetapi tentu saja unit tersebut tidak bisa dijual dalam ¾ atau ½ bagian. Oleh karena

itu integer programing (pemrograman bulat) digunakan untuk memodelkan

permasalahan yang variabelnya tidak mungkin berupa bilangan tidak bulat

tersebut.

1. Metode Pembulatan (Round Off)

Pemecahan paling mudah dari contoh soal adalah dengan menggunakan

metode pembulatan. Dari solusi optimal kita lakukan pembulatan menjadi 4

unit drumdryer dan 2 unit spraydryer. Akan tetapi pembulatan ini tidak bisa

dipilih karena koordinat yang menunjukkan opsi optimasi tersebut berada

diluar area. Oleh karena itu, untuk opsi optimasi yang paling memungkinkan

dipilih pada area (4, 1).

X1 X2 Z

0 5 300

1 4 310

2 3 320

3 2 330

4 1 340

5 0 350

8

Page 11: Makalah POT

2. Metode Percabangan

9

X1 = 3,75X2 = 1,5

Z = 352,5

Cabang ADitujukan pada Z = 70X1 + 60X2

2X1 + 3X2 ≤ 126X1 + 5X2 ≤ 30

X1 ≥ 4Dengan LP sederhana

diperoleh X1 = 4, X2 = 1,2 dan Z = 352

Cabang CDitujukan pada Z = 70X1 + 60X2

2X1 + 3X2 ≤ 126X1 + 5X2 ≤ 30

X1 ≥ 4X2 ≥ 2

(diluar area)

Cabang DDitujukan pada Z = 70X1 + 60X2

2X1 + 3X2 ≤ 126X1 + 5X2 ≤ 30

X1 ≥ 4X2 ≤ 1

Dengan LP sederhana diperoleh X1 = 4,25, X2 = 1 dan Z = 351,6

Cabang EDitujukan pada Z = 70X1 + 60X2

2X1 + 3X2 ≤ 126X1 + 5X2 ≤ 30

X1 ≥ 4X2 ≤ 1X1 ≤ 4

Dengan LP sederhana diperoleh X1 = 4, X2 = 1 dan Z = 340

Cabang FDitujukan pada Z = 70X1 +

60X2

2X1 + 3X2 ≤ 126X1 + 5X2 ≤ 30

X1 ≥ 4X2 ≤ 1X1 ≥ 5

Dengan LP sederhana diperoleh X1 = 5, X2 = 0 dan Z =

350

Cabang BDitujukan pada Z = 70X1 + 60X2

2X1 + 3X2 ≤ 126X1 + 5X2 ≤ 30

X1 ≤ 3Dengan LP sederhana diperoleh

X1 = 3, X2 = 2 dan Z = 330

Page 12: Makalah POT

Hasil dari integer programming tidak akan pernah melebihi nilai keuntungan

optimal dari solusi pemrograman linear. Pada kasus di atas keuntungan dari LP

adalah 352,5; sedangkan keuntungan dari integer programming hanya 350.

10

Page 13: Makalah POT

C. KESIMPULAN

Berdasarkan pembahasan sebelumnya, dapat disimpulkan beberapa hal:

1. Pemrograman matematis adalah pembuatan model matematis atas suatu

permasalahan yang sedang dihadapi dan menggunakan sebuah proses atau

prosedur yang dapat di program.

2. Model-model pemrograman matematis yang banyak digunakan adalah:

a. Pemrograman linier (linear programming),

b. Pemrograman bilangan bulat (integer programming),

c. Pemrograman nonlinier (non linear programming),

d. Analisis jaringan (network analysis),

e. Pemrograman dinamis (dynamic programming).

3. Prosedur umum penyelesaian pemrograman matematis diawali dengan

mendefinisikan komponen persoalan berikut :

a. Decision Variables (variabel keputusan) adalah sebagai besaran yang akan

dicari nilainya.

b. Parameters adalah ukuran-ukuran bernilai tetap dan dapat diterapkan

dalam perhitungan seperti harga, biaya, benefit dan lain-ain.

c. Constraints (batasan) adalah sebagai faktor pembatas/kendala yang perlu

dirumuskan secara matematis.

d. Objective Function (fungsi tujuan) adalah pernyataan kuantitatif dari kasus

optimasi, sebagai contoh: memaksimumkan benefit, menentukan biaya

operasi minimum.

4. Langkah-langkah dalam pembuatan model matematis:

a. Identifikasi Masalah

1) Masalah maksimisasi (berkaitan dengan Profit/Revenue)

2) Masalah minimisasi (berkaitan dengan dengan Cost/biaya)

b. Penentuan Variabel Masalah

1) Variabel keputusan (Variabel yang menyebabkan tujuan maksimal atau

minimal)

2) Fungsi tujuan (Objective Function) Z   maksimal atau minimal.

11

Page 14: Makalah POT

3) Fungsi kendala (Constraint Function) Identifikasi dan merumuskan

fungsi kendala yang ada.

5. Pemrograman bilangan bulat adalah suatu metode yang digunakan untuk

menyelesaikan masalah optimassi dengan beberapa ataupun seluruh variabel

keputusan harus bernilai bulat.

6. Integer programming dapat dibedakan menjadi empat, yaitu:

a. Pure Integer Programming

b. Mixed Integer Programming(MIP)

c. Binary Integer Programming(BIP)

e. Mixed Binary Integer Programming(MBIP)

7. Pemrograman bilangan bulat dapat diselesaikan dengan beberapa metode :

a. Metode round off (pembulatan)

b. Metode grafik

c. Metode percabangan

12