operasi riset program linier plat
TRANSCRIPT
OPERASI RISET PROGRAM LINIER
Faigiziduhu Bu'ulölö
2017
USU Press
Art Design, Publishing & Printing Gedung F, Pusat Sistem Informasi (PSI) Kampus USU Jl. Universitas No. 9 Medan 20155, Indonesia Telp. 061-8213737; Fax 061-8213737 usupress.usu.ac.id © USU Press 2017 Cetakan pertama 2016 Cetakan kedua 2017 Hak cipta dilindungi oleh undang-undang; dilarang memperbanyak menyalin, merekam sebagian atau seluruh bagian buku ini dalam bahasa atau bentuk apapun tanpa izin tertulis dari penerbit. ISBN 979 458 852 0
Perpustakaan Nasional: Katalog Dalam Terbitan (KDT)
Operasi riset program linier / Faigiziduhu Bu'ulölö--cet.kedua -- Medan: USU Press 2017. vii, 198 p. ; ilus.: 14 cm Bibliografi ISBN: 979-458-852-0
iii
KATA PENGANTAR
Operasi Riset (Operations Reseacrh) merupakan ilmu yang telah
lahir sejak masa Perang Dunia I dan telah dikenal dan
berkembang di Indonesia sejak tahun 1950an yang lalu. Dunia
usaha baik pemerintah maupun swasta, perusahaan, industri
bahkan pribadi telah menggunakan Operasi Riset ini dalam
menentukan rencana program mencapai hasil yang optimal.
Berdasarkan pengamatan dan pengalaman penulis ketika
memberikan kuliah Operasi Riset atau Program Linier, ditambah
dengan memperhatikan informasi, saran, dan keluhan-keluhan
para mahasiswa selama kuliah, penulis berusaha untuk
menguraikan materi buku ini sesederhana mungkin. Buku Operasi
Riset ini disusun untuk membantu para mahasiswa yang berminat
menyelesaikan Tugas Akhir dalam bidang Operasi Riset dengan
menggunakan studi kasus dalam menentukan hasil yang optimal.
Materi kuliah Operasi Riset (Program Linier) ini
membahas tentang persoalan pengalokasian suatu aktivitas-
aktivitas untuk memperoleh suatu hasil yang optimum di mana
pengertian linier memberi arti bahwa baik fungsi tujuan maupun
kendalanya merupakan fungsi linier, termasuk memodelkan
metode simpleks, teori dualitas dan analisis sensitivitas serta type
khusus program linier seperti persoalan transportasi dan model
penugasan.
Penulis menyadari bahwa buku ini masih banyak
kekurangan-kekurangan serta kesalahan-kesalahan yang pada
dasarnya disebabkan oleh keterbatasan kemampuan penyusun
dalam bidang Operasi Riset serta kelalaian sebagai manusia biasa.
Karena itu penulis sangat berterima kasih atas saran dan kritik
iv
para pembaca, agar dapat melengkapi dan memperbaiki isi buku
ini pada penerbitan selanjutnya.
Penulis berterima kasih kepada semua pihak yang telah
memberikan kontribusi dalam pembuatan buku Operasi Riset ini
dan juga kepada USU Press yang telah bersedia menerbitkan
buku ini dengan segala kekurangannya, sehingga dapat digunakan
oleh mahasiswa. Semoga buku ini dapat menambah khasanah
literatur ilmu pengetahuan, khususnya dalam bidang Operasi
Riset dan bermanfaat kepada para peminat matematika terapan.
Penulis
v
D A F T A R I S I
Halaman KATA PENGANTAR iii DAFTAR ISI v BAB I PENDAHULUAN 1 1.1 Gambaran Umum Perkembangan Operasi Riset 1 1.2 Pengertian Operasi Riset 2 1.3 Model-model dalam Operasi Riset 3 1.4 Langkah-langkah pada Operasi Riset 4 1.5 Sifat-sifat Operasi Riset 6 BAB II PROGRAM LINIER 7 2.1 Latar Belakang 7 2.2 Karakteristik-karakteristik dalam Program Linier 9 2.2.1 Variabel Keputusan 9 2.2.2 Fungsi Tujuan 9 2.2.3 Pembatas 10 2.2.4 Pembatas Tanda 11 2.3 Model Program Linier 12 2.3.1 Asumsi dalam Model Program Linier 14 2.4 Contoh Persoalan Program Linier 15 2.4.1 Masalah Perencanaan Regional 16 2.4.2 Masalah Kombinasi Produk 18 2.5 Soal-soal 21 BAB III TEKNIK PENYELESAIAN MODEL PROGRAM LINIER 23 3.1 Penyelesaian Program Linier dengan Metode
Grafik 23
3.2 Kasus Khusus Model Program Linier 31 3.3 Penyelesaian dengan Metode Simpleks 33 3.3.1 Penyelesaian Titik Extreem 36 3.3.2 Bentuk Standar Problema Program Linier 47 3.3.2.1 Penyelesaian Basis 47
vi
3.3.2.2 Penyelesaian Basis Fisibel 47 3.3.2.3 Penyelesaian Fisibel Titik Ekstrem 47 3.4 Algoritma Simpleks untuk Persoalan Maksimasi 48 3.5 Menyelesaikan Persoalan Program Linier dengan
Memakai Slack dan Surplus Variabel 60
3.6 Penyelesaian dengan Artificial Variable 62 3.6.1 Teknik M (Metode Penalty) 67 3.6.2 Teknik Dua Fase 70 3.7 Soal-soal 78 BAB IV DUALITAS DAN ANALISIS SENSITIVITAS 81 4.1 Pengertian 81 4.2 Teori Dualitas 82 4.3 Hubungan antara Primal dengan Dual 83 4.4 Metode Dual Simpleks 85 4.5 Sifat-sifat Khusus yang Penting Primal-Dual
Simpleks 93
4.6 Analisis Sensitivitas 96 4.6.1 Perubahan Koefisien Fungsi Tujuan untuk
Variabel Nonbasis 99
4.6.2 Perubahan Koefisien Fungsi Tujuan untuk Variabel Basis
101
4.6.3 Perubahan pada Ruas Kanan Pembatas 102 4.6.4 Perubahan Kolom Variabel Nonbasis 104 4.6.5 Penambahan Suatu Aktivitas 105 4.6.6 Penambahan Pembatas Baru 106 4.7 Soal-soal 110 BAB V PROGRAM INTEGER 114 5.1 Pengertian Program Integer 114 5.2 Metode Pemecahan Program Integer 115 5.3 Metode Gomory (Cutting Plane Algorithm) 116 5.3.1
5.3.2 Algoritma Bidang Pemotong Algoritma Fraksional
116 116
5.4 Kekuatan Pemotongan Fraksional 122 5.5 Soal-soal 128
vii
BAB VI MODEL TRANSPORTASI 130 6.1 Definisi dan Aplikasi Model Transportasi 131 6.2 Pemecahan Masalah Transportasi 133 6.2.1 Metode Pojok Kiri Atas-Pojok Kanan
Bawah (Northwest Corner Rule/NCR) 134
6.2.2 Metode Biaya Terendah (Least Cost) 135 6.2.3 Metode Pendekatan Vogel (Vogel’s
ApproximationMethod /VAM) 136
6.2.4 Metode Stepping Stone 140 6.2.5 Metode Multiplier (Metode Potensial) 149 6.3 Soal-soal 157 6.4 Model Penugasan (Assigment Model) 158 Daftar Pustaka 166 Soal Tambahan 167 Satuan Acara Pengajaran 195
Operasi Riset Program Linier
1
BAB I
PENDAHULUAN 1.1 Gambaran Umum Perkembangan Operasi Riset
Pada masa Perang Dunia II, Operasi Riset merupakan
hasil studi para ilmuan angkatan perang Inggris untuk
mempelajari persoalan-persoalan strategi dan taktik sehubungan
dengan serangan-serangan yang dilancarkan musuh terhadap
negaranya. Perkembangan selanjutnya, membuat angkatan
perang Amerika untuk melakukan aktivitas serupa, dengan
membentuk team yang sama yang disebut team Operations
Research. Operasi Riset ini telah banyak digunakan dalam
menyelesaikan masalah-masalah manajemen untuk
meningkatkan produktivitas atau efisiensi dalam suatu aktivitas,
namun tidak jarang perusahaan-perusahaan yang melaporkan
kegagalan dalam menerapkan Operasi Riset karena berbagai
macam alasan.
Dengan perkembangan ilmu pengetahuan dan teknologi
yang sudah memasuki abad dua puluh satu, sangat dipengaruhi
oleh pengembangan matematika dalam bidang Operasi Riset
telah merajai berbagai bidang ilmu, baik teknologi maupun ilmu-
ilmu sosial. Misalnya Operasi Riset telah digunakan dalam hampir
seluruh kegiatan, baik di perguruan tinggi, konsultan, rumah
sakit, perencanaan kota, maupun pada kegiatan-kegiatan bisnis.
Operasi Riset Program Linier
2
1.2 Pengertian Operasi Riset
Secara harafiah kata operations dapat didefinisikan
sebagai tindakan-tindakan yang diterapkan pada beberapa
masalah atau hipotesa. Sementara kata research suatu proses
yang teroganisasi dalam mencari kebenaran akan masalah atau
hipotesa tadi (Sri Mulyono, 2002).
Definisi 1.1
Operasi Riset berkaitan dengan menentukan pilihan
secara ilmiah bagaimana merancang dan menjalankan sistem
manusia-mesin secara baik memuaskan para pengguna, biasanya
membutuhkan alokasi sumber daya yang langka (Operations
Reseacrh Society of America).
Definisi 1.2
Operasi Riset adalah seni memberikan jawaban buruk
terhadap masalah-masalah, yang sedang dihadapi jika tidak,
memiliki jawaban yang lebih buruk (T.L. Saaty).
Definisi lain menekankan pada perkembangan antar
disiplin sifat-sifat Operasi Riset, seperti yang dikatakan oleh
Hamdi A. Taha 1976.
Jadi Operasi Riset didefinisikan secara luas, dapat
diartikan sebagai penerapan metode-metode, teknik-teknik, dan
alat-alat terhadap masalah-masalah yang menyangkut operasi-
operasi dalam sistem-sistem, sedemikian rupa sehingga
memberikan penyelesaian optimal. Operasi Riset sebagai suatu
teknik pemecahan masalah, penelitian operasional, harus
dipandang sebagai suatu ilmu dan seni. Aspek ilmu terletak pada
penggunaan teknik-teknik dan algoritma-algoritma matematika
untuk memecahkan persoalan yang dihadapi, sedangkan sebagai
Operasi Riset Program Linier
3
seni ialah karena keberhasilan dari penyelesaian model
matematika ini sangat tergantung pada kreativitas dan
kemampuan seseorang sebagai penganalisis dalam pengambilan
keputusan (the art of balancing).
1.3 Model-model dalam Operasi Riset
Model adalah suatu abstraksi realitas atau gambaran
ideal dari suatu situasi nyata sehingga sifatnya yang kompleks
dapat disederhanakan. Beberapa jenis model yang biasa
digunakan adalah:
a. Model-model Iconic (Phisik)
Model ini penggambaran fisik dari suatu sistem, baik
dalam bentuk yang ideal maupun dalam skala yang
berbeda. Contoh: foto, blueprint, peta, globe.
b. Model-model Analog (Diagramatis)
Model-model ini dapat menggambarkan situasi-situasi
yang dinamis dan lebih banyak digunakan daripada
model-model iconic karena sifatnya yang dapat dijadikan
analogi bagi karakteristik sesuatu yang sedang dipelajari.
Contoh: kurva distribusi frekuensi pada statistik, kurva
supply demand, flow chart.
c. Model-model Simbolis (Matematis)
Model-model yang menggambarkan keadaan dunia nyata
melalui simbol-simbol matematis.
Pada awalnya model matematis/simbolis ini berupa
model-model abstrak yang dibentuk di dalam pikiran
seseorang, kemudian disusun menjadi model-model
simbolis, seperti gambar, simbol atau rumus matematis.
Model matematis yang paling banyak digunakan dalam
Operasi Riset Program Linier
4
penelitian operasional adalah model matematis yang
berupa persamaan atau pertidaksamaan.
d. Model-model Simulasi
Yaitu model-model yang meniru tingkah laku sistem
dengan mempelajari interaksi komponen-komponennya.
Tidak memerlukan fungsi-fungsi matematis secara
eksplisit untuk merelasikan variabel-variabel sistem,
maka model-model simulasi ini dapat digunakan untuk
memecahkan sistem kompleks yang tidak dapat
diselesaikan secara matematis. Akan tetapi model-model
ini tidak dapat memberikan penyelesaian yang benar-
benar optimal.
e. Model-model Heuristik
Sering formulasi matematis bersifat sangat kompleks
untuk dapat memberikan suatu penyelesaian yang pasti.
Ada kemungkinan penyelesaian optimal diperoleh, tetapi
memerlukan proses perhitungan yang sangat panjang
dan tidak praktis. Untuk mengatasi kasus seperti ini
digunakan metode heuristik yaitu suatu metode
pencarian yang didasarkan atas intuisi atau aturan-aturan
empiris untuk memperoleh penyelesaian yang lebih baik
daripada penyelesaian yang telah dicapai sebelumnya.
Dalam penelitian operasional, model yang paling banyak
digunakan adalah model matematis/simbolis, sementara model
simulasi dan model heuristik juga digunakan pada kasus tertentu.
1.4 Langkah-langkah pada Operasi Riset
Pola dasar penerapan Operasi Riset terhadap suatu
masalah dapat dipisahkan menjadi beberapa langkah.
Operasi Riset Program Linier
5
Langkah – 1: Merumuskan/Memformulasikan Persoalan
Definisikan suatu persoalan yang tepat untuk
dirumuskan spesifikasi tujuan organisasi dan
bagian-bagiannya dalam suatu sistem yang
bersangkutan. Perumusan masalah selalu
dihadapkan pada tiga hal yaitu:
a. Variabel keputusan yaitu unsur-unsur dalam
persoalan yang dapat dikendalikan.
b. Tujuan (objective). Penentuan tujuan
persoalan akan membantu pengambil
keputusan untuk fokus pada variabel
keputusan yang dioptimalkan.
c. Kendala (constraints) adalah pembatas-
pembatas terhadap alternatif tindakan yang
tersedia.
Langkah – 2: Mengobservasi Sistem
Kumpulan data untuk mengestimasi besaran
parameter yang berpengaruh terhadap persoalan
yang dihadapi dalam mengevaluasi model
matematis.
Langkah – 3: Pembentukan Model Matematis
Model matematis ini merupakan formulasi
analitik dari fungsi tujuan dan fungsi kendala dari
problema dalam variabel keputusan.
Langkah – 4: Mengevaluasi Model dan Menggunakannya untuk
Prediksi
Pada langkah ini, dipastikan bahwa apakah model
matematis yang diformulasikan pada langkah 3
sudah menggambarkan keadaan nyata secara
akurat dan tepat.
Operasi Riset Program Linier
6
Langkah – 5: Mencari Penyelesaian Masalah
Pada langkah ini menerjemahkan penyelesaian
masalah atau hasil perhitungan yang mudah
dimengerti dengan menggunakan teknik-teknik
penyelesaian terhadap model.
1.5 Sifat-sifat Operasi Riset
Teknik-teknik Operasi Riset saat ini telah berkembang
begitu luas, sehingga dirasa tak perlu untuk menyebutkan satu
demi satu semua teknik Operasi Riset. Namun beberapa masalah
Operasi Riset yang didefinisikan dengan baik dan diterima umum
dapat digolongkan sebagai berikut:
a. Masalah Alokasi
b. Masalah Pertarungan
c. Masalah Antri
d. Masalah Jaringan
e. Masalah Persediaan
f. Masalah Penugasan
g. Masalah Program Dinamik
h. Masalah Pengambilan Keputusan
i. Masalah Peramalan
j. Masalah Kebijakan
Masalah-masalah di atas, saat ini telah banyak tersedia
paket program yang dapat digunakan, baik yang berkaitan
dengan perangkat keras (hardware) maupun perangkat lunaknya
(software) untuk memecahkan persoalan dalam berbagai bidang,
termasuk persoalan-persoalan Operasi Riset. Ukuran persoalan
yang dapat diselesaikan dengan perangkat lunak seperti program
Lindo, QSB+, dan lainnya akan tergantung pada kemampuan
memori komputer yang dimiliki atau yang digunakan.
Operasi Riset Program Linier
7
BAB II
PROGRAM LINIER
2.1 Latar Belakang
Perkembangan ilmu pengetahuan dan teknologi akhir-
akhir ini sangat dipengaruhi oleh pengembangan matematika.
Pengembangan dan penerapan matematika telah merajai
bebagai bidang ilmu. Program Linier (PL) adalah merupakan salah
satu alat yang digunakan sebagai dasar, baik dalam pemakaian
maupun pembuatan alat dalam Operations Research.
Program Linier yang diterjemahkan dari Linear
Programming adalah suatu cara untuk menyelesaikan persoalan
pengalokasian sumber-sumber yang tersedia dan terbatas di
antara beberapa aktivitas yang bersaing, dengan cara yang
terbaik yang mungkin dilakukan. Misalnya pengalokasian fasilitas
produksi, sumber daya nasional untuk kebutuhan domestik,
penjadwalan produksi, pengambilan keputusan dan lain-lain.
Program Linier menggunakan model matematis untuk
menjelaskan persoalan yang dihadapinya. Sifat “ linier” di sini
memberi arti bahwa seluruh fungsi matematis dalam model ini
merupakan fungsi yang linier (variabel berderajat satu),
sedangkan kata ‘program” merupakan sinonim untuk
perencanaan. Jadi proses penelitian operasional umumnya
membentuk suatu model dan kemudian mengembangkan model
Operasi Riset Program Linier
8
itu. Model tersebut merupakan suatu sistem yang mana elemen-
elemennya saling pengaruh-mempengaruhi satu sama lain,
misalnya suatu firma, jaringan transport, pertempuran,
pengalokasian, antrian dan lain-lain. Dengan demikian, program
linier (PL) adalah perencanaan aktivitas-aktivitas untuk
memperoleh suatu hasil yang optimum (maksimum atau
minimum), yaitu suatu hasil yang mencapai tujuan terbaik di
antara seluruh alternatif yang fisibel (layak).
Contoh 2.1
Sebuah perusahaan yang memproduksi dua jenis mainan
anak yang terbuat dari kayu yang berupa boneka dan kereta api,
dengan harga Rp 31.000 / lusin yang setiap lusinnya memerlukan
biaya bahan (material) sebesar Rp 11.000 serta biaya (upah)
tenaga kerja sebesar Rp 15.000. Kereta api yang dijual seharga Rp
22.000 / lusin memerlukan biaya material sebesar Rp 10.000 dan
biaya tenaga kerja Rp 11.000. Untuk membuat boneka dan kereta
api ini diperlukan dua kelompok tenaga kerja, yaitu tukang kayu
dan tukang poles. Setiap lusin boneka memerlukan waktu 2,5 jam
untuk pemolesan dan 1,2 jam untuk pengerjaan kayu, sedangkan
setiap lusin kereta api memerlukan 1,2 jam waktu pemolesan dan
1,5 jam pekerjaan kayu. Diharapkan setiap minggunya
perusahaan ini dapat memenuhi seluruh material yang
diperlukan, jam kerja yang tersedia hanya 100 jam untuk
pemolesan dan 80 jam untuk pekerjaan kayu. Dari pengamatan
pasar selama ini dapat dikatakan bahwa kebutuhan akan kereta
api tidak terbatas, tetapi untuk boneka tidak lebih dari 42 lusin
yang terjual setiap minggunya. Bagaimanakah formulasi dari
persoalan di atas untuk mengetahui berapa lusin jenis mainan
Operasi Riset Program Linier
9
masing-masing yang harus dibuat setiap minggu agar diperoleh
keuntungan yang maksimum?
2.2 Karakteristik-karakteristik dalam Program Linier
Dalam membangun model dari formulasi contoh (2.1) di
atas akan digunakan karakteristik-karakteristik yang biasa
digunakan dalam persoalan program linier yaitu:
2.2.1 Variabel Keputusan
Variabel keputusan adalah variabel yang menguraikan
secara lengkap keputusan-keputusan yang akan dibuat. Dalam
persoalan ini, variabel keputusan akan menentukan berapa
banyak boneka dan kereta api masing-masing harus dibuat setiap
minggu.
Misalnya: = banyaknya boneka yang dibuat setiap
minggu
= banyaknya kereta api yang dibuat
setiap minggu
2.2.2 Fungsi Tujuan
Fungsi tujuan merupakan fungsi dari variabel keputusan
yang akan dimaksimumkan (untuk pendapatan atau keuntungan)
atau diminimumkan (untuk ongkos atau biaya). Pada persoalan
ini akan dimaksimumkan (pendapatan/minggu) – (ongkos
material/minggu) – (ongkos tenaga kerja/minggu).
Pendapatan dan ongkos-ongkos ini dapat diekspresikan
dengan menggunakan variabel keputusan dan sebagai
berikut:
Pendapatan /minggu = 31
Ongkos material/minggu =
Operasi Riset Program Linier
10
Ongkos tenaga kerja/minggu =
Jadi problema yang akan dimaksimumkan adalah:
(31 ) – ( ) – ( ) =
Untuk menyatakan nilai fungsi tujuan akan digunakan variabel
dan dapat ditulis:
Maksimumkan
2.2.3 Pembatas
Pembatas merupakan kendala yang dihadapi, sehingga
kita tidak bisa menentukan harga-harga variabel keputusan
secara sembarang. Pada contoh (2.1) di atas ada 3 pembatas yang
dihadapi yaitu:
Pembatas 1 : Setiap minggu tidak lebih dari 100 jam
waktu pemolesan yang dapat digunakan.
Pembatas 2 : Setiap minggu tidak lebih dari 80 jam
waktu pengerjaan kayu yang dapat
digunakan.
Pembatas 3 : Karena permintaan yang tebatas, maka
tidak lebih dari 42 lusin boneka yang
dapat dibuat setiap minggu. Jumlah
material yang dapat digunakan
diasumsikan tidak terbatas sehingga tidak
ada pembatas untuk hal ini.
Dengan menggunakan simbol matematika dapat ditulis:
Pembatas 1 : 2,5 + 1,2 100
Pembatas 2 : 1,2 + 1,5 80
Pembatas 3 : 42
Operasi Riset Program Linier
11
2.2.4 Pembatas Tanda
Pembatas tanda adalah yang menjelaskan apakah
variabel keputusannya diasumsikan hanya berharga nonnegatif
atau variabel keputusan boleh berharga positif, boleh juga
negatif. Pada contoh (2.1) di atas kedua variabel keputusan harus
berharga nonnegatif, sehingga harus dinyatakan bahwa: 0
dan 0
Dengan demikian, formulasi lengkap dari persoalan
contoh (2.1) adalah:
Maksimumkan Z = 5 +
Kendala
2,5 + 1,2 100
1,2 + 1,5 80
42
0 , 0
Dari contoh di atas dapat disimpulkan bahwa persoalan
program linier adalah merupakan persoalan optimasi yang harus
dilakukan hal-hal sebagai berikut:
1. Berusaha memaksimumkan atau meminimumkan
suatu fungsi linier dari variabel-variabel keputusan
yang disebut fungsi tujuan.
2. Harga/besaran dari variabel-variabel keputusan itu
harus memenuhi suatu himpunan pembatas. Setiap
pembatas harus merupakan persamaan linier atau
pertidaksamaan linier.
3. Suatu pembatas tanda dikaitkan dengan setiap
variabel.
Operasi Riset Program Linier
12
Definisi :
Suatu fungsi dari
adalah fungsi linier jika dan hanya jika untuk sejumlah
himpunan konstanta berlaku:
=
Misalkan, adalah fungsi linier dari
, tetapi bukan fungsi linier dari
.
Untuk setiap fungsi linier dan setiap
bilangan b, ketidaksamaan
adalah ketidaksamaan linier. Sebagai contoh,
adalah ketidaksamaan linier,
sedangkan bukanlah ketidaksamaan linier.
2.3 Model Program Linier
Pada contoh pembuatan permainan anak oleh sebuah
perusahaan di atas terdapat tiga buah sumber terbatas yang
harus dialokasikan di antara dua aktivitas. Sekarang, bagaimana
jika ada sejumlah (katakan m buah) sumber yang terbatas yang
harus dialokasikan di antara sejumlah (katakan n buah) aktivitas
yang bersaing.
Untuk menjelaskan persoalan ini terlebih dahulu kita beri
nomor (1, 2, … , m) untuk sumber dan nomor (1, 2, … , n) untuk
aktivitas. Tentukan xj sebagai tingkat aktivitas j (sebuah variabel
keputusan) untuk j = 1, 2, … , n; dan tentukan Z sebagai ukuran
keefektifan yang terpilih. Koefisien cj adalah koefisien keuntungan
(ongkos) per unit. Kemudian tentukan sebagai banyaknya
sumber i yang dapat digunakan dalam pengalokasian (i = 1, 2, … ,
m). Akhirnya, definisikan sebagai banyaknya sumber i yang
Operasi Riset Program Linier
13
digunakan/dikonsumsikan oleh masing-masing unit aktivitas j
(untuk i = 1, 2, … , m dan j = 1, 2, … , n). Seluruh data di atas
digambarkan pada Tabel 2.1
Tabel 2.1 Model Program Linier
Aktivitas /
Sumber
Penggunaan sumber / unit
Banyaknya
sumber
yang dapat
digunakan
1 2 ... N
1 ...
2 ...
. . . ... . .
. . . ... . .
M ...
z/Unit
Tingkat
...
...
Dengan demikian, sekarang kita dapat membuat
formulasi model matematis dari persoalan pengalokasian
sumber-sumber pada aktivitas-aktivitas sebagai berikut :
Maksimumkan:
Kendala:
. . . .
. . . .
. . . .
dan
Ketiga formulasi di atas kita namakan persamaan (2.1).
Operasi Riset Program Linier
14
Persamaan (2.1) di atas disebut sebagai bentuk standar dari
problema program linier, dan formulasi matematisnya memenuhi
model dari persoalan program linier.
Istilah yang sering digunakan dalam model program linier
adalah sebagai berikut:
1. Fungsi yang dimaksimumkan/diminimumkan, yaitu
disebut sebagai fungsi
tujuan (objective function)
2. Pembatas-pembatas atau konstrain
3. Sebanyak m buah konstrain pertama sering disebut
sebagai konstrain fungsional atau pembatas teknologi
4. Pembatas disebut sebagai konstrain nonnegatif
5. Variabel adalah variabel keputusan
6. Konstanta-konstanta adalah parameter-
parameter model
2.3.1 Asumsi dalam Model Program Linier
Dalam menggunakan model program linier, diperlukan
beberapa asumsi sebagai berikut:
(i) Asumsi kesebandingan (proposionality)
* Kontribusi setiap variabel keputusan terhadap
fungsi tujuan adalah sebanding dengan nilai
variabel keputusan.
* Kontribusi suatu variabel keputusan terhadap
ruas kiri dari setiap pembatas juga sebanding
dengan nilai variabel keputusan.
(ii) Asumsi penambahan (additivity)
* Kontribusi setiap variabel keputusan terhadap
fungsi tujuan tidak bergantung pada nilai dari
variabel keputusan yang lain.
Operasi Riset Program Linier
15
* Kontribusi suatu variabel keputusan terhadap
ruas kiri dari setiap pembatas bersifat tidak
bergantung pada nilai dari variabel keputusan
yang lain.
(iii) Asumsi pembagian (divisibility)
Dalam persoalan program linier, variabel
keputusan boleh diasumsikan berupa bilangan
pecahan.
(iv) Asumsi kepastian (certainty)
Setiap parameter, yaitu koefisien fungsi tujuan,
ruas kanan, dan koefisien teknologi, diasumsikan
dapat diketahui secara pasti.
Untuk melengkapi gambaran/pemahaman tentang
persoalan-persoalan yang dapat diselesaikan dengan program
linier, berikut ini diberikan contoh:
2.4 Contoh Persoalan Program Linier
Masalah keputusan yang sering dihadapi analis adalah
menggambarkan alokasi sumber daya yang terbatas untuk
dioptimumkan. Sumber daya bisa berupa uang, tenaga kerja,
bahan mentah, modal, kapasitas mesin, waktu, ruangan atau
teknologi. Pemahaman tentang persoalan-persoalan tersebut
dapat diselesaikan dengan program linier.
Setelah masalah diindentifikasi, tujuan ditetapkan, langkah
selanjutnya adalah formulasi model matematik yang meliputi tiga
tahap seperti berikut:
1. Menentukan variabel keputusan dan dinyatakan dalam
simbol matematik
2. Menentukan model baik fungsi tujuan maupun fungsi
kendala terhadap sejumlah kegiatan yang harus dilakukan
Operasi Riset Program Linier
16
dan bahwa untuk itu ada beberapa alternatif cara yang
dapat ditempuh
3. Membuat model penyelesaian bilamana berlaku keadaan
di mana daya dan dana yang tersedia untuk melakukan
kegiatan itu tersedianya dalam jumlah yang terbatas
2.4.1 Masalah Perencanaan Regional
Untuk mensukseskan pelaksanaan transmigrasi di
Propinsi P, pemerintah merencanakan membuka lahan baru yang
dapat juga menjadi tempat tinggal sekaligus dijadikan areal
pertanian. Ada 3 daerah yang dapat dibuka, yaitu daerah 1, 2,
dan 3. Hasil pertanian masing-masing daerah tersebut dibatasi
oleh dua hal, yaitu luas tanah yang dapat dialiri air dari irigasi dan
banyaknya air yang dapat dialokasikan untuk irigasi tersebut,
seperti diperlihatkan pada Tabel 2.2
Tabel 2.2 Luas Tanah dan Irigasi Daerah
Daerah Luas Tanah (hektar) Alokasi Air Irigasi (m3)
1
2
3
400
600
300
600
800
375
Jenis tanaman yang dapat dikembangkan di daerah-daerah ini
meliputi Tebu, Kapas dan Gandum yang satu sama lain berbeda
dalam hal hasil bersih perhektar serta jumlah air yang
dikonsumsinya. Di samping itu, ada ketentuan dari materi
pertanian mengenai jatah lahan maksimum yang dapat
digunakan untuk masing-masing jenis tanaman. Data ketiga hal di
atas diperlihatkan pada Tabel 2.3
Operasi Riset Program Linier
17
Tabel 2.3 Lahan, Konsumsi Air dan Hasil dari Tanaman
Jenis
Tanaman
Jatah Lahan
Maksimum
(hektar)
Konsumsi Air
(m3)
Hasil Bersih
(ribu rp/ha)
Tebu
Kapas
Gandum
600
500
325
3
2
1
400
300
100
Kepala daerah di Propinsi P itu sepakat untuk menggunakan luas
tanah yang dapat dialiri sebagai lahan pertanian dengan proporsi
yang sama, tetapi jenis tanamannya boleh merupakan kombinasi
dari ketiganya. Yang menjadi persoalan di sini ialah menetapkan
berapa hektar tanah yang harus disediakan untuk masing-masing
jenis tanaman pada masing-masing daerah sehingga diperoleh
hasil bersih maksimum tanpa melanggar pembatas-pembatas
yang telah ditetapkan.
Tabel 2.4 Alokasi Daerah Tanaman untuk Variabel Keputusan
Daerah
Tanaman
Alokasi (hektar)
1 2 3
Tebu
Kapas
Gandum
Untuk menyelesaikan persoalan pada Tabel 2.3 di atas, kita
tetapkan sebagai variabel keputusan yang menyatakan luas
tanah untuk masing-masing jenis tanaman pada masing-masing
daerah (j = 1, 2, … , 9), seperti diperlihatkan pada Tabel 2.4
Karena yang terjadi ukuran keefektifannya adalah hasil
bersih total, maka model program linier untuk persoalan ini
adalah:
Operasi Riset Program Linier
18
Maksimumkan:
berdasarkan kendala-kendala:
1. Luas tanah :
2. Air :
3. Jatah lahan :
4. Persetujuan kepala daerah :
atau
atau
atau
5. Pembatas nonnegatif :
2.4.2 Masalah Kombinasi Produk
Seorang pengusaha perabot ingin menentukan berapa
banyak Meja, Kursi, Bangku dan Lemari yang harus dibuat untuk
mengoptimumkan pemakaian alat-alat yang dapat dipakai.
Produksi ini menggunakan dua jenis harga kayu yang berbeda.
Kayu yang berukuran 1.500 kaki dan kayu yang berukuran 1.000
kaki. Pengusaha perabot memiliki 800 jam kerja untuk
mengerjakan seluruhnya. Pesanan yang diterimanya untuk
Operasi Riset Program Linier
19
membuat sekurang-kurangnya 40 meja, 130 kursi, 30 bangku dan
tidak lebih dari 10 lemari. Untuk pembuatan setiap meja, kursi,
bangku dan lemari serta keuntungan total yang diperoleh
pengusaha perabot dapat kita lihat pada Tabel 2.5
di mana: A = ukuran kayu 1.500 kaki
B = ukuran kayu 1.000 kaki
Tabel 2.5 Data Produksi Perabot
Ukuran Kayu Produksi
Meja Kursi Bangku Lemari
A 5 1 9 12
B 2 3 4 1
Jumlah Jam Kerja 3 2 5 10
Keuntungan/Unit 12 5 15 10
Diasumsikan bahwa keuntungan yang diharapkan oleh pengusaha
berbanding langsung dengan jumlah produksi.
Sekarang ditentukan jenis produksi untuk mendapatkan
keuntungan maksimum yang diharapkan. Untuk membuat model
matematiknya dimodelkan sebagai berikut:
Diandaikan pengusaha membuat:
meja
kursi
bangku dan
lemari
Fungsi tujuan adalah untuk mendapatkan harga-harga variabel
keputusan dan yang memaksimumkan keuntungan,
tanpa melebihi waktu yang tersedia. Maka keuntungan
maksimum yang diperoleh pengusaha adalah:
Operasi Riset Program Linier
20
(2.2)
Karena di dalam fungsi tujuan tidak terdapat bilangan konstan,
maka bilangan yang 1.580 di persamaan (2.2) dapat diabaikan
dalam problema ini, akan tetapi jika dalam perhitungan
keuntungan nantinya maka bilangan tersebut ikut dalam
perhitungan. Jadi problema maksimum dari persamaan (2.2) di
atas dapat ditulis: (2.3)
Dengan kendalanya: Ukuran kayu A:
Ukuran kayu B:
Jam Kerja:
(2.4)
Karena pengusaha tidak akan menghasilkan jumlah yang negatif,
jadi hanya menghasilkan adanya produksi atau tanpa
menghasilkannya, maka dapat dibuat pembatasan kedua:
(2.5)
Dari contoh kombinasi produk persamaan (2.3), (2.4), dan (2.5) di
atas disebut suatu problema program linier karena pembatas-
pembatas (2.4) dan (2.5) serta fungsi Z yang akan
memaksimumkan harga mencakup relasi-relasi linier di antara
variabel-variabelnya. Dengan demikian persamaan (2.3) disebut
fungsi tujuan, sedang persamaan (2.4) dan (2.5) disebut
pembatas atau syarat. Umumnya penggabungan pembatasan
linier dari problema program linier dengan mamaksimumkan atau
meminimumkan fungsi tujuan.
Operasi Riset Program Linier
21
2.5 Soal-soal
1. Sebuah perusahaan membuat 2 jenis produk P dan Q. Harga
jual produk P adalah Rp. 24.000,00/unit sedangkan produk Q
dijual dengan harga Rp. 30.000,00/unit. Untuk membuat 1
unit produk P dibutuhkan waktu 2 jam-orang (man-hour),
sedangkan untuk 1 unit produk Q diperlukan 5 jam-orang.
Jumlah pekerja adalah 2 orang, masing-masing bekerja 8
jam/hari termasuk istrahat selama 30 menit. Untuk 1 unit
produk P dibutuhkan 6 kg bahan baku, sedangkan setiap unit
produk Q membutuhkan 4 kg bahan baku. Harga per kg
bahan baku adalah Rp. 1.600,00. Upah pekerja per jam-
orang adalah Rp. 7.500,00. Jika bahan baku yang tersedia per
hari 50 kg, bagaimanakah formulasi persoalan ini agar
diperoleh kontribusi keuntungan maksimum?
2. Maksimumkan:
Kendala:
3. Perusahaan mobil memproduksi dua macam mobil yaitu
mobil penumpang (sedan) dan mobil truk. Di dalam
perusahaan itu terdapat empat bagian, yaitu bagian
pembuatan badan mobil, bagian pembuatan mesin,
assembly sedan dan truk. Kapasitas perbulan dari
perusahaan itu ditunjukkan pada tabel berikut:
Operasi Riset Program Linier
22
Bagian Perusahaan Jumlah yang dapat dihasilkan
Mobil Sedan Mobil Truk
1. Pembuatan badan mobil 250 buah 350 buah
2. Pembuatan mesin 333 buah 167 buah
3. Assembly mobil sedan 225 buah ---
4. Assembly mobil truk --- 150 buah
Jika perusahaan itu memperoleh keuntungan Rp. 300.000,00 dari
setiap mobil sedan dan Rp. 250.000,00 setiap mobil truk, maka
tentukan keuntungan maksimum dengan menggunakan metode
grafik.
Operasi Riset Program Linier
23
BAB III
TEKNIK PENYELESAIAN MODEL PROGRAM LINIER
Untuk menyelesaikan Problema Program Linier pada
umumnya sering dipergunakan hanya terdiri dari 2 (dua) cara
yaitu: “Metode Grafik” dan “Metode Simpleks”. Bentuk problema
program linier yang hanya memuat 2 (dua) atau 3 (tiga) variabel
dapat diselesaikan dengan metode grafik. Akan tetapi untuk lebih
dari 3 (tiga) variabel cara yang paling baik dan praktis pada saat
ini yaitu dengan apa yang dinamakan Metode Simpleks. Cara
yang demikian akan dibicarakan kemudian dalam bab ini.
3.1 Penyelesaian Program Linier dengan Metode Grafik
Sembarang daerah penyelesaian yang memenuhi
pembatasan non-negatifitasnya disebut penyelesaian layak
(feasible). Dan setiap penyelesaian layak yang mengoptimisasi
fungsi tujuan disebut feasible optimality. Biasanya akan terdapat
sejumlah penyelesaian feasible yang infinite, tetapi harus
ditentukan salah satu yang mengoptimisasi fungsi tujuan.
Dalam penyelesaian secara representasi geometris
(grafik) maupun penyelesaian dengan metode simpleks selalu
dimulai dengan titik extreem, kemudian bergerak selangkah demi
Operasi Riset Program Linier
24
selangkah untuk memperoleh titik extreem yang optimal dalam
suatu daerah penyelesaian feasible, titik soal apakah
problemanya suatu problema maksimasi atau minimasi.
Contoh 3.1 (Persoalan Maksimisasi)
Sebuah perusahaan memproduksikan dua macam barang
yaitu kelambu dan keper. Memproses produk ini dapat dilihat
pada Tabel 3.1
Tabel 3.1 Data Produksi Kelambu dan Keper
Type Mesin Produksi
Waktu/hari Kelambu Keper
Sizing 2 3 6 x 60
Weaving 1 4 4 x 60
Penjualan/Unit 60 90
Untuk menuliskan model matematisnya, maka diandaikan:
adalah produksi kelambu
adalah produksi keper
Dengan demikian dapat ditulis fungsi tujuan dan fungsi
kendalanya sebagai berikut:
Maksimumkan:
Kendala: (a)
(b)
(c)
Mula-mula akan ditentukan himpunan bilangan-bilangan
yang merupakan penyelesaian layak. Kita introdusir
sistem koordinat dan diingat bahwa setiap himpunan
bilangan-bilangan merupakan suatu titik dalam bidang
Semua titik-titik ini terletak pada bagian kanan sumbu
Operasi Riset Program Linier
25
yang mempunyai . Juga semua titik yang terletak pada
atau di atas sumbu mempunyai . Akibatnya bahwa
setiap titik-titik yang terletak dikuadran pertama mempunyai
, jadi memenuhi pembatasan nonnegatifitas.
Untuk menentukan himpunan titik-titik dikuadran
pertama yang memenuhi kendala, lebih dahulu diinterpretasi
secara geometris ketidaksamaan (a). Bila tanda sama dengan
berlaku ditulis , di mana merupakan garis lurus
dan setiap titik yang terletak pada garis lurus tersebut memenuhi
persamaan. Dengan cara yang sama semua titik-titik yang
memenuhi pertidaksamaan (b) dan pembatasan non-negatifitas
adalah titik dalam kuadran pertama pada atau di atas garis
.
Gambar 3.1
O
A
C
B D
E
1
2
120
60
180 240
2 1 + 3 2 = 360
1 + 4 2 = 240
1
2
3
Operasi Riset Program Linier
26
Pertama digambarkan garis dengan persamaan
yaitu titik A ke titik B. Bentuk ketidaksamaan (b) menyatakan
daerah yang berlaku di bawah garis AB. Demikian juga halnya
dengan ketidaksamaan (a) yang berlaku di
bawah garis CD. Selain itu ketidaksamaan (c) berarti bahwa
daerah yang berlaku hanyalah di kuadran pertama. Dan daerah
himpunan penyelesaian yang layak adalah segi-4 OAED.
Selanjutnya fungsi tujuan (fungsi keuntungan) atau fungsi
objektif harus dicari harga Z yang terbesar. Karena itu semua Z
yang akan dicari harus mempunyai koefisien arah yang sama
dengan Z. Artinya harus sejajar dengan Z serta mempunyai titik
sekutu dengan daerah penyelesaian layak sebab pada Z
harus memenuhi pertidaksamaan (a), (b), dan (c). Akan dicari
harga Z terbesar sesuai dengan persyaratan di atas, maka Z yang
demikian adalah Z yang paling ke kanan letaknya serta
mempunyai titik sekutu dengan OAED yaitu garis . Garis ini
memotong daerah penyelesaian di titik E tepat pada titik
perpotongan garis AB dan CD, titik ini adalah E(144, 24) dan titik
perpotongan sumbu dengan garis CD, titik ini adalah D(180, 0).
Artinya produksi kelambu dibuat sebanyak 144 meter/hari dan
produksi keper dibuat sebanyak 24 meter/hari. Atau juga
produksinya dibuat hanya produksi kelambu tanpa produksi
keper yaitu sebanyak 180 meter/hari. Jadi penjualan yang
diperoleh optimum:
Operasi Riset Program Linier
27
atau
Cara lain: Dengan daerah layak pada himpunan penyelesaian
OAED, O(0, 0), A(60, 0), , dan D(180, 0). Mencari titik E
perpotongan garis (a) dan (b) dengan cara eliminasi.
Persamaan (a) x 1
Persamaan (b) x 2
Dengan mengurangkan kedua persamaan, maka diperoleh
Substitusi ke persamaan (a):
Tabel 3.2 Hasil Perhitungan
Titik Z
O(0,0) 0 0 0
A(0, 60) 0 540 540
E(144, 24) 8.640 2.160 10.800
D(180, 0) 10.800 0 10.800
Jadi berdasarkan hasil perhitungan pada Tabel 3.2 di atas
diperoleh nilai berada pada titik D dan E.
Contoh 3.2 (Persoalan Minimisasi)
PT Auto Indah memproduksi dua jenis mobil, yaitu mobil
sedan dan truk. Untuk dapat meraih konsumen berpenghasilan
tinggi, perusahaan ini merencanakan untuk membuat promosi
melalui elektronika pada dua acara TV, yaitu pada acara hiburan
dan acara olah raga. Promosi pada acara hiburan akan disaksikan
Operasi Riset Program Linier
28
oleh 6 juta pemirsa wanita dan 2 juta pemirsa pria. Promosi pada
acara olah raga akan disaksikan oleh 2 juta pemirsa wanita dan 10
juta pemirsa pria. Biaya promosi pada acara hiburan Rp.
6.000.000,00 per menit, sedangkan pada acara olah raga
biayanya adalah Rp. 12.000.000,00. Jika perusahaan
menginginkan promosinya disaksikan oleh 24 juta pemirsa wanita
dan sedikitnya oleh 20 juta pemirsa pria, bagaimana strategi
promosi itu sehingga memperoleh biaya minimum.
Penyelesaian:
Misalkan variabel keputusan:
= lamanya promosi dalam acara hiburan
= lamanya promosi dalam acara olah raga
Model persoalan dari contoh 3.2 di atas adalah:
Minimumkan:
Kendala:
Dari Gambar 3.2 terlihat bahwa daerah layak dibatasi oleh sumbu
ke atas, titik-titik C, E, B dan sumbu ke kanan, ternyata
daerahnya tidak terbatas (unbounded). Jadi penyelesaian
optimum adalah minimum.
Operasi Riset Program Linier
29
Contoh 3.3
Selesaikan Program Linier berikut ini dengan metode Grafik
Minimumkan:
Kendala:
Penyelesaian:
Untuk mendapatkan tanda “ “ pada grafik Gambar 3.3,
kita perlu mengeliminasi persamaan
3x1 + 5x2 ≥ 15 dan 8x1 + 3x2 ≥ 24
Z
Gambar 3.2 Penyelesaian untuk Persoalan PT Auto Indah
12
2
4 O A C
E D
B
1
2
10
Daerah fisibel tidak terbatas 1𝐶 𝐵 2 (unbounded)
1 =9
7, 2 =
25
7 =
258
7= 36,86
Tititk optimum (minimum) E
Operasi Riset Program Linier
30
-
31x2 ≥ 48 x2 =
Lalu, substitusikan x2 ke dalam persamaan 3x1 + 5x2 ≥ 15,
sehingga didapat
3x1 + 5(
) ≥ 15 3x1 ≥
x1 =
Maka,
Z = 6x1 + 5x2
Z = 6(
)+ 5(
)
Z =
Z =
atau z = 22,258
Solusi optimal telah tercapai dengan minimum Z =
untuk x1 =
; x2 =
× 8 × 3
Operasi Riset Program Linier
31
3.2 Kasus Khusus Model Program Linier
Dari kedua contoh yang telah dibahas di atas dengan cara
penyelesaian metode grafik hanya mempunyai satu penyelesaian
yang optimal. Akan tetapi dalam problema program linier
penyelesaian optimal mempunyai beberapa kasus khusus sebagai
berikut:
1. Penyelesaian Optimum Berganda
Penyelesaian optimum berganda akan terjadi dalam
suatu masalah program linier jika fungsi tujuan
terletak pada lebih dari satu titik optimum. Hal ini
bisa terjadi jika kemiringan fungsi tujuan dan salah
satu persamaan kendala adalah sama.
Contoh kasus:
Maksimumkan:
Kendala:
10 1 2 3 4 5 6 7 8 9
8 7 6 5 4 3 2 1
-1 -2 -3 -4
1 2 4
1
2
8 1 + 3 2 24 3 1 + 5 2 15
3 1 + 5 2 30
Gambar 3.3
Operasi Riset Program Linier
32
2. Masalah Tak Layak
Dalam beberapa kasus suatu masalah program linier
tidak memiliki penyelesaian yang layak. Dengan kata
lain, tak ada titik-titik yang secara serentak
memenuhi semua kendala dalam masalah itu.
Contoh kasus:
Maksimumkan:
Kendala:
3. Masalah Tak Terbatas
Dalam beberapa masalah ruang penyelesaian yang
layak dibentuk oleh kendala-kendala yang tidak
dibatasi dalam suatu batas yang tertutup. Dalam hal
ini fungsi tujuan dapat meningkat tak terbatas tanpa
pernah mencapai batas maksimumnya karena
masalah tak pernah mencapai batas kendala.
Contoh kasus:
Maksimumkan:
Kendala:
2
Soal
1. Diketahui program linier berikut:
Minimum:
Kendala:
Operasi Riset Program Linier
33
2. Maksimum:
Kendala:
3. Gambarkan daerah yang memenuhi problema
program linier berikut:
Tentukan nilai (Maksimum dan
Minimum)
3.3 Penyelesaian dengan Metode Simpleks
Pada sub bab ini yang akan dibicarakan adalah bagaimana
cara menyelesaikan problema program linier dengan
penyelesaian Metode Simpleks. Metode ini adalah penyelesaian
dengan tepat suatu problema program linier secara berulang-
ulang yang akan ditentukan sejumlah langkah tertentu atau
kemungkinan akan memberi petunjuk terdapatnya suatu
penyelesaian tak terbatas. Langkah-langkah dimaksud adalah
untuk memperoleh feasible baru di mana harga fungsi objektifnya
kurang daripada harga fungsi objektif sebelumnya. Proses ini
dilanjutkan sampai suatu penyelesaian optimum dicapai. Metode
simpleks merupakan prosedur aljabar yang bersifat iteratif yang
bergerak selangkah demi selangkah, dimulai dari titik ekstrem
pada daerah fisibel (ruang solusi) menuju titik ekstrem yang
optimum.
Untuk memperoleh penyelesaian optimum, di bawah ini
ditunjukkan langkah-langkah perhitungan sesuai dengan bentuk
Operasi Riset Program Linier
34
persamaan daripada suatu kendala apakah proses metode
simpleks sudah dapat dimulai seperti penyelesaian titik extreem,
yang mengandung slack variable atau surplus variable dan
artificial variable. Problema program linier secara umum
menentukan suatu vektor penyelesaian
yang memaksimumkan atau meminimumkan bentuk linier dari
fungsi objektif:
Maks. atau Min. : (3.1)
Kendala:
. . . . .
. . . . .
. . . . . (3.2)
dan (3.3)
Jika kita definisikan:
mnmnmm
n
n
b
b
b
B
x
x
x
X
aaa
aaa
aaa
A
.
.;..;
...........
...
...
2
1
2
1
21
22221
11211
maka pembatas dari model tersebut dapat dituliskan ke dalam
bentuk sistem persamaan 𝐵, di mana
konstanta yang diberikan dan . Mula-mula akan dibuat
dengan sungguh-sungguh bahwa semua dengan cara
mengalikan negatif satu (-1).
Operasi Riset Program Linier
35
Notasi umum yang selalu dijumpai pada program linier adalah:
1. Minimum
dan
2. Minimum
𝐶
dengan
dan
di mana:
𝐶 vektor baris
vektor kolom
vektor kolom
vektor kolom yang berdimensi nol
3. Minimum
𝐶
dengan
dan
di mana:
adalah kolom ke-j dari matriks A
dan .
Dalam pembahasan selanjutnya digunakan penyelesaian feasible
minimum.
Suatu penyelesaian feasible minimum adalah
penyelesaian feasible yang juga meminimumkan persamaan (3.1).
Terlihat bahwa fungsi objektif (3.1) merupakan linier fungsional
Operasi Riset Program Linier
36
untuk yang memenuhi persamaan (3.2) dan (3.3). Linier
fungsional disebut linier transformasi atau linear map.
3.3.1 Penyelesaian Titik Extreem
Diandaikan bahwa problema linier programing adalah
feasible, setiap penyelesaian feasible basic non-degenate dan
penyelesaian feasible basis diketahui. Diandaikan penyelesaian
tersebut: dan digabungkan
himpunan vektor-vektor linear independent
Maka:
(3.4)
𝐶 𝐶 𝐶 (3.5)
di mana semua 𝐶 adalah koefisien harga fungsi objektif
dan harga yang berkoresponden dari fungsi objektif untuk
penyelesaian. Karena linear independent,
maka dapat dinyatakan sembarang vektor dari himpunan
dalam .
Andaikan diberikan oleh:
(3.6)
dan ditentukan,
𝐶 𝐶 𝐶 (3.7)
di mana 𝐶 adalah koefisien harga yang berkorenponden dengan
.
Dari bentuk persamaan (3.6) dan (3.7) di atas dapat
diuraikan prosedur perhitungan dengan:
(1) Diandaikan m linier independen vektor-vektor yang
menghasilkan penyelesaian feasible dan dinyatakan
semua vektor-vektor lainnya dalam suku-suku basis.
Operasi Riset Program Linier
37
(2) Membentuk matriks satuan yang berordo m dan
mengandung m vektor.
Dari (1) diambil vektor-vektor linier
independen dan matriks 𝐵.
Matriks 𝐵 disebut admisible basis (basis yang dapat diganti).
Pertama-tama ditentukan 𝐵 untuk memperoleh penyelesaian
vektor dan representasi vektor-vektor lainnya dalam suku-suku
basis.
Karena, 𝐵 terdapat
𝐵
dan
𝐵
di mana:
kedua-duanya vektor kolom
Untuk menggunakan metode simpleks dikumpulkan
vektor matriks, sehingga problemanya adalah sebagai berikut:
𝐵 (3.8)
Dengan menggandakan elemen-elemen dalam matriks (3.8) yang
dipartisi oleh 𝐵 diperoleh:
(3.9)
Karena 𝐶 diketahui, kemudian dihitung 𝐶 dengan
menentukan apakah untuk setiap j mempunyai harga 𝐶
.
Sekarang diandaikan 𝐶 , maka himpunan
penyelesaian feasible dapat dikonstruksikan sedemikian hingga
untuk setiap anggota di mana batas bawah (lower
Operasi Riset Program Linier
38
bound) dari finite atau infinite ( adalah harga fungsi objektif
untuk anggota tertentu dari himpunan penyelesaian feasible).
Pada kejadian di atas ada 2 hal yang perlu diperhatikan
yaitu:
1) Jika batas bawah finite, maka penyelesaian feasible baru
yang terdiri dari m variabel positif dapat dikonstruksikan
di mana harga fungsi objektifnya lebih kecil daripada
harga penyelesaian sebelumnya.
2) Jika batas bawah infinite, maka penyelesaian baru yang
terdiri dari variabel positif dapat dikonstruksikan
di mana harga fungsi objektifnya dapat dibuat kecil
sembarang.
Untuk menyelesaikan problema di atas lebih dahulu
digandakan bentuk persamaan (3.6) dengan bilangan dan
hasilnya dikurangkan pada persamaan (3.4), kemudian
digandakan pada persamaan (3.7) dengan yang sama dan
hasilnya dikurangkan pada persamaan (3.5) untuk
terdapat:
(3.10)
𝐶 𝐶 𝐶 𝐶
𝐶 (3.11)
di mana 𝐶 telah ditambahkan pada kedua ruas persamaan
(3.11). Jika semua koefisien vektor dalam
(3.10) non-negatifitas, maka penyelesaian feasible baru telah
diperoleh di mana fungsi objektifnya adalah:
𝐶 pada (3.11). Karena variabel-variabel
dalam persamaan (3.10) semua positif, jelas
bahwa dari persoalan di atas terdapat suatu harga (finite
Operasi Riset Program Linier
39
atau infinite), untuk mana koefisien vektor-vektor dalam (3.10)
tetap positif.
Dari pengandaian untuk tertentu 𝐶
terdapat:
𝐶
Jadi penyelesaian feasible baru dapat diperoleh dengan harga
yang berkoresponden untuk fungsi objektifnya di mana kurang
daripada harga penyelesaian sebelumnya.
Sekarang tiba pada kejadian 1) di atas yaitu: jika untuk
tertentu di mana setidak-tidaknya satu dalam persamaan
(3.6) untuk harga terbesar pada mana
semua koefisien (3.10) tetap non-negatif yang diberikan dengan:
(3.12)
untuk
Karena persoalan di atas, merupakan non-degenerate yaitu
semua penyelesaian fisibel basis mempunyai elemen positif,
minimum dalam persamaan (3.12) akan diperoleh untuk
tunggal.
Jika disubstitusikan dalam persamaan (3.10) dan
persamaan (3.11) untuk , maka koefisien yang berkoresponden
dengan tunggal akan hilang. Dengan demikian penyelesaian
fisibel basis baru yang terdiri dari dan vektor-vektor
basis asal dapat dikonstruksikan. Basis ini dapat dipakai seperti
sebelumnya. Jika 𝐶 pada basis baru dan maka
penyelesaian lain dapat diperoleh dengan harga fungsi
objektifnya lebih kecil. Proses ini akan terus sampai semua
𝐶 atau sampai untuk beberapa 𝐶 dan
. Jika semua harga 𝐶 maka proses berhenti.
Operasi Riset Program Linier
40
Selanjutnya pada kejadian 2), jika pada setiap tingkatan
diperoleh beberapa , 𝐶 dan semua , maka tidak
terdapat batas atas pada dan fungsi objektifnya mempunyai
batas bawah . Terlihat untuk kejadian ini, bahwa untuk setiap
, semua koefisien persamaan (3.10) positif. Maka terdapat
penyelesaian fisibel yang terdiri dari elemen positif. Di
sini, dengan cukup besar, harga fungsi objektif yang diberikan
pada ruas kanan persamaan (3.11) dapat dibuat kecil sembarang.
Umumnya karena tidak memiliki suatu jaminan bahwa himpunan
vektor-vektor dari himpunan yang diberikan akan linier
independen, maka pengandaian pada kejadian 1) tidak biasa
dijumpai dalam praktek.
Seterusnya diandaikan bahwa himpunan vektor-vektor
mengandung vektor-vektor unit yang dapat
dikelompokan untuk membentuk suatu matriks satuan yang
berdimensi . Diambil admisibel basis:
𝐵
Karena 𝐵 𝐵 dan karena semua elemen-elemen
diandaikan non-negatifitas maka terdapat penyelesaian extreem
awal:
dan
di mana:
Untuk membuat prosedur simpleksnya, disusun problema matriks
seperti pada Tabel 3.1
Operasi Riset Program Linier
41
Tabel 3.1 Langkah-I dari Prosedur Perhitungan Metode
Simpleks
Basis C 𝐶 𝐶 ... 𝐶 ... 𝐶 𝐶 ... 𝐶 ... 𝐶 ... 𝐶
... ... ... ... ...
1 𝐶 1 0 0 0 ... 0 ... ... ...
2 𝐶 0 1 0 0 ... 0 ... ... ...
. . . . . . . . ... . . ... . ... . ... .
. . . . . . . . ... . . ... . ... . ... .
L 𝐶 0 0 0 1 ... 0 ... ... ...
. . . . . . . . ... . . ... . ... . ... .
. . . . . . . . ... . . ... . ... . ... .
m 𝐶 0 0 0 0 ... 1 ... ... ...
m+1 𝐶 0 0 0 0 ... 0 –
𝐶 ...
𝐶
...
𝐶
...
𝐶
Tabel 3.2 Hasil Transformasi dari Tabel 3.1
Basis C 𝐶 𝐶 ... 𝐶 ... 𝐶 𝐶 ... 𝐶 ... 𝐶 ... 𝐶
... ... ... ... ...
1 𝐶 1 0 ...
... 0 ... ...
...
2 𝐶 0 1 ...
... 0 ... ...
...
. . . . . . ... . ... . . ... . ... . ... .
. . . . . . ... . ... . . ... . ... . ... .
m 𝐶 0 0 ...
... 1 ... ...
...
m+1 𝐶 0 0 ...
-
𝐶 ... 0
-
𝐶 ...
-
𝐶 ...
-
𝐶 ...
𝐶
Operasi Riset Program Linier
42
Penjelasan Tabel 3.1:
a. Kolom pertama adalah indeks baris tabel
b. Kolom kedua adalah indeks vektor yang dibuat menjadi
basis, dengan adalah vektor dari yang mana
merupakan kolom-kolom dari B
c. Kolom ketiga adalah menyatakan harga yang bersetuju
kepada vektor dalam basis
d. Kolom keempat adalah menyatakan harga yang
sedang berjalan, bersama-sama dengan harga-harga dari
fungsi objektif untuk basis penyelesaian fisibel
e. Kolom kelima sampai seterusnya adalah menyatakan
harga-harga dari untuk semua vektor-vektor dalam
matriks
f. Baris pertama berisikan semua harga 𝐶 dari persamaan
(3.1)
g. Baris yang terakhir memberikan kebesaran yang kita
hitung pada:
kolom ketiga: 𝐶
kolom keempat: 𝐶 𝐶
Dari persamaan , telah diandaikan dan
untuk
di mana adalah matriks dari dengan:
Operasi Riset Program Linier
43
Dengan mengambil inner-product vektor ke-j dan vektor kolom
yang diperlihatkan dengan C yaitu:
𝐶
𝐶
Elemen-elemen 𝐶 dimasukkan dalam baris ke-(m+1)
dari kolom berikutnya. 𝐶 untuk vektor-vektor tersebut
dalam baris selalu sama dengan nol. Jika semua bilangan-bilangan
𝐶 untuk maka penyelesaian
minimum dan harga fungsi objektif yang berkoresponden adalah
.
Sekarang persoalan diandaikan sekurang-kurangnya ada
satu 𝐶 dan dihitung penyelesaian fisibel baru di mana
basisnya mengandung (m-1) vektor-vektor dari basis asal
. Untuk mencari vektor baru yang akan
dimasukkan ke dalam basis, secara teoritis dapat dipilih
sembarang yang berkoresponden dengan 𝐶 . Pemilihan
vektor tersebut adalah yang dapat memberikan pengurangan
paling cepat dalam harga fungsi objektif. Jadi vektor harus
berkoresponden pada:
𝐶 (3.13)
di mana untuk setiap dari persamaan (3.12).
Jika terdapat sejumlah untuk mana 𝐶 , maka aturan di
atas agak sulit dipakai. Kriteria yang lebih sederhana untuk
memilih vektor adalah yang berkoresponden dengan
𝐶 (3.14)
Dengan menggunakan persamaan (3.14), diandaikan
𝐶 𝐶
Vektor harus diintrodusir ke dalam basis, kemudian ditentukan
, untuk
Operasi Riset Program Linier
44
Jika semua maka dapat dicari penyelesaian fisibel yang
harga fungsi objektifnya dibuat kecil sembarang. Proses
perhitungan sudah lengkap. Tetapi apabila diandaikan ada
beberapa dan,
Vektor yang akan dieliminir dalam basis. Penyelesaian fisibel
baru akan mempunyai basis baru yang terdiri dari:
Kemudian akan dihitung penyelesaian baru dan menyatakan
setiap vektor tidak dalam basis pada suku-suku basis baru.
Karena basis mula-mula secara
cepat dapat dinyatakan semua vektor-vektor dalam suku-suku
basis ini. Jadi terdapat:
(3.15)
(3.16)
(3.17)
Dari persamaan (3.16) diperoleh:
(3.18)
Substitusi persamaan (3.18) ke dalam persamaan (3.15)
diperoleh:
atau
Operasi Riset Program Linier
45
Penyelesaian fisibel baru:
diberikan dengan:
di mana:
; untuk
(3.19)
Dengan cara yang sama yaitu persamaan (3.18) disubstitusikan ke
dalam persamaan (3.17), dapat diperoleh dengan cepat untuk
setiap tidak dalam basis baru pada suku-suku basis ini,
terdapat:
di mana:
; untuk
(3.20)
Karena
𝐶
Secara cepat dapat dibuktikan dengan mensubstitusikan harga-
harga dari persamaan (3.20) untuk , maka didapat:
𝐶 𝐶
𝐶 (3.21)
Dan dengan mensubstitusikan harga (3.19) untuk ke dalam
diperoleh:
𝐶 (3.22)
Operasi Riset Program Linier
46
Kemudian, untuk memperoleh penyelesaian baru , vektor baru
dan
𝐶 yang berkoresponden, setiap elemen dalam Tabel
3.1 untuk baris dan kolom-kolom
ditransformasi oleh rumus:
; untuk
(3.23)
di mana:
dan
𝐶
Diandaikan rumus umum dari persamaan (3.23) terpakai untuk
semua elemen dalam tabel perhitungan yang meliputi kolom
dan baris ke-(m+1). Transformasi yang ditentukan oleh
persamaan (3.23) ekivalen dengan rumus eliminasi lengkap, bila
pivot elemen adalak .
Setelah tabel dilengkapi, maka prosedur dari metode
simpleks menghendaki hal-hal sebagai berikut:
1. Lebih dahulu diperiksa elemen-elemen 𝐶 untuk
menentukan apakah penyelesaian minimum telah di
peroleh, yaitu apakah 𝐶 untuk semua
2. Pemilihan vektor yang akan diitrodusir ke dalam basis,
jika beberapa 𝐶 yaitu pemilihan vektor dengan
maksimum 𝐶 .
3. Pemilihan vektor untuk dieliminasi dari basis guna
memastikan fisibilitas penyelesaian baru, yaitu vektor
dengan
untuk , di mana k
berkoresponden dengan vektor yang dipilih dalam
langkah kedua, jika semua , maka penyelesaian
tak terbatas.
Operasi Riset Program Linier
47
4. Transformasi dari tabel oleh prosedur eliminasi lengkap
untuk memperoleh penyelesaian baru dan elemen-
elemen yang diasosiasikan.
5. Tabel 3.2 merupakan hasil transformasi dari Tabel 3.1.
3.3.2 Bentuk Standar Problema Program Linier
Perhatikan suatu sistem 𝐵 dari persamaan linier
dalam n variabel (n > m)
Definisi:
3.3.2.1 Penyelesaian Basis
Penyelesaian basis untuk 𝐵 adalah penyelesaian
di mana terdapat sebanyak-banyaknya m variabel berharga
bukan nol. Untuk mendapatkan penyelesaian basis dari 𝐵
maka sebanyak (n – m) variabel harus dinolkan. Variabel-variabel
yang dinolkan ini disebut nonbasic variable (NBV). Selanjutnya,
dapatkan harga dari n – (n – m) = m variabel lainnya yang
memenuhi 𝐵, yang disebut basic variable (BV).
3.3.2.2 Penyelesaian Basis Fisibel
Jika penyelesaiani variabel pada suatu penyelesaian basis
berharga nonnegatif, maka penyelesaian itu disebut basic
feasible solutions (BFS).
3.3.2.3 Penyelesaian Fisibel Titik Ekstrem
Yang dimaksud dengan penyelesaian feasibel titik
ekstrem atau titik sudut ialah penyelesaian feasibel yang tidak
terletak pada suatu segmen garis yang menghubungkan dua
penyelesaian fisibel lainnya.
Operasi Riset Program Linier
48
3.4 Algoritma Simpleks untuk Persoalan Maksimasi
Untuk menyelesaikan persoalan program linier dengan
menggunakan metode simpleks, lakukanlah langkah-langkah
berikut:
1. Konversikan formulasi persoalan awal ke dalam
bentuk standar.
2. Cari penyelesaian basis fisibel (BFS).
3. Jika seluruh NBV mempunyai koefisien nonnegatif
(artinya berharga positif atau nol) pada baris fungsi
tujuan [baris persamaan yang biasa disebut baris 0
atau baris ( 𝐶 )], maka BFS sudah optimal. Jika
pada baris 0 masih ada variabel dengan koefisien
negatif, pilihlah salah satu variabel yang mempunyai
paling negatif pada baris 0 itu. Variabel ini akan
memasuki status variabel basis, karena itu variabel
ini disebut sebagai variabel yang masuk basis
(entering variable, disingkat EV)
4. Hitung rasio dari (Ruas kanan) / (Koefisien EV) pada
setiap baris di mana EV-nya mempunyai koefisien
positif. Variabel basis pada baris pembatas dengan
rasio positif terkecil akan berubah status menjadi
variabel nonbasis. Variabel ini kemudian disebut
sebagai variabel yang meninggalkan basis atau
leaving variable, disingkat LV.
Lakukan Operasi Baris Elementer (ERO) untuk membuat
koefisien EV pada baris dengan rasio positif terkecil ini
menjadi berharga 1 dan berharga 0 pada baris-baris
lainnya. Kembali ke langkah 3.
Operasi Riset Program Linier
49
Contoh 3.4
Maksimumkan :
Kendala:
Bentuk standarnya menjadi:
Maksimumkan:
Kendala:
Iterasi 0
Basis / C 3 5 4 0 0 0 B
0 1 2 3 1 0 0 10
0 2 3 1 0 1 0 16
0 3 2 1 0 0 1 20
Zj - Cj -3 -5 -4 0 0 0 0
Keterangan:
Pada baris 𝐶 paling minimum , maka
masuk dalam basis
Baris pivot adalah baris dikalikan
Baris yang baru : baris
Operasi Riset Program Linier
50
Baris yang baru : baris
Iterasi 1
Basis / C 3 5 4 0 0 0 B
5 0,5 1 1,5 0,5 0 0 5
0 0,5 0 -3,5 -1,5 1 0 1
0 2 0 -2 -1 0 1 10
Zj - Cj -0,5 0 3,5 2,5 0 0 25
Keterangan :
Pada baris 𝐶 paling minimum , maka
masuk dalam basis
Baris pivot adalah baris dikalikan 2.
Baris yang baru : baris
Baris yang baru : baris
Iterasi 2
Basis / C 3 5 4 0 0 0 B
5 0 1 5 2 -1 0 4
3 1 0 -7 -3 2 0 2
0 0 0 12 5 -4 1 6
Zj - Cj 0 0 0 1 1 0 26
Operasi Riset Program Linier
51
Karena baris 𝐶 , maka persoalan telah optimal
dengan :
untuk
Contoh 3.5
Maksimumkan:
Kendala:
Langkah 1 : Konversikan pada bentuk standar
Maksimumkan :
Kendala :
Formulasi ini dapat juga ditulis dalam bentuk kanonik
sebagai berikut:
Baris 0 :
Baris 1 :
Baris 2 :
Baris 3 :
Baris 4 :
Operasi Riset Program Linier
52
Langkah 2 :
Menentukan penyelesaian basis fisibel (BFS)
Dari bentuk kanonik di atas, jika kita tetapkan
maka akan kita dapatkan harga-harga
yaitu sama dengan ruas kanan masing-masing
baris. Dengan mengikutsertakan baris 0 maka kita
dapatkan:
BV ; NBV
BFS-nya adalah:
Seperti terlihat dari contoh (3.5) di atas, variabel slack
dapat digunakan sebagai variabel basis untuk suatu
persamaan pembatas apabila ruas kanan dari pembatas
itu berharga nonnegatif.
Langkah 3
Dari formulasi kanonik di atas kita tahu bahwa seluruh
NBV mempunyai koefisien yang berharga negatif
sehingga pada iterasi ini BFS belum optimal. Karena
variabel mempunyai koefisien yang paling negatif
(lihat baris 0 formulasi kanonik), maka variabel terpilih
sebagai variabel yang akan menjadi variabel basis
(entering variable).
Langkah 4
Menghitung rasio dan melakukan ERO (Elementery Row
Operation)
Rasio dari baris 1 adalah
Rasio dari baris 2 adalah
Operasi Riset Program Linier
53
Rasio dari baris 3 adalah
; rasio terkecil 4
Hal ini menunjukkan bahwa akan menjadi variabel
basis pada baris 3, menggantikan yang berubah
statusnya menjadi variabel nonbasis (NBV). Dengan kata
lain, sebagai akibat dari terpilihnya sebagai EV, maka
menjadi LV (leaving variable).
Selanjutnya kita harus melakukan ERO agar
koefisien berharga 1 pada baris 3 dan berharga 0 pada
baris-baris lainnya. Prosedur ini disebut pivoting, dan
baris 3 dinamai baris pivot
Langkah-langkah ERO adalah sebagai berikut:
ERO 1: menjadikan koefisien berharga 1 pada baris 3.
Hasilnya :
ERO 2: menjadikan koefisien berharga 0 pada baris 0
Hasilnya :
ERO 3: menjadikan koefisien berharga 0 pada baris 1
Hasilnya :
ERO 4: menjadikan koefisien berharga 0 pada baris 2.
Hasilnya :
Baris 4 tidak berubah karena tidak ada variabel .
Bentuk kanonik yang baru adalah:
Baris 0 :
Baris 1 :
Baris 2 :
Baris 3 :
Baris 4 :
Sekarang kita peroleh:
𝐵 𝐵
BFS-nya adalah:
Operasi Riset Program Linier
54
Karena koefisien masih berharga negatif, maka BFS di
atas belum optimal. Karena itu, dengan sebagai EV
baru, lakukan kembali langkah d.
Hasilnya adalah:
Baris 0 :
Baris 1 :
Baris 2 :
Baris 3 :
Baris 4 :
Sekarang kita peroleh:
𝐵 𝐵
BFS-nya adalah:
Karena koefisien dari seluruh variabel pada baris 0 sudah
berharga positif, maka BFS sudah optimal. Biasanya,
dalam menyelesaikan persoalan LP ini digunakan tabel
simpleks sebagai berikut:
Iterasi 0
BV C 60 30 20 0 0 0 0
b
0 8 6 1 1 0 0 0 48
0 4 2 1,5 0 1 0 0 20
0 2 1,5 0,5 0 0 1 0 8
0 0 1 0 0 0 0 1 5
𝐶 -60 - 30 - 20 0 0 0 0 0
Operasi Riset Program Linier
55
Iterasi 1
BV C 60 30 20 0 0 0 0
B
0 0 0 - 1 1 0 - 4 0 16
0 0 - 1 0,5 0 1 - 2 0 4
60 1 0,75 0,25 0 0 0,5 0 4
0 0 1 0 0 0 0 1 5
𝐶 0 15 - 5 0 0 30 0 240
Iterasi 2
BV C 60 30 20 0 0 0 0
B
0 0 - 2 0 1 2 - 8 0 24
20 0 - 2 1 0 2 - 4 0 8
60 1 1,25 0 0 - 0,5 1,5 0 2
0 0 1 0 0 0 0 1 5
𝐶 0 5 0 0 10 10 0 280
Karena 𝐶 , maka solusi optimal.
dengan
Contoh 3.6
Maksimumkan:
Kendala:
Operasi Riset Program Linier
56
Konversikan dalam bentuk standar
Maksimum:
Kendala:
Tabel Simpleks bentuk kanonik
Iterasi 0
BV C 2 4 3 0 0 0
B
0 3 4 2 1 0 0 60
0 2 1 2 0 1 0 40
0 1 3 2 0 0 1 80
𝐶 -2 -4 -3 0 0 0 0
Iterasi 1
BV C 2 4 3 0 0 0
B
4
1
0 0 15
0
0
1 0 25
0
0
0 1 35
𝐶 1 0 -1 1 0 0 60
Operasi Riset Program Linier
57
Iterasi 2
BV C 2 4 3 0 0 0
B
4
1 0
0
3
0 1
0
0
0 0
1
𝐶
0 0
0
Karena koefisien dari seluruh variabel pada baris 0 (baris 𝐶 )
sudah berharga positif, maka BFS sudah optimal, dengan
maksimum
untuk
Contoh 3.7
Perusahaan mempunyai anggaran produksi sebesar $2.000,00
dan jam kerja maksimum 665 jam per hari. Maksimum
permintaan tiap hari 200 unit untuk jam dinding, 300 unit radio
dan 150 unit toaster. Keuntungan maksimum tiap unit produk
adalah $15,00 untuk jam dinding, $20 untuk radio dan $12 untuk
toaster. Tentukan produksi optimal agar keuntungan maksimum.
Produk Kebutuhan Sumber Daya
Biaya / Unit Jam / Unit
Jam Dinding 8 2
Radio 10 3
Toaster 5 2
Operasi Riset Program Linier
58
Penyelesaian:
Formulasi Model:
Misalkan variabel keputusan yang menyatakan banyaknya
produksi masing-masing barang adalah sebagai berikut:
banyaknya jam dinding
banyaknya radio
banyaknya toaster
Tujuannya adalah memaksimumkan total keuntungan
gabungan ketiga produk :
Maksimumkan:
Batasan-batasan : (batasan anggaran)
(batasan jam kerja)
(batasan permintaan jam dinding)
(batasan permintaan radio)
(batasan permintaan toaster)
Bentuk standarnya menjadi:
Maksimumkan:
Batasan-batasan :
Operasi Riset Program Linier
59
Iterasi 0
Basis / C
B 15 20 12 0 0 0 0 0
0 8 10 5 1 0 0 0 0 2.000
0 2 3 2 0 1 0 0 0 665
0 1 0 0 0 0 1 0 0 200
0 0 1 0 0 0 0 1 0 300
0 0 0 1 0 0 0 0 1 150
𝐶 -15 -20 -12 0 0 0 0 0 0
Iterasi 1
Basis / C
B 15 20 12 0 0 0 0 0
20 0,8 1 0,5 0,1 0 0 0 0 200
0 -0,4 0 0,5 -0,3 1 0 0 0 65
0 1 0 0 0 0 1 0 0 200
0 -0,8 0 -0,5 -0,1 0 0 1 0 100
0 0 0 1 0 0 0 0 1 150
𝐶 1 0 -2 2 0 0 0 0 4.000
Iterasi 2
Basis / C
B 15 20 12 0 0 0 0 0
20 1,2 1 0 0,4 -1 0 0 0 135
12 -0,8 0 1 -0,6 2 0 0 0 130
0 1 0 0 0 0 1 0 0 200
0 -0,4 0 0 -0,4 1 0 1 0 165
0 0,8 0 0 -0,6 -2 0 0 1 20
𝐶 -0,6 0 0 0,8 4 0 0 0 4.260
Operasi Riset Program Linier
60
Iterasi 3
Basis / C
B 15 20 12 0 0 0 0 0
20 0 1 0 1,3 2 0 0 -1,5 105
12 0 0 1 -1,2 0 0 0 1 150
0 0 0 0 0,75 2,5 1 0 -1,25 175
0 0 0 0 0,7 0 0 1 0 155
15 1 0 0 -0,75 -2,5 0 0 1,25 25
𝐶 0 0 0 0,35 2,5 0 0 0,75 4.275
Karena baris 𝐶 , maka persoalan telah optimal dengan:
Untuk
3.5 Menyelesaikan Persoalan LP dengan Memakai Slack dan
Surplus Variabel
Pandang bentuk problema program linier pada persamaan
(3.2) yaitu:
sebagai sistem persamaan dan ketidaksamaan yang mempunyai 3
(tiga) kemungkinan:
1).
2).
3).
Dari kemungkinan pertama dapat dilihat bahwa tanda dapat
dirubah menjadi tanda dengan cara menambah suatu
variabel baru sehingga:
Operasi Riset Program Linier
61
di mana variabel disebut Slack Variable. Slack Variable ini
sebenarnya adalah sama dengan selisih dari jumlah yang
diperbolehkan dengan jumlah yang sungguh-sungguh terjadi,
diperoleh:
Dari kemungkinan ketiga juga memperlihatkan bahwa tanda
dapat dirobah menjadi tanda yaitu dengan cara
memperkenalkan suatu variabel baru yakni , sehingga:
di mana variabel semacam ini disebut Surplus Variable. Ini
dapat diartikan sebagai selisih hasil yang sesungguhnya terjadi
dengan hasil minimum yang akan dihasilkan, tentu ,
maka:
Untuk setiap yang mengandung Slack Variable atau Surplus
Variable selalu diberi harga (price) 𝐶 , dengan demikian
harga dari persamaan (3.1) tidak berobah akibat dari
penambahan tersebut.
Dari penjelasan-penjelasan di atas dapatlah diperoleh
tiga macam sistem persamaan dengan bentuk masing-masing
sebagai berikut: 1).
2). ; tetap
3).
di mana:
Untuk prosedur perhitungan pada problema yang mengandung
Slack Variable dan Surplus Variable berlaku seperti proses
perhitungan dalam Tabel 3.1 dan Tabel 3.2.
Operasi Riset Program Linier
62
3.6 Penyelesaian dengan Artificial Variable
Jika problema program linier tidak mempunyai
/mengandung unit matriks (matriks satuan), maka metode
“Artificial Variable” merupakan cara yang praktis guna memulai
proses metode simpleks. Prosedur ini juga menentukan apakah
problema mempunyai penyelesaian fisibel atau tidak.
Pandang problema:
Minimum:
dengan batasan:
(3.24)
Untuk bentuk problema pada persamaan (3.24) di atas dapat
diperluas sebagai berikut:
Minimum:
dengan batasan:
(3.25)
Besaran M diambil sebagai bilangan positif besar.
Vektor-vektor membentuk
suatu baris (dikatakan Artifisial Basis) untuk sistem yang
diperluas. Penyelesaian fisibel pada problema mula-mula, juga
Operasi Riset Program Linier
63
merupakan penyelesaian fisibel pada sistem ini. Jadi prosedur
metode simpleks akan memastikan diperolehnya penyelesaian
minimum, dalam mana tidak mungkin salah satu variabel-variabel
artifisial, muncul dengan harga positif. Jika problema awal
tidak fisibel, maka penyelesaian fisibel minimum pada problema
yang diperluas akan mengandung sekurang-kurangnya satu
Akan terlihat bahwa tidaklah perlu untuk memberikan
harga yang spesifik pada M.
Untuk problema perluasan, penyelesaian fisibel
minimum:
dengan harga fungsi objektif yang berkoresponden:
Basis dari matriks satuan yaitu:
dan
Selama adanya vektor-vektor artifisial dalam basis, setiap 𝐶
akan merupakan fungsi linier dalam M. Karena penyelesaian
pertama:
𝐶 𝐶
maka 𝐶 memiliki koefisien M dan non-koefisien M yang
independen satu dengan yang lain, sehingga dengan demikian
Tabel 3.3 merupakan prosedur perhitungan yang pertama dalam
memperlihatkan artifisial basis.
Untuk setiap , komponen non M dan M dari 𝐶
telah digantikan dalam basis m+1 dan m+2 pada kolom tersebut.
Tabel 3.3 diselesaikan seperti penyelesaian Tabel 3.1 kecuali
vektor yang diintrodusir ke dalam basis dihubungkan dengan
elemen positip terbesar dalam baris m+2. Untuk proses pertama,
Operasi Riset Program Linier
64
vektor yang berkorespondensi dengan diintrodusir
ke dalam basis. Elemen-elemen dalam baris m+2 juga
ditransformir oleh prosedur eliminasi biasa. Segera setelah vektor
artifisial dieliminir dari basis, itu tidak dipilih untuk masuk ke
dalam basis lagi. Jadi tidak perlu untuk mentransformir kolom m
terakhir dalam tabel. Jika hal demikian terjadi pada invers basis
akhir, maka m vektor-vektor akhir ini harus ditransformir seperti
biasa. Perlu diingat bahwa, walaupun terdapat vektor artifisial
dalam basis iterasi tidak akan mengeliminir satupun di antaranya.
Bila semua artifisial basis dipergunakan, maka 2m iterasi
dibutuhkan untuk mencapai penyelesaian fisibel minimum.
Tabel 3.3 Langkah-I dari Prosedur Perhitungan yang
Mengandung Artifisial
Basi
s C
𝐶 𝐶 . 𝐶 . 𝐶 M . M . . M M
. . . . .
1 M . . 1 . 0 . 0 . 0 0
2 M . . 0 . 0 . 0 . 0 0
. . . . . . . . . . . . . . . . . .
J M . . 0 . 1 . 0 . 0 0
. . . . . . . . . . . . . . . . . .
K M . . 0 . 0 . 1 . 0 0
. . . . . . . . . . . . . . . . . .
L M . . 0 . 0 . 0 . 1 0
. . . . . . . . . . . . . . . . . .
m M . . 0 . 0 . 0 . 0 1
m+
1
+C -𝐶 -𝐶 . -𝐶 . -𝐶 0 . 0 . 0 . 0 0
m+
2 . . 0 . 0 . 0 . 0
0
Operasi Riset Program Linier
65
Kemudian untuk memilih suatu vektor yang akan
diintrodusir ke dalam basis yaitu dengan menggunakan elemen
dalam baris ke-(m+2) sebagai kriteria di mana:
a) Semua vektor-vektor artifisial dieliminir dari basis
b) Tak ada elemen positif dalam baris (m+1)
Alternatif pertama a), mengakibatkan bahwa semua elemen
dalam baris (m+2) sama dengan nol (0) dan basis yang
berkoresponden adalah basis fisibel untuk problema awal.
Kemudian dipakai algoritma simpleks untuk menentukan
penyelesaian fisibel minimum. Pada alternatif kedua b), jika
elemen (m+2,0) yaitu bagian artifisial dari harga fungsi objektif
yang berkoresponden lebih besar dari pada nol, maka problema
awal tidak fisibel. Dan jika elemen (m+2,0) sama dengan nol,
maka mempunyai penyelesaian fisibel degenerate pada problema
awal yang mengandung sekurang-kurangnya satu vektor artifisial.
Dalam hal ini variabel-variabel artifisial sama dengan nol, tetapi
belum mencapai penyelesaian fisibel minimum. Kemudian akan
diintrodusir suatu vektor yang berkoresponden pada elemen
positif maksimum dalam baris ke-(m+1) yang berada di atas
elemen nol pada baris (m+2).
Kriteria ini dipakai sampai penyelesaian fisibel minimum
dicapai, yaitu sampai tidak ada lagi elemen positif pada baris
(m+1) di atas suatu nol pada baris ke-(m+2). Penyelesaian akhir
dapat mengandung atau tanpa artifisial variabel yang berharga
nol. Bila kriteria ini dipakai, elemen-elemen dalam baris ke-(m+1)
tidak pernah ditransformir, karena 𝐶 dari vektor yang
diintrodusir sama dengan 𝐶 . Untuk alternatif
pertama dan kedua, semua elemen-elemen baris (m+2) lebih
kecil atau sama dengan nol , dengan pengecualian mungkin
Operasi Riset Program Linier
66
dari elemen (m+2,0). Elemen terakhir ini selalu non-negatif, dan
harganya tidak bertambah.
Contoh 3.8
Maksimumkan :
Kendala:
Bentuk standarnya menjadi:
Maksimumkan:
Kendala:
Pada akhirnya, iterasi-iterasi metode simpleks akan
secara otomatis menjadikan variabel artificial ini tidak muncul lagi
(berharga nol), yaitu apabila persoalan semula telah
terselesaikan. Dengan kata lain, kita gunakan variabel artificial ini
hanya untuk memulai solusi, dan harus menghilangkannya
(menjadikannya berharga nol) pada akhir solusi. Jika tidak
demikian solusi yang diperoleh akan tidak fisibel. Untuk itu, maka
harus diberikan penalty M (M bilangan positip yang sangat besar)
pada setiap variabel artifisial dalam fungsi tujuannya. Jika fungsi
tujuan maksimasi penalty bertanda (-) dan minimisasi penalty
bertanda ( + ).
Operasi Riset Program Linier
67
Ada dua teknik penyelesaian untuk kasus dengan variabel
artifisial ini, yaitu teknik M (Metode Penalty) dan teknik Dua Fase.
Kedua teknik ini saling berkaitan.
3.6.1 Teknik M (Metode Penalty)
Contoh 3.9
Maksimumkan :
Kendala:
Bentuk standarnya menjadi:
Maksimumkan :
Kendala:
Iterasi 0
Basis C 3 5 0 0 M M
B
0 1 0 1 0 0 0 4
M 0 2 0 0 1 0 12
M 3 2 0 -1 0 1 18
𝐶 3M – 3 4M – 5 0 -M 0 0 30M
Iterasi 1
Basis C 3 5 0 0 M M
B
0 1 0 1 0 0 0 4
5 0 1 0 0 0,5 0 6
M 3 0 0 -1 -1 1 6
𝐶 3M – 3 0 0 -M -2M+2,5 0 6M+30
Operasi Riset Program Linier
68
Iterasi 2
Basis C 3 5 0 0 M M
B
0 0 0 1
2
5 0 1 0 0 ½ 0 6
3 1 0 0
2
𝐶 0 0 0 -1 -M+1,5 -M+1 36
Karena 𝐶 , maka solusi optimal telah diperoleh.
Dengan harga
Contoh 3.9
Minimum:
Kendala:
Bentuk Standar
Minimum:
Kendala:
Iterasi 0
Basis / C 2 1 0 0 0 M M M
B
M 3 1 -1 0 0 1 0 0 3 3/3=1
M 4 3 0 -1 0 0 1 0 6 6/4=3/2
M 1 2 0 0 -1 0 0 1 2 2/1=2
𝐶 -2+8M -1+6M -M -M -M 0 0 0 11M
Operasi Riset Program Linier
69
Iterasi 1
Basis / C 2 1 0 0 0 M M M
B
2 1
0 0
0 0 1 3
M 0
-1 0
1 0 2
M 0
0 -1
0 1 1
𝐶 0
-M -M
0 0 2+3M
Iterasi 2
Basis / C 2 1 0 0 0 M M
B
2 1 0 -0,4 0 0,2 0 -0,2 0,8
M 0 0 1 -1 1 1 -1 1 1
1 0 1 0,2 0 -0,6 0 0,6 0,6 3
𝐶 0 0 -0,6 +
M
-M -0,2 +
M
0 0,2 –
2M
2,2 + M
Iterasi 3
Basis / C 2 1 0 0 0 M
B
2 1 0 0 -0,4 0,6 0,4 1,2 2
0 0 0 1 -1 1 1 1 1
1 0 1 0 0,2 -0,8 -0,2 0,4
𝐶 0 0 0 -0,6 0,4 0,6 - M 2,8
Operasi Riset Program Linier
70
Iterasi 4
Basis / C 2 1 0 0 0
B
2 1 0 -0,6 0,2 0 0,6
0 0 0 1 -1 1 1
1 0 1 0,8 -0,6 0 1,2
𝐶 0 0 0 -0,2 0 2,4
Karena 𝐶 , maka solusi optimal telah diperoleh
Jadi Minimum Z =
3.6.2 Teknik Dua Fase
Maksud dari pada metode dua fase (two-phase methode)
adalah penyelesaian problema program linier, kita pecahkan
menjadi dua bagian, yaitu mula-mula mengusahakan agar semua
nilai variabel buatan (artificial) menjadi nol. Proses ini disebut
fase pertama (Fase I). Kemudian kita buat maksimum fungsi
tujuan yang sesungguhnya, dimulai dari suatu pemecahan
dasar fisibel baik yang memuat vektor buatan dengan nilai
variabel pada tingkat nol atau tidak memuat vektor buatan sama
sekali. Proses ini disebut fase kedua (Fase II).
Dengan digunakannya konstanta M yang merupakan
bilangan positif yang sangat besar sebagai penalty, maka bisa
terjadi kesalahan perhitungan, terutama apabila perhitungan itu
dilakukan dengan menggunakan komputer. Kesalahan itu bisa
terjadi karena koefisien fungsi tujuan relatif sangat kecil
dibandingkan dengan harga M, sehingga komputer akan
memperlakukannya sebagai koefisien yang berharga nol.
Ringkasnya, perbaiki kendala pada masalah aslinya
dengan menggunakan variabel-variabel artifisial yang dibutuhkan
Operasi Riset Program Linier
71
untuk mencapai sebuah penyelesaian fisibel basis awal untuk
masalah artifisial.
Kesulitan ini bisa dikurangi dengan menggunakan teknik
kedua fase. Di sini konstanta M dihilangkan dengan cara
menyelesaikan persoalan dalam dua fase (dua tingakatan)
sebagai berikut:
Fase I :
Fase ini digunakan untuk menguji apakah persoalan yang
kita hadapi memiliki penyelesaian fisibel atau tidak. Pada
fase ini fungsi tujuan semula diganti dengan
meminimumkan jumlah variabel artifisialnya. Jika nilai
minimum fungsi tujuan baru ini berharga nol (artinya
seluruh variabel artifisial berharga nol), berarti persoalan
memiliki solusi fisibel, lanjutkan ke fase II. Tetapi, jika
nilai minimum fungsi tujuan baru ini berharga positif,
maka persoalan tidak memiliki penyelesaian feasibel.
STOP.
Fase II :
Gunakan penyelesaian basis optimum dari fase I sebagai
solusi awal bagi persoalan semula. Dalam hal ini ubahlah
bentuk fungsi tujuan fase I dengan mengembalikannya
pada fungsi tujuan persoalan semula. Pemecahan
persoalan dilakukan dengan cara seperti biasa.
Contoh 3.10
Maksimumkan:
Kendala:
Operasi Riset Program Linier
72
Bentuk standar:
Maksimumkan:
Kendala:
Dari persamaan di atas diperoleh harga
Fase I :
Minimumkan:
Kendala:
Iterasi 0
Basis C -3 -2 0 0 0
B
0 1 0 1 0 0 4
0 0 2 0 1 0 12
0 3 2 0 0 1 18
R 3 2 0 0 0 18
Iterasi 1
Basis C -3 -2 0 0 0
B
-3 1 0 1 0 0 4
0 0 2 0 1 0 12
0 0 2 -3 0 1 6
R 0 2 -3 0 0 6
Operasi Riset Program Linier
73
Iterasi 2
Basis C -3 -2 0 0 0
B
-3 1 0 1 0 0 4
0 0 0 3 1 -1 6
-2 0 1
0
3
R 0 0 0 0 -1 0
Persoalan di atas memiliki penyelesaian fisibel. Selanjutnya
tidak diikutsertakan lagi.
Fase II:
Dari tabel optimum (Iterasi 2) pada fase I di atas dapat
dituliskan persamaan-persamaan berikut:
Kembali kepada model persoalan semula, dan dengan
mensubstitusikan persamaan-persamaan di atas, kita
dapatkan:
Maksimumkan:
Kendala:
Operasi Riset Program Linier
74
Iterasi 3
Basis c 0 0 9/2 0
B
3 1 0 1 0 4
0 0 0 3 1 6
5 0 1 -1,5 0 3
𝐶 0 0 -4,5 0 27
Iterasi 4
Basis c 0 0 4,5 0
B
3 1 0 0
2
0 0 0 1
2
5 0 1 0 0,5 6
𝐶 0 0 0 3,5 36
Karna 𝐶 , maka solusi optimal telah diperoleh.
Dengan harga
Contoh 3.11
Minimumkan:
Kendala:
Operasi Riset Program Linier
75
Bentuk Standar :
Minimumkan:
Kendala: (1)
(2)
(3)
Fase I
Persamaan (2) dan (3) dijumlahkan:
Minimumkan:
Maks.
Iterasi 0
Basis/C -1,1 -0,9 0 0 1 0
B
0 0,3 0,1 1 0 0 0 2,7
0 0,5 0,5 0 1 0 0 6
0 0,6 0,4 0 0 -1 1 6
R 1,1 0,9 0 0 -1 0 12
Iterasi 1
Basis/C -1,1 -0,9 0 0 1 0
B
-
1,1
1
0 0 0 9
0 0
1 0 0 1,5
0 0 0,2 -2 0 -1 1 0,6
R 0
0 -1 0 2,1
Operasi Riset Program Linier
76
Iterasi 2
Basis/C -1,1 -0,9 0 0 1 0
B
-1,1 1 0
0
8
0 0 0
1
0,5
-0,9 0 1 -10 0 -5 5 3
R 0 0
0
0,5
Iterasi 3
Basis/C -1,1 -0,9 0 0 1 0
B
-1,1 1 0 0 -4 -5 5 6
0 0 0 1 0,6 1 -1 0,3
-0,9 0 1 0 6 5 -5 6
R 0 0 0 -1 0 -1 0
Persoalan pada iterasi 3 di atas memiliki solusi layak. Selanjutnya
R tidak diikutsertakan lagi dalam perhitungan.
Fase II
Dari tabel optimum pada fase I di atas dapat dituliskan
persamaan-persamaan berikut:
Minimumkan:
atau
Operasi Riset Program Linier
77
Iterasi 0
Basis/C 0 0 0 -0,5
B
0 1 0 0 -5 6
0 0 0 1 1 0,3
0 0 1 0 5 6
Zj - Cj 0 0 0 0,5 5,4
Iterasi 1
Basis/C 0 0 0 -0,5
B
0 1 0 5 0 7,5
-0,5 0 0 1 1 0,3
0 0 1 -5 0 4,5
Zj - Cj 0 0 -0,5 0 5,25
Telah diperoleh solusi optimal : Min Z = 5,25
dengan
Operasi Riset Program Linier
78
3.7 Soal-soal
1. Maksimum:
Kendala:
3
2. Sebuah perusahaan mebel bermaksud membuat dua jenis
produk, yakni lemari pakaian dan tempat tidur. Keuntungan
setiap lemari pakaian adalah sebesar Rp.100.000,00
sedangkan bila membuat tempat tidur keuntungannya
adalah Rp. 75.000,00 sebuah. Pembuatan kedua produk
tersebut harus melalui 2 unit kerja, yakni unit kerja I dan unit
kerja II. Jam kerja tersedia pada unit kerja I adalah 40
jam/minggu, sedangkan pada unit kerja II adalah 50
jam/minggu.
Setiap lemari pakaian membutuhkan waktu 2 jam pada
unit kerja I dan 1 jam pada unit kerja II, sedangkan setiap
tempat tidur memerlukan waktu 1,25 jam pada unit kerja I
dan 1 jam pada unit kerja II. Berapa jumlah lemari pakaian
dan tempat tidur yang sebaiknya dibuat setiap minggu.
3. Perusahaan mobil memproduksi dua macam mobil yaitu
mobil penumpang (sedan) dan mobil truk. Di dalam
perusahaan itu terdapat empat bagian, yaitu bagian
pembuatan badan mobil, bagian pembuatan mesin,
assembly sedan dan truk. Kapasitas perbulan dari
perusahaan itu ditunjukkan pada tabel berikut:
Operasi Riset Program Linier
79
Bagian Perusahaan Jumlah yang dapat dihasilkan
Mobil Sedan Mobil Truk
1. Pembuatan badan mobil 250 buah 350 buah
2. Pembuatan mesin 333 buah 167 buah
3. Assembly mobil sedan 225 buah ---
4. Assembly mobil truk --- 150 buah
Jika perusahaan itu memperoleh keuntungan Rp.300.000,00
dari setiap mobil sedan dan Rp.250.000,00 setiap mobil truk,
maka tentukan keuntungan maksimum dengan metode
simpleks.
4. Selesaikan program linier berikut dengan metode Teknik M
dan Teknik Dua Fase:
Maximum:
Kendala:
5. Minimum:
Kendala:
37
6. Sebuah perusahaan elektronik membuat dua jenis pesawat
telepon, yakni jenis push button (PB) dan dial (D), masing-
masing dalam 3 warna (abu-abu, merah, hijau). Proses
Operasi Riset Program Linier
80
pengerjaannya melalui 4 mesin, P, Q, R, dan S. Dari hasil
penelitian diperoleh data-data sebagai berikut:
Pengerjaan Pada Mesin
Push Button Dial Jam Mesin
Tersedia A M H A M H
P 0,02 0,02 0,02 0,06 0,06 0,06 1.700
Q 0,40 -- -- 0,10 -- -- 1.400
R -- 0,40 -- -- 0,10 -- 200
S -- -- 0,06 -- -- 0,16 1.800
Keuntungan Per unit
0,80 0,56 0,64 1,44 1,26 1,20
Bila anda diminta bantuannya, bagaimanakah rencana
produksi yang paling optimum, dan berapa keuntungan yang
akan diperoleh?
7. Maksimumkan:
Kendala:
8. Maksimumkan:
Kendala:
Operasi Riset Program Linier
81
BAB IV
DUALITAS DAN ANALISIS SENSITIVITAS
4.1 Pengertian
Menentukan penyelesaian optimum dari suatu masalah
seperti yang telah dikemukakan pada bab sebelumnya, sama
sekali tidak hanya mencari tujuan problema program linier. Tabel
metode simpleks mengandung informasi ekonomi tambahan
bahkan yang lebih penting daripada penyelesaian optimum
masalah tersebut. Pentingnya informasi tambahan yang dapat
diperoleh dari tabel simpleks optimum telah mendorong
munculnya teori dualitas dan analisis sensitivitas.
Teori Dualitas merupakan salah satu konsep program
linier yang penting dan menarik ditinjau dari segi teori dan
praktisnya. Ide dasar yang melatarbelakangi teori ini adalah
bahwa setiap persoalan program linier mempunyai suatu
program linier lain yang saling berkaitan yang disebut dual,
sedemikian sehingga penyelesaian pada persoalan semula (yang
disebut primal) juga memberi penyelesaian pada dualnya.
Operasi Riset Program Linier
82
4.2 Teori Dualitas
Teori dualitas merupakan salah satu konsep yang sangat
penting dan menarik dalam problema program linier. Istilah
dualitas menunjuk pada kenyataan bahwa setiap program linier
terdiri atas dua bentuk yaitu bentuk pertama atau bentuk asli
dinamakan Primal dan bentuk kedua yang berhubungan dengan
bentuk pertama dinamakan Dual.
Pendefinisian dual akan bergantung pada jenis kendala,
tanda-tanda variabel dan bentuk optimasi dari problema program
linier primalnya. Tetapi, setiap problema program linier harus
dibuat dalam bentuk standar terlebih dahulu sebelum modelnya
diselesaikan, maka pendefinisian di bawah ini akan secara
otomatis meliputi ketiga hal di atas.
Diandaikan, kita mempunyai bentuk standar untuk
permasalahan primal (bisa jadi setelah konversi dari bentuk lain)
dan bentuk permasalahan dualnya seperti yang bisa diperlihatkan
sebagai berikut:
Primal:
Maksimumkan:
Kendala:
Dapat ditulis:
Maksimumkan: (4.1)
Kendala: (4.2)
(4.3)
Operasi Riset Program Linier
83
Dual:
Minimumkan:
Kendala:
Dapat ditulis:
Minimumkan: (4.4)
Kendala: (4.5)
(4.6)
4.3 Hubungan antara Primal dengan Dual
Jika kita bandingkan problema program linier antara
Primal dan Dual di atas ternyata dapat berkoresponden sebagai
berikut:
1. Koefisien fungsi tujuan primal menjadi konstanta ruas
kanan bagi dual, sedangkan konstanta ruas kanan
primal menjadi koefisien fungsi tujuan dual.
2. Untuk setiap pembatas primal ada satu variabel dual,
dan untuk setiap variabel primal ada satu pembatas
dual.
3. Tanda ketidaksamaan pada pembatas akan
bergantung pada fungsi tujuannya.
4. Fungsi tujuan berubah bentuk (maksimasi menjadi
minimasi dan sebaliknya).
Operasi Riset Program Linier
84
5. Setiap kolom pada primal berkorespondensi dengan
baris (pembatas) pada dual.
6. Setiap baris (pembatas) pada primal
berkorespondensi dengan kolom pada dual.
7. Dual dari dual adalah primal.
Contoh 4.1
Primal
Maksimumkan:
Kendala:
Dual
Minimumkan:
Kendala:
;
, tidak terbatas dalam tanda
Contoh 4.2
Primal
Maksimumkan:
Kendala:
tidak terbatas dalam tanda ,
Operasi Riset Program Linier
85
Dual
Minimumkan:
Kendala: atau
tidak terbatas dalam tanda
Contoh 4.3
Primal
Maksimumkan:
Kendala:
Dual
Minimumkan:
Kendala:
4.4 Metode Dual Simpleks
Apabila pada suatu iterasi kita mendapat persoalan
program linier yang sudah optimum (berdasarkan kondisi
optimalitas), tetapi belum fisibel (ada pembatas nonnegatif yang
tidak terpenuhi), maka persoalan tersebut harus diselesaikan
dengan menggunakan metode dual simpleks. Syarat
digunakannya metode ini adalah bahwa seluruh pembatas harus
Operasi Riset Program Linier
86
merupakan ketidaksamaan yang bertanda , sedangkan fungsi
tujuan bisa berupa maksimasi atau minimasi.
Pada dasarnya metode dual simpleks ini menggunakan
tabel yang sama seperti metode simpleks pada primal, tetapi
leaving dan entering variable-nya ditentukan sebagai berikut:
1. Leaving variable (kondisi fisibilitas).
Yang menjadi leaving variable pada dual simpleks
adalah variabel basis yang memiliki harga negatif
terbesar. Jika semua variabel basis telah berharga
positif atau nol, berarti keadaan fisibel telah
tercapai.
2. Entering variable (kondisi optimalitas).
a. Tentukan perbandingan (ratio) antara
koefisien persamaan dengan koefisien
persamaan leaving variable. Abaikan
penyebut yang positif atau nol. Jika semua
penyebut berharga positif atau nol, berarti
persoalan yang bersangkutan tidak memiliki
solusi fisibel.
b. Untuk persoalan minimasi, entering variable
adalah variabel dengan rasio terkecil,
sedangkan persoalan maksimasi, entering
variable adalah variabel dengan rasio absolut
terkecil.
Contoh 4.4
Minimumkan:
Kendala:
Operasi Riset Program Linier
87
Langkah pertama yang harus dilakukan ialah mengubah
arah pembatas ketidaksamaan sehingga bertanda ,
kemudian menambahkan variabel-variabel slack sekaligus
membuat bentuk standarnya:
Minimumkan:
Kendala:
Tabel awal
Basis C 2 1 0 0 0
B
0 -3 -1 1 0 0 -3
0 -4 -3 0 1 0 -6
0 1 2 0 0 1 3
𝐶 -2 -1 0 0 0 0
Perhatikan bahwa variabel-variabel basis awalnya tidak
memberikan solusi awal yang fisibel ( dan berharga negatif),
tetapi koefisien persamaan sudah memenuhi kondisi
optimalitas. Pada iterasi di atas, terpilih sebagai
leaving variable, sedangkan entering variable dipilih berdasarkan:
-2 -1 0 0 0
Koefisien -4 -3 0 1 0
Rasio
- - -
Operasi Riset Program Linier
88
Dengan demikian, terpilih sebagai entering variable.
Basis C 2 1 0 0 0
B
0
0 1
0 -1
1
1 0
0 2
0
0 0
1 -1
𝐶
0 0
0 2
Basis C 2 1 0 0 0
B
2 1 0
0
1 0 1
0
0 0 0 -1 1 1 0
𝐶 0 0
0
Solusi optimal dan fisibel telah tercapai dengan min
untuk
dan
Contoh 4.5
Maksimum:
Kendala:
50
Operasi Riset Program Linier
89
Penyelesaian dengan metode simpleks:
Tabel-1 Iterasi 0 Penyelesaian bentuk Standar Awal Metode
Simpleks
BV x1 x2 x3 X4 x5 x6 x7 x8 x9 x10 x11
Sol. C 8 6,5 20 17 0 0 0 0 0 0 0
x5 0 12 12 25 25 1 0 0 0 0 0 0 2.500
x6 0 1 1 2 2 0 1 0 0 0 0 0 150
x7 0 50 0 100 0 0 0 1 0 0 0 0 3.000
x8 0 0 50 0 100 0 0 0 1 0 0 0 10.000
x9 0 -1 -1 0 0 0 0 0 0 1 0 0 -50
x10 0 0 0 -1 -1 0 0 0 0 0 1 0 -25
x11 0 -8 45 -20 86 0 0 0 0 0 0 1 3.000
𝐶 -8 -6,5 -20 -17 0 0 0 0 0 0 0 0
Langkah berikutnya dilakukan dengan cara operasi baris
elementer, maka diperoleh Table-2 s/d Table-6 (tabel optimal).
Tabel-2 Iterasi 1
BV C 8 6,5 20 17 0 0 0 0 0 0 0
Sol.
0 0 0 25 25 1 0 0 0 12 0 0 1.900
0 0 0 2 2 0 1 0 0 1 0 0 100
0 50 0 100 0 0 0 1 0 0 0 0 3.000
0 -50 0 0 100 0 0 0 1 50 0 0 7.500
6,5 1 1 0 0 0 0 0 0 -1 0 0 50
0 0 0 -1 -1 0 0 0 0 0 1 0 -25
0 -53 0 -20 86 0 0 0 0 45 0 1 750
𝐶 -1,5 0 -20 -17 0 0 0 0 -6,5 0 0 325
Operasi Riset Program Linier
90
Tabel-3 Iterasi 2
BV C 8 6,5 20 17 0 0 0 0 0 0 0
Sol.
0 0 0 0 0 1 0 0 0 12 25 0 1.275
0 0 0 0 0 0 1 0 0 1 2 0 50
0 50 0 100 0 0 0 1 0 0 0 0 3.000
0 -50 0 -100 0 0 0 0 1 50 100 0 5.000
6,5 1 1 0 0 0 0 0 0 -1 0 0 50
17 0 0 1 1 0 0 0 0 0 -1 0 25
0 -53 0 -106 86 0 0 0 0 45 86 1 -1.400
𝐶 -1,5 0 -20 -17 0 0 0 0 -6,5 -17 0 750
Tabel-4 Iterasi 3
BV C 8 6,5 20 17 0 0 0 0 0 0 0
Sol.
0 0 0 0 0 1 0 0 0 12 25 0 1.275,000
0 0 0 0 0 0 1 0 0 1 2 0 50,000
0 0 0 0 0 0 0 1 0 42,453 81,132 0,943 1.679,245
0 0 0 0 0 0 0 0 1 7,547 18,868 -0,943 6.320,755
6,5 0 1 -2 0 0 0 0 0 -0,151 1,623 0,019 23,585
17 0 0 1 1 0 0 0 0 0 -1 0 25,000
8 1 0 2 0 0 0 0 0 -0,849 -1,623 -0,019 26,415
𝐶 0 0 0 0 0 0 0 0 -7,774 -19,434 -0,028 789,623
Tabel-5 Iterasi 4
BV C 8 6,5 20 17 0 0 0 0 0 0 0
Sol.
0 0 -15,407 30,814 0 1 0 0 0 14,326 0 -0,291 911,628
0 0 -1,233 2,465 0 0 1 0 0 1,186 0 -0,047 20,930
0 0 -50 100 0 0 0 1 0 50 0 0 500,000
0 0 -11,628 23,256 0 0 0 0 1 9,302 0 -1,887 6.046,512
0 0 0,616 -1,233 0 0 0 0 0 -0,093 1 0,012 14,535
17 0 0,616 -0,233 1 0 0 0 0 -0,093 0 0,012 39,535
8 1 1 0 0 0 0 0 0 -1 0 0 50,000
𝐶 0 11,977 -23,953 0 0 0 0 0 -9,581 0 0,198 1.072,093
Operasi Riset Program Linier
91
Tabel-6 Iterasi 5
BV C 8 6,5 20 17 0 0 0 0 0 0 0
Sol.
0 0 0 0 0 1 0 -0,308 0 -1,081 0 -0,291 757,558
0 0 0 0 0 0 1 -0,025 0 -0,023 0 -0,047 8,605
20 0 -0,5 1 0 0 0 0,01 0 0,5 0 0 5,000
0 0 0 0 0 0 0 -0,233 1 -2,326 0 -1,887 5.930,233
0 0 0 0 0 0 0 0,012 0 1 1 0,012 20,698
17 0 0,5 0 1 0 0 0,002 0 0,023 0 0,012 40,698
8 1 1 0 0 0 0 0 0 -1 0 0 50,000
𝐶 0 0 0 0 0 0 0,239 0 2,395 0 0,198 1.191,860
Dari Table-6 menunjukkan bahwa 𝐶 , maka
iterasi selesai dan penyelesaian optimal telah dicapai dengan nilai , , , , , dan nilai fungsi objektif . Contoh 4.6
Minimumkan: Kendala: Penyelesaian dengan Metode Dual Simpleks Bentuk standard: Minimumkan: Kendala:
Operasi Riset Program Linier
92
Iterasi 0
Basis / C
6 5 0 0 0 0 B
0 3 5 1 0 0 0 30
0 -8 -3 0 1 0 0 -24
0 -3 -5 0 0 1 0 -15
0 1 -1 0 0 0 1 4
𝐶 -6 -5 0 0 0 0 0
Iterasi 1
Basis / C
6 5 0 0 0 0 B
0 0 3,875 1 0,375 0 0 21
6 1 0,375 0 -0,125 0 0 3
0 0 -3,875 0 -0,375 1 0 -6
0 0 -1,375 0 0,125 0 1 1
𝐶 0 -2,75 0 -0,75 0 0 18
Iterasi 2
Basis / C
6 5 0 0 0 0 B
0 0 0 1 0 1 0 15
6 1 0 0 -0,161 0,097 0 2,419
5 0 1 0 0,097 -0,258 0 1,548
0 0 0 0 0,258 -0,355 1 3,129
𝐶 0 0 0 -0,484 -0,710 0 22,258
Operasi Riset Program Linier
93
Solusi optimal dan fisibel telah tercapai dengan
untuk
4.5 Sifat-sifat Khusus yang Penting Primal-Dual Simpleks
Untuk memahami pentingnya penggunaan sifat-sifat
primal-dual, berikut ini diberikan contoh yang sudah dikerjakan
dan diperoleh penyelesaian optimal.
Contoh 4.7
Maximum:
Kendala:
Iterasi 0
BV C 4 6 2 0 0 0
B
0 4 -4 0 1 0 0 5
0 -1 6 0 0 1 0 5
0 -1 1 1 0 0 1 5
𝐶 -4 -6 -2 0 0 0 0
Iterasi 1
BV C 4 6 2 0 0 0
B
0
0 0 1
0
6
1 0 0
0
0
0 1 0
1
𝐶 -5 0 -2 0 1 0 5
Operasi Riset Program Linier
94
Iterasi 2
BV C 4 6 2 0 0 0
B
4 1 0 0
0
6 0 1 0
0
0 0 0 1
0 1
𝐶 0 0 -2 1,5 2 0 17,5
Jika hasil akhir kita anggap solusi optimal, maka diperoleh 𝐵
adalah:
𝐵
Dan kita andaikan solusi optimal seperti tabel berikut ini, maka
tentukan unsur-unsur yang belum diketahui.
BV C 4 6 2 0 0 0
4 0,3 0,2 0
6 0,05 0,2 0
0 0,25 0 1
𝐶
Operasi Riset Program Linier
95
Penyelesaian:
Sifat 1:
𝐶
.
Sifat 2:
Simplex Multiplier (SM) =
:
4
– 2 – 0 = 4
6 – 2 – 4 = 0
:
- 4
+ 6(2) + 0 = 6
- 6 + 12 – 6 = 0
:
0 – 2 = - 2
Sifat 3:
Sifat 4:
;
Operasi Riset Program Linier
96
;
4.6 Analisis Sensitivitas
Operasi riset biasanya tidak hanya sampai pada saat
metode simpleks telah mencapai optimal (sukses) untuk suatu
model. Sebagaimana sudah difahami pada sub bab sebelumnya
bahwa asumsi program linier adalah semua parameter dari model
seperti merupakan konstanta yang diketahui.
Umumnya, nilai parameter yang digunakan pada suatu problema
adalah masih estimasi yang didasarkan pada prediksi keadaan
yang akan datang, oleh karena itu, seorang manajer dan staf
operasi riset akan mempertahankan skeptisme sehat mengenai
permasalahan nyata yang masih memungkinkan untuk
perubahan parameter model sehingga dapat berfungsi dengan
baik. Misalnya banyaknya sumber daya tertentu yang harus
tersedia untuk suatu aktivitas.
Pemahaman ini, sangatlah penting melakukan Analisis
Sensitivitas untuk memeriksa pengaruh solusi optimal yang
sudah dihasilkan oleh metode simpleks jika nilai parameternya
diganti dengan nilai lain yang masih memungkinkan. Biasanya ada
beberapa parameter yang bisa diubah nilainya tanpa
mengakibatkan perubahan pada penyelesaian optimal yang telah
dicapai. Namun demikian, tentu ada parameter jika dirubah
nilainya akan menghasilkan penyelesaian optimal baru. Keadaan
ini umumnya merupakan suatu hal yang sangat serius jika
penyelesaian aslinya kemudian merupakan nilai yang inferior
Operasi Riset Program Linier
97
secara substansial terhadap fungsi tujuannya atau bahkan
mungkin bisa menjadi tidak layak.
Analisis Sensitivitas dengan grafis tentunya hanya dapat
dilakukan untuk problema program linier yang mempunyai
variabel tidak lebih dari dua. Cara lain yang dapat dilakukan
adalah dengan menggunakan tabel simpleks. Ada enam tipe
perubahan yang akan dibahas, yaitu:
1. Perubahan koefisien fungsi tujuan untuk variabel nonbasis.
2. Perubahan koefisien fungsi tujuan untuk variabel basis.
3. Perubahan pada ruas kanan suatu pembatas.
4. Perubahan kolom untuk variabel nonbasis.
5. Penambahan suatu variabel aktivitas baru.
6. Penambahan suatu pembatas baru.
Jadi yang dibahas dalam kasus ini adalah analisis
sensitivitas terhadap koefisien fungsi tujuan meliputi
penempatan kisaran pada nilai koefisien secara khusus pada
koefisien variabel kontinu. Selama nilai aktual koefisien fungsi
tujuan berada dalam kisaran optimalitas, solusi layak dasar
sekarang akan tetap optimal. Jadi untuk variabel nonbasis,
kisaran optimalitas menyatakan nilai koefisien untuk variabel
yang akan tetap menjadi variabel nonbasis. Sebaliknya, kisaran
optimalitas untuk variabel basis menyatakan nilai koefisien fungsi
tujuan untuk variabel yang akan tetap menjadi bagian dari solusi
layak dasar optimal saat ini.
Untuk lebih dipahami lebih jelas pembahasan kasus
digunakan problema program linier awal dan dianggap telah
mencapai penyelesain optimal, kita sajikan sebagai berikut:
Operasi Riset Program Linier
98
Contoh 4.8
Maksimumkan:
Kendala: 8
Konversikan pada bentuk standar
Maksimumkan:
Kendala: 8
Iterasi 0
BV C 60 30 20 0 0 0
b
0 8 6 1 1 0 0 48
0 4 2 1,5 0 1 0 20
60 2 1,5 0,5 0 0 1 8
𝐶 -60 -30 -20 0 0 0 0
Iterasi 1
BV C 60 30 20 0 0 0
b
0 0 0 - 1 1 0 - 4 16
0 0 - 1 0,5 0 1 - 2 4
60 1 0,75 0,25 0 0 0,5 4
𝐶 0 15 - 5 0 0 30 240
Operasi Riset Program Linier
99
Iterasi 2 (Tabel optimal)
BV C 60 30 20 0 0 0
b
0 0 - 2 0 1 2 - 8 24
20 0 - 2 1 0 2 - 4 8
60 1 1,25 0 0 - 0,5 1,5 2
𝐶 0 15 0 0 10 10 280
Dari tabel iterasi 2 (tabel optimal) ini dapat didefinisikan
beberapa hal sebagai berikut:
𝐵 𝐵
yang merupakan
vektor m x 1.
𝐵
4.6.1 Perubahan Koefisien Fungsi Tujuan untuk Variabel
Nonbasis
Kasus ini terjadi karena adanya perubahan, baik pada
kontribusi keuntungan maupun pada kontribusi ongkos dari
kegiatan yang direpresentasikan oleh variabel nonbasis. Pada
contoh 4.8 di atas, satu-satunya variabel keputusan nonbasis
adalah , dan mempunyai nilai koefisien adalah . Jika
berubah, bagaimana pengaruhnya terhadap solusi optimal?.
Kita tahu bahwa perubahan dari 30 menjadi (30 + Δ) tidak
mengubah harga 𝐵 dan . Karena itu ruas kanan untuk tabel
optimal variabel basis (BV), yaitu 𝐵 , tidak akan berubah
sehingga BV tetap fisibel. Karena adalah variabel nonbasis,
Operasi Riset Program Linier
100
maka 𝐶 juga tidak akan berubah. Satu-satunya yang koefisien
baris 𝐶 -nya akan berubah karena perubahan ini adalah
.
Dengan demikian, BV akan tetap optimal jika , dan
BV akan menjadi suboptimal jika . Dalam hal terakhir ini,
harga mungkin dapat diperbaiki dengan memasukkan ke
dalam basis.
Dari contoh soal kita tahu bahwa:
101005,15,00420821
.60200. 1
BCBV
sehingga
Agar dan BV tetap optimal, maka (5 – Δ) harus ≥ 0
atau Δ ≤ 5. Sebaliknya, akan < 0 jika Δ > 5 sehingga BV
tidak lagi optimal. Artinya, jika harga naik atau turun
sebesar 5 atau kurang, maka BV akan tetap optimal,
tetapi jika naik atau turunnya lebih besar dari 5, maka BV
tidak lagi optimal.
Misalnya, jika , solusi basis saat ini akan menjadi
suboptimal karena , sehingga akan menjadi
entering variabel . Untuk mengetahui solusi optimal yang
baru, lanjutkan perhitungan dengan menggunakan
metode simpleks seperti biasa.
Operasi Riset Program Linier
101
4.6.2 Perubahan Koefisien Fungsi Tujuan untuk Variabel Basis
Mengubah koefisien fungsi tujuan variabel basis (BV)
artinya mengubah 𝐶 sehingga beberapa koefisien pada baris 0
(baris 𝐶 ) dari tabel optimal akan berubah.
Misalkan berubah dari 60 menjadi (60 + ). Maka 𝐶 yang
baru adalah [ 0 20 60+ ] sehingga:
5,15,00420821
.)60(200. 1BcBV
= [ 0 10 – 0,5 10 + 1,5 ]
Koefisien baris 0 (baris 𝐶 ) menjadi:
jjBVj caBcc ..ˆ 1
(i). 221
2 ..ˆ caBcc BV
= 305,1
26
.5,1105,0100
= 5 + 1,25
Karena 0ˆ2 c , maka 5 + 1,25 0
- 4
(ii). 551
5 ..ˆ caBcc BV
= 0010
.5,1105,0100
= 10 – 0,5
Karena 0ˆ5 c , maka 10 – 0,5 0
Operasi Riset Program Linier
102
20
(iii). 661
6 ..ˆ caBcc BV
= 0100
.5,1105,0100
= 10 + 0,5
Karena 0ˆ6 c , maka 10 + 1,5 0
320
Dari ketiga nilai di atas menunjukkan bahwa
penyelesaian basis saat ini akan tetap optimal sepanjang - 4,
20, dan 320 Dengan kata lain penyelesaian basis saat ini
akan tetap optimal jika - 4 20. Artinya, jika turun sebesar
4 atau kurang, atau c1 naik hingga 20, maka penyelesaian basis
saat ini akan tetap optimal. Atau sepanjang 56 = (60 – 4)
(60 + 20) = 80, penyelesaian basis saat ini akan tetap optimal,
tetapi jika < 56 atau > 80, maka penyelesaian basis saat ini
tidak lagi optimal. Jika penyelesaian basis saat ini tetap optimal,
maka harga variabel keputusannya juga tidak akan berubah
karena 𝐵 tidak berubah. Namun nilai optimal tentu saja
akan berubah. Contoh, jika = 70, maka
.
Lanjutkan perubahan pada yaitu berubah dari 20
menjadi (20 + )
4.6.3 Perubahan pada Ruas Kanan Pembatas
Dari sifat-sifat primal–dual kita tahu bahwa perubahan
ruas kanan pembatas ini tidak akan mengubah baris 0 (baris
𝐶 ) pada tabel optimal sehingga solusi basis saat ini tidak
Operasi Riset Program Linier
103
akan menjadi suboptimal. Yang mungkin berubah adalah ruas
kanan pada tabel optimal. Tetapi, sepanjang ruas kanan setiap
pembatas pada tabel optimal tetap nonnegatif, solusi basis saat
ini tetap fisibel dan optimal. Dalam hal ini, yang perlu kita lakukan
adalah menyubstitusikan harga-harga baru dari variabel
keputusan ke dalam persamaan baris sehingga diperoleh harga
yang baru.
Jika perubahan pada ruas kanan ini menyebabkan paling
sedikit ada satu ruas kanan pada tabel optimal yang menjadi
berharga negatif, maka solusi saat ini tidak lagi fisibel, dan
karenanya tidak lagi optimal. Sebagai contoh pada persoalan
sebelumnya, jika berubah dari 20 menjadi (20 + ), maka ruas
kanan menjadi:
5,0228224
820
48
5,15,00420821
1bB
Kita tahu bahwa solusi basis saat ini akan tetap optimal
jika:
24 + 2 0 atau - 12
8 + 2 0 atau - 4
2 – 0,5 0 atau 4
Dengan kata lain, solusi basis saat ini akan tetap optimal
jika - 4 4. Dengan demikian, sepanjang (20 – 4) (20 +
4) atau 16 24, solusi saat ini akan tetap fisibel dan
optimal. Tetapi harga Z tentu saja akan berubah.
Contoh: Jika = 22, maka ruas kanan yang baru adalah:
Operasi Riset Program Linier
104
11228
82248
5,15,00420821
1
1
3
4
bB
x
x
x
sehingga harga yang baru adalah:
30082248
101001
bBCBV
Jika kita mengubah harga ruas kanan pembatas
sedemikian sehingga solusi saat ini menjadi tidak fisibel lagi,
bagaimana kita dapat menentukan solusi optimal yang baru?
Misalkan kita mengubah menjadi 30. Ruas kanan yang
baru adalah sebagai berikut:
32844
83048
5,15,00420821
1
1
3
4
bB
x
x
x
Karena , sedangkan koefisien fungsi tujuan untuk
baris 0 (baris 𝐶 ) tidak berubah (tetap memenuhi syarat
optimalitas), maka untuk memperoleh solusi optimal yang baru,
kita harus menggunakan metode dual-simpleks.
4.6.4 Perubahan Kolom Variabel Nonbasis
Pada contoh 4.8, variabel nonbasis adalah yang
mempunyai kolom
5,126
2a
Operasi Riset Program Linier
105
Apa yang terjadi jika kolom tersebut berubah menjadi :
225
2a
Kita tahu bahwa perubahan ini tidak akan mengubah baik
𝐵 ataupun sehingga ruas kanan tabel optimal juga
tidak akan berubah. Yang akan berubah adalah , yaitu
. Tetapi, jika , maka solusi basis saat ini akan
tetap optimal. Dengan berubahnya kolom , maka :
Karena , maka solusi basis saat ini tidak lagi
optimal. Karena untuk pembatas pada tabel optimal
menjadi:
247
225
5,15,00420821
21aB
Karena , maka akan menjadi variabel basis pada
solusi optimal yang baru.
Jika perubahan kolom terjadi pada variabel basis, maka B
dan 𝐶 mungkin berubah sehingga baris 𝐶 dan ruas
kanan dari tabel optimal juga mungkin berubah. Dalam hal ini,
sebaiknya kita memecahkan kembali persoalannya dari awal.
4.6.5 Penambahan suatu Aktivitas
Pada situasi tertentu, kita mungkin memperoleh kesempatan untuk melakukan satu atau beberapa aktivitas baru. Dalam hal ini, kita harus menentukan apakah aktivitas baru ini
Operasi Riset Program Linier
106
sebaiknya dilakukan atau tidak, dengan mempertimbangkan kebaikan/keburukan aktivitas baru tersebut terhadap solusi basis yang telah diperoleh.
Sebagai contoh, misalkan akan dibuat produk ke-4 sehingga formulasi menjadi: Maksimumkan: Kendala: 8
Kita tahu bahwa ruas kanan seluruh pembatas dan
koefisien baris 𝐶 untuk variabel yang lama tidak akan
berubah. Karena itu, solusi basis saat ini akan tetap optimal jika .
Dari formulasi di atas kita peroleh:
Karena , maka solusi basis saat ini tetap optimal sehingga produk ke-4 sebaiknya tidak dibuat. Alasannya adalah karena untuk setiap unit produk ke-4 yang dibuat, kita hanya akan mengeluarkan ongkos sebesar 5, tanpa memperoleh keuntungan apa-apa. 4.6.6 Penambahan Pembatas Baru
Jika suatu pembatas baru ditambahkan, maka kita akan berada pada salah satu dari ketiga kasus berikut: Kasus 1 : Solusi optimal saat ini memenuhi pembatas baru. Kasus 2 : Solusi optimal saat ini tidak memenuhi pembatas
baru, tetapi persoalan tetap mempunyai solusi fisibel. Kasus 3 : Pembatas baru menyebabkan persoalan tidak
mempunyai solusi fisibel.
Operasi Riset Program Linier
107
Contoh kasus 1:
Misalkan pada contoh soal ditambahkan pembatas
. Maka solusi basis saat ini, yaitu
dan akan memenuhi
pembatas baru tersebut. Karena solusi basis saat ini tetap
fisibel dan tetap 280, maka solusi ini tatap optimal.
Contoh kasus 2:
Misalkan pada contoh 4.8 ditambahkan pembatas
. Karena saat ini , maka solusi saat ini tidak lagi
fisibel. Untuk mencari solusi optimal yang baru, ubahlah
ketidaksamaan menjadi persamaan ,
kemudian kalikan dengan (-1) sehingga diperoleh
. Tambahkan pembatas ini ke dalam tabel
sehingga diperoleh:
Tabel 1. Tabel Optimal dengan Penambahan Pembatas Baru
BV C 60 30 20 0 0 0 0
B
0 0 - 2 0 1 2 - 8 0 24
20 0 - 2 1 0 2 - 4 0 8
60 1 1,25 0 0 - 0,5 1,5 0 2
0 0 -1 0 0 0 0 1 -1
𝐶 0 5 0 0 10 10 0 280
Lakukan iterasi penyelesaian dual simpleks sampai diperoleh
tabel optimal:
Operasi Riset Program Linier
108
Tabel 2 Iterasi 1
BV C 60 30 20 0 0 0 0
B
0 0 0 0 1 2 - 8 -2 26
20 0 0 1 0 2 - 4 -2 10
60 1 0 0 0 - 0,5 1,5 1,25 0,75
0 0 1 0 0 0 0 -1 1
zj - cj 0 0 0 0 10 10 5 275
Maka, jika pembatas ditambahkan terhadap persoalan
semula, penyelesaian optimal akan menjadi
Contoh kasus 3 :
Misalkan pada contoh soal ditambahkan pembatas
sehingga diperoleh atau
. Tabelnya menjadi:
Tabel 3. Tabel Optimal dengan Penambahan Pembatas Baru
BV C 60 30 20 0 0 0 0
B
0 0 - 2 0 1 2 - 8 0 24
20 0 - 2 1 0 2 - 4 0 8
60 1 1,25 0 0 - 0,5 1,5 0 2
0 - 1 -1 0 0 0 0 1 -12
𝐶 0 5 0 0 10 10 0 280
Agar tetap menjadi basis, hilangkan pada baris dengan
cara mengganti baris 4 dengan (baris 3 + baris 4). Hasilnya adalah
sebagai berikut:
Operasi Riset Program Linier
109
Tabel 4 Iterasi 2
BV C 60 30 20 0 0 0 0
B
0 0 - 2 0 1 2 - 8 0 24
20 0 - 2 1 0 2 - 4 0 8
60 1 1,25 0 0 - 0,5 1,5 0 2
0 0 0,25 0 0 - 0,5 1,5 1 -10
𝐶 0 5 0 0 10 10 0 280
Tabel 5 Iterasi 3
BV C 60 30 20 0 0 0 0
B
0 0 - 1 0 1 0 - 2 4 -16
20 0 - 1 1 0 0 2 4 -32
60 1 1 0 0 0 0 -1 12
0 0 - 0,5 0 0 1 - 3 - 2 20
𝐶 0 5 0 0 0 40 20 80
Tabel 6 Iterasi 4
BV C 60 30 20 0 0 0 0
B
0 0 0 -1 1 0 - 4 0 16
20 0 1 - 1 0 0 - 2 - 4 32
60 1 0 1 0 0 2 3 - 20
0 0 0 - 0,5 0 1 - 4 - 4 36
𝐶 0 5 0 0 0 40 20 - 240
Perhatikan bahwa pada Tabel 6 terakhir kita
memperoleh:
Operasi Riset Program Linier
110
Padahal syarat , sehingga
ruas kiri dari persamaan di atas tidak mungkinbernilai negatif (–
20). Artinya, jika pada persoalan semula ditambahkan pembatas
x1 + x2 ≥ 12, maka persoalan menjadi tidak mempunyai
penyelesaian feasibel.
4.7 Soal-soal
1. Dari suatu problema program linier diperoleh tabel
simpleks untuk iterasi awal dan iterakhit akhir sebagai
berikut:
Tabel Awal
BV C 4 5 9 11 0 0 0
B
0 1 1 1 1 1 0 0 15
0 7 5 3 2 0 1 0 120
0 3 5 10 15 0 0 1 100
𝐶 -4 -5 -9 -11 0 0 0 0
Tabel Akhir (Optimum)
BV C 4 5 9 11 0 0 0
B
4 1
0
0
0 0
0
1
9 0
1
0
𝐶 0
0
0
Operasi Riset Program Linier
111
Pertanyaan:
a. Buktikan bahwa jawaban optimum di atas tidak
berubah sekalipun ditambahkan pembatas (kendala)
baru
pada persoalan semula.
b. Bagaimana jawaban optimum yang baru jika koefisien
ruas kanan persamaan semula diubah
c. Bagaimana jika fungsi objektif menjadi
d. Bagaimana jawaban optimum yang baru jika
ditambahkan variabel baru yang mempunyai
koefisien sebagai berikut:
Dalam fungsi objektif = 13
Dalam kendala
2. Sebuah persoalan diformulasikan sebagai berikut:
Maksimumkan:
Kendala:
2
Operasi Riset Program Linier
112
Pada suatu iterasi diperoleh keadaan sebagai berikut:
BV C 0 0 0
B
0 0 6
1 0 4
-1 0 1 4
𝐶 2 0 0
Carilah elemen yang kosong
3. Diketahui problema program linier di bawah ini:
Maksimumkan:
Kendala:
2
Jika jawaban optimum persoalan di atas adalah:
BV C 3 2 0 0 0 0
B
3 1 0
0 0
2 0 1
0 0
0 0 0 -1 1 1 0 3
0 0 0
0 1
𝐶 0 0
0 0
Operasi Riset Program Linier
113
Bagaimanakah jawaban optimum yang baru jika:
a. Ruas kanan dari pembatas ke-1 dan ke-2 masing-
masing menjadi 7 dan 4?
b. Ditambahkan pembatas baru
c. Fungsi tujuan berubah mefungsi tujuan menjadi
d. Ditambahkan variabel baru dengan koefisien pada
fungsi tujuan 1,5 sedangkan koefisien pada kendala
ke-1, ke-2, dan ke-3 masing-masing adalah 0,75; 0,75
; dan -1 di mana
Operasi Riset Program Linier
114
BAB V
PROGRAM INTEGER
5.1 Pengertian Program Integer
Program integer atau integer programming (IP) adalah
bentuk lain dari program linier (LP) di mana asumsi
divisibilitasnya melemah atau hilang sama sekali. Bentuk ini
muncul karena dalam kenyataannya tidak semua variabel
keputusan dapat berupa bilangan pecahan.
Asumsi divisibilitas melemah, artinya sebagian dari nilai
variabel keputusan harus berupa integer dan sebagian lainnya
boleh berupa bilangan pecahan. Persoalan program integer di
mana hanya sebagian dari variabel keputusannya yang harus
integer disebut sebagai persoalan Mixed Integer Programming.
Tetapi jika seluruh variabel keputusan dari suatu persoalan
program linier (LP) harus berharga integer, maka persoalan
tersebut disebut sebagai persoalan Pure Integer Programming.
Dalam hal ini, asumsi divisibilitas dari program linier hilang sama
sekali.
Contoh
Maksimumkan: Z = 8x1 + 5x2
Kendala : x1 + x2 ≤ 6
9x1 + 5x2 ≤ 45
x1, x2 ≥ 0 ; x2 integer
Operasi Riset Program Linier
115
Tampaknya cukup untuk mendapatkan solusi bulat dari
masalah LP, dengan menggunakan metode simpleks biasa dan
kemudian membulatkan nilai-nilai pecah solusi optimum. Hal ini
bukan tugas mudah 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
perlu prosedur yang sistematis untuk mendapatkan solusi bulat
optimum terhadap masalah itu. Ada beberapa pendekatan solusi
terhadap masalah integer programing yaitu salah satu di
antaranya adalah pendekatan dengan cutting plane.
5.2 Metode Pemecahan Program Integer
Dalam program linier, metode simpleks didasari oleh
pengenalan bahwa pemecahan optimum terjadi di titik ekstrem
dari ruang solusi. Hasil yang penting ini pada intinya mengurangi
usaha pencarian pemecahan optimum dari sejumlah pemecahan
yang tidak terbatas menjadi sejumlah yang terbatas. Sebaliknya
Integer Linier Programming (ILP) memulai dengan sejumlah titik
pemecahan yang terbatas. Tetapi sifat variabel yang berbentuk
integer mempersulit perancangan sebuah algoritma yang efektif
untuk mencari secara langsung di antara titik integer yang layak
dari ruang penyelesaian.
Terdapat dua metode untuk menghasilkan batasan-
batasan khusus yang akan memaksa pemecahan optimum dari
masalah program linier yang dilonggarkan untuk bergerak ke arah
pemecahan integer yang diinginkan yaitu metode Branch and
Bound dan metode Bidang Pemotong (Gomory Cutting Plane).
Operasi Riset Program Linier
116
5.3 Metode Gomory (Cutting Plane Algorithm)
Suatu prosedur sistematik untuk memperoleh solusi
integer optimum terhadap pure integer programming pertama
kali dikemukakan oleh R.E. Gomory pada tahun 1958. Kemudian
prosedur ini diperluas untuk menangani kasus yang lebih sulit,
yaitu mixed integer programming.
Pembentukan kendala Gomory adalah begitu penting
sehingga memerlukan perhatian khusus. Misalkan tabel optimum
masalah Linier Programming yang disajikan merupakan solusi
optimum kontinu. Secara historis, metode bidang pemotong
adalah metode pertama yang diperkenalkan dalam literatur
Operasi Riset. Oleh karena itu, maka yang disajikan dalam tulisan
ini adalah bagaimana menemukan penyelesaian optimal yang
integer dengan menggunakan metode algoritma bidang
pemotong.
5.3.1 Algoritma Bidang Pemotong
Gagasan dari algoritma bidang pemotong adalah
mengubah himpunan cembung (conveks) dari bidang
pemecahan, sehingga titik ekstrem yang sesuai menjadi
semuanya integer. Perubahan seperti ini dalam batas ruang
pemecahan masih tetap menghasilkan sebuah himpunan
cembung. Juga perubahan ini harus dilakukan tanpa “mengiris”
setiap pemecahan integer yang layak dari masalah semula.
5.3.2 Algoritma Fraksional
Satu persyaratan dasar untuk penerapan algoritma ini
adalah bahwa semua koefisien dan konstanta sisi kanan dari
setiap kendala haruslah integer. Persyaratan dimaksud
diberlakukan karena seperti yang akan diperlihatkan kemudian
Operasi Riset Program Linier
117
bahwa, algoritma integer murni tidak membedakan antara
variabel biasa dan variabel slack dari masalah yang bersangkutan
dalam arti bahwa semua variabel harus integer. Adanya koefisien
pecahan dalam kendala tidak memungkinkan variabel slack untuk
memiliki nilai integer. Dalam kasus ini algoritma fraksional dapat
menyatakan bahwa tidak terdapat pemecahan yang layak,
sekalipun masalah tersebut memiliki pemecahan integer yang
layak dalam bentuk variabel bukan slack.
Perincian algoritma fraksional pertama membahas
masalah program linier yang dilonggarkan dipecahkan yaitu
dengan mengabaikan kondisi integer. Jika pemecahan optimal
ternyata integer, tidak ada lagi yang perlu dilakukan. Sebaliknya
batasan sekunder yang akan memaksa pemecahan bergerak ke
arah pemecahan integer dikembangkan sebagai berikut.
Anggaplah Tabel 5.1 merupakan tabel optimal terakhir untuk
program linier diketahui.
Variabel xi, (i = 1, 2, ... , m) mewakili variabel basis dan
variabel wj (j = 1, ..., n) adalah variabel nonbasis. Variabel-veriabel
ini telah diatur demikian untuk kemudahan. Pertimbangkan
persamaan ke-i di mana variabel dasar xi memiliki nilai
noninteger.
j
n
j
j
iii wx
1 , βj noninteger (baris sumber) (5.1)
Operasi Riset Program Linier
118
Tabel 5.1 Penyelesaian Optimal Metode Simpleks.
Dasar X1 ... xi ... xm w1 ... wj ... wn Pemecahan
Z 0 ... 0 ... 0 1c ...
jc ... nc βn
x1 1 ... 0 ... 0 11 ... j
1 ... n
1 β1
.
.
.
.
.
.
...
...
...
.
.
.
...
...
...
.
.
.
.
.
.
...
...
...
.
.
.
...
...
...
.
.
.
.
.
.
xi 0 ... 1 ... 0 1i ... j
i ... n
i βi
.
.
.
.
.
.
...
...
...
.
.
.
...
...
...
.
.
.
.
.
.
...
...
...
.
.
.
...
...
...
.
.
.
.
.
.
xm 0 ... 0 ... 1 1m ... j
m ... n
m βn
Setiap persamaan seperti ini akan ditunjuk sebagai baris
sumber. Karena pada umumnya koefisien fungsi tujuan dapat
dijadikan integer, maka variabel Z juga integer dan persamaan Z
tersebut dapat dipilih sebagai baris sumber. Pada kenyataannya
bukti konvergensi dari algoritma ini mengharuskan Z berupa
integer.
Anggaplah
βi = [ βi ] = fi
fi = βi – [ βi] (bagian pecahan dari βi) (5.2)
dan
ij
j
i
j
i f ][
][ j
i
j
iijf (bagian pecahan dari j
i ) (5.3)
Di mana N = [a] adalah integer terbesar sedemikian rupa sehingga
N ≤ a. Disimpulkan bahwa 0 < fi < 1 dan 0 < fij ≤ 1; yaitu fi adalah
Operasi Riset Program Linier
119
pecahan yang positif secara ketat dan fij adalah pecahan
nonnegatif. Jadi baris sumber menghasilkan
j
n
j
j
iiij
n
j
iji wxwff ][][11
(5.4)
Agar semua variabel xi dan wj adalah integer, maka sisi kanan dari
persamaan (5.4) haruslah integer yang pada gilirannya
menyiratkan bahwa sisi kiri harus pula integer.
Dengan diketahui fij ≥ 0 dan wj ≥ 0 untuk semua i dan j
dapat disimpulkan bahwa
01
j
n
j
ij wf
Akibatnya: 11
i
n
j
jiji fwff
(5.5)
Karena
n
j
jiji wff1
haruslah integer berdasarkan
pengembangannya, satu kondisi untuk memenuhi sifat integer ini
menjadi
01
n
j
jiji wff
(5.6)
batasan terakhir ini dapat ditulis dalam bentuk:
i
n
j
jiji fwfS 1
(pemotongan fraksional) (5.7)
di mana Si adalah variabel slack nonnegatif yang berdasarkan
definisinya haruslah sebuah integer. Persamaan batasan ini
mendefinisikan pemotong fraksional. Dari Tabel 5.2, wj = 0 dan
jadi Si = -fi yang tidak layak. Ini berarti bahwa batasan baru
tersebut tidak dipenuhi oleh pemecahan yang diberikan. Metode
Operasi Riset Program Linier
120
dual simpleks dapat dipergunakan untuk ketidaklayakan ini
adalah yang setara dengan memotong bidang pemecahan ke arah
pemecahan integer yang optimal.
Jika pemecahan baru (setelah menerapkan dual simpleks)
adalah integer, maka proses iterasi berakhir. Jika tidak sebuah
pemotong fraksional baru akan dikembangkan dari tabel yang
dihasilkan dan metode dual simpleks dipergunakan sekali lagi
untuk ketidaklayakan ini. Prosedur ini diulangi sampai pemecahan
integer dicapai. Tetapi jika salah satu iterasi algoritma dual
simpleks tersebut menunjukkan bahwa tidak ada pemecahan
yang layak, maka masalah tersebut tidak memiliki pemecahan
integer yang layak.
Tabel 5.2 Penyelesaian Setelah Penambahan Pemotong
Frakasional.
Dasar x1 ... xi ... xm w1 ... wj ... wn Si Pemecahan
Z 0 ... 0 ... 0 1c ...
jc ... nc 0 βn
x1 1 ... 0 ... 0 11 ... j
1 ... n
1 0 β1
.
.
.
.
.
.
...
...
...
.
.
.
...
...
...
.
.
.
.
.
.
...
...
...
.
.
.
...
...
...
.
.
.
.
.
.
.
.
.
xi 0 ... 1 ... 0 1i ... j
i ... n
i 0 βi
.
.
.
.
.
.
...
...
...
.
.
.
...
...
...
.
.
.
.
.
.
...
...
...
.
.
.
...
...
...
.
.
.
.
.
.
.
.
.
xm 0 ... 0 ... 1 1m ... j
m ... n
m 0 βn
Si 0 ... 0 ... 0 -fi1 ... fij ... fin 1 -fi
Operasi Riset Program Linier
121
Algoritma ini disebut sebagai metode fraksional karena
semua koefisien bukan nol dari pemotongan yang dihasilkan
adalah kurang dari satu. Algoritma fraksional dapat menunjukkan
bahwa ukuran tabel simpleks dapat menjadi sangat besar
sementara pemotongan-pemotongan baru ditambahkan ke
dalam suatu batasan masalah. Ini tidak benar, sebab pada
kenyataannya jumlah total batasan ke dalam suatu masalah yang
ditambahkan tidak melebihi dari jumlah variabel dalam masalah
semula yaitu (m + n). Hasil ini berlaku karena jika masalah yang
ditambahkan mencakup lebih dari (m + n) batasan, maka satu
variabel slack Si atau lebih yang berkaitan dengan pemotongan
fraksional tersebut harus menjadi basis. Dalam kasus ini,
persamaan yang bersangkutan menjadi berlebihan dan jelas
harus dikeluarkan dari tabel.
Algoritma fraksional memiliki dua kelemahan:
1. Kesalahan pembulatan yang berkembang dalam
perhitungan otomatis kemungkinan besar akan
mendistorsi data semula terutama dengan
bertambahnya ukuran masalah.
2. Pemecahan masalah tetap tidak layak dalam arti
bahwa tidak ada pemecahan integer yang dapat
diperoleh sampai pemecahan integer optimal dicapai.
Ini berarti bahwa tidak ada pemecahan integer yang
baik jika perhitungan dihentikan sebelum mencapai
pemecahan integer yang optimal.
Kelemahan pertama dapat diatasi dengan pengembangan
algoritma integer semua-integer. Algoritma ini dimulai dengan
tabel awal yang semuanya terdiri dari integer (semua koefisien
integer) yang sesuai untuk pengembangan algoritma dual
Operasi Riset Program Linier
122
simpleks. Pemotongan khusus lalu dikembangkan sedemikian
rupa sehingga penambahannya ke tabel akan mempertahankan
sifat integer dari semua koefisien. Tetapi fakta bahwa pemecahan
tetap tidak layak sampai pemecahan integer yang optimal dicapai
tetap menyajikan suatu kelemahan.
Kelemahan kedua dipertimbangkan dengan
mengembangkan algoritma bidang pemotong yang dimulai
dengan integer dan layak, tetapi tidak optimal. Iterasi berlanjut
untuk tetap layak dan integer sampai pemecahan optimum
dicapai. Dalam hal ini algoritma bersifat layak primal
sebagaimana dapat dibandingkan dengan algoritma fraksional
yang bersifat layak dual, tetapi algoritma ini tampaknya tidak
menjanjikan secara perhitungan.
5.4 Kekuatan Pemotongan Fraksional
Pengembangan algoritma di atas menunjukkan bahwa
pertidaksamaan tertentu yang mendefinisikan sebuah
pemotongan bergantung secara langsung pada baris sumber
yang diperoleh dari pemotongan yang dihasilkan. Jadi
pertidaksamaan yang berbeda dapat dihasilkan dari tabel
simpleks yang diketahui. Hasil ini dapat diungkapkan secara
matematis sebagai berikut. Pertimbangkan dua pertidaksamaan:
ij
n
j
ij fwf 1
(5.8)
kj
n
j
kj fwf 1
(5.9)
Operasi Riset Program Linier
123
Pemotongan persamaan (5.8) dikatakan lebih kuat daripada
persamaan (5.9) jika fi ≥ fk dan fij ≤ fkj untuk semua j dengan
pertidaksamaan yang ketat berlaku setidaknya satu kali.
Definisi kekuatan ini sulit diterapkan dalam perhitungan.
Jadi aturan empiris yang dirancang dapat mencerminkan definisi
ini. Kedua persamaan ini menyatakan pemotongan dari baris
sumber yang memiliki (5.8) maksi{fi} atau (5.9)
n
j
ij
i
i
f
f
1
max .
Persamaan (5.9) lebih efektif karena lebih dekat mewakili definisi
kekuatan yang diberikan.
Contoh 5.1
Maksimumkan:
Kendala:
Tabel Awal
BV C 7 9 0 0
B
0 -1 3 1 0 5
0 7 1 0 1 35
𝐶 -7 -9 0 0 0
Setelah diselesaikan dengan metode simpleks, diperoleh
penyelesaian optimum sebagai berikut:
Operasi Riset Program Linier
124
Tabel Optimal
BV C 7 9 0 0
B
0 0 1
0 1 0
𝐶 0 0
63
Penyelesaian pada tabel optimal di atas kemudian disebut
sebagai penyelesaian kontinu optimum. Karena hasilnya masih
belum integer, maka diperlukan pembatas tambahan. Karena
sama-sama merupakan noninteger, maka salah satu
dapat dipilih untuk menurunkan persamaan pembatas baru
tersebut. Kemudian variabel yang terpilih harus memberikan
ketidaksamaan yang “kuat”, yaitu yang dapat mempercepat
pencapaian penyelesaian integer optimum.
Misalkan kedua pertidaksamaan yang dimaksud dapat
dituliskan sebagai berikut (hal ini terjadi karena antara variabel
mempunyai nilai pecahan yang sama besar):
(i)
dan
(ii)
Ketidaksamaan (i) dikatakan “lebih kuat” dari (ii) jika dan
untuk semua harga . Definisi “kekuatan” ini dijabarkan
menjadi suatu aturan yang mengatakan bahwa pembatas baru
harus diturunkan dari baris yang mempunyai:
Operasi Riset Program Linier
125
1) , artinya dari baris dengan pecahan terbesar
atau
2)
, artinya dari baris dengan rasio
terbesar.
Kembali pada persoalan di atas, karena kedua harga variabel
keputusan pada solusi optimal mempunyai harga pecahan yang
sama besar
, maka tidak ada harga . Jadi
pemilihan harus didasarkan pada aturan 2) dengan cara sebagai
berikut:
Mengubah koefisien pembatas yang merupakan bilangan
bertanda negatif, sedemikian hingga akhirnya diperoleh
bilangan positif. Pada contoh 5.1 di atas, koefisien dari
baris persamaan adalah
yang diubah dengan cara:
.
Selanjutnya, koefisien dari persamaan ini
dinyatakan sebagai
.
Mencari harga maksimum dari rasio
.
Dengan demikian diperoleh:
Persamaan :
Persamaan :
maka persamaan terpilih untuk menurunkan persamaan
pembatas baru.
atau
Operasi Riset Program Linier
126
Persamaan pembatas barunya adalah:
masukkan ke dalam tabel semula hingga didapat:
Tabel Perubahan
BV C 7 9 0 0 0
B
0 0 1
0
0 1 0
0
0 0 0
1
𝐶 0 0
0 63
Dengan menggunakan metode dual simpleks diperoleh:
Tabel Dual Simpleks
BV C 7 9 0 0 0
B
9 0 1 0 0 1 3
7 1 0 0
0 0 0 1
𝐶 0 0 0
8 59
Karena penyelesaian pada tabel dual simpleks di atas masih
noninteger, maka harus dibuat lagi pembatas baru dari
persamaan (karena pecahannya terbesar
.
Operasi Riset Program Linier
127
Masukkan pada tabel terakhir hingga didapat:
Tabel Akhir (Cutting Plane)
BV C 7 9 0 0 0 0
B
9 0 1 0 0 1 0 3
7 1 0 0
0
0 0 0 1
0
0 0 0 0
1
𝐶 0 0 0
8 0 59
Dengan metode dual simpleks, akhirnya didapat penyelesaian
integer optimal:
Tabel Akhir (Optimal)
BV C 7 9 0 0 0 0
B
9 0 1 0 0 1 0 3
7 1 0 0 0 -1 1 4
0 0 0 1 0 -4 1 1
0 0 0 0 1 6 -7 4
𝐶 0 0 0 0 2 7 55
Penyelesaian integer optimum telah tercapai dengan
untuk
Operasi Riset Program Linier
128
5.5 Soal-soal
1. Selesaikan persoalan integer berikut ini:
Maksimum:
Kendala: 1
2. Maksimalkan:
Kendala:
adalah bilangan bulat
3. Sebuah perusahaan mendapat tawaran untuk mengangkut 5
jenis barang pada waktu bersamaan. Untuk setiap kilogram
barang yang diangkutnya, perusahaan yang memiliki
pesawat tersebut akan memperoleh Rp 100,00 ditambah
sejumlah bonus tertentu yang tidak bergantung pada jenis
barang. Pesawat dapat mengangkut maksimum 2.000 kg.
Data mengenai barang yang diangkut adalah sebagai berikut:
Jenis Barang Berat (kg) Volume (ft3) Bonus (Rp)
Barang Kelontong 1.000 70 75.000,00
Sepeda Motor 1.100 100 90.000,00
Makanan Kaleng 700 100 120.000,00
Obat-obatan 800 80 110.000,00
Beras 500 50 70.000,00
Operasi Riset Program Linier
129
a. Formulasikan persoalan di atas sebagai persoalan
programa integer.
b. Jika ternyata bobot barang tidak menjadi masalah
tetapi volume kabin maksimum adalah 200 ft3, maka
barang apa saja yang sebaiknya diangkut.
Operasi Riset Program Linier
130
BAB VI
MODEL TRANSPORTASI
Model transportasi berkaitan dengan penentuan rencana
berbiaya rendah untuk mengirimkan satu barang dari sejumlah
sumber (misalnya, pabrik) ke sejumlah tujuan (misalnya, gudang).
Model ini dapat diperluas secara langsung untuk mencakup
situasi-situasi praktis dalam bidang pengendalian mutu,
penjadwalan dan penugasan kerja, di antara bidang-bidang
lainnya.
Model transportasi pada dasarnya merupakan sebuah
programa linier yang dipecahkan oleh metode simpleks biasa.
Tetapi, strukturnya yang khusus memungkinkan pengembangan
sebuah prosedur pemecahan, yang disebut teknik trasportasi,
yang lebih efisien dalam hal perhitungan.
Ciri-ciri khususpersoalan transportasi adalah:
1. Terdapat sejumlah sumber dan sejumlah tujuan tertentu.
2. Kuantitas komoditas atau barang yang didistribusikan dari
setiap sumber dan yang diminta oleh setiap tujuan, besarnya
tertentu.
3. Komoditas yang dikirim atau diangkut dari suatu sumber ke
suatu tujuan, besarnya sesuai dengan permintaan dan atau
kapasitas sumber.
Operasi Riset Program Linier
131
4. Ongkos pengangkutan komoditas dari suatu sumber ke suatu
tujuan, besarnya tertentu.
6.1 Definisi dan Aplikasi Model Transportasi
Dalam arti sederhana, model transportasi berusaha
menentukan sebuah rencana transportasi sebuah barang dari
sejumlah sumber ke sejumlah tujuan. Data dalam model ini
mencakup:
1. Tingkat penawaran di setiap sumber dan sejumlah permintaan
di setiap tujuan.
2. Biaya transportasi per unit barang dari setiap sumber ke setiap
tujuan.
Tujuan dari model ini adalah menentukan jumlah yang
harus dikirimkan dari setiap sumber ke setiap tujuan sedemikian
rupa sehingga biaya transportasi total diminimumkan.
Asumsi dasar dari model ini ialah bahwa biaya
transportasi di sebuah rute tertentu adalah proporsional secara
langsung dengan jumlah unit yang dikirimkan.
Gambar 6.1 memperlihatkan sebuah model transportasi
dari sebuah jaringan dengan m sumber dan n tujuan. Sebuah
sumber atau tujuan diwakili dengan sebuh node. Busur yang
menghubungkan sebuah sumber dan sebuah tujuan mewakili
rute pengiriman barang tersebut. Jumlah penawaran di sumber i
adalah dan permintaan di tujuan j adalah . Biaya unit
transportasi antara sumber i dan tujuan j adalah .
Operasi Riset Program Linier
132
Gambar 6.1 Model Transportasi dari Suatu Jaringan
Anggaplah mewakili jumlah barang yang dikirimkan
dari sumber i ke tujuan j; maka model programa linier yang
mewakili masalah transportasi adalah sebagai berikut:
Meminimumkan:
Dengan batasan:
untuk semua i dan j
Kelompok batasan pertama menetapkan bahwa jumlah
pengiriman dari sebuah sumber tidak dapat melebihi
penawarannya; demikian pula, kelompok batasan kedua
mengharuskan bahwa jumlah pengiriman ke sebuah tujuan harus
memenuhi permintaannya.
Model diatas menyiratkan bahwa penawaran total harus
setidaknya sama dengan permintaan total Ketika
Unit Permintaan
Gambar 6.1
1
2
m
1
2
n
Sumber Tujuan
1 →
2 →
→
→ 1
→ 1
→ 1
Unit Penawaran
Model Transportasi dari Suatu Jaringan
Operasi Riset Program Linier
133
penawaran total sama dengan permintaan total
Formulasi yang dihasilkan disebut model
transportasi berimbang (balanced transportation model). Model
ini berbeda dengan model di atas hanya dengan fakta bahwa
semua batasan adalah persamaan yaitu:
Dalam kehidupan nyata tidak selalu dapat dipastikan
bahwa penawaran sama dengan permintaan atau melebihinya.
Tetapi, sebuah model transportasi dapat selalu berimbang.
Pengimbangan ini, disamping kegunaannya dalam pemodelan
situasi praktis tertentu, adalah penting untuk pengembangan
sebuah metode pemecahan yang sepenuhnya memanfaatkan
struktur khusus dari model tranportasi ini
6.2 Pemecahan Masalah Transportasi
Untuk menyelesaikan persoalan transportasi, harus
dilakukan langkahlangkah sebagai berikut:
1. Tentukan pemecahan awal yang layak.
2. Tentukan variabel masuk (entering variabel) dari variabel-
variabel nonbasis. Bila semua variabel sudah memenuhi
kondisi optimum, STOP. Bila belum, lanjutkan langkah 3.
3. Tentukan variabel keluar (leaving variabel) di antara
variabel-variabe basis yang ada, kemudian hitung solusi yang
baru. Kembali ke langkah 2.
Operasi Riset Program Linier
134
Langkah 1: Menentukan Penyelesaian Fisibel Basis Awal
Ada tiga metode yang biasa digunakan untuk
menentukan penyelesaian fisibel basis awal adalah:
6.2.1 Metode Pojok Kiri Atas-Pojok Kanan Bawah (Northwest
Corner Rule/NCR)
Prosedur yang digunakan dalam menyelesaikan persoalan
transportasi dengan metode NCR adalah sebagai berikut:
Mulai dari pojok kiri atas, alokasikan sebesar
. Artinya: jika maka ; jika
maka . Kalau , maka selanjutnya yang
mendapat giliran untuk dialokasikan adalah sebesar
; kalau , maka selanjutnya
yang mendapat giliran untuk dialokasikan adalah sebesar
, demikian seterusnya.
Contoh 6.1
Tabel 6.1 Contoh Pemakaian Metode NCR
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 5 10
2 12 7 9 20
25 5 15 5
3 0 14 16 18
5 5
5 15 15 10
Operasi Riset Program Linier
135
Langkah-langkahnya adalah:
Langkah selanjutnya ialah mengisi sampai penuh dengan
mengalokasikan sebesar pada , yaitu jumlah kekuarangan
yang terjadi dalam pemenuhan kebutuhan pada
Dengan melanjutkan prosedur di atas, maka akan diperoleh
berturut-turut: , , yang bersama-
sama dengan membentuk penyelesaian fisibel
basis awal. Pada iterasi pertama ini diperoleh biaya transportasi
totalnya adalah: 𝐶
.
6.2.2 Metode Biaya Terendah (Least Cost)
Prinsip cara ini adalah pemberian prioritas pengalokasian
pada tempat yang mempunyai satuan ongkos terkecil. Dengan
menggunakan contoh 6.1 di atas, kita lihat adalah
ongkos terkecil dari keseluruhan tabel. Maka
mendapat prioritas pengalokasian pertama kali. Jumlah unit yang
dialokasikan masing-masing adalah
dan . Selanjutnya lihat ongkos terkecil
berikutnya, yaitu . Tetapi, karena tujuan kedua telah
terisi penuh, maka lihat ongkos terkecil berikutnya, diperoleh
. Alokasikan sebesar
Dengan melakukan prosedur di atas, diperoleh .
Maka dan bersama-sama membentuk
penyelesaian fisibel basis awal.
Operasi Riset Program Linier
136
Tabel 6.2 Contoh Pemakaian Metode Least Cost
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 0 15 0
2 12 7 9 20
25 15 10
3 0 14 16 18
5 5
5 15 15 10
Biaya total 𝐶
.
Hasil yang dicapai pada metode least cost ternyata lebih baik
(lebih rendah) daripada yang diperoleh dengan metode NCR.
6.2.3 Metode Pendekatan Vogel
(Vogel’s Approximation Method /VAM)
Cara ini merupakan cara terbaik dibandingkan dengan
kedua cara di atas. Langkah-langkah pengerjaannya adalah:
1. Hitung penalty untuk tiap kolom dan baris dengan jalan
mengurangkan elemen ongkos terkecil dari yang kedua
terkecil.
2. Selidiki kolom/baris dengan penalty terbesar. Alokasikan
sebanyak mungkin pada variabel dengan ongkos terkecil,
sesuaikan supply dengan demand, kemudian tandai kolom
atau baris yang sudah terpenuhi. Kalau ada 2 buah
baris/kolom yang terpenuhi secara simultan, pilih salah satu
untuk ditandai, sehingga supply/demand pada baris/kolom
yang tidak terpilih adalah nol. Setiap baris/kolom dengan
supply/demand sama dengan nol, tidak akan terbawa lagi
pada perhitungan penalty berikutnya.
Operasi Riset Program Linier
137
a. Bila tinggal 1 kolom/baris yang belum ditandai, STOP.
b. Bila tinggal 1 kolom/baris dengan supply/demand positip
yang belum ditandai, tentukan variabel basis pada
kolom/baris dengan cara ongkos terkecil (least cost).
c. Bila semua baris dan kolom yang belum ditandai
mempunyai supply dan demand sama dengan nol,
tentukan variabel-variabel basis yang berharga nol
dengan cara ongkos terkecil. Kemudian STOP.
d. Jika 3a, b dan c tidak terjadi, hitung kembali penalty
untuk baris/kolom yang belum ditandai. Kembali ke
nomor 2.
Contoh 6.2
Tabel 6.3 Iterasi 1 Tujuan Penalty Baris
1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 10 15 0
2 12 7 9 20
25 2 15 10
3 0 14 16 18
5 14*
5 15 15 10
Penalty
Kolom 10 7 7 7
Karena baris ketiga memiliki penalty terbesar (= 14) dan karena
merupakan ongkos terkecil di dalam barisnya, maka
alokasikan . Dengan demikian, baris 3 dan kolom 1 sudah
terpenuhi secara simultan. Dalam hal ini kita bisa memilih baris 3
atau kolom 1 yang akan ditandai. Misalkan dipilih kolom 1 untuk
ditandai, maka sisa supply untuk baris 3 menjadi 0.
Operasi Riset Program Linier
138
Tabel baru menjadi:
Tabel 6.4 Iterasi 2 Tujuan Penalty Baris
1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 11*
2 12 7 9 20
25 2
3 0 14 16 18
0 5
0 15 15 10
Penalty
Kolom 7 11 9
Selanjutnya kita ulangi menghitung penalty. Kita lihat bahwa baris
1 dan kolom 3 mempunyai penalty yang sama (= 11), sehingga
kembali kita dapat memilih salah satu untuk ditandai.
Misalkan dipilih kolom 3 untuk ditandai, maka alokasikan
. Supply untuk baris 2 sekarang menjadi 10.
Tabel 6.5 Iterasi 3 Tujuan Penalty Baris
1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 11
2 12 7 9 20
10 13* 15
3 0 14 16 18
0 5
0 15 0 10
Penalty
Kolom 7 0 9
Operasi Riset Program Linier
139
Dengan menghitung penalty yang baru, diperoleh penalty
terbesar untuk baris 2 (= 13) sehingga alokasikan .
Kemudian tandai baris 2.
Tabel 6.6 Iterasi 4 Tujuan
1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15
2 12 7 9 20
0 10 15
3 0 14 16 18
0 5
0 5 0 10
Supply yang masih tersedia adalah 15 (baris 1), sedangkan
demand yang belum terpenuhi adalah kolom 2 sebanyak 5 dan
kolom 4 sebanyak 10.
Karena tidak ada pilihan lain, maka alokasikan dan
. Pengisian tabel selesai dengan solusi fisibel basis awal:
, , , dan . Dari hasil
perhitungan di atas, maka tabel optimumnya adalah:
Tabel 6.7 Iterasi Optimum Tujuan
1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 5 10
2 12 7 9 20
25 10 15
3 0 14 16 18
5 5
5 15 15 10
Operasi Riset Program Linier
140
Biaya total: C = 5 x 0 + 10 x 11 + 10 x 7 + 15 x 9 + 5 x 0 = 315
Langkah 2 dan 3: Menentukan Entering Variabel dan Leaving
Variabel
Menentukan entering dan leaving variabel adalah tahap
berikutnya dari teknik pemecahan persoalan transportasi, setelah
solusi fisibel basis awal diperoleh. Ada dua cara yang bisa
digunakan dalam menentukan entering dan leaving variable ini,
yaitu dengan menggunakan metode stepping stone atau metode
multipliers.
6.2.4 Metode Stepping Stone
Untuk menentukan entering dan leaving variable ini,
terlebih dahulu haris dibuat suatu loop tertutup bagi setiap
variabel nonbasis. Loop tersebut berawal dan berakhir pada
variabel nonbasis tadi, di mana tiap sudut loop haruslah
merupakan titik-titik yang ditempati oleh variabel-variabel basis
dalam tabel trasportasi. Sebagai contoh, kita lihat kembali tabel
terakhir yang diperoleh dari cara NCR, Tabel 6.1 berikut ini:
Tabel 6.8 Contoh Metode Stepping Stone
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 5 10
2 12 7 9 20
25 5 15 5
3 0 14 16 18
5 5
5 15 15 10
Operasi Riset Program Linier
141
Dari Tabel 6.8 di atas diperoleh variabel basis awal
, masing-masing dengan harga 5, 10, 5, 15, 5,
dan 5. Sampai disini diperoleh solusi awal C = (5) (10) + (10) (0) +
(5) (7) + (15) (9) + (5) (20) + (5) (18) = 410. Dalam hal ini loop
digunakan untuk memeriksa apakah bisa diperoleh penurunan
ongkos (C) jika variabel nonbasis dimasukkan menjadi variabel
basis. Dengan cara memeriksa semua variabel nonbasis yang
terdapat dalam suatu iterasi itulah kita dapat menentukan
entering variabel.
Sebagai contoh, kita kembali pada Tabel 6.8. Misalkan
kita akan memeriksa apakah variabel nonbasis dapat
dimasukkan menjadi variabel basis sehingga ongkos totalnya
berkurang. Untuk itu alokasikan sebanyak 1 satuan barang
kepada . Mengingat bahwa kuantitas barang
pada masing-masing baris atau kolom harus tetap, maka
perubahan harga dari 0 menjadi 1 mengakibatkan perubahan
pada harga variabel basis (yang berada pada kolom 1) sebesar
1 sehingga menjadi = 4. Demikian pula halnya dengan
variabel yang berada pada baris 2 sehingga berubah menjadi
4. Perubahan yang terjadi pada C adalah: C = (4) (10) + (11) (0) +
(1) (12) + (4) (7) + (15) (9) + (5) (20) + (5) (18) = 405. Dibandingkan
dengan solusi sebelumnya (C = 410), maka jelaslah bahwa
dapat dimasukkan sebagai entering variabel, dimana
pengalokasian 1 unit barang kepada akan mengakibatkan
penurunan ongkos sebesar 5 (lihat Tabel 6.9).
Operasi Riset Program Linier
142
Tabel 6.9 Pemasukan Variabel Nonbasis Menjadi Variabel
Basis
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 4 11
2 12 7 9 20
25 1 4 15 5
3 0 14 16 18
5 5
5 15 15 10
Untuk memudahkan perhitungan, buatlah sebuah loop
tertutup untuk masingmasing pengecekan. Misalnya untuk
variabel tadi (lihat Tabel 6.10).
Kalau kita pandang 1 unit pengalokasian kepada
berasal dari pemindahan 1 unit pada kolom 2 ke kolom 1, maka
untuk menjaga agar kuantitasl total pada kolom ke 2 tidak
berubah dan kuantitas pada kolom 1 tidak berlebih, haruslah dari
kolom 1 dipindahkan ke kolom 2 sebesar 1 unit pula. Misalkan
yang berubah itu adalah menjadi 4, dan 1 unit dipindahkan
dari kepada sehingga menjadi 11. Dengan cara yang
sama menjadi 1 dan menjadi 4 sebagai perimbangannya
(lihat Tabel 6.9).
Operasi Riset Program Linier
143
Tabel 6.10 Loop Tertutup untuk Variabel Nonbasis
Akibat “perpindahan antar kolom” ini terhadap ongkos
total hanyalah berkisar pada elemen-elemen ongkos tempat
dilakukannya perpindahan tersebut, yaitu .
Dalam hal ini, akibat perpindahan dari kepada sebesar 1
unit, maka terjadi penurunan ongkos sebesar . Begitu
pula yang terjadi pada perpindahan dari kepada ,
penurunan ongkosnya adalah sebesar .
Kalau penurunan ongkos ini diberi tanda minus (-) dan
pertambahan ongkos diberi tanda plus (+), maka perubahan total
ongkos yang terjadi, bila dialokasikan sebanyak 1 unit terhadap
variabel nonbasis , adalah:
Perubahan harga variabel-variabel basis dan nonbasis ini
tentu saja dapat pula dipandang sebagai “perpindahan
antarbasis” dan tidak akan mempengaruhi hasil perhitungan.
Bahkan ada kalanya dibutuhkan “perpindahan antarkolom”
sekaligus “perpindahan antar baris”, misalnya untuk memeriksa
. Jika = perubahan ongkos akibat pengalokasian 1 unit
produk ke variabel nonbasis , maka dengan cara yang sama
1 2 3 4
1
2
3
5 10
5 21 15 5
5
Operasi Riset Program Linier
144
akan diperoleh berturut-turut:
, sehingga diperoleh Tabel 6.11.
Tabel 6.11 Penambahan dan Penurunan Ongkos Transportasi
per unit untuk masing-masing Variabel Nonbasis
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 5 10 (18) (-2)
2 12 7 9 20
25 (-5) 5 15 5
3 0 14 16 18
5 (-15) (9) (9) 5
5 15 15 10
Selanjutnya dipilih variabel nonbasis yang akan
menyebabkan penurunan ongkos terbesar sebagai entering
variabel. Dari iterasi Tabel 6.11 di atas dipilih sebagai entering
variable karena memberikan penurunan ongkos yang terbesar
yaitu sebanyak 15 satuan ongkos per unit. Dengan demikian, kita
dapat membuat sebuah loop yang berawal dan berakhir pada
variabel (lihat Tabel 6.12).
Operasi Riset Program Linier
145
Tabel 6.12 Loop dari Variabel
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 5(-) 10 (+) (18) (+) (-2)
2 12 7 9 20
25 5 (-) 15 5
3 0 14 16 18
5 (+) 5
5 15 15 10
Tanda (+) dan (-) menyatakan bahwa variabel yang
bersangkutan (pada masing-masing kotak) akan bertambah atau
berkurang besarnya sebagai akibat perpindahan kolom dan
perpindahan baris.
Leaving variable dipilih dari variabel-variabel sudut loop
yang bertanda (-). Pada contoh di atas, di mana telah terpilih
sebagai entering variable, calon-calon leaving variable-nya adalah
. Dari calon-calon ini, pilihlah salah satu yang
nilainya paling kecil. Pada contoh di atas kebetulan ketiganya
bernilai sama (= 5) sehingga kita bisa memilih salah satu untuk
dijadikan leaving variable. Misalkan dipilih sebagai leaving
variable, maka nilai naik 5 dan nilai-nilai variabel basis yang di
sudut loop juga berubah (bertambah atau berkurang 5 sesuai
dengan tanda (+) atau (-) ).
Tabel penyelesaian baru ini adalah seperti pada Tabel
6.13 dengan ongkos transportasi sebesar: C = (0 x 10) + (15 x 0) +
(0 x 7) + (15 x 9) + (10 x 20) + (5 x 0) = 335
.
Operasi Riset Program Linier
146
Tabel 6.13 Tabel solusi baru setelah terpilih sebagai
entering variable dan menjadi leaving variable
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 0 15
2 12 7 9 20
25 0 15 10
3 0 14 16 18
5 5
5 15 15 10
Bandingkan dengan solusi awal pada Tabel 6.8 yang ongkos
transportasinya C = 410. Selisih ongkos transportasi (410 – 335 =
75) sama dengan hasil perkalian antara:
(jumlah unit yang ditambahkan pada ) x (penurunan ongkos
per unit) = (5) x (15).
Perhatikan:
Angka 0 pada dan adalah variabel basis yang berharga 0.
Jadi, tidak boleh dihilangkan karena masih masuk dalam basis,
tidak sama dengan kotak-kotak lain yang tidak ada angkanya
(variabel nonbasis).
Sampai di sini kita masih harus memeriksa, barangkali
nilai fungsi tujuan masih bisa diperbaiki. Untuk itu lakukanlah
kembali langkah-langkah yang sudah kita kerjakan, dengan
menggunakan Tabel 6.13 sebagai solusi awal (pengganti Tabel
6.8).
Operasi Riset Program Linier
147
Kita dapatkan:
Variabel nonbasis Perubahan ongkos Per unit
Dengan demikian kita memilih sebagai entering variable.
Tabel 6.14
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 0 (-) 15 (+)
2 12 7 9 20
25 (+) 0 (-) 15 10
3 0 14 16 18
5 5
5 15 15 10
Tabel 6.15
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 15(-)
2 12 7 9 20
25 0 0(+) 15 10(-)
3 0 14 16 18
5 5
5 15 15 10
Operasi Riset Program Linier
148
Pada loop yang berasal dan berakhir pada ini, leaving
variable-nya ada dua, yaitu dan . Karena keduanya
berharga 0, kita bisa memilih salah satu untuk dijadikan leaving
variablenya. Misalkan adalah leaving variable, maka
dengan ongkos transportasi tetap C = 335. Karena itu, kita coba
membuat loop dari variabel nonbasis yang lain, yang juga dapat
menurunkan ongkos transportasi per unit (yaitu ). Kita
dapatkan:
.
Dari Tabel 6.15 terlihat bahwa leaving variable adalah
sehingga dan .
Penyelesaian optimalnya diperoleh pada Tabel 6.19 adalah:
Tabel 6.19 Solusi Optimal
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 5 10
2 12 7 9 20
25 0 10 15
3 0 14 16 18
5 5
5 15 15 10
Dengan ongkos transportasi sebesar 𝐶 (5 x 0) + (10 x 11) + ( 0 x 12) + (10 x 7) + (15 x 9) + (5 x 0) = 315.
Operasi Riset Program Linier
149
6.2.5 Metode Multiplier (Metode Potensial)
Cara ini iterasinya sama seperti stepping stone.
Perbedaan utama terjadi pada cara pengevaluasian variabel
nonbasis, atau penentuan penurunan ongkos transport per unit
untuk tiap variabel. Cara ini dikembangkan berdasarkan teori
dualitas. Untuk tiap basis i dari tabel trasformasi dikenal suatu
multiplier , dan untuk kolom j disebut multiplier sehingga
untuk tiap variabel basis didapat persamaan:
. (6.1)
Dari persamaan (6.1) di atas kita dapat menghitung berapa
penurunan ongkos transportasi per unit untuk tiap variabel
nonbasis sebagai berikut:
(6.2)
Langkah berikutnya adalah seperti iterasi yang dilakukan oleh
metode stepping stone.
Sebagai contoh kita lihat lagi penyelesaian fisibel basis awal dari
Tabel 6.8.
Tujuan 1 2 3 4
S
U
M
B
E
R
1 10 0 20 11
15 5 10
2 12 7 9 20
25 5 15 5
3 0 14 16 18
5 5
5 15 15 10
Operasi Riset Program Linier
150
Basis awal:
Dengan menentukan , maka harga-harga multiplier yang
lain dapat dicari sebagai berikut:
10 0 20 11
15 +18 -2
12 7 9 20
25 -5
0 14 16 18
5 -15 +9 +19
5 15 15 10
Untuk menentukan entering variabel:
Operasi Riset Program Linier
151
Entering variabel adalah (karena memberikan penurunan
ongkos per unit yang terbesar). Selanjutnya iterasinya sama
dengan metode stepping stone.
Contoh 6.3
Ada sejenis barang yang harus diangkut untuk keperluan proyek
dari 3 pabrik ke tempat 3 lokasi proyek dan biaya angkut ke
masing-masing tujuan dapat diperlihatkan pada tabel di bawah
ini:
4 8 8 55
16 24 16 85
8 16 24 70
bj 80 95 35 210
Penyelesaian :
1. Metode Stepping Stone
Iterasi 1
55 55
25 60 85
35 35 70
80 95 35 210
Cost: C = 4(55) + 16(25) + 24(60) + 16(35) + 24(35) = 3.460
4 8 8 55
16 24 16 85
8 16 24 70
80 95 35 210
Operasi Riset Program Linier
152
55 -4 -12 55
25 60 -16 85
0 35 35 70
80 95 35 210
Belum optimal, masih ada cell bertanda negarif terbesar (-16)
Iterasi 2
55 55
25 25 35 85
70 70
80 95 35 210
Cost: C = 4(55) + 16(25) + 24(25) + 16(35) + 16(70) = 2.900
55 -4 4 55
25 25 35 85
0 70 16 70
80 95 35 210
Belum optimal, masih ada cell bertanda negarif (-4)
Iterasi 3
P1 P2 P3
30 25 55
50 35 85
70 70
80 95 35 210
Cost: C = 4(30) + 16(50) + 8(25) + 16(70) + 16(35) = 2.800
Operasi Riset Program Linier
153
30 25 4 55
50 4 35 85
-4 70 -4 70
80 95 35 210
Belum optimal, masih ada cell bertanda negarif (-4)
Iterasi 4 Solusi Optimal
55 55
50 35 85
30 40 70
80 95 35 210
Cost: C = 16(50) + 8(30) + 8(55) + 16(40) + 16(35) = 2.680
4 55 8 55
50 0 35 85
30 40 8 70
80 95 35 210
Sudah optimal semua cell bertanda positip.
Telah Optimal, maka Cost Minimum = 2.680
Operasi Riset Program Linier
154
2. Metode Potensial
Tabel Awal
4 8 8 55
16 24 16 85
8 16 24 70
80 95 35 210
Iterasi 1
55 55
25 60 85
35 35 70
80 95 35 210
Cost: C = 4(55) + 16(25) + 24(60) + 16(35) + 24(35) = 3.460
P1 = 4 P2 = 12 P3 = 20
S1 = 0 4 12 20
S2 = 12 16 24 32
S3 = 4 8 16 24
Perhitungan Dij = Cij – Zij :
Operasi Riset Program Linier
155
Iterasi 2
55 55
25 25 35 85
70 70
80 95 35 210
Cos : C = 4(55) + 16(25) + 24(25) + 16(35) + 16(70) = 2.900
P1 = 4 P2 = 12 P3 = 4
S1 = 0 4 12 4
S2 = 12 16 24 16
S3 = 4 8 16 8
Perhitungan Dij = Cij – Zij :
Iterasi 3
30 25 55
50 35 85
70 70
80 95 35 210
Cost: C = 4(30) + 16(50) + 8(25) + 16(70) + 16(35) = 2.800
Operasi Riset Program Linier
156
P1 = 4 P2 = 8 P3 = 4
S1 = 0 4 8 4
S2 = 12 16 20 16
S3 = 8 12 16 12
Iterasi 4
55 55
50 35 85
30 40 70
80 95 35 210
Cost Optima : C = 16(50) + 8(30) + 8(55) + 16(40) + 16(35) = 2.680
P1 = 0 P2 = 8 P3 = 0
S1 = 0 0 8 0
S2 = 16 16 24 16
S3 = 8 8 16 8
Operasi Riset Program Linier
157
6.3 Soal-soal
1. Ada sejenis barang yang diangkut dari 4 tempat asal
ke 6 tempat tujuan
. Banyaknya persedian atau suplai di masing-masing
sumber adalah 50, 40, 60 dan 31 satuan. Jumlah barang yang
diangkut dari setiap tempat asal tidak boleh melebihi
persediaan barang yang ada. Jumlah permintaan dari tujuan
masing-masing 30, 50, 20, 40, 30 dan 11 satuan. Jumlah
permintaan ini harus dipenuhi. Besar biaya dari setiap
sumber ke tujuan dapat dilihat pada tabel berikut ini.
T1 T2 T3 T4 T5 T6 Ai
A1 2 1 3 3 2 5 50
A2 3 2 2 4 3 4 40
A3 3 5 4 2 4 1 60
A4 4 2 2 1 2 2 31
Bj 30 50 20 40 30 11 181
2. Ada 3 sumber material dari suatu proyek (S1 , S2 , S3) yang
harus diangkut ke 4 tujuan (T1 , T2 , T3 , T4). Biaya untuk
mengangkut bahan tersebut dapat dilihat dari tabel berikut:
T1 T2 T3 T4 Asal
S1 31 36 43 20 18
S2 60 30 50 43 5
S3 18 10 48 72 7
Tujuan 4 18 6 2 30
T S
Operasi Riset Program Linier
158
3. Tentukan Biaya Minimum dari Persoalan Trannsportasi
berikut ini:
T U J U A N
1 2 3 4 Tersedia
S
U
M
B
E
R
1 12 8 18 13 20
2 10 7 11 16 18
3 5 9 15 18 27
Kebutuhan 15 10 22 18
6.4 Model Penugasan (Assigment Model)
Model penugasan merupakan kasus khusus dari model
transportasi, dimana sejumlah m sumber ditugaskan kepada
sejumlah n tujuan (satu sumber untuk satu tujuan) sedemikian
sehingga didapat ongkos total yang minimum.
Biasanya yang dimaksud dengan sumber ialah pekerjaan
(atau pekerja), sedangkan yang dimaksud dengan tujuan ialah
mesin-mesin. Jadi, dalam hal ini, ada m pekerjaan yang
ditugaskan pada n mesin, di mana apabila pekerjaan i ( i = 1, 2, ….,
m) ditugaskan kepada mesin j (j = 1, 2, … , n) akan muncul ongkos
penugasan . Karena satu pekerjaan ditugaskan hanya pada
satu mesin, maka supply yang dapat digunakan pada setiap
sumber adalah 1 (atau , untuk seluruh i). Demikian pula
halnya dengan mesin-mesin ; karena satu mesin hanya dapat
menerima satu pekerjaan, maka demand dari setiap tujuan
adalah 1 (atau , untuk seluruh j). Jika ada suatu pekerjaan
yang tidak dapat ditugaskan pada mesin tertentu, maka yang
berkorespondensi dengannya dinyatakan dengan M, yang
Operasi Riset Program Linier
159
merupakan ongkos yang sangat tinggi. Penggambaran umum
persoalan penugasan ini adalah sebagai berikut:
Tabel 6.20 Penggambaran Umum Persoalan Penugasan Mesin
Mesin
1 2 n
Pekerjaan
1 1
2 1
m 1
1 1 1
Sebelum model ini dapat dipecahkan dengan teknik
trasportasi, terlebih dahulu persoalannya harus diseimbangkan
dengan menambahkan pekerjaanpekerjaan atau mesin-mesin
khayalan, bergantung pada apakah m < n atau m > n. Dengan
demikian diasumsikan m = n.
Model penugasan dapat diekspresikan secara matematis
sebagai berikut:
, jika pekerjaan i tidak ditugaskan ke mesin j
, jika pekerjaan i ditugaskan ke mesin j
Jadi model ini diketahui
Minimumkan:
Dengan batasan:
Operasi Riset Program Linier
160
Suatu ciri khas persoalan penugasan adalah bahwa penyelesaian
optimum akan tetap sama bila suatu konstanta ditambahkan atau
dikurangkan pada baris atau kolom yang manapun dari matriks
ongkosnya. Hal ini dapat diperlihatkan sebagai berikut:
Jika dan merupakan konstanta pengurang terhadap
baris i dan kolom j, maka elemen ongkos yang baru
adalah:
Sehingga fungsi tujuan baru menjadi:
Karena , maka
Hal ini menunjukkan bahwa meminimumkan Z akan
menghasilkan penyelesaian yang sama dengan meminimumkan
.
Suatu hal yang menarik adalah bahwa jika kita melakukan
operasi pengurangan terhadap matriks ongkos akan
diperoleh zero entries, yaitu elemen-elemen ongkos dalam
matriks yang berharga nol, yang juga merupakan variabel-
variabel yang menghasilkan penyelesaian optimum bagi
sehingga, berdasarkan pembuktian di atas, merupakan
penyelesaian optimal bagi
Sebagai illustrasi, kita perhatikan sebuah persoalan
penugasan berikut ini.
Operasi Riset Program Linier
161
Contoh 6.4
Tabel 6.21 Model Persoalan Penugasan
Mesin
1 2 3
Pekerjaan
1 5 7 9
1
2 14 10 12
1
3 15 13 16
1
1 1 1
Tabel 6.22 Penyelesaian Awal Contoh Persoalan Penugasan
Mesin
1 2 3
Pekerjaan
1 5 7 9
1 1
2 14 10 12
1 1
3 15 13 16
1 1
1 1 1
Pada Tabel 6.22, elemen-elemen nol dibuat dengan
mengurangkan elemen terkecil masing-masing baris (kolom) dari
baris (kolom) yang bersangkutan.
Dengan demikian, matriks 𝐶 yang baru adalah:
Operasi Riset Program Linier
162
Tabel 6.23 Matriks 𝐶 (Matriks Ongkos yang Baru)
Mesin
1 2 3
Pekerjaan
1 0 2 4
2 4 0 2
3 2 0 3
Matriks terakhir dapat dibuat untuk memperbanyak elemen
matriks yang berharga nol dengan cara mengurangkan
dari kolom ketiga. Hasilnya adalah Tabel 6.24
Tabel 6.24 Penyelesaian Akhir
1 2 3
1 0* 2 2
2 4 0 0*
3 2 0* 1
Segi empat pada Tabel 6.24 merupakan penugasan yang fisibel
sekaligus optimum, yaitu (1 , 1), (2 , 3) dan (3 , 2) dengan ongkos
penugasan sebesar: 5 + 12 + 13 = 30. Perhatikan bahwa besarnya
ongkos ini sama dengan
Penugasan yang fisibel seperti contoh 6.4 di atas tidak
selalu dapat kita peroleh. Karena itu, diperlukan suatu aturan
Operasi Riset Program Linier
163
untuk mencapai penyelesaian optimum yang akan dijelaskan
melalui illustrasi contoh 6.5 berikut:
Contoh 6.5
Tabel 6.25 Persoalan Penugasan
1 2 3 4
1 1 4 6 3
2 9 7 10 9
3 4 5 11 7
4 8 7 8 5
Dengan proses pengurangan seperti di atas diperoleh:
Tabel 6.26 Proses Pengurangan I
1 2 3 4
1 0 3 5 2
2 2 0 3 2
3 0 1 7 3
4 3 2 3 0
Operasi Riset Program Linier
164
Tabel 6.26 Proses Pengurangan II
1 2 3 4
1 0 3 2 2
2 2 0 0 2
3 0 1 4 3
4 3 2 0 0
Dalam kasus ini penugasan yang fisibel terhadap elemen-elemen
nol tidak mungkin diperoleh sehingga diperlukan prosedur
sebagai berikut:
1. Tariklah garis pada semua baris dan kolom yang
mengandung elemen nol dengan jumlah garis minimum,
sedemikian sehingga tidak terdapat lagi nol pada matriks
yang bersangkutan.
2. Tentukan di antara elemen-elemen yang tidak ikut tergaris,
satu elemen dengan harga terkecil kemudian kurangkan
sebesar harga elemen ini kepada semua elemen yang tidak
tergaris.
3. Tambahkan sebesar harga elemen tersebut (pada point 2)
kepada semua elemen yang terletak pada perpotongan dua
garis.
4. Aloksikan pekerjaan pada elemen-elemen nol tersebut.
5. Jika solusi optimum belum juga ditemukan, ulangi lagi
langkah 1 sampai dengan 4 hingga dicapai penugasan yang
fisibel.
Operasi Riset Program Linier
165
Kembali pada contoh 6.5 di atas, sebagai kelanjutan dari Tabel
6.26 adalah:
Tabel 6.27 Modifikasi
1 2 3 4
1 0 3 2 2
2 2 0 0 2
3 0 1 4 3
4 3 2 0 0
Tabel 6.28 Solusi Optimum
1 2 3 4
1 0* 2 1 1
2 3 0 0* 2
3 0 0* 3 2
4 4 2 0 0*
Tabel memberikan penugasan yang optimum, yaitu (1, 1), (2, 3),
(3, 2), dan (4, 4) dengan ongkos total sebesar C = 1 + 10 + 5 + 5 =
21
Operasi Riset Program Linier
166
DAFTAR PUSTAKA
Dantzig, G. B., Linear Programming and Extensions, Princeton
University Press, Princeton, N. J., 1963
Dimyati, Tj. T., dan Dimyati, A., Operations Research, Model-
model Pengambilan Keputusan, cetakan ke-6, Sinar Baru
Algensindo, Bandung, 2003
Hadley, G., Linear Programming, Addison-Wesley, Reading,
Mass., 1962
Lieberman, Gerald J., and Hillier, Frederick S., Operations
Research, edisi ke-2, Holden Day, Inc. San Francisco, 1973
Faure R., Recherche Operationnelle,Cours de l’Ecole Superieure
d’electricite, 10, av. P. Larousse, 92 Malakoff, 1967, edisi
ke-3 1971
Taha, Hamdy A., Operations Research: An Introduction, edisi ke-3;
Macmillan Publising Co., Inc., New York, 1982
Wagner, Harvey M., Principles of Operations Research with
Application to Managerial Decisions, edisi ke-2, Prentice-
Hall of India, New Delhi, 1978
Operasi Riset Program Linier
167
Soal Tambahan dan Penyelesaian
1. Selesaikan persoalan transportasi berikut dengan
menggunakan metode:
Metode Stepping Stone, Metode Multiplier dan Metode
Ongkos Terkecil
I II III
Jakarta 11 13 9 440.000
Bandung 9 12 4 330.000
Cirebon 10 11 14 220.000
Cilacap 10 7 8 110.000
ai 270.000 350.000 480.000 11.000.000
2. Selesaikan Program Linier berikut ini
Maksimumkan:
Kendala:
1,5
5
3. Seorang petani yang memiliki 7 ha tanah sedang memikirkan
berapa ha tanah yang harus ditanami jagung dan berapa ha
yang harus ditanami gandum. Dia mengetahui bahwa jika
ditanami jagung, setiap ha tanah akan menghasilkan 10
ton/ha jagung. Untuk ini diperlukan 4 jam-orang/minggu.
Jika ditanami gandum, hasilnya adalah 25 ton/ha dan
diperlukan 10 jam-orang/minggu. Setiap kg jagung dapat
dijual seharga Rp 30/kg, sedangkan harga jual gandum
Operasi Riset Program Linier
168
adalah Rp 40/kg. Saat ini petani tersebut hanya memiliki 40
jam-orang/minggu. Karena ada peraturan pemerintah yang
mengharuskan setiap petani untuk menghasilkan gandum
paling sedikit 30 ton setiap kali panen, bagaimanakah
formulasi persoalan ini agar petani tersebut dapat
menggarap tanahnya secara optimal dan buat gambar
daerah fisibelnya.
4. Selesaikan Program Linier berikut ini:
Minimumkan:
Kendala:
5. PT Sayang Anak memproduksi dua jenis mainan A dan B yang
keduanya terbuat dari campuran pasir dan lilin. Produk A
dapat dibuat melalui proses 1 atau proses 2, sedangkan
produk B dapat dibuat melalui proses 3 atau proses 4. Untuk
mendapat 1 unit produk A dan B pada masing-masing proses
diperlukan masukkan (input) sebagai berikut:
Input
1 Unit produk A 1 Unit produk B
Satuan Proses
1
Proses
2
Proses
3
Proses
4
Tenaga Kerja 1 1 1 1 Jam org
Pasir 7 5 3 2 M3
Lilin 3 5 10 15 Dus
Tenaga kerja yang tersedia tidak lebih dari 15 jam-orang,
sedangkan persediaan pasir dan lilin adalah 120 m3 dan 100
Operasi Riset Program Linier
169
dus. Keuntungan proses 1, 2, 3, dan 4 masing-masing Rp
4,00/unit, Rp 5,00/unit, Rp 9,00/unit, dan Rp 11,00/unit.
Buatlah formulasi di atas sebagai persoalan programa linier,
dan buatlah tabel awal serta keuntungan optimal yang
diperoleh.
6. Seorang pedagang beras mempunyai 3 gudang di Cianjur,
Cikampek, dan Sumedang, yang masing-masing menyimpan
beras sebanyak 60, 80, dan 90 ton. Pedagang tersebut
mempunyai daerah pemasaran di Bandung, Bogor, Jakarta
dan Cirebon yang masing-masing membutuhkan beras
sebanyak 40, 60, 80, dan 50 ton. Ongkos angkut tiap ton
beras seperti terlihat dalam tabel berikut (satuan ribuan
dalam rupiah):
Sumber/Tujuan Bandung Bogor Jakarta Cirebon Persediaan
Cianjur 11 12 13 14 60
Cikampek 14 13 12 10 80
Sumedang 10 12 12 11 90
Kebutuhan 40 60 80 50 230
Bila saudara diminta, bagaimanakah
pengalokasian/pendistribusian beras yang optimum dan
berapa ongkosnya.
7. Minimumkan:
Kendala: 3
4
2
Operasi Riset Program Linier
170
8. Maksimum:
Kendala:
9. Minimum:
Kendala: 2
10. Maksimum:
Kendala:
11. Maksimum:
Kendala:
Operasi Riset Program Linier
171
12. Minimum:
Kendala:
13. Minimum:
Kendala:
3
Bentuk standard:
Minimum:
Kendala:
Teknik Dua Fase
Diperoleh persamaan-persamaan:
Fase I:
Minimumkan :
atau
Operasi Riset Program Linier
172
Iterasi 0
Basis / C -3 -4 1 0 0 0 B
0 1 0 0 1 0 0 4
0 0 2 0 0 1 0 12
0 3 2 -1 0 0 1 18
𝐶 3 4 -1 0 0 0 30
Iterasi 1
Basis / C -3 -4 1 0 0 0 B
0 1 0 0 1 0 0 4
-4 0 1 0 0
0 6
0 3 0 -1 0 -1 1 6
𝐶 3 0 -1 0 -2 0 6
Iterasi 2
Basis / C -3 -4 1 0 0 0 B
0 0 0
1
2
-4 0 1 0 0
0 6
-3 1 0
0
2
𝐶 0 0 0 0 -1 -1 0
Persoalan memiliki solusi fisibel
Operasi Riset Program Linier
173
Fase II:
Dari tabel kita memiliki persamaan-persamaan :
Kita substitusikan pada persoalan semula didapat:
Minimumkan:
Iterasi 3
Basis / C 0 0 1 0 B
0 0 0
1 2
5 0 1 0 0 6
3 1 0
0 2
𝐶 0 0 -1 0 36
Tabel iterasi 3 di atas sudah optimum karena 𝐶
Penyelesaian Optimal ,
dengan
Metode Dual Simpleks
Maksimum:
Kendala:
3
Operasi Riset Program Linier
174
Bentuk standard:
Maksimum:
Kendala:
Metode Dual Simpleks
Iterasi 0
Basis / C 3 5 0 0 0 B
0 1 0 1 0 0 4
0 0 2 0 1 0 12
0 -3 -2 0 0 1 -18
𝐶 -3 -5 0 0 0 0
Iterasi 1
Basis / C 3 5 0 0 0 B
0 0
1 0
-2
0 0 2 0 1 0 12
3 1
0 0
6
𝐶 0 -3 0 0 -1 18
Operasi Riset Program Linier
175
Iterasi 2
Basis / C 3 5 0 0 0 B
0 0 0 1
2
5 0 1 0 0,5 0 6
3 1 0 0
2
𝐶 0 0 0 1,5 -1 36
Iterasi 3
Basis / C 3 5 0 0 0 B
0 0 0 3 1 1 6
5 0 1 0 0,5 0 6
3 1 0 1 0 0 4
𝐶 0 0 3 2,5 0 42
Tabel iterasi 3 di atas sudah optimum karena 𝐶
Penyelesaian Optimal ,
dengan
14. Maksimumkan:
Kendala:
Bentuk standard:
Maksimumkan:
Kendala:
Operasi Riset Program Linier
176
Iterasi 0
Basis / C 3 -2 0 0 0 B
0 1 0 1 0 0 4
0 0 1 0 1 0 6
0 -1 -1 0 0 1 -5
𝐶 -3 2 0 0 0 0
Iterasi 1
Basis / C 3 -2 0 0 0 B
0 1 0 1 0 0 4
0 -1 0 0 1 1 1
-2 1 1 0 0 -1 5
𝐶 -5 0 0 0 2 -10
Iterasi 2
Basis / C 3 -2 0 0 0 B
3 1 0 1 0 0 4
0 0 0 1 1 1 5
-2 0 1 -1 0 -1 1
𝐶 0 0 5 0 2 10
Penyelesaian sudah optimal karena 𝐶 sehingga:
dengan
Operasi Riset Program Linier
177
15. Minimum:
Kendala:
Bentuk standard:
Minimum:
Kendala:
Iterasi 0
Basis / C 3 -2 0 0 0 B
0 1 0 1 0 0 4
0 0 1 0 1 0 6
0 -1 -1 0 0 1 -5
𝐶 -3 2 0 0 0 0
Iterasi 1
Basis / C 3 -2 0 0 0 B
0 0 -1 1 0 1 -1
0 0 1 0 1 0 6
3 1 1 0 0 -1 5
𝐶 0 5 0 0 -3 15
Operasi Riset Program Linier
178
Iterasi 2
Basis / C 3 -2 0 0 0 B
-2 0 1 -1 0 -1 1
0 0 0 1 1 1 5
3 1 0 1 0 0 4
𝐶 0 0 5 0 2 10
Iterasi 3
Basis / C 3 -2 0 0 0 B
-2 1 1 0 0 -1 5
0 -1 0 0 1 1 1
0 1 0 1 0 0 4
𝐶 -5 0 0 0 2 -10
Iterasi 4
Basis / C 3 -2 0 0 0 B
-2 0 1 0 1 0 6
0 -1 0 0 1 1 1
0 1 0 1 0 0 4
Zj – Cj -3 0 0 -2 0 -12
Penyelesaian sudah optimal karena 𝐶 sehingga:
dengan
Operasi Riset Program Linier
179
16. Maksimumkan:
Kendala:
Bentuk standard
Maksimumkan:
Kendala:
17. Maksimum:
Kendala:
18. Maksimum:
Kendala:
19. Maksimum:
Kendala:
Operasi Riset Program Linier
180
20. Maksimum:
Kendala:
2
3
21. Minimum:
Kendala:
Bentuk standar
Minimum:
Kendala:
Iterasi 0
Basis / C 9 12 16 0 0 0 0 B
0 -1 -2 -3 1 0 0 0 -8
0 -3 -2 -3 0 1 0 0 -15
0 -1 -2 -2 0 0 1 0 -6
0 -2 -3 -5 0 0 0 1 -20
𝐶 -9 -12 -16 0 0 0 0 0
Operasi Riset Program Linier
181
Iterasi 1
Basis / C 9 12 16 0 0 0 0 B
0 0,2 -0,2 0 1 0 0 -0,6 4
0 -1,8 -0,2 0 0 1 0 -0,6 -3
0 -0,2 -0,8 0 0 0 1 -0,4 2
16 0,4 0,6 1 0 0 0 -0,2 4
𝐶 -2,6 -2,4 0 0 0 0 -3,2 64
Iterasi 2
Basis / C 9 12 16 0 0 0 0 B
0 0
0 1
0
9 1
0 0 -
0
0 0
0 0
1
16 0
1 0
0
𝐶 0
0 0
0
Penyelesaian Optimal :
dengan
22. Minimumkan:
Kendala:
Operasi Riset Program Linier
182
Metode dua fase
Bentuk Standar:
Minimumkan:
Kendala: (1)
(2)
(3)
Fase I
Persamaan (2) dan (3) dijumlahkan:
Minimumkan Maks.
Iterasi 0
Basis/C -1,1 -0,9 0 0 1 0
B
0 0,3 0,1 1 0 0 0 2,7
0 0,5 0,5 0 1 0 0 6
0 0,6 0,4 0 0 -1 1 6
R 1,1 0,9 0 0 -1 0 12
Iterasi 1
Basis/C -1,1 -0,9 0 0 1 0
B
-1,1 1
0 0 0 9
0 0
1 0 0 1,5
0 0 0,2 -2 0 -1 1 0,6
R 0
0 -1 0 2,1
Operasi Riset Program Linier
183
Iterasi 2
Basis/C -1,1 -0,9 0 0 1 0
B
-1,1 1 0
0
8
0 0 0
1
0,5
-0,9 0 1 -10 0 -5 5 3
R 0 0
0
0,5
Iterasi 3
Basis/C -1,1 -0,9 0 0 1 0
B
-1,1 1 0 0 -4 -5 5 6
0 0 0 1 0,6 1 -1 0,3
-0,9 0 1 0 6 5 -5 6
R 0 0 0 -1 0 -1 0
Persoalan diatas memiliki solusi layak. Selanjutnya R tidak di-
ikutsertakan lagi.
Fase II
Dari table optimum pada fase 1 di atas dapat dituliskan
persamaan-persamaan berikut :
Minimumkan:
atau
Operasi Riset Program Linier
184
Iterasi 0
Basis/C 0 0 0 -0,5
B
0 1 0 0 -5 6
0 0 0 1 1 0,3
0 0 1 0 5 6
𝐶 0 0 0 0,5 5,4
Iterasi 1
Basis/C 0 0 0 -0,5
B
0 1 0 5 0 7,5
-0,5 0 0 1 1 0,3
0 0 1 -5 0 4,5
𝐶 0 0 -0,5 0 5,25
Telah diperoleh solusi optimal:
dengan
23. Maksimum:
Kendala:
24. Maksimum:
Kendala:
Operasi Riset Program Linier
185
25. Maksimumkan:
Dengan batasan:
Bentuk standard dan Iterasi Awal:
Iterasi 0
Basis C
3 2 0 0 0 0 b
0 1 2 1 0 0 0 6
0 2 1 0 1 0 0 8
0 -1 1 0 0 1 0 1
0 0 1 0 0 0 1 2
𝐶 -3 -2 0 0 0 0 0
Iterasi n (Tabel Optimal):
Basis C
3 2 0 0 0 0 b
2 0 1
0 0
3 1 0
0 0
0 0 0 -1 1 1 0 3
0 0 0
0 1
𝐶 0 0
0 0
Operasi Riset Program Linier
186
Kerjakan untuk analisis sensitivitas terhadap perobahan
yang mungkin.
26. Kerjakan dengan metode Metode Steping Stone dan
Metode Potensial
T1 T2 T3 T4 T5 Ai
A1 10 10 5 9 10 12
A2 2 10 8 30 6 8
A3 1 20 7 10 4 10
Bj 5 8 6 8 3 30
Metode Potensial
T1 T2 T3 T4 T5 Ai
A1 10 10 5 9 10 12
A2 2 10 8 30 6 8
A3 1 20 7 10 4 10
Bj 5 8 6 8 3 30
Iterasi Awal
T1 T2 T3 T4 T5 Ai
A1 5 7 -3 -21 -14 12
A2 -8 1 6 1 -18 8
A3 11 30 19 7 3 10
Bj 5 8 6 8 3 30
C = 50 + 70 + 10 + 48 + 30 + 70 + 12 = 290
Operasi Riset Program Linier
187
Iterasi 1
T1 T2 T3 T4 T5 Ai
A1 5 6 -3 1 7 12
A2 -8 2 6 21 3 8
A3 -10 9 -2 7 3 10
Bj 5 8 6 8 3 30
C = 50 + 60 + 9 + 20 + 48 + 70 + 12 = 269
Iterasi 2
T1 T2 T3 T4 T5 Ai
A1 10 6 -3 6 7 12
A2 2 2 6 21 3 8
A3 5 9 -2 2 3 10
Bj 5 8 6 8 3 30
C = 60 + 54 + 20 + 48 + 5 + 20 + 12 = 219
Iterasi 3
T1 T2 T3 T4 T5 Ai
A1 10 0 6 6 7 12
A2 2 8 3 21 3 8
A3 5 9 1 2 3 10
Bj 5 8 6 8 3 30
C = 0 + 54 + 20 + 48 + 5 + 20 + 12 = 201
Karena semua elemen , maka iterasi telah optimal
dengan Cost minimum = 201
Dari : A1 ke T2 = 0 ; A2 ke T2 = 8 ; A3 ke T1 = 5
A1 ke T3 = 6 A3 ke T4 = 2
A1 ke T4 = 6 A3 ke T5 = 3
Operasi Riset Program Linier
188
27. Metode Stepping Stone
T1 T2 T3 T4 T5 Ai
A1 10 10 5 9 10 30
A2 2 10 8 20 6 25
A3 1 20 7 10 5 15
Bj 15 12 20 14 9 70
Iterasi Awal
T1 T2 T3 T4 T5 Ai
A1 15 12 3 -8 -2 30
A2 -11 -3 17 8 -9 25
A3 -2 17 9 6 9 15
Bj 15 12 20 14 9 30
C = 150 + 120 + 15 + 136 + 160 + 60 + 45 = 686
Iterasi 1
T1 T2 T3 T4 T5 Ai
A1 11 12 18 -8 -2 30
A2 15 -3 2 8 -9 25
A3 9 -3 9 6 9 15
Bj 15 12 20 14 9 30
C = 120 + 90 + 30 + 16 + 160 + 60 + 45 = 521
Iterasi 2
T1 T2 T3 T4 T5 Ai
A1 11 12 18 1 7 30
A2 15 -3 2 9 8 25
A3 0 8 0 14 1 15
Bj 15 12 20 14 9 30
C = 120 + 90 + 30 + 16 + 48 + 140 + 5 = 449
Operasi Riset Program Linier
189
Iterasi 3
T1 T2 T3 T4 T5 Ai
A1 8 10 20 -2 4 30
A2 15 2 3 9 8 25
A3 0 11 3 14 1 15
Bj 15 12 20 14 9 30
C = 100 + 100 + 30 + 20 + 48 + 140 + 5 = 443
Iterasi 4
T1 T2 T3 T4 T5 Ai
A1 10 2 20 10 6 30
A2 15 12 1 9 -2 25
A3 0 11 1 4 11 15
Bj 15 12 20 14 9 70
C = 100 + 90 + 30 + 120 - 12 + 40 + 55 = 423 Karena semua elemen , maka iterasi telah optimal dengan Cost
minimum = 423 Dari : A1 ke T3 = 20 ; A2 ke T1 = 15 ; A3 ke T4 = 4 A1 ke T4 = 10 ; A2 ke T2 = 12 A3 ke T5 = 11 A2 ke T5 = -2
Metode Potensial:
T1 T2 T3 T4 T5 Ai
A1 10 10 5 9 10 30
A2 2 10 8 20 6 25
A3 1 20 7 10 5 15
Bj 15 12 20 14 9 70
Iterasi Awal
T1 T2 T3 T4 T5 Ai
A1 15 12 3 -8 -2 30
A2 -11 -3 17 8 -9 25
A3 -2 17 9 6 9 15
Bj 15 12 20 14 9 30
Operasi Riset Program Linier
190
Iterasi Awal
= 10 = 10 = 5 = 17 = 12
= 0 10 10 5 17 12
= 3 13 13 8 20 15
= -7 3 3 -2 10 5
28. Tentukan Ongkos Minimum
I II III
Jakarta 11 13 9 440.000
Bandung 9 12 4 330.000
Cirebon 10 11 14 220.000
Cilacap 10 7 8 110.000
270.000 350.000 480.000 1.100.000
I II III
Jakarta 27 17 44
Bandung 18 15 33
Cirebon 22 22
Cilacap 11 11
27 35 48 110
I = 11 II =13 III = 5
A = 0 11 13 5 44
B = -1 10 12 4 33
C = 9 20 22 14 22
D = 3 14 16 8 11
ai 27 35 48 110
Operasi Riset Program Linier
191
0 0 4
-1 0 0
-10 -11 0
-4 -9 0
I = II = III =
A = 27 17 44
B = 33 33
C = 18 4 22
D = 11 11
ai 27 35 48 110
I = 11 II = 13 III = 16
A = 0 11 13 16 44
B = -12 -1 1 4 33
C = -2 9 11 14 22
D = -8 3 5 8 11
ai 27 35 48 110
11 13 9
9 12 4
10 11 14
10 7 8
0 0 -7
10 11 0
1 0 0
7 2 0
Operasi Riset Program Linier
192
I = II = III =
A = 27 13 4 44
B = 33 33
C = 22 22
D = 11 11
ai 27 35 48 110
I = 11 II = 13 III = 9
A = 0 11 13 9 44
B = -5 6 8 4 33
C = -2 9 11 7 22
D = -1 10 12 8 11
ai 27 35 48 110
11 13 9
9 12 4
10 11 14
10 7 8
0 0 0
3 4 0
1 0 7
0 -5 0
I = II = III =
A = 27 2 15 44
B = 33 33
C = 22 22
D = 11 11
ai 27 35 48 110
Operasi Riset Program Linier
193
11 13 9
9 12 4
10 11 14
10 7 8
I = 11 II = 13 III = 9
A = 0 11 13 9 44
B = -5 6 8 4 33
C = -2 9 11 7 22
D = -6 5 7 3 11
ai 27 35 48 110
Hasil Optimal = ?
29. Perusahaan air mineral ingin mendistribusikan produk
terbarunya ke empat agen yang menjadi pelanggan
perusahaan air mineral tersebut dan ingin
mendistribusikannya ke beberapa kota di Indonesia dengan
biaya atar kepada para agen di hitung dengan jarak tempat
agen tersebut setiap per galonnya. Berikut biaya pengiriman
produk tersebut dalam bentuk rupiah(Rp):
Data Transportasi
Ke
Dari Cilegon Kuningan Bandung Padang Supply
Agen 1 110 90 95 75 6300
Agen 2 80 75 120 80 4750
Agen 3 95 100 65 115 5450
Agen 4 70 85 75 90 6500
Demand 5.200 5.500 6.000 6.300 23.000
Operasi Riset Program Linier
194
Selesaikan dengan menggunakan :
a. Metode North West Corner (NWC)
b. Metode Least Cost
c. Metode Aproksimasi Vogel (VAM)
Operasi Riset Program Linier
195
SATUAN ACUAN PENGAJARAN (SAP) DAN GARIS-GARIS BESAR
PROGRAM PENGAJARAN ( G B P P )
JUDUL MATA KULIAH : PROGRAM LINIER
NOMOR KODE / SKS : MAT ____ / 3
DESKRIPSI SINGKAT
Materi Kuliah Program Linier ini membahas tentang
persoalan pengalokasiansuatu aktivitas-aktivitas untuk
memperoleh suatu hasil yang optimum di mana
pengertian linier memberi arti bahwa baik fungsi tujuan
maupun kendalanya merupakan fungsi linier, termasuk
memodelkan metode simpleks, analisis sensitivitas dan
beberapa penerapannya.
TUJUAN INSTRUKSIONAL UMUM
Pada akhir kuliah diharapkan mahasiswa mampu :
(1) Memodelkan Persoalan Program Linier.
(2) Menerapkan Metode Simpleks dan Analisis Sensitivitas
dalam penyelesaian persoalan.
(3) Menentukan sifat kompleksitas dari metode simpleks.
(4) Mengetahui Tipe-tpe Khusus Program Linier
Mng
ke Pokok Bahasan
Tujuan Instruksional
Khusus Sub Pokok Bahasan
1 2 3 4
1 dan 2 1. Model-model
Deterministik
Mahasiswa diharapkan
mampu
1. Memahami
Pengertian Program
Linier
2. Membuat Model
Program Linier
1.1 Pengertian Umum Program
Linier
1.2 Model Program Linier
1.3 Asumsi Dalam Model Program
Linier
1.4 Contoh Lain Persoalan
Program Linier
Operasi Riset Program Linier
196
Mng
ke Pokok Bahasan
Tujuan Instruksional
Khusus Sub Pokok Bahasan
1 2 3 4
3. Memahami Asumsi-
asumsi Dalam
Program Linier
4. Menerapkan
Persoalan Program
Linier
1.4.1 Masalah Perencanaan
Regional
1.4.2 Masalah Sisa Pemotongan
1.4.3 Masalah Keseimbangan Lintas
Assembling
3, 4, 5,
6 dan 7
2. Teknik
Pemecahan
Model
Program Linier
Mahasiswa diharapkan
mampu
1. Memahami
Penyelesaian
Program Linier
dengan Grafis
2. Memahami Bentuk
Standar Model
Program Linier
3. Memahami
Persoalan Program
Linier Tanpa Solusi
Fisibel
4. Memahami
Penyelesaian
dengan Metode
Simpleks
5. Menggunakan
Algoritma Simpleks
6. Memahami
Penyelesaian
Program Linier
denganPembatas
dan atau =
7. Memahami
Penyelesaian
Dengan Teknik M
dan Metode Dua
Fase
2.1 Solusi Grafis
2.1.1 Solusi Grafis Untuk Persoalan
Maksimasi
2.1.2 Solusi Grafis Untuk Persoalan
Minimasi
2.2 Kasus Khusus
2.2.1 Solusi Alternatif atau Solusi
Optimal Banyak
2.2.2 Persoalan Program Linier
Tanpa Solusi Fisibel
2.2.3 Persoalan Program Linier
Dengan Ruang Solusi Tidak
Terbatas
2.3 Bentuk Standar Model
Program Linier
2.4 Metode Simpleks
2.4.1 Algoritma Simpleks Untuk
Persoalan Maksimum
2.4.2 Algoritma Simpleks Untuk
Persoalan Minimum
2.5 Kasus Khusus Dalam
Penggunaan Algoritma
Simpleks
2.6 Menyelesaikan Persoalan
Program Linier Dengan
Pembatas
Bertanda dan atau =
2.6.1 Teknik M (Metode Penalty)
2.6.2 Metode Dua Fase
Operasi Riset Program Linier
197
Mng
ke Pokok Bahasan
Tujuan Instruksional
Khusus Sub Pokok Bahasan
1 2 3 4
8, 9,10,
11 dan
12
3. Teori Dualitas
dan Analisis
Sensitivitas
Mahasiswa diharapkan
mampu
1. Memahami
Pengertian Dualitas
2. Memahami
Hubungan Primal-
Dual
3. Memahami Sifat-
sifat Primal-Dual
4. Memahami
Penyelesaian
Metode Dual
simpleks
5. Memahami
Pengertian Analisis
Sensitivitas
6. Memahami
Penyelesaian
Pengaruh
Terhadap
Perubahan Koefisien
Fungsi Tujuan,
Perubahan
PadaRuas Kanan
7. Memahami
Penyelesaian Dual
Simpleks pada
Analisis Sensitivitas
8. Memahami Shadow
Prices
9. Memahami Dualitas
dan Analisis
Sensitivitas
3.1 Teori Dualitas
3.1.1 Menentukan Dual Dari
Persoalan Program Linier
Normal
3.1.2 Menentukan Dual Persoalan
Program Linier yang Tidak
Normal
3.2 Hubungan Primal Dual
3.3 Sifat-sifat Primal-Dual Yang
Penting
3.4 Metode Dual Simpleks
3.5 Beberapa Perumusan Penting
3.6 Analisis Sensitivitas
3.6.1 Analisis Grafis Terhadap
Pengaruh Perubahan
KoefisienFungsi Tujuan
3.6.2 Analisis Grafis Terhadap
Perubahan Pada Ruas Kanan
3.6.3 Analisis Sensitivitas Dengan
Tabel Simpleks
3.7 Shadow Prices
Operasi Riset Program Linier
198
Mng
ke Pokok Bahasan
Tujuan Instruksional
Khusus Sub Pokok Bahasan
1 2 3 4
13, 14,
15 dan
16
4. Tipe-tipe
Khusus
Persoalan
Program Linier
Mahasiswa diharapkan
mampu :
1. Memahami
Persoalan
Transportasi
2. Memahami Metode
Transportasi
3. Menyelesaiakan
Persoalan
Transportasi
4. Memahami Model
Transshipment
5. Memahami Model
Penugasan
4.1 Persoalan Transportasi
4.1.1 Metode Transportasi
4.1.2 Keseimbangan Model
Transportasi
4.1.3 Model pemecahan
4.2 Model Transshipment
4.3 Model Penugasan
Reference
Lieberman, Gerald J., and Hillier, Frederick S., Operations
Research, edisi ke-2, Holden Day, Inc. San Francisco, 1973
Taha, Hamdy A., Operations Research: An Introduction, edisi ke-3;
Macmillan Publising Co., Inc., New York, 1982
Wagner, Harvey M., Principles of Operations Research with
Application to Managerial Decisions, edisi ke-2, Prentice-
Hall of India, New Delhi, 1978
9 789794 588529 00009