PENDAHULUAN
1
didapat semakin banyak. Keuntungan pun ditentukan oleh beberapa faktor,
antara lain harga penjualan dari setiap roti bakar tersebut, modal yang
dikeluarkan oleh penjual untuk membeli bahan-bahan untuk berjualan, lama
watu pengerjaan dari satu porsi roti bakar, rata-rata penjualan setiap hari dari
masing-masing rasa, serta masih banyak lagi.
Permasalahan umum yang terjadi pada saat orang sedang melakukan
transaksi jual beli atau yang dialami oleh para penjual, baik roti bakar atau
bahan lainnya adalah bagaimana menentukan dan mendapatkan keuntungan
maksimal dari barang yang dijualnya. Permaalahan tersebut seperti
permalahan pada sistem penyelesaian linier atau program linier untuk
menghitung nilai maksimal suatu fungsi tujuan. Program linier adalah suatu
cara penyelesaian masalah dengan menggunakan persamaan atau
pertidaksamaan linier yang mempuanyai banyak penyelesian dengan
memperhatikan syarat-syarat agar diperoleh hasil yang maksimum/minimum
(penyelesaian optimum). Terdapat beberapa metode yang dapat digunakan
pada program linier, seperti metode Simplex, Simplex Big M¸ Simplex Dua
Fase, Dual Simplex, dan sebagainya. Dari metode tersebut dapat digunakan
untuk menarik kesimpulan ataupun kebijakan dalam mengatasi masalah
sumber daya yang langka, dapat berupa uang, bahan mentah, kapasitas mesin,
ruangan dan teknologi. Program linier dapat dijalankan baik dengan cara
menghitung manual, membuat program menggunakan software, ataupun
langsung menghitung dengan software yang telah tersedia saat ini. Software
yang biasa digunakan untuk menyelesaikan permasalahan pada program
linier adalah C++ dan WinQSb.
Dari uraian tersebut, maka penulis melakukan penelitian terhadap
keuntungan maksimum penjualan roti bakar dengan berbagai macam rasa di
daerah Sutorejo, Surabaya menggunakan program software C++ dan
WinQSb.
2
1. Bagaimana model matematika untuk kasus penjualan roti bakar dengan
berbagai macam rasa di daerah Sutorejo?
2. Berapakah jumlah masing-masing jenis roti bakar yang harus dibuat oleh
pedagang Roti Bakar Manalagi agar keuntungannya optimal?
3. Berapakah hasil penjualan maksimum yang diperoleh pedagang Roti
Bakar Manalagi?
3
BAB II
TINJAUAN PUSTAKA
1
Siswoyo, Agus. 2012. Contoh Soal Model Matematika dan Cara Penyelesaiannya, (Online),
(http://agussiswoyo.net/teknologi/contoh-soal-model-matematika-dan-cara-penyelesaiannya
diakses pada 17 Desember 2014)
4
perusahaan dengan sumber daya yang ada. Fungsi tujuan digambarkan
dalam bentuk maksimasi (misalnya laba) atau minimasi (misal biaya)
yang biasanya dinyatakan dalam notasi Z. Kemudian juga dikenal
fungsi kendala, menggambarkan kendala-kendala yang dihadapi
perusahaan dalam kaitannya dengan pencapaian tujuan tersebut, misal
mesin, tenaga kerja, dsb. Untuk kasus program linier kendala yang
dihadapi lebih dari satu kendala.
Memaksimumkan Z, Z = 𝑐1 𝑥1 + 𝑐2 𝑥2 + … + 𝑐𝑛 𝑥𝑛
dengan syarat
5
⋮
𝑥1 , 𝑥2 , … , 𝑥𝑛 ≥ 0.
Didefinisikan
Jika terdapat sejumlah m variabel bukan nol (variabel basis), maka ada
(n-m) variabel yang dinolkan (variabel non basis).
Dari kendala fungsional dan tanda, solusi basis fisibel adalah solusi
basis yang semua variabelnya bernilai non negatif.
6
Ada beberapa persoalan program linier yang solusinya tidak
masuk akal jika pemecahannya menghasilkan bilangan pecahan
misalnya produksi mobil, produksi kapal, jumlah jembatan, jumlah
gedung, jumlah sapi, jumlah barang dagangan, dll. Dalam masalah ini
bilangan-bilangan pecahan tidak mempunyai arti. Seringkali dalam
praktek kita hanya membuat pembulatan saja dari hasil pemecahan
persoalan program linier (dalam ribuan) 374964,4 kita bulatkan saja
menjadi 375.000,- .
Didalam “assignment problem”, “travelling salesmen problem”
misalnya jawaban tidak boleh pecahan, (berapa banyaknya kota yang
harus kunjungi berapa banyaknya tugas yang harus diselesaikan).
Misalnya didalam suatu permasalahan perkantoran, dimana akan
dibentuk suatu panitia kerja yang anggota-anggotanya dapat bekerja
sama dengan baik sekali. Misalnya ada calon sebanyak n orang. Kalau
ada 2 orang calon yang tidak bisa bekerja sama keduanya tidak dipakai.
Variabel 𝑥𝑖 diperuntukkan bagi calon i
𝑥𝑖 = 1, kalau calon tidak dipakai
= 0, kalau calon dipilih/dipakai
Variabel 𝑥𝑖 hanya boleh mengambil salah satu dari nilai tersebut
yakni 0 atau 1 (“mutually exclusive”).
Persoalan untuk mencapai suatu panitia yang paling harmonis
(“the largest harmonius team) ∑𝑛𝑖=1 𝑥𝑖 = minimum dengan pembatasan
𝑥𝑖 + 𝑥𝑗 ≥ 1. Untuk semua pasangan calon i dan j yang tidak bisa
kerjasama dengan baik. Pengaruh dari setiap pembatasan selalu terjadi
bahwa paling tidak satu calon dari pasangan i dan j harus keluar (paling
tidak 𝑥𝑖 > 0 atau 𝑥𝑗 > 0).
Jelas, mudah dimengerti bahwa kalau persoalan bisa dipecahkan
sebagai persoalan integer programming, variabel-variabel yang akan
membuat fungsi tujuan menjadi minimum bukan saja mempunyai nilai
bilangan bulat(integer) akan tetapi juga terdiri dari 0 (terpilih) atau 1
(tidak terpilih).
7
i. Metode Branch and Bound
Metode Branch and Bound merupakan salah satu metode untuk
memecahkan masalah integer programming selain metode bidang
pemotongan.
Adapun algoritmanya metode Branch and Bound sebagai berikut:
1. Longgarkan ruang pemecahan dari masalah integer yang
bersangkutan dengan mengabaikan batasan integer sama sekali.
Langkah ini menkonversikan integer linier programming menjadi
linier programming.
2. Pecahkan model linier programming “yang longgar” yang dihasilkan
dan identifikasi titik optimum (kontinu) dari linier programming itu.
3. Dengan dimulai dari titik optimum kontinu, tambahkan batasan
khusus yang akan secara berulang-ulang memaksa titik ekstrim
optimum dari model linier programming yang dihasilkan untuk
bergerak ke arah batasan integer yang diinginkan.
Alasan kita memulai pencarian pemecahan optimum integer
linear programming (ILP) di pemecahan optimum linear
programming(LP) adalah bahwa terdapat kemungkinan yang lebih
besar bahwa kedua pemecahan itu akan terletak berdekatan satu sama
lain, sehingga meningkatkan kemungkinan untuk menemukan
pemecahan integer tersebut secara cepat. Inti dari prosedur yang
diajukan ini adalah pendekatan ini memecahkan masalah-masalah LP
yang berturut-turut, yang lebih dapat dikelola dari segi perhitungan
dibandingan memecahkan masalah-masalah ILP secara langsung.
Metode simpleks ataupun ILP dengan langkah manual dapat
membutuhkan waktu yang cukup lama. Jika permasalahan memiliki
variabel keputusan yang berjumlah 10 (sepuluh) atau lebih, maka hal
itu akan menjadi masalah. Maka dari itu, penyelesaian permasalahan
program linear dengan metode simpleks ataupun akan lebih mudah
dengan bantuan program komputer, baik itu menggunakan program
yang bernama WinQSB maupun dengan menggunakan program bahasa
C++/Java/C dan sebagainya.
8
2.2 C++
C++ merupakan bahasa pemrograman yang memiliki sifat
Pemrograman berorientasi objek, Untuk menyelesaikan masalah, C++
melakukan langkah pertama dengan menjelaskan class- class yang
merupakan anak class yang dibuat sebelumnya sebagai abstraksi dari object-
object fisik, class tersebut berisi keadaan object, anggota-anggotanya dan
kemampuan dari objectnya, Setelah beberapa class dibuat kemudian masalah
dipecahkan dengan class. Bahasa C adalah bahasa pemrograman prosedural
yang memungkinkan kita untuk membuat prosedur dalam menyelesaikan
suatu masalah. Bahasa pemrograman C++ adalah bahasa pemrograman
yang berorientasi pada objek.
9
BAB III
METODOLOGI PENELITIAN
10
b) Observasi
Observasi adalah pengamatan dan pencatatan secara teliti dan
sistematis atas gejala-gejala (fenomena) yang sedang diteliti. Metode ini
dilakukan tanpa dilakukan tanpa perlu memberikan pertanyaan kepada
responden.
c) Studi Pustaka
Studi pustaka yaitu dengan pengumpulan data yang dilakukan
dengan membaca buku-buku literatur, internet, dan penelitian terdahulu
yang berkaitan dengan penelitian yang sedang dilakukan.
d) Dokumentasi
Dokumentasi yaitu suatu teknik pengumpulan data dengan
menghimpun dan menganalisis dokumen-dokumen, baik dokumen
tertulis, gambar maupun elektronik.
11
BAB IV
HASIL PENGAMATAN
Berikut data rasa yang dijual beserta bahan yang diperlukan dari hasil pengamatan
di Roti Bakar Manalagi:
No Nama Varian Rasa Bahan yang diperlukan untuk 1 porsi
1 buah roti, 3 sdm mentega, 2 sdm selai
1. Nanas + Strawberry nanas, 2 sdm selai strawberry dan 2 sdm
susu kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
2. Nanas + Melon nanas, 2 sdm selai melon dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
3. Nanas + Blueberry nanas, 2 sdm selai blueberry dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
4. Nanas + Keju nanas, 2 sdm selai keju dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai keju,
5. Keju + Durian 2 sdm selai durian dan 2 sdm susu kental
manis.
1 buah roti, 3 sdm mentega, 2 sdm selai keju,
6. Keju + Milo 2 sdm selai milo dan 2 sdm susu kental
manis.
1 buah roti, 3 sdm mentega, 2 sdm selai keju,
7. Keju + Cokelat 2 sdm selai cokelat dan 2 sdm susu kental
manis.
1 buah roti, 3 sdm mentega, 2 sdm selai keju,
8. Keju + Kacang 2 sdm selai kacang dan 2 sdm susu kental
manis.
12
1 buah roti, 3 sdm mentega, 2 sdm selai
9. Melon + Pisang melon, 2 sdm selai pisang dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
10. Melon + Cokelat melon, 2 sdm selai cokelat dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
11. Melon + Vanilla melon, 2 sdm selai vanilla dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
12. Melon + Keju melon, 2 sdm selai keju dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
13. Vanilla + Keju vanilla, 2 sdm selai keju dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
14. Vanilla + Milo vanilla, 2 sdm selai milo dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
15. Vanilla + Cokelat vanilla, 2 sdm selai cokelat dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
16. Vanilla + Pisang vanilla, 2 sdm selai pisang dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
17. Cokelat + Milo cokelat, 2 sdm selai milo dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
18. Cokelat + Strawberry cokelat, 2 sdm selai strawberry dan 2 sdm
susu kental manis.
13
1 buah roti, 3 sdm mentega, 2 sdm selai
19. Cokelat + Kacang cokelat, 2 sdm selai kacang dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
20. Cokelat + Pisang cokelat, 2 sdm selai pisang dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
21. Milo + Pisang milo, 2 sdm selai pisang dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
22. Milo + Durian milo, 2 sdm selai durian dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
23. Milo + Kacang milo, 2 sdm selai kacang dan 2 sdm susu
kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
24. Blueberry + Strawberry blueberry, 2 sdm selai strawberry dan 2 sdm
susu kental manis.
1 buah roti, 3 sdm mentega, 2 sdm selai
25. Blueberry + Pisang blueberry, 2 sdm selai pisang dan 2 sdm susu
kental manis.
14
1
8. Selai Cokelat kg
2
1
9. Selai Durian kg
2
1
10. Selai Keju kg
2
1
11. Selai Milo kg
2
1
12. Selai Kacang kg
2
1
13. Selai Vanilla kg
2
1
14. Selai Pisang kg
2
15
22. Milo + Durian Rp. 10.000,00
23. Milo + Kacang Rp. 9.000,00
24. Blueberry + Strawberry Rp. 8.000,00
25. Blueberry + Pisang Rp. 8.000,00
16
BAB V
PEMBAHASAN
17
Fungsi Tujuan :
Maksimalkan Z = 8000𝑋1 + 8000𝑋2 + 8000𝑋3 + 12000𝑋4 + 12000𝑋5 +
10000𝑋6 + 12000𝑋7 + 12000𝑋8 + 8000𝑋9 + 9000𝑋10 + 10000𝑋11 +
10000𝑋12 + 12000𝑋13 + 10000𝑋14 + 10000𝑋15 + 10000𝑋16 +
9000𝑋17 + 9000𝑋18 + 9000𝑋19 + 9000𝑋20 + 8000𝑋21 + 10000𝑋22 +
9000𝑋23 + 8000𝑋24 + 8000𝑋25
Fungsi Kendala :
1. Kendala takaran roti dalam penjualan sehari (dalam gram)
200𝑋1 + 200𝑋2 + 200𝑋3 + 200𝑋4 + 200𝑋5 + 200𝑋6 + 200𝑋7
+ 200𝑋8 + 200𝑋9 + 200𝑋10 + 200𝑋11 + 200𝑋12
+ 200𝑋13 + 200𝑋14 + 200𝑋15 + 200𝑋16 + 200𝑋17
+ 200𝑋18 + 200𝑋19 + 200𝑋20 + 200𝑋21 + 200𝑋22
+ 200𝑋23 + 200𝑋24 + 200𝑋25 ≤ 6000
3. Kendala takaran susu kental manis dalam penjualan sehari (dalam gram)
60𝑋1 + 60𝑋2 + 60𝑋3 + 60𝑋4 + 60𝑋5 + 60𝑋7 + 60𝑋8 + 60𝑋9 +
60𝑋10 + 60𝑋12 + 60𝑋14 + 60𝑋15 1 + 60𝑋16 + 60𝑋17 + 60𝑋18 +
60𝑋19 + 60𝑋20 + 60𝑋21 + 60𝑋22 + 60𝑋23 + 60𝑋24 + 60𝑋25 ≤ 375
18
Penyelesaian optimal dari model matematika tersebut, dapat dicari
menggunakan program C++ dan WinQSb. Langkah-langkah untuk mencari
penyelesaian optimal menggunakan program C++ sebagai berikut:
1. Proses input data
19
2. Solusi optimal
20
Langkah-langkah untuk mencari penyelesaian optimal menggunakan
program WinQSb sebagai berikut:
21
BAB VI
PENUTUP
6.1 Kesimpulan
6.2 Saran
1. Harus lebih teliti dalam pemograman C++ karena bilangan harus integer
2. Bandingkan dengan hasil WinQSB
22
DAFTAR PUSTAKA
23
LAMPIRAN
24