Program Linier menggunakan Solver LibreOffice Calc


Sahabat, kalau gambarnya terlalu kecil, klik saja ya biar lebih jelas..

Masalah Giapetto1



Perusahaan kayu Giapetto memproduksi dua jenis mainan kayu, yaitu mainan tentara dan mainan kereta. Satu tentara dijual dengan harga \$27 dan membutuhkan biaya material sebesar \$10. Setiap tentara juga membutuhkan biaya tambahan sebesar \$14. Satu mainan kereta dijual dengan harga \$21 dan membutuhkan biaya material sebesar \$9. Seperti halnya tentara, kereta juga membutuhkan biaya tambahan, yaitu sebesar \$10. Dalam pembuatannya, kedua mainan ini melalui dua tahap pengerjaan, yaitu carpentry dan finishing. Satu tentara membutuhkan 2 jam finishing dan 1 jam carpentry. Satu kereta memerlukan 1 jam finishing dan 1 jam carpentry. Setiap pekannya Giapetto dapat memperoleh semua bahan – bahan yang dibutuhkan, tapi jam kerja yang tersedia untuk finishing adalah 100 jam dan untuk carpentry 80 jam. Permintaan dari pelanggan untuk mainan kereta itu tidak dibatasi. Tapi paling banyak mainan tentara yang dibeli tiap pekannya adalah hanya 40 mainan saja. Giapetto ingin memaksimal-kan keuntungan setiap pekannya. Bagaimana formulasi program liniernya? Bagaimana solusinya?

Penyelesaian:
Program linier dari masalah Giapetto adalah
max $z=3x_1+2x_2$ (kenapa seperti ini?)
Kendala
$2x_1+x_2\le 100$
$x_1+x_2\le 80$
$x_1 \le 40$
$x_1,x_2 \ge 0$

Tulis dulu permasalahannya di LibreOffice Calc seperti berikut ini.


Lalu isi z max (sel F10) dengan perkalian antara baris max dan baris banyaknya. Baris max ini adalah pengali (koefisien) dari fungsi tujuannya, sedangkan baris banyaknya berisi nilai $x_1$ dan $x_2$ yang mungkin. Jadi F10 = B9 * B10 + C9 * C10.
Karena nilai $x_1$ dan $x_2$ masih nol maka nilai z sekarang masih nol.
Selain dengan cara itu, perkalian dan penjumlahan semacam ini bisa dilakukan dengan perintah SUMPRODUCT. Tinggal kita blok saja yang mau kita kali dan tambahkan. Cara menulis rumus dari sel F10 adalah =sumproduct(, kemudian array1 diisi dengan cara blok B9 sampai C9, lalu tulis tanda koma ( , ), setelah itu blok lagi B10 sampai C10 sebagai array2, lalu tulis tanda kurung tutup( ) ). Jadi F10 =sumproduct(b9:c9,b10,c10).


Selanjutnya pada masing-masing kendala, kita tuliskan hasil perkalian dari tiap baris di kendala dengan banyaknya. Kendala pertama $2x_1+x_2$. Berarti D13 = B13 * B10 + C13 * C10. Dengan cara yang sama bisa kita gunakan fungsi SUMPRODUCT di sini. D13 = sumproduct(b13:c13,b10:c10). Boleh juga dibalik menjadi = sumproduct(b10:c10,b13:c13).

Silakan lakukan hal yang sama untuk kendala2 dan kendala3.


Persiapan sudah selesai. Tinggal kita mulai jalankan. Sekarang kita pilih menu Tools, Solver. Kalau ada peringatan menginstal Java, abaikan saja ya.

Selanjutnya setelah jendela Solver muncul, kita isi sel target dengan sel z max, yaitu F10. Untuk mengisinya, kita bisa ketikkan langsung dengan keyboard, atau kita pilih dengan mouse selnya langsung pada worksheet. Optimize kita set Maximum, By changing cells kita isi sel $x_1$ dan $x_2$ pada baris banyaknya, yaitu B10:C10 (pada gambar berikut ini yang berwarna kuning). Drag sel B10 sampai C10, maka otomatis pada kotakan textbox By changing cells akan terisi $B$10:$C$10. Untuk Limiting Conditions, kita isi dengan kolom kendalanya, yaitu D13 sampai D15 sebagai cell reference, operatornya tetap saja, tidak perlu diubah, yaitu <=. Lalu Value kita isi dengan ruas kanan dari kendala-kendalanya, yaitu F13 sampai F15.

Langkah terakhir adalah klik tombol solve. Kalau tidak ada masalah yang berarti, maka kita akan segera (kurang dari 2 detik) akan mendapatkan hasilnya. MasyaAllah tabarakallah.. (semua ini adalah atas kehendak Allah, Maha Suci Allah) Canggih!

Selanjutnya keep result.
Dari baris banyaknya, yaitu sel B10 dan C10, kita dapatkan $x_1=20$ dan $x_2=60$ sebagai solusi dari program linier tersebut dengan nilai $z_{max}=180$. Silakan bereksplorasi untuk masalah minimum ataupun kendala yang lainnya ( >=, = ). Semoga bermanfaat, Sahabat.

Assalaamu'alaikum wa rahmatullaah wa barakaatuh..
(Semoga keselamatan, rahmat Allah, dan keberkahan tercurah untuk kalian)


1Masalah ini diambil dari buku Operations Research karya Winston pada halaman 49.

File PDFnya bisa diunduh di sini:
https://drive.google.com/open?id=0B139JQzD_9i_ZzJBbHpVem5ocGc

Komentar

Paling banyak dilihat

Allah tujuanku

Yakin dan ikhlas dalam berdoa

Awal Mula Tahun Baru