Anda di halaman 1dari 226

OPERATIONAL RESEARCH

Kuliah prasyarat : 1. Matriks dan Ruang Vektor


2. Teori Probabilitas
Tujuan :
1. Memformulasikan masalah-masalah yang bersifat deterministik ke dalam
formulasi model programa linier dan turunannya seperti model transportasi,
penugasan, dan lain-lain.
2. Menyelesaikan persoalan programa linier yang diformulasikan dengan metode
simpleks dan pengembangannya.
3. Menganalisis hasil-hasil pemecahan formulasi pemrograman linier dengan teori
dualitas dan analisis sensitivitas.
4. Menyelesaikan persoalan transportasi dan penugasan dengan memakai metode
pencarian solusi yang sesuai.

Referensi :
1. Hamdy A. Taha, Operations Researchs an Introduction, 8
th
edition, Pearson
Prentice Hall, 2007.
2. Frederick S. Hillier & Gerald J. Lieberman, Introduction to Operations
Research, McGraw-Hill College, 2001.
3. H. A. Eiselt & Carl-Louis Sandblom, Operations Research: A Model-Based
Approach, Springer, 2010.
4. Wayne L. Winston, Operations Research: Applications and Algorithms,
Duxbury Press, 2003.
Download link : http://www.megaupload.com/?d=WGEM3YEX

Satuan Acara Pengajaran:

Mata Kuliah : Penelitian Operasional 1 Semester : 3
Kode Mata Kuliah : IE 2313 SKS : 3

Minggu
Ke-
Pokok Bahasan Sub Pokok Bahasan Tujuan Instruksional Khusus Kegiatan Evaluasi Acuan
(1) (2) (3) (4) (5) (6) (7)
1 Pendahuluan
- Masalah Optimasi
- Permasalahan Deterministik
- Formulasi Model Programa
Linear
- Memahami definisi dan lingkup penelitian
operasional dalam penyelesaian suatu masalah
- Memahami konsep model matematis yang
digunakan dalam perumusan programa linear
Kuliah tatap
muka
Diskusi
Bazaraa,
Lieberman,
Bronson
2
Perumusan
Model Programa
Linear
- Model Matematis Programa
Linear
- Fungsi Tujuan, Jenis Variabel
Keputusan dan Pembatas
- Memahami konsep fungsi tujuan, variable
keputusan dan pembatas
- Mampu merumuskan permasalahan nyata ke
dalam model matematis program linear
- Memahami bentuk pertidaksamaan dan
standar
- Kuliah tatap
muka
- Tugas
Diskusi
Bazaraa,
Lieberman,
Bronson
3 Solusi Grafis
- Solusi Optimal
- Solusi Khusus
- Memahami penyelesaian masalah programa
linear dengan metoda grafis
- Memahami permasalahan optimal, khusus,
dan unik
- Kuliah tatap
muka
- Tugas
Diskusi Bazaraa
4
Basic Feasible
Solution
- Vektor dan Matriks Basis
- Matriks Inverse
- Memahami konsep matriks basis dan invers
- Memahami konsep pembentukan matriks
solusi layak dari sebuah permasalahan
programa linear
- Kuliah tatap
muka
- Tugas
Diskusi Bazaraa

Minggu
Ke-
Pokok Bahasan Sub Pokok Bahasan Tujuan Instruksional Khusus Kegiatan Evaluasi Acuan
(1) (2) (3) (4) (5) (6) (7)
5
Dasar Tabel
Simplex
- Dasar Tabel Simplex
- Solusi Unik dan Alternatif
- Memahami konsep pemecahan programa
linear dengan metoda simplex
- Memahami solusi-solusi unik dan solusi
alternatif
Kuliah tatap
muka
Diskusi
&
Latihan
Soal
Bazaraa,
Lieberman
6 Tabel Simplex
- Starting Solution
- Convergence
- Menguasai konsep tabel simplex
- Memahami solusi-solusi dalam tabel simplex
Kuliah tatap
muka
Diskusi Bazaraa
7 Tabel Simplex
- Permasalahan Khusus
- Metoda 2 Fasa & Big M
- Memahami permasalahan dengan variable dan
pembatas khusus
- Menguasai metoda 2 Fasa dan Big M
Kuliah tatap
muka
Diskusi Bazaraa
8
Ujian Tengah
Semester

9 Primal-Dual
- Hubungan Primal-Dual
- Solusi Grafis
- Dual Simplex
- Memahami perbedaan bentuk primal dan dual
- Memahami hubungan antara persamaan
primal dan dual
- Memahami cara pemecahan permasalahan
dual dengan menggunakan metoda dual
simplex
Kuliah tatap
muka
Diskusi Bazaraa
10 Primal-Dual - Analisis Sensitivitas
- Memahami solusi optimal dengan perubahan
pada fungsi tujuan, variabel keputusan,
pembatas, vector dan RHS
Kuliah tatap
muka
Latihan
Soal
Bazaraa
11
Integer
Programming
- Konsep Bilangan Bulat
- Metoda Cutting Plane
- Memahami permasalahan dan solusi variable
integer
- Memahami metoda cutting plane
Kuliah tatap
muka
Diskusi Bazaraa


Minggu
Ke-
Pokok Bahasan Sub Pokok Bahasan Tujuan Instruksional Khusus Kegiatan Evaluasi Acuan
(1) (2) (3) (4) (5) (6) (7)
12
Metoda
Transportasi
- Northe West Corner
- Metoda Vogels
- Memahami konsep metoda transportasi dan
penerapannya
- Memahami konsep soluso optimal
permasalahan transportasi
- Memahami metoda Vogels untuk pencarian
solusi optimal
Kuliah tatap
muka
Diskusi
&
Latihan
Soal
Bazara
13 Assigment - Metoda Penugasan
- Memahami konsep assignment dan
penerapannya
- Memahami metoda pencarian solusi optimal
Kuliah tatap
muka
Diskusi Bronson
14 Analisis Jaringan
- Lintasan Terpendek
- Spanning Tree
- Maximum Flow
- TSP
- Memahami konsep node, arch, dan
hubungan antar node
- Memahami permasalahan pencarian rute
terpendek
- Memahami permasalahan spanning tree dan
metoda pencarian solusi optimal
- Memahami permasalahan Maximum Flow
- Memahami permasalahan travel salesman
problem dan metoda pencarian solusi
Kuliah tatap
muka
Diskusi,
Latihan
Soal
Lieberman,
Bronson
15 - -
16
Ujian Akhir
Semester




Mind Map Operational Research 1:


Operational Research merupakan suatu disiplin ilmu yang membahas tentang
pengambilan keputusan dengan pendekatan scientific. Sehingga masalah-masalah
diselesaikan secara kuantitatif. Untuk OR I, pembelajaran difokuskan pada teknik-
teknik pencarian solusi optimal untuk kasus umum dengan metoda Linear
Programming dan Integer Programming, serta kasus-kasus khusus seperti masalah
Transportasi, Assignment, dan Analisis Jaringan.




Table of Contents

I. PENDAHULUAN ........................................................................ 7
II. PERUMUSAN MODEL PROGRAMA LINEAR.............................. 17
III. SOLUSI GRAFIS ...................................................................... 24
IV. BASIC FEASIBLE SOLUTION ................................................... 39
V. DASAR TABEL SIMPLEX .......................................................... 58
VI. TABEL SIMPLEX ...................................................................... 80
VII. PRIMAL-DUAL ......................................................................... 94
VIII. PRIMAL-DUAL ....................................................................... 122
IX. INTEGER PROGRAMMING ..................................................... 133
X. METODA TRANSPORTASI ..................................................... 161
XI. ASSIGMENT .......................................................................... 184
XII. ANALISIS JARINGAN ............................................................ 198


I. PENDAHULUAN

POKOK PEMBAHASAN
Masalah Optimisasi
Deterministik
Formulasi Model PL

TUJUAN PEMBELAJARAN
1. Paham definisi & lingkup OR
2. Paham konsep model matematis perumusan PL

RINGKASAN MATERI



OR berkembang seiring dengan keilmuan teknik industri membentuk industrial &
system engineering.


Kemunculan penelitian operasional dimulai semenjak masa revolusi industri.
Revolusi industri mengakibatkan terjadinya pertumbuhan ukuran dan kompleksitas
organisasi. Karena itu, industri yang berkembang melakukan pembagian kerja dan
Kronologi Perkembangan dalam Evolusi Teknik Industri
Latar Belakang Sejarah Penelitian Operasional

segmentasi tanggung jawab manajemen dalam organisasi. Namun, komponen
organisasi cenderung tumbuh secara otonom dengan sasaran dan sisem nilainya
sendiri sehingga organisasi sulit mengalokasikan sumber daya bagi berbagai aktivitas
secara efektif dan menyeluruh. Karenanya, dilakukan usaha-usaha untuk
memecahkan masalah yang pada akhirnya dikenal dengan penelitian operasional.
Penelitian operasional berkembang pesat dipicu oleh perang dunia ke dua. Metoda
ilmiah (scientific method) dikembangkan untuk kebutuhan mengalokasikan sumber
daya yang langka bagi berbagai operasi dan aktivitas militer secara efektif. Hal ini
dikenal dengan penelitian dalam operasi (militer) atau research in (military)
operation.


1. Industrial boom Peningkatan ukuran dan kompleksitas organisasi
2. Penerapan Penelitian Operasional pada berbagai jenis organisasi (bisnis,
industri, pemerintah)
3. Kemajuan teknik-teknik dalam Penelitian Operasional Metode
Simpleks (Dantzig, 1947)
4. Revolusi komputer Hardware & Software packages


a. The Operational Research Society of Great Britain
o Penelitian Operasional merupakan penerapan metoda ilmiah bagi
permasalahan yang kompleks yang muncul dalam pengelolaan
sistem-sistem yang besar yang terdiri dari manusia, mesin, bahan,
dan uang dalam industri, bisnis, pemerintahan, dan pertahanan.
o Pendekatan: mengembangkan model-model ilmiah dari sistem yang
mencakup pengukuran atas faktor-faktor antara lain peluang dan
resiko, untuk memprediksikan dan membandingkan hasil-hasil dari
berbagai alternatif dari keputusan, strategi dan kontrol.
o Tujuan: membantu manajemen untuk menentukan kebijakan dan
tindakannya secara ilmiah.
Faktor-faktor kunci tumbuhnya Penelitian Operasional (tahun 1950-an)
Definisi Penelitian Operasional

b. The Operations Research Society of America (ORSA)
o Penelitian operasional berkaitan dengan penentuan secara ilmiah
bagaimana merancang dan mengoperasikan sistem manusia-mesin
yang terbaik, yang biasanya dalam kondisi yang membutuhkan
pengalokasian sumberdaya yang terbatas.


- Bertujuan untuk membantu pengambil keputusan yang berkaitan dengan
masalah yang kompleks (sebagai alat bantu dalam pengambilan keputusan).
- Sebagaian besar berkaitan dengan masalah pengalokasian sumber daya.
- Metodologinya adalah dengan menggunakan model.
- Aplikasinya sangat luas.


1. Pemrograman Matematis Mix Product Problem

Berapa banyak tiap jenis produk yang harus dibuat dalam kondisi
ketersediaan bahan dan tenaga kerja yang terbatas agar total keuntungan yang
diperoleh maksimum?
2. Optimasi Jaringan
a. Shortest Path Problem

Tentukan rute dari titik asal (S) ke titik tujuan (T) yang
mempunyai jarak terpendek !
Kata Kunci Definisi Penelitian Operasional
Contoh Kasus Penelitian Operasional

b. Maximal Flow Problem

Tentukan aliran maksimum yang dapat dikirim dari titik asal (1) ke
titik tujuan (7) !
c. Traveling Salesman Problem, TSP

Seorang salesman harus menunjungi semua kota dimana tiap kota
hanya dikunjungi sekali, dan dia harus mulai dari dan kembali ke kota
asal. Tujuannya adalah menentukan rute dengan jarak total yang
paling minimum.
3. Rantai Markov

Berapa probabilitas (dalam jangka panjang) bahwa suatu kesebelasan
akan menang?

Alternatif
Keputusan
Alternatif
Alternatif
Alternatif
Jika saat ini tim menang, tentukan waktu (minggu) rata-rata tim tersebut
kembali menang!
4. Teori Antrian

Panjang antrian rata-rata antrian?
Waktu rata-rata pelanggan dalam sistem?

Berapa jumlah pelayan agar biaya total adalah minimum?
5. Pohon Keputusan














- Unsur manusia penting dalam setiap pengambilan keputusan, tidak saja
diperlukan ahli Penelitian Operasional namun dari bidang yang lain.
o Contoh: kasus elevator
- Penelitian operasional memiliki aspek ilmu dan seni.
- Aspek ilmu terletak pada penyediaan teknik-teknik matematis dan algoritma
untuk memecahkan masalah keputusan yang tepat.
- Aspek seni terletak pada kenyataan bahwa keberhasilan pada semua tahap
yang mendahului atau mengikuti tahapan pemecahan model matematis dari
keputusan sebagian besar tergantung pada kreativitas penganalisis keputusan.


Organization Nature of application Year Related techniques
Annual
Savings
IBM Integrate a national wide of spare-
parts inventories to improve service
support
1990 Inventory Theory,
Simulation
$20 million +
$250 million
less inventory
Delta
Airlines
Maximize the profit from assigning
airplane to over 2500 domestic
flights
1994 Integer Programming $100 million
Yellow
Freight
System
Optimize the design of a national
trucking network and the routing of
shipments
1992 Network Models,
Nonlinear
Programming,
Forecasting,
Simulation
$17.3 million
Citgo
Petroleum
Optimize refinery operations and
the supply, distribution, and
marketing of products
1987 Linear Programming,
Network Models,
Forecasting
$70 million
Proctor and
Gamble
Redesign the North American
production and distribution system
to reduce costs and improve speed
to market
1997 Transportation and
Assignment Problems
$200 million

Seni dan Penelitian Operasional
Beberapa penerapan Penelitian Operasional


Turban
(1969)
Ledbetter and
Cox (1975)
Thomas and
DaCosta (1977)
Forgionne
(1982)
Bayesian Decision Analysis - - 9 -
Delphi - - 13.5 -
Dynamic Programming 6 6 10 7
Financial Methods - - 13.5 -
Game Theory - 7 - 8
Heuristic Programming 8.5 - 8 -
Integer and Mixed Programming - - 12 -
Inventory Theory 4 - 5 -
Linear Programming 3 2 3 4
Network Models - 4 - -
Nonlinear Programming 7 - 7 6
PERT/CPM 5 - 4 3
Risk Analysis - - 11 -
Queuing Theory 8.5 5 6 5
Simulation 2 3 2 2
Statistical Analysis 1 1 1 1

Thomas and
Dacosta (1977)
Forgionne
(1982)
Accounting 11 5
Advertising and Sales Research 8 -
Capital Budgeting 4 2
Equipment Replacement 9 -
Forecasting Market Planning 1 6
Inventory Control 2.5 4
Maintenance 10 9
Packaging 12 -
Personnel Management - 10
Plant Location 6 8
Rangking Penerapan Teknik Penelitian Operasional

Thomas and
Dacosta (1977)
Forgionne
(1982)
Production Planning and Scheduling 2.5 3
Project Planning - 1
Quality Control 7 7
Transportation 5 -





a. Model kuantitatif
Komponen utama model OR:


Modeling Process
Elemen Utama Penelitian Operasional

Model kuantitatif terdiri dari:

b. Solusi
Ada dua macam:
- Exact Technique
- Heuristic Technique


Pemrograman Linier disingkat PL merupakan metode matematik dalam
mengalokasikan sumber daya yang terbatas untuk mencapai suatu tujuan seperti
memaksimumkan keuntungan dan meminimumkan biaya. PL banyak diterapkan
dalam masalah ekonomi, industri, militer, social dan lain-lain. PL berkaitan dengan
penjelasan suatu kasus dalam dunia nyata sebagai suatu model matematik yang
terdiri dari sebuah fungsi tujuan linier dengan beberapa kendala linier.

Karakteristik Pemrograman Linier:
- Sifat linearitas suatu kasus dapat ditentukan dengan menggunakan beberapa
cara. Secara statistik, kita dapat memeriksa kelinearan menggunakan grafik
(diagram pencar) ataupun menggunakan uji hipotesa. Secara teknis, linearitas
ditunjukkan oleh adanya sifat proporsionalitas, additivitas, divisibilitas dan
kepastian fungsi tujuan dan pembatas.
- Sifat proporsional dipenuhi jika kontribusi setiap variabel pada fungsi tujuan
atau penggunaan sumber daya yang membatasi proporsional terhadap level
nilai variabel. Jika harga per unit produk misalnya adalah sama berapapun
Pengenalan Programa Linear

jumlah yang dibeli, maka sifat proporsional dipenuhi. Atau dengan kata lain,
jika pembelian dalam jumlah besar mendapatkan diskon, maka sifat
proporsional tidak dipenuhi. Jika penggunaan sumber daya per unitnya
tergantung dari jumlah yang diproduksi, maka sifat proporsionalitas tidak
dipenuhi.
- Sifat additivitas mengasumsikan bahwa tidak ada bentuk perkalian silang
diantara berbagai aktivitas, sehingga tidak akan ditemukan bentuk perkalian
silang pada model. Sifat additivitas berlaku baik bagi fungsi tujuan maupun
pembatas (kendala). Sifat additivitas dipenuhi jika fungsi tujuan merupakan
penambahan langsung kontribusi masing-masing variabel keputusan. Untuk
fungsi kendala, sifat additivitas dipenuhi jika nilai kanan merupakan total
penggunaaan masing-masing variabel keputusan. Jika dua variabel keputusan
misalnya merepresentasikan dua produk substitusi, dimana peningkatan
volume penjualan salah satu produk akan mengurangi volume penjualan
produk lainnya dalam pasar yang sama, maka sifat additivitas tidak
terpenuhi.
- Sifat divisibilitas berarti unit aktivitas dapat dibagi ke dalam sembarang level
fraksional, sehingga nilai variabel keputusan non integer dimungkinkan.
- Sifat kepastian menunjukkan bahwa semua parameter model berupa
konstanta. Artinya koefisien fungsi tujuan maupun fungsi pembatas
merupakan suatu nilai pasti, bukan merupakan nilai dengan peluang tertentu.
- Keempat asumsi (sifat) ini dalam dunia nyata tidak selalu dapat dipenuhi.
Untuk meyakinkan dipenuhinya keempat asumsi ini, dalam pemrograman
linier diperlukan analisis sensitivitas terhadap solusi optimal yang diperoleh.


EVALUASI



II. PERUMUSAN MODEL PROGRAMA LINEAR

POKOK PEMBAHASAN
Model Matematis Programa Linear
Fungsi Tujuan, Jenis Variabel Keputusan dan Pembatas

TUJUAN PEMBELAJARAN
1. Memahami konsep fungsi tujuan, variable keputusan dan pembatas
2. Mampu merumuskan permasalahan nyata ke dalam model matematis
program linear
3. Memahami bentuk pertidaksamaan dan standar

RINGKASAN MATERI


- Model Optimisasi Matematik adalah model matematik yang
merepresentasikan masalah optimisasi.
- Istilah lain: model pemrograman matematik (mathematical programming
model)
- Perlu diingat, masalah optimasi adalah masalah yang terkait dengan
penentuan keputusan yang memberikan ukuran performansi terbaik dari
sekumpulan alternatif keputusan yang ada
- Klasifikasi:

Model Optimisasi Matematik
(Mathematical Optimization Model)


- Merupakan salah satu teknik OR yang digunakan paling luas dan diketahui
dengan baik.
- Merupakan metode matematik dalam mengalokasikan sumber daya yang
langka untuk mencapai suatu tujuan seperti memaksimumkan keuntungan
dan meminimumkan biaya.
- Diterapkan dalam masalah ekonomi, industri, militer, sosial dan lain-lain. LP
berkaitan dengan penjelasan suatu dunia nyata sebagai suatu model
matematik yang terdiri dari sebuah fungsi tujuan linier dan beberapa kendala
linier.
- Pada tahap awal, penerapan-penerapan LP banyak dijumpai pada masalah-
masalah militer seperti logistik, transportasi, dan perbekalan.
- Dapat diterapkan dalam masalah-masalah sektor pemerintah dan swasta.
Hasilnya, LP disadari sebagai pendekatan penyelesaian masalah yang sangat
ampuh untuk analisis keputusan dalam bidang bisnis.
- Posisi Linear Programming dalam Klasifikasi Model Optimisasi Matematik:



1. Sifat linearitas, suatu kasus dapat ditentukan dengan menggunakan beberapa
cara:
- Secara statistik, kita dapat memeriksa kelinearan menggunakan grafik
(diagram pencar) ataupun menggunakan uji hipotesis.
- Secara teknis, linearitas ditunjukkan oleh adanya sifat proporsionalitas,
additivitas, divisibilitas dan kepastian fungsi tujuan dan pembatas.

2. Sifat proporsional, dipenuhi jika kontribusi tiap variabel terhadap fungsi tujuan
dan fungsi pembatas adalah proporsional terhadap nilai dari variabel tersebut.
3. Sifat additivitas, mengasumsikan bahwa kontribusi sebuah variabel keputusan
terhadap fungsi tujuan dan fungsi pembatas adalah independent dengan variabel
yang lainnya.
4. Sifat divisibilitas, berarti unit aktivitas dapat dibagi ke dalam sembarang level
fraksional, sehingga nilai variabel keputusan non integer dimungkinkan.
5. Sifat kepastian, semua parameter dari model adalah diketahui dan deterministik.
Kelima asumsi (sifat) ini dalam dunia nyata tidak selalu dapat dipenuhi. Untuk
meyakinkan dipenuhinya kelima asumsi ini, dalam linear programming diperlukan
analisis sensitivitas terhadap solusi optimal yang diperoleh.


1. Formulasi Permasalahan
- Mempelajari sistem relevan
- Mengembangkan pernyataan permasalahan:
a. pernyataan tujuan
b. sumber daya yang membatasi
c. alternatif keputusan yang mungkin
d. hubungan antara bagian
e. dan lain-lain.
2. Pembentukan model matematik
- Mengidentifikasikan variabel yang tak diketahui yang akan ditentukan
nilainya (decision variable) dan menyatakannya dengan simbol-simbol
matematis.
- Mengidentifikasi semua pembatas (constraint) dan menyatakannya dengan
persamaan atau pertidaksamaan linier sebagai fungsi dari variabel keputusan.
- Mengidentifikasi tujuan atau kriteria dan menyatakannya sebagai suatu fungsi
linier dari variabel keputusan yang hendak dimaksimumkan atau
diminimumkan (fungsi tujuan).

Langkah-Langkah Membangun Model LP






- Area feasible
Sekumpulan titik yang memenuhi semua pembatas pada programa
linear termasuk pembatas tanda.
- Solusi optimal
Pada kasus maksimasi adalah sebuah titik di area feasible yang
memiliki nilai fungsi tujuan terbesar.
Model Umum LP
AreaFisibel/Layak dan Solusi Optimal

Pada kasus minimasi adalah sebuah titik di area feasible yang
memiliki nilai fungsi tujuan terkecil.


- Bentuk standard
o Seluruh persamaan pembatas berbentuk persamaan
o Seluruh variabel keputusan non-negatif
o Diselesaikan dengan metode Simplex
- Bentuk Kanonik
o Untuk persoalan minimasi, pembatas berbentuk pertidaksamaan ,
variabel keputusan non-negatif
o Untuk persoalan maksimasi, pembatas berbetuk pertidaksamaan ,
variabel keputusan non-negatif
o Berguna dalam membahas hubungan dualitas




Seorang pengrajin menghasilkan satu tipe meja dan satu tipe kursi. Proses yang
dikerjakan hanya merakit meja dan kursi. Dibutuhkan waktu 2 jam untuk merakit 1
unit meja dan 30 menit untuk merakit 1 unit kursi. Perakitan dilakukan oleh 4 orang
karyawan dengan waktu kerja 8 jam perhari. Pelanggan pada umumnya membeli
Format Standard & Kanonik
Contoh Kasus

paling banyak 4 kursi untuk 1 meja. Oleh karena itu pengrajin harus memproduksi
kursi paling banyak empat kali jumlah meja. Harga jual per unit meja adalah Rp 1,2
juta dan per unit kursi adalah Rp 500 ribu.
Formulasikan kasus tersebut ke dalam model matematiknya !

Solusi:
Berdasarkan informasi yang diberikan pada soal, identifikasi tujuan, alternatif,
keputusan & batasan sumber daya adalah sebagai berikut:
- Tujuan yang ingin dicapai adalah memaksimumkan pendapatan.
- Alternatif keputusan adalah jumlah meja dan kursi yang akan diproduksi.
- Sumber daya yang membatasi adalah waktu kerja karyawan dan
perbandingan jumlah kursi dan meja yang harus diproduksi (pangsa pasar).

Definisikan:
x
1
= jumlah meja yang akan diproduksi
x
2
= jumlah kursi yang akan diproduksi
Model umum Linear Programming kasus di atas adalah :
Fungsi tujuan:
Maksimumkan z = 1.2 x
1
+ 0.5 x
2

Kendala:
2x
1
+ 0.5 x
2
32
4x
1
x
2
atau 4x
1
x
2
0
x
1
, x
2
0


EVALUASI

1. Seorang peternak memiliki 200 kambing yang mengkonsumsi 90 kg pakan
khusus setiap harinya. Pakan tersebut disiapkan menggunakan campuran
jagung dan bungkil kedelai dengan komposisi sebagai berikut :

Kebutuhan pakan kambing setiap harinya adalah paling banyak 1% kalsium,
paling sedikit 30% protein dan paling banyak 5% serat.
Formulasikan permasalahan di atas ke dalam model matematiknya !

2. Suatu bank kecil mengalokasikan dana maksimum Rp 180 juta untuk
pinjaman pribadi dan pembelian mobil satu bulan ke depan. Bank
mengenakan biaya suku bunga per tahun 14% untuk pinjaman pribadi dan
12% untuk pinjaman pembelian mobil. Kedua tipe pinjaman itu dikembalikan
bersama dengan bunganya satu tahun kemudian. Jumlah pinjaman pembelian
mobil paling tidak dua kali lipat dibandingkan pinjaman pribadi. Pengalaman
sebelumnya menunjukkan bahwa 1% pinjaman pribadi merupakan kredit
macet.
Formulasikan masalah di atas ke dalam bentuk model matematiknya !



III. SOLUSI GRAFIS

POKOK PEMBAHASAN
Solusi Optimal
Solusi Khusus

TUJUAN PEMBELAJARAN
1. Memahami penyelesaian masalah programa linear dengan metoda
grafis
2. Memahami permasalahan optimal, khusus, dan unik

RINGKASAN MATERI


CONTOH KASUS A
- PT CAT merupakan perusahaan kecil pembuat cat yang memproduksi dua
jenis cat, interior dan eksterior.
- Terdapat dua jenis bahan yang digunakan, yaitu bahan A dan B.
- Ketersediaan bahan maksimum per hari adalah 6 ton untuk A dan 8 ton untuk
B.
- Kebutuhan bahan mentah per ton produk cat untuk kedua jenis cat, interior
dan eksterior, adalah sebagai berikut:

Kebutuhan bahan mentah untuk
per ton cat (ton)
Ketersediaan
maksimum per
hari (ton)
Eksterior Interior
Bahan
mentah A
1 2 6
Bahan
mentah B
2 1 8

Solusi Optimal

- Penelitian pasar menunjukkan bahwa
o Jumlah permintaan cat interior dikurangi dengan jumlah permintaan cat
eksterior tidak lebih dari satu ton.
o Permintaan maksimum cat interior adalah 2 ton per hari.
- Harga jual produk cat adalah $3 untuk cat eksterior dan $2 untuk cat interior.
- Berapa banyak cat interior dan eksterior yang harus diproduksi per hari agar
diperoleh pendapatan yang maksimum?

SOLUSI CONTOH KASUS A
Memodelkan masalah
Variabel keputusan:
x
1

= jumlah cat eksterior yang diproduksi per hari
x
2
= jumlah cat interior yang diproduksi per hari
Pembatas:
1. Ketersediaan bahan
Bahan A : x
1
+ 2x
2
s 6
Bahan B : 2x
1
+ x
2
s 8
2. Permintaan
Selisih permintaan : x
2
x
1
s 1
Permintaan cat interior : x
2
s 2
3. Pembatas tak negatif
x
1
0; x
2
0
Fungsi Tujuan:
Memaksimumkan pendapatan total Z = 3x
1
+ 2x
2

Sehingga, akan didapatkan :
Memaksimumkan Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6
2x
1
+ x
2
s 8
x
1
+ x
2
s 1
x
2
s 2
x
1
0 dan x
2
0


Pencarian solusi
Langkah pengerjaan pendekatan Grafik:
Plot garis batas setiap constraint
Identifikasi daerah feasible/layak
Lokalisasi solusi optimal dengan cara:
Plotting kurva bertingkat
Hitung nilai setiap titik sudut










Bagaimana perubahan solusi jika fungsi tujuan berubah menjadi:
Minimumkan z = 3x
1
+ 2x
2










CONTOH KASUS B
PT. MOKLET memproduksi 2 jenis pipa, yaitu Aqua & Hydro, dengan rincian
sumber daya sebagai berikut:
AQUA HYDRO
Pompa 1 1
Jam Kerja 9 jam 6 jam
Pipa 12 meter 16 meter
Laba/unit $350 $300

Terdapat 200 pompa, 1566 jam kerja, dan 2880 persediaan pipa.
1. Bagaimana strategi produksi terbaik yang dapat dilakukan oleh PT. MOKLET?
2. Gunakan metode grafik untuk menyelesaikan masalah tersebut!

SOLUSI CONTOH KASUS B
Maksimisasi 350 X
1
+ 300 X
2

S.T. :
X
1
+ X
2
200
9 X
1
+ 6 X
2
1566
12 X
1
+ 16 X
2
2880
X
1
0 dan X
2
0



Jenis-jenis Solusi :
1. Terdapat satu solusi optimal/unique seperti pada kasus-kasus yang
dibahas sebelumnya.
2. Solusi optimal infinite / alternatif/ multiple.
3. Solusi optimal unbounded/tak berbatas.
4. Tidak terdapat solusi yang layak.


Solusi optimal alternatif
Fungsi Tujuan :

Pembatas :





Solusi Khusus
2 1
2 Maks x x Z + =
10 2
2 1
s + x x
1
2 1
> + x x
4
2
s x
0
1
> x 0
2
> x



Solusi tak terbatas
Fungsi Tujuan :

Pembatas :





2 1
2 Maks x x Z + =
1
2 1
> + x x
4
2
s x
0
1
> x
0
2
> x

Solusi tak layak
Fungsi Tujuan :

Pembatas :






Keuntungan
Mudah
Keterbatasan
Hanya cocok untuk masalah LP dengan dua variabel keputusan.
Sensitif terhadap tingkat ketelitian.


Perubahan Dalam Sumber
Masalah sensitivitas 1
Berapa banyak suatu sumber dapat ditingkatkan untuk memperbaiki
nilai optimum dari fungsi tujuan Z?
Keunggulan & Kelemahan Pemecahan masalah LP
dengan metode grafis
Analisis Sensitivitas
2 1
2 Maks x x Z + =
1
2 1
s + x x
10 2
2 1
> + x x
0
1
> x
0
2
> x

Berapa banyak suatu sumber dapat diturunkan tanpa menyebabkan
perubahan dalam solusi optimum saat ini?
Pembatas
Binding sumberdaya yang langka (scarce resource)
Nonbinding sumberdaya yang berlebihan (abundant resource)



Peningkatan Pembatas (1):

Peningkatan Pembatas (2):

Penurunan Pembatas (3):


Penurunan Pembatas (4):


Sumber Yang Diprioritaskan Untuk Ditingkatkan :
Masalah sensitivitas
Sumberdaya mana yang perlu ditingkatkan?


A
max
Z
i
= perubahan maksimum dalam nilai Z akibat
peningkatan pembatas i
A
max
b
i
= perubahan maksimum dari sumber/pembatas I
y
i
= shadow price pembatas i


Shadow price
Sumber
daya
Jenis
Perubahan
maksimum dalam
sumber
Perubahan
maksimum dalam
fungsi tujuan
(dalam ribuan)
Shadow
price
1 Langka 7 6 = 1 13 12
2
/
3
=
1
/
3

1
/
3

2 Langka 12 8 = 4 18 12
2
/
3
= 5
1
/
3

4
/
3

3 Berlimpah 2 1 = 3 12
2
/
3
12
2
/
3
= 0 0
4 Berlimpah 1
1
/
3
2 = -
2
/
3
12
2
/
3
12
2
/
3
= 0 0
i
i
i
b
Z
y
max
max
A
A
=

Interpretasi:
1. Sumber (2) (bahan B) seharusnya mendapatkan prioritas dalam
pengalokasian dana.
2. Sumber (3) dan (4) tidak perlu ditingkatkan.

Perubahan Koefisien Fungsi Tujuan
Perubahan dalam koefisien fungsi tujuan akan memengaruhi slope dari garis
lurus yang merepresentasikannya.
Perubahan dalam koefisien fungsi tujuan akan mengubah status dari suatu
sumber (langka atau berlimpah)
Pertanyaan:
Berapa besar koefisien fungsi tujuan dapat diubah tanpa menyebabkan
perubahan pada solusi (titik) optimal.
Berapa besar koefisien fungsi tujuan dapat diubah untuk merubah
status sumber dari berlimpah ke langka, dan sebaliknya.



1
2
1
2
1
1
= = c
c
4
1
2
2
1
1
= = c
c




Rentang c
1
untuk mempertahankan solusi optimal pada titik C
Minimum dari c
1

slope Z = slope pembatas (1)




Minimum dari c
1

slope Z = slope pembatas (2)





4 1
1
s s c
2
3
1
2 3
2
2
= = c
c
6
2
1 3
2
2
= = c
c
6
2
3
2
s s c
Rentang c
1
agar titik C tetap sebagai titik optimal:


Rentang c
2
untuk mempertahankan solusi optimal pada titik C
Minimum dari c
2

slope Z = slope pembatas (2)




Minimum dari c
1

slope Z = slope pembatas (1)


Rentang c
2
agar titik C tetap sebagai titik optimal:


EVALUASI

Soal:
Suatu perusahaan memproduksi dua jenis produk. Satu unit produk A membutuhkan
proses selama 2 jam di mesin 1 dan 1 jam di mesin 2. Untuk produk B, satu unit
membutuhkan proses 1 jam di mesin 1 dan 3 jam di mesin 2. Keuntungan per unit
produk A dan B adalah $30 dan $20. Setiap mesin dapat digunakan selama 8 jam per
hari.
1. Tentukan solusi optimum dengan metode grafis
2. Tentukan nilai shadow price untuk mesin 1 dan 2
3. Tentukan range dari nilai shadow price untuk mesin 1 dan 2

IV. BASIC FEASIBLE SOLUTION

POKOK PEMBAHASAN
Vektor dan Matriks Basis
Matriks Inverse

TUJUAN PEMBELAJARAN
1. Memahami konsep matriks basis dan invers
2. Memahami konsep pembentukan matriks solusi layak dari sebuah
permasalahan programa linear

RINGKASAN MATERI




Ciri-ciri LP dalam bentuk standar
Fungsi tujuan memaksimumkan atau meminimumkan
Semua pembatas dinyatakan dalam persamaan
Semua variabel keputusan dibatasi sebagai tak negatif
Konstanta ruas kanan untuk tiap pembatas adalah tak negatif

Bentuk Standard Linear Programming

(
(
(
(

=
mn m m
n
n
a a a
a a a
a a a

2 1
2 22 21
1 12 11
A
(
(
(
(

=
n
x
x
x

2
1
x
(
(
(
(

=
m
b
b
b

2
1
b
( )
n
c c c
2 1
= c
Ilustrasi:


Bentuk standard dalam matriks-vektor

Keterangan:
A : matriks (m x n)
x : vektor kolom (n x 1)
b : vektor kolom (m x 1)
c : vektor baris (1 x n)









Reduksi ke bentuk standar
Metode simpleks untuk memecahkan masalah LP memerlukan setiap masalah
dinyatakan dalam bentuk standar.
Tidak semua masalah LP dalam bentuk standar
Pembatas pertidaksamaan (inequality constraint).
Variabel yang tak dibatasi tanda (unrestricted in sign of variables)

Pembatas pertidaksamaan
Karena bentuk standar memerlukan semua pembatas harus dinyatakan
dengan dalam persamaan, pembatas pertidaksamaan harus diubah ke
persamaan.
Ini dilakukan dengan penambahan variabel baru untuk menunjukkan slack
antara ruas kiri dan kanan pada tiap pertidaksamaan.
Variabel baru tersebut disebut slack variable
Contoh:


Variabel yang tak dibatasi tanda
Dalam LP, adakalanya terdapat nilai variabel yang tak dibatasi tanda
(positif atau negatif)
Karena bentuk standar LP memerlukan semua variabel adalah tak negatif,
maka variabel yang tak dibatasi tanda diganti dengan selisih dua variabel
tak negative
Contoh:
x
1
+ x
5
= 50
x
1
0
x
5
tak dibatasi tanda/ unrestricted


x
5
= x
6
x
7


x
1
+ x
6
x
7
= 50
x
1
0, x
6
0, x
7
0


Suatu solusi layak (feasible solution) adalah suatu vektor tak negatif x yang
memenuhi persamaan Ax = b.
Daerah layak (feasible region), dinyatakan dengan S, adalah himpunan dari
semua solusi layak yang mungkin. Secara matematis,
S = {x | Ax = b, x 0}
Jika himpunan layak S adalah kosong maka masalah LP dikatakan tak layak
(infeasible)
Suatu solusi optimal (optimal solution) adalah suatu vektor x
*
yang layak dan
nilai fungsi tujuannya (cx
*
) lebih besar dari semua solusi layak yang lain.
Secara matematis,
x
*
adalah optimal x
*
e S dan cx
*
cx,

x e S
Nilai optimal (optimal value) dari masalah LP adalah

nilai fungsi tujuan yang
berkaitan dengan solusi optimal. Jika Z
*
adalah nilai optimal maka Z
*
= cx
*

Jika suatu LP mempunyai lebih dari satu solusi optimal maka LP disebut
mempunyai solusi optimal alternatif (alternate optimal solution).
Solusi optimal dari masalah LP dikatakan unik (unique optimum) jika hanya
terdapat tepat satu solusi optimal.
Jika suatu masalah LP tidak mempunyai optimum tertentu (finite optimum),
yaitu maks. Z +, maka LP dikatakan mempunyai solusi yang tak terbatas
(unbounded solution)


Permasalahan matematis utama dalam pemrograman linier adalah
mendapatkan solusi dari suatu sistem persamaaan linier yang
memaksimumkan atau meminimumkan suatu fungsi tujuan linier.
Definisi Dasar Basis Feasible Solution
Pemecahan Sistem Persamaan Linier

Sistem persamaan linier dapat diselesaikan dengan menggunakan prosedur
klasik Gauss-Jordan elimination.
Contoh, sistem dengan dua persamaan dengan lima variabel yang tak
diketahui:

Karena terdapat lebih banyak jumlah variabel yang tak diketahui daripada
persamaan, maka sistem mempunyai lebih dari satu solusi.
Himpunan dari semua solusi yang mungkin dari sistem disebut himpunan
solusi (solution set)
Sistem ekivalen (equivalent system)
Dua sistem persamaan dikatakan ekivalen jika kedua sistem
mempunyai himpunan solusi yang sama.
Metode untuk memecahkan suatu sistem persamaan adalah mendapatkan
suatu sistem ekivalen yang mudah untuk dipecahkan.
Terdapat dua tipe operasi baris elementer untuk mendapatkan sistem ekivalen
o Mengalikan sebarang persamaan dalam sistem dengan suatu bilangan
positif atau negatif.
o Menambahkan ke sebarang persamaan dengan suatu konstanta pengali
(positif, negatif atau nol) ke sebarang persamaan yang lain.
Contoh:

Sistem S
1
, S
2
dan S
3
adalah ekivalen, yaitu solusi bagi satu sistem secara
otomatis memberikan solusi bagi sistem yang lain.

( )! !
!
m n m
n
m
n

=
|
|
.
|

\
|
Untuk sistem S
3
, x
4
= x
5
= x
6
= 0 akan memberikan x
1
= 6, x
2
= 2.
Sistem S
3
disebut sistem kanonik (canonical system).
Variabel x
1
dan x
2
dari sistem kanonik disebut variabel basis (basic variable).
Variabel basis (basic variable)
o Variabel x
i
dikatakan sebagai variabel basis jika dalam suatu
persamaan ia muncul dengan koefisien satu pada persamaan tersebut,
dan nol pada persamaan yang lain.
Variabel non basis (nonbasic variable)
o Variabel yang bukan variabel basis.
Operasi pivot (pivot operation)
o Suatu urutan operasi elementer yang mereduksi suatu sistem
persamaan ke suatu sistem ekivalen untuk menghasilkan variabel
basis.
Solusi basis (basic solution)
o Solusi yang diperoleh dari suatu sistem kanonik dengan menetapkan
nilai variabel non basis sama dengan nol dan memecahkan variabel
basis.
Solusi basis layak (basic feasible solution)
o Solusi basis dimana nilai variabel basisnya adalah tak negatif.
Dengan m pembatas dan n variabel, jumlah maksimum dari solusi basis bagi
LP dalam bentuk standar adalah terbatas dan diberikan oleh


Per definisi, setiap solusi basis layak adalah solusi basis, maka jumlah
maksimum solusi basis layak adalah juga terbatas dengan hubungan ini.
Dari kesimpulan dengan metode grafis:
o Jika terdapat suatu solusi optimal dari model LP, salah satu titik pojok
(corner point) dari daerah layak adalah solusi optimal.
Dengan mudah dapat ditunjukkan bahwa setiap titik pojok dari daerah layak
berkaitan dengan suatu solusi basis layak dari persamaan pembatas.
Ini berarti bahwa suatu solusi optimal dari model LP dapat diperoleh hanya
dengan memeriksa solusi basis layaknya.

(

=
X
N
X
B
x
b
X
B B
1
=
0
X
N
=
Pendekatan naif (nave approach) untuk memecahkan masalah LP (yang
mempunyai solusi optimal) dilakukan dengan membangkitkan semua solusi
basis layak yang mungkin dengan sistem kanonik dan menentukan solusi
basis layak mana yang memberikan nilai fungsi tujuan terbaik.
Dengan metode simpleks (simplex method), pemecahan lebih efisien karena
hanya memeriksa sebagian solusi basis layak.


Jika fungsi pembatas adalah Ax = B, maka solusinya adalah



dengan

dan
Jika x
B

0, maka x disebut BASIC FEASIBLE SOLUTION dari sistem
tersebut.
B = basic matrix (basis)
N = nonbasic matrix
Komponen x
B

disebut variabel basis/ variabel dependent
Komponen xN disebut variabel nonbasis/ variabel independent
Fungsi pembatas sebagai berikut:
x
1
+ x
2
6
x
2
3
x
1
, x
2
0



Bentuk standard:
x
1
+ x
2
+ x
3
= 6
x
2
+ x
4
= 3
x
1
, x
2
, x
3
, x
4
0
BASIC FEASIBLE SOLUTION

(

=
1 0 1 0
0 1 1 1
A
Matriks Pembatas A = [a
1
, a
2
, a
3
, a
4
]


Basis yang mungkin


Poin 1, 2, 3, dan 5 merupakan basic feasible solution.
Poin 4 merupakan solusi basis yang tidak feasible .



-1
2 -5 3 5
A A
-1 3 1 2
( (
= =
( (

-1 -1
1 0
AA A A
0 1
(
= =
(

a b
A dapat di invers jika ad - bc 0
c d
(
= =
(


Suatu bilangan jika dikalikan dengan kebalikannya, maka hasilnya adalah 1.
Misalkan 5.5
-1
atau 5
-1
.5 = 1, Demikian juga halnya dengan matrik A.A
-1
= A
-1
.A = I



Maka :



Jika tidak ditemukan matrik A
-1
, maka A disebut matrik tunggal (singular)

Invers matrik 2 x 2



Maka , A
-1
diperoleh dengan rumus :

Jika ad bc = 0, maka matrik A non-inverti

1. Mencari invers dengan definisi sbb:

Langkah-langkahnya :
Dibuat suatu matrik invers dengan elemen-elemen matrik permisalan
sehingga mendapatkan suatu persamaan jika dilakukan perkalian dengan
matriknya.
MENCARI INVERSE MATRIKS

ij
i
ij i j
b menukar baris ke i dengan baris ke j
b (p) mengalikan baris ke i dengan p 0
b (p) b pb
ganti baris ke i dengan baris baru yang
merupakan baris ke i ditambah dengan

=
= =
= +
=
baris ke j yang dikalikan dengan p.
Perkalian matrik dengan matrik inversnya menghasilkan matrik identitas
Dilakukan penyelesaian persamaan melalui eliminasi ataupun substitusi
sehingga diperoleh nilai elemen-elemen matrik invers.

2. Mencari invers dengan OBE (Operasi Baris Elementer)

Langkah-langkah :
Dilakukan OBE pada hingga diperoleh dengan memperhatikan definisi
operasi berikut:








Matriks Elementer: (E)
Matriks A(nxn) disebut elementer bila dengan sekali melakukan Operasi Baris
Elementer (OBE) terhadap matriks identitas I
n
.

E = matrik elementer, maka EA = matrik baru yang terjadi bila OBE tersebut
dilakukan pada matrik A.

Notasi sebagai berikut :


Tunjukkan bahwa matrik


adalah perkalian matrik elementer !

Dari penyelesaian dengan OBE yang menghasilkan matrik identitas, maka matrik A
adalah matrik invertible.
Dengan demikian, matrik A dapat dituliskan sebagai hasil kali dari matrik elementer.
Kita memiliki E
4
E
3
E
2
E
1
A = I dengan :

Matrik elementer ini menyatakan operasi baris elementer untuk membentuk matrik A
menjadi matrik identitas.
Dengan demikian :





3. Mencari Invers dengan Matrik Adjoint


Langkah-langkah :
Hitung
Cari matrik adjoint dengan terlebih dahulu menentukan matrik kofaktor.
Matrik adjoint merupakan matrik transpose dari matrik kofaktor.
Matrik invers diperoleh dengan mengkalikan matrik adjoint dengan seper-
determinan
Matrik kofaktor dan matrik adjoint

Jika baris ke i dan kolom j dibuang, maka disebut minor ke ij dari matrik A.

Kofaktor ke ij dari matrik A adalah :

Matrik kofaktor dari A adalah :

-1
1
A adj(A)
A
=

Sehingga diperoleh matrik kofaktor A :

Matrik adjoint merupakan matrik transpose dari matrik kofaktor.
Kesimpulan :

Contoh soal:









a b c
A d e f
g h i
(
(
=
(
(





Invers matrik 3 x 3
Sama seperti mencari invers matrik 2 x 2, hanya diperlukan ketelitian yang lebih
dibandingkan mencari invers matrik 2 x 2.








Contoh soal 1:

Jawab:




Cara:


Contoh soal 2:


adj(A) =
|
|
|
.
|

\
|
33 23 13
32 22 12
31 21 11
C C C
C C C
C C C
=
|
|
|
.
|

\
|


2 0 1
0 2 1
4 4 5
|A| = a
11
C
11
+ a
12
C
12
+ a
13
C
13
= (2)(-5) + (4)(1) + (4)(1)
= - 2
A
-1
=
| |
) (
A
A adj
=
2
1

|
|
|
.
|

\
|


2 0 1
0 2 1
4 4 5
=
|
|
|
.
|

\
|


1 0
0 1
2 2
2
1
2
1
2
5
Carilah invers dari B =
|
|
|
.
|

\
|
3 2 1
2 3 1
4 4 2
dengan melakukan OBE !
Jawab :
(B | I) =
B
13
~
|
|
|
.
|

\
|
1 0 0 3 2 1
0 1 0 2 3 1
0 0 1 4 4 2
~
|
|
|
.
|

\
|

0 0 1 4 4 2
0 1 0 2 3 1
1 0 0 3 2 1
B
21(1)
B
31(2)
|
|
|
.
|

\
|


2 0 1 2 0 0
1 1 0 1 1 0
1 0 0 3 2 1
B
1(-1)
B
3(-1/2)
~



Contoh Soal 3:

Jawab:


|
|
|
.
|

\
|


2 0 1 2 0 0
1 1 0 1 1 0
1 0 0 3 2 1
B
1(-1)
B
3(-1/2)
~
|
|
|
.
|

\
|


1 0 1 0 0
1 1 0 1 1 0
1 0 0 3 2 1
2
1
B
13(-3)
B
23(1)
~
|
|
|
.
|

\
|

1 0 1 0 0
0 1 0 1 0
2 0 0 2 1
2
1
2
1
2
3
B
12(-2)
~
|
|
|
.
|

\
|


1 0 1 0 0
0 1 0 1 0
2 2 0 0 1
2
1
2
1
2
5
= (I | B
-1
)
Jadi B
-1
=
|
|
|
.
|

\
|


1 0
0 1
2 2
2
1
2
1
2
5
Cari matrik invers dari
( ) ( )
-1
A I I A
OBE
B
21
(-2)
B
31
(1)
B
32
(1)
Karena elemen baris ke 3
pada matrik kiri semua nol,
maka matrik A tidak punya
invers (non-invertibel)


EVALUASI
SOAL :
Cari martiks invers dari (dengan menggunakan3 cara):
X 100
Y 120
3/2 X + 3 Y 400, dimana X dan Y 0.

V. DASAR TABEL SIMPLEX

POKOK PEMBAHASAN
Dasar Tabel Simplex
Solusi Unik dan Alternatif

TUJUAN PEMBELAJARAN
1. Memahami konsep pemecahan programa linear dengan metoda
simplex
2. Memahami solusi-solusi unik dan solusi alternatif

RINGKASAN MATERI


Metode Simplex
Dikembangkan oleh G.B. Dantzig.
Merupakan prosedur iteratif untuk memecahkan masalah LP dengan
mengekspresikannya dalam bentuk standar.
Memerlukan kondisi dengan semua pembatas dinyatakan dalam bentuk
sistem kanonik dimana suatu solusi basis layak dapat langsung diperoleh.

Ciri-ciri dari bentuk baku model LP adalah :
1. Semua kendala berupa persamaan dengan sisi kanan non negatif.
2. Semua variabel non negatif.
3. Fungsi tujuan dari maksimum maupun minimum.




Pendahuluan




Kasus:
Memaksimumkan Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6
2x
1
+ x
2
s 8
x
1
+ x
2
s 1
x
2
s 2
x
1
0, x
2
0

Bentuk Standard:
Memaksimumkan Z = 3x
1
+2x
2
+0x
3
+0x
4
+0x
5
+0x
6

dengan pembatas-pembatas:
x
1
+ 2x
2
+ x
3
= 6
2x
1
+ x
2
+ x
4
= 8
x
1
+ x
2

+ x
5
= 1
x
2
+ x
6
= 2
x
1
0, x
2
0, x
3
0, x
4
0, x
5
0, x
6
0

LANGKAH UMUM
Berhenti jika suatu solusi layak basis tidak dapat diperbaiki lagi
maka solusi layak basis tersebut menjadi solusi optimal
Cari solusi-solusi layak basis yang dapat memperbaiki nilai fungsi tujuan
Perbaiki solusi awal jika mungkin
Cari solusi layak basis yang mempunyai nilai fungsi tujuan lebih baik
Mulai dengan suatu solusi layak basis

Penetapan Solusi Layak Basis Awal:
Variabel basis : x
3
, x
4
, x
5
,

x
6

Dengan menetapkan x
1
= x
2
= 0, maka
diperoleh solusi basis :
x
3
= 6, x
4
= 8, x
5
= 1, x
6
= 2
Nilai fungsi tujuan
Z = 3(0)+2(0)+0(6)+0(8)+0(1)+0(2)= 0


Memperbaiki Solusi Layak Awal:

Dengan diberikan solusi basis layak, yaitu x
1
= x
2
= 0, x
3
= 6, x
4
= 8, x
5
= 1, x
6
= 2
dengan Z= 0, metode simpleks memeriksa apakah mungkin untuk mendapatkan
solusi basis layak yang lebih baik dengan nilai Z yang lebih besar.
Pemeriksaan dilakukan dengan pertama-tama memeriksa apakah solusi saat ini
adalah optimal
.
Jika solusi solusi belum optimal, metode simpleks mencari suatu solusi basis layak
tetangga (adjacent basic feasible solution) dengan nilai Z yang lebih besar.
Suatu solusi basis layak tetangga (adjacent basic feasible solution) berbeda dengan
solusi basis layak (basic feasible solution) saat ini hanya tepat satu variabel basis.
Untuk mendapatkan solusi basis layak tetangga, metoda simpleks :
Membuat salah satu variabel basis menjadi variabel non basis.
Menjadikan salah satu variabel non basis menjadi variabel basis.
Permasalahannya adalah memilih solusi basis dan solusi non basis yang
pertukarannya memberikan perbaikan maksimum pada nilai fungsi tujuan.
Dalam solusi basis layak :
Variabel basis dapat mempunyai nilai yang positif.
Varibel non basis selalu mempunyai nilai nol.
Membuat variabel non basis menjadi variabel basis adalah ekivalen dengan
menaikkan nilainya dari nol ke positif.
Tentu saja, pilihan yang harus dibuat adalah menentukan variabel non basis mana
yang dapat memberikan perbaikan pada nilai Z.
Ini dilakukan dengan menaikkan nilai variabel non basis menjadi satu unit dan
memeriksa perubahannya pada nilai fungsi tujuan Z.

Misalkan variabel non basis x
1
dinaikkan 1 unit


1x
1
+x
3
= 6
2x
1
+ x
4
= 8
x
1



+ x
5
= 1
0x
1
+ x
6
= 2
x
1
= 1, x
2
= 0, x
3
= 5, x
4
= 6, x
5
= 2, x
6
= 2
Nilai fungsi tujuan
Z = 3(1)+2(0)+0(5)+0(6)+0(2)+0(2)= 3
Perubahan nilai Z per peningkatan satu unit x
1


AZ = 3 0 = 3
Misalkan variabel non basis x
2
dinaikkan 1 unit


2x
2
+ x
3
= 6
1x
2
+ x
4
= 8
1x
2


+ x
5
= 1
1x
2
+ x
6
= 2
x
1
= 0, x
2
= 1, x
3
= 4, x
4
= 7, x
5
= 0, x
6
= 1
Nilai fungsi tujuan
Z = 3(0)+2(1)+0(4)+0(7)+0(0)+0(1)= 2
Perubahan nilai Z per peningkatan satu unit x
2


AZ = 2 0 = 2
Karena AZ positif untuk x
1
dan x
2
nilai fungsi tujuan dapat dinaikkan.
Karena AZ untuk x
1
> AZ untuk x
2
maka menaikkan x
1
lebih baik.
Sampai seberapa jauh x
1
dapat dinaikkan?
Jika x
1
dinaikkan maka nilai variabel basis : x
3
, x
4
, x
5
,

x
6
akan turun dan nilainya
harus tak negatif agar tetap layak.
Batas peningkatan x
1
:
x
1
+ x
3
= 6 x
1
= 6
2x
1
+ x
4
= 8 x
1
= 4
x
1



+ x
5
= 1 x
1
=
0x
1
+ x
6
= 2 x
1
=
Maksimum peningkatan x
1
= minimum (6, 4, , ) = 4


variabel masuk basis x
1
dinaikkan 4 unit

x
1
+x
3
= 6
2x
1
+ x
4
= 8
x
1



+ x
5
= 1
0x
1
+ x
6
= 2
x
1
dinaikkan 4 unit,
maka x
4
menjadi variabel non basis
x
1
= 4, x
2
= 0, x
3
= 2, x
4
= 0, x
5
= 5, x
6
= 2 dan Z = 12
x
1
+ 2x
2
+ x
3
= 6
2 x
1
+ x
2
+ x
4
= 8
x
1
+ x
2

+ x
5
= 1
x
2
+ x
6
= 2
Sistem kanonik:
3
/
2
x
2
+ x
3

1
/
2
x
4
= 2
x
1
+
1
/
2
x
2
+
1
/
2
x
4
= 4

3
/
2
x
2

+
1
/
2
x
4
+ x
5
= 5
x
2
+ x
6
= 2
Variabel basis : x
1
, x
3
, x
5
, x
6
;
Variabel non basis: x
2
, x
4




Memperbaiki Solusi Layak 2:
Misalkan variabel non basis x
2
dinaikkan 1 unit

3
/
2
x
2
+ x
3
= 2
x
1
+
1
/
2
x
2
= 4

3
/
2
x
2
+ x
5
= 5
x
2
+ x
6
= 2
x
1
=
7
/
2
, x
2
= 1, x
3
=
1
/
2
, x
4
= 0, x
5
=
7
/
2
, x
6
= 1
Nilai fungsi tujuan
Z = 3(
7
/
2
)+2(1)+0(
1
/
2
)+0(0)+0(
7
/
2
)+0(1)
= 12
1
/
2

Perubahan nilai Z per peningkatan satu unit x
2


AZ = 12
1
/
2
12 =
1
/
2

Misalkan variabel non basis x
4
dinaikkan 1 unit


x
3

1
/
2
x
4
= 2
x
1
+
1
/
2
x
4
= 4



+
1
/
2
x
4
+ x
5
= 5
0 x
4
+ x
6
= 2
x
1
=
7
/
2
, x
2
= 0, x
3
=
5
/
2
, x
4
= 1, x
5
=
9
/
2
, x
6
= 2
Nilai fungsi tujuan
Z = 3(
7
/
2
)+2(0)+0(
5
/
2
)+0(1)+0(
9
/
2
)+0(2) = 10
1
/
2

Perubahan nilai Z per peningkatan satu unit x
4


AZ = 10
1
/
2
12 =
3
/
2
Karena AZ positif untuk x
2
nilai fungsi tujuan dapat dinaikkan
Karena AZ negatif untuk x
4
nilai fungsi tujuan tidak dapat dinaikkan
Sampai seberapa jauh x
2
dapat dinaikkan?
Jika x
2
dinaikkan maka nilai variabel basis : x
1
, x
3
, x
5
,

x
6
akan turun dan nilainya
harus tak negatif agar tetap layak.
Batas peningkatan x
2
:

3
/
2
x
2
+ x
3
= 2 x
2
=
4
/
3

x
1
+
1
/
2
x
2
= 4 x
2
= 8

3
/
2
x
2
+ x
5
= 5 x
2
=
10
/
3

x
2
+ x
6
= 2 x
2
= 2

Maksimum peningkatan x
2
= minimum (
4
/
3
, 8,
10
/
3
, 2)
=
4
/
3
x
2
dinaikkan ke
4
/
3

maka x
3
menjadi variabel non basis
x
1
=
10
/
3
, x
2
=
4
/
3
, x
3
= 0, x
4
= 0, x
5
= 3, x
6
=
2
/
3

dan Z = 12
2
/
3


3
/
2
x
2
+ x
3

1
/
2
x
4
= 2
x
1
+
1
/
2
x
2
+
1
/
2
x
4
= 4

3
/
2
x
2

+
1
/
2
x
4
+ x
5
= 5
x
2
+ x
6
= 2
sistem kanonik:
x
2
+
2
/
3
x
3

1
/
3
x
4
=
4
/
3

x
1

1
/
3
x
3
+
2
/
3
x
4
=
10
/
3

x
3

+ x
4
+ x
5
= 3

2
/
3
x
3
+
1
/
3
x
4
+ x
6
=
2
/
3

Variabel basis : x
1
, x
2
, x
5
, x
6
;
Variabel non basis: x
3
, x
4






Memperbaiki Solusi Layak 3:
Misalkan variabel non basis x
3
dinaikkan 1 unit
x
2
+
2
/
3
x
3


=
4
/
3

x
1

1
/
3
x
3
=
10
/
3

x
3
+ x
5
= 3

2
/
3
x
3
+ x
6
=
2
/
3

x
1
=
11
/
3
, x
2
=
2
/
3
, x
3
= 1, x
4
= 0, x
5
= 4, x
6
=
4
/
3

Nilai fungsi tujuan
Z = 3(
11
/
3
)+2(
2
/
3
)+0(1)+0(0)+0(4)+0(4/3)
= 12
1
/
3

Perubahan nilai Z per peningkatan satu unit x
3


AZ = 12
1
/
3
12
2
/
3
=
1
/
3

Misalkan variabel non basis x
4
dinaikkan 1 unit
x
2

1
/
3
x
4
=
4
/
3

x
1
+
2
/
3
x
4
=
10
/
3

x
4
+ x
5
= 3

1
/
3
x
4
+ x
6
=
2
/
3

x
1
=
8
/
3
, x
2
=
5
/
3
, x
3
= 0, x
4
= 1, x
5
= 2, x
6
=
1
/
3

Nilai fungsi tujuan
Z = 3(
8
/
3
)+2(
5
/
3
)+0(0)+0(1)+0(2)+0(
1
/
3
)
= 11
1
/
3

Perubahan nilai Z per peningkatan satu unit x
4


AZ = 11
1
/
3
12
2
/
3
=
4
/
3

Karena AZ negatif untuk x
3
dan x
4
nilai fungsi tujuan tidak dapat dinaikkan.
Karena tidak ada variabel non basis yang dapat dinaikkan yang dapat memberikan
peningkatan pada nilai fungsi tujuan Z maka solusi saat ini adalah optimal.

Untuk masalah maksimasi:
Suatu solusi basis layak adalah optimal jika profit relatif (AZ) dari variabel
non basis adalah negatif atau nol.



( ) 0
2
1
8
6
0 , 0 , 0 , 0 =
|
|
|
|
|
.
|

\
|
= Z

Contoh :
Memaksimumkan Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6
2x
1
+ x
2
s 8
x
1
+ x
2
s 1
x
2
s 2
x
1
0, x
2
0
Bentuk kanonik
Memaksimumkan Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
+ x
3
= 6
2x
1
+ x
2
+ x
4
= 8
x
1
+ x
2

+ x
5
= 1
x
2
+ x
6
= 2
x
1
0, x
2
0, x
3
0, x
4
0, x
5
0, x
6
0,
Representasi tabel untuk solusi basis layak awal

Nilai fungsi tujuan




Metode Simpleks dalam Bentuk Tabular
konstanta dan vektor dari product inner
B
c Z =

Pemeriksaan optimalitas
Nilai fungsi tujuan relatif (profit relatif /ongkos relatif ) untuk variabel non basis:



Kondisi optimal terjadi apabila semua nilai koefisien fungsi tujuan relatif untuk
variabel non basis adalah tak positif [untuk masalah maksimasi].
Nilai fungsi tujuan relatif untuk variabel non basis




Tabel 1 (awal)

Penentuan variabel yang masuk (entering variable)
Variabel non basis yang dipilih untuk masuk ke basis (entering variable) variabel
yang memberikan peningkatan per unit pada Z yang terbesar., yaitu variabel non
basis yang mempunyai nilai fungsi tujuan relatif terbesar (paling positif untuk
masalah maksimasi).
(

=
kanonik sistem dalam dengan berkaitan
yang kolom dan dari
j
B
j j
x
c uct inner prod
c c
( ) 3
0
1
2
1
0 , 0 , 0 , 0 3
1
=
|
|
|
|
|
.
|

\
|

= c
( ) 2
1
1
1
2
0 , 0 , 0 , 0 2
2
=
|
|
|
|
|
.
|

\
|
= c



Penentuan variabel yang keluar (leaving variable)
Untuk menentukan variabel basis yang akan diganti (leaving variable), aturan rasio
minimum (minimum ratio rule) digunakan untuk menentukan limit bagi tiap
pembatas.
Nomor baris Variabel basis
Batas atas bagi
x
1

1 x
3
6/1 = 6
2 x
4
8/2 = 4 (minimum)
3 x
5

4 x
6







Tabel 2

Penentuan variabel yang masuk (entering variable)





Tabel 3 (Optimal)


Output Tabel Simpleks dengan Software






Koefisien fungsi tujuan relatif memberikan informasi perubahan dalam nilai
Z per satu unit peningkatan variabel non basis.
Nilai yang negatif pada koefisien fungsi tujuan relatif untuk suatu variabel
non basis mengindikasikan bahwa jika variabel non basis dinaikkan justru
akan menyebabkan penurunan pada nilai Z.
Oleh karena itu, untuk masalah minimasi, hanya variabel non basis yang
mempunyai koefisien fungsi tujuan relatif yang negatif saja yang memenuhi
syarat sebagai calon variabel yang masuk basis (entering variable).
Variabel yang masuk basis (entering variable) adalah variabel yang
mempunyai koefisien fungsi tujuan relatif paling negatif.
Sehingga kondisi optimalitas pada masalah minimasi terjadi apabila semua
nilai koefisien fungsi tujuan relatif variabel non basis adalah tak negatif.
Alternatif lain untuk memecahkan masalah minimasi adalah dengan
mengkonversikannya menjadi masalah maksimasi dengan memecahkan
dengan metoda simpleks untuk masalah maksimasi.
Konversi dilakukan dengan mengalikan fungsi tujuan untuk masalah
minimasi dengan minus satu.
Contoh:
Meminimumkan Z = 4x
1
+ x
2

dengan pembatas-pembatas:
3x
1
+ x
2
= 3
4x
1
+ 3x
2
6
x
1
+ 2x
2
s 4
x
1
0, x
2
0

Memaksimumkan Z = -4x
1
- x
2

dengan pembatas-pembatas:
3x
1
+ x
2
= 3
4x
1
+ 3x
2
6
x
1
+ 2x
2
s 4
PEMECAHAN UNTUK MASALAH MINIMISASI

x
1
0, x
2
0

Solusi optimal kedua permasalahan akan sama,
tetapi nilai optimalnya berbeda dalam hal tanda.
Dengan kata lain:
Nilai minimum dari Z = - (Nilai maksimum dari Z)


Nilai yang sama pada koefisien fungsi tujuan relatif yang terbesar Pilih
variabel non basis yang akan masuk (entering variable) secara sebarang.
Nilai yang sama pada rasio minimum untuk dua atau lebih pembatas
Pilih variabel yang akan keluar (leaving variable) secara sebarang.
Implikasi dari nilai yang sama ini adalah akan menghasilkan solusi
yang degenerate.
Solusi optimal alternatif (alternate optimal solution)
Solusi yang tak terbatas (unbounded solution)


Memaksimumkan Z = 2x
1
+ 4x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 5
x
1
+ x
2
s 4
x
1
0, x
2
0

Bentuk Standard
Memaksimumkan Z = 2x
1
+ 4x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
+ x
3
= 5
x
1
+ x
2
+ x
4
= 4
x
1
0, x
2
0, x
3
0, x
4
0

MASALAH-MASALAH KOMPUTASI
SOLUSI OPTIMUM ALTERNATIF

Tabel 1


Tabel 2 (Optimal)


Tabel 3 (Optimal alternatif)


Solusi secara grafis

Solusi optimal alternatif dalam tabel simpleks dapat diidentifikasi dengan
melihat apakah terdapat koefisien fungsi tujuan relatif yang nol untuk
variabel non basis pada tabel optimal.
Dalam praktek, pengetahuan tentang optima alternatif adalah berguna karena
ini memberikan manajemen untuk memilih solusi yang terbaik yang cocok
dengan situasi tanpa terjadinya penurunan pada nilai fungsi tujuan.


Memaksimumkan Z = 2x
1
+ 3x
2

dengan pembatas-pembatas:
x
1
x
2
s 2
-3x
1
+ x
2
s 3
x
1
0, x
2
0
Bentuk Standard
Memaksimumkan Z = 2x
1
+ 3x
2

dengan pembatas-pembatas:
x
1
x
2
+ x
3
= 2
-3x
1
+ x
2
+ x
4
= 3
x
1
0, x
2
0, x
3
0, x
4
0



SOLUSI TAK TERBATAS

Tabel 1


Tabel 2


Tabel 2 belum optimal
Variabel non basis x
1
dapat menjadi basis (entering variable) untuk
menaikkan Z.
Tetapi, aturan rasio minimum gagal karena tidak ada elemen positif pada
kolom x
1
.
Dengan kata lain, jika x
1
meningkat maka kedua variabel basis x
3
dan x
2
juga
meningkat sehingga tidak akan pernah mencapai nol sebagai batas
peningkatan x
1
.
Ini berarti bahwa x
1
dapat dinaikkan secara tak terbatas.

Karena tiap peningkatan satu unit x1 akan meningkatkan Z sebesar 11 unit,
maka fungsi tujuan dapat dinaikkan tak terbatas.
Oleh karena itu, solusi bagi masalah LP adalah solusi tak terbatas (unbounded
solution).
Dengan demikian, kegagalan dalam aturan rasio minimum mengindikasikan
bahwa masalah LP mempunyai solusi yang tak terbatas.

Solusi secara grafis



Jika terjadi nilai yang sama pada rasio minimum, maka pemilihan variabel
yang keluar basis (leaving variable) dapat dilakukan sebarang.
Akibatnya, satu atau lebih variabel basis akan mempunyai nilai nol pada
iterasi berikutnya.
Dalam kasus ini, masalah LP dikatakan mempunyai solusi yang degenerate.

Contoh:
Memaksimumkan Z = 3x
1
+ 9x
2

dengan pembatas-pembatas:
x
1
+ 4x
2
s 8
x
1
+ 2x
2
s 4
x
1
0, x
2
0
DEGENERASI

Bentuk Standard
Memaksimumkan Z = 3x
1
+ 9x
2

dengan pembatas-pembatas:
x
1
+ 4x
2
+ x
3
= 8
x
1
+ 2x
2
+ x
4
= 4
x
1
0, x
2
0, x
3
0, x
4
0

Tabel 1


Tabel 2






Tabel 3 (Optimal)


Implikasi praktek dari degenerasi?
Terdapat pembatas yang redundan.

Solusi secara grafis

Dari sudut pandang teoritis, degenerasi mempunyai implikasi:
Fenomena cycling atau circling prosedur simpleks mengulangi
iterasi yang sama tanpa memperbaiki nilai fungsi tujuan dan tanpa
pernah berhenti.





EVALUASI
SOAL:
Hitung dengan simpleks table:
Maks z = 50x1 + 40x2
2x1+x240
3x1+4x2120
x115
x1,x20

VI. TABEL SIMPLEX

POKOK PEMBAHASAN
Permasalahan Khusus
Metoda 2 Fasa & Big M

TUJUAN PEMBELAJARAN
1. Memahami permasalahan dengan variable dan pembatas khusus
2. Menguasai metoda 2 Fasa dan Big M

RINGKASAN MATERI


Contoh :
Minimize z = x
1
+ x
2
4 x
3

Subject to
x
1
+ x
2
+ 2x
3
9
x
1
+ x
2
- x
3
2
-x
1
+ x
2
+ x
3
4
x
1
, x
2
, x
3
0

Bentuk Standard
Minimize z = x
1
+ x
2
4 x
3
+ 0x
4
+ 0x
5
+ 0x
6

Subject to
x
1
+ x
2
+ 2x
3
+ x
4
= 9
x
1
+ x
2
- x
3
+

x
5
= 2
-x
1
+ x
2
+ x
3
+

x
6
= 4
x
1
, x
2
, x
3
, x
4
, x
5
, x
6
0


Review Primal Simplex Method

Basis Awal
Minimize z = x
1
+ x
2
4 x
3
+ 0x
4
+ 0x
5
+ 0x
6

Subject to
x
1
+ x
2
+ 2x
3
+ x
4
= 9
x
1
+ x
2
- x
3
+

x
5
= 2
-x
1
+ x
2
+ x
3
+

x
6
= 4
x
1
, x
2
, x
3
, x
4
, x
5
, x
6
0
Iterasi 1









1 1 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
x
6
0 x
4
1 1 2 1 0 0
0 x
5
1 1 -1 0 1 0
0 x
6
-1 1 1 0 0 1
1 1 -4 0 0 0 Z = 0
c
B
Baris c
Kons.
9
2
4
Basis
c
j
1 1 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
x
6
0 x
4
1 1 2 1 0 0 9/2 =
4.5
0 x
5
1 1 -1 0 1 0 2/-1=
-2
0 x
6
-1 1 1 0 0 1 2/1 =
4
1 1 -4 0 0 0 Z = 0 Baris c
ratios
c
B
Kons.
9
2
4
Basis
c
j
1 1 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
x
6
0 x
4
1 1 2 1 0 0 9/2 =
4.5
0 x
5
1 1 -1 0 1 0 2/-1=
-2
0 x
6
-1 1 1 0 0 1 2/1 =
4
1 1 -4 0 0 0 Z = 0
9
2
4
Baris c
c
B
Kons.
ratios Basis
c
j

Iterasi 2




Iterasi 3






1 1 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
x
6
0 x
4
3 -1 0 1 0 -2
0 x
5
0 2 0 0 1 1
-4 x
3
-1 1 1 0 0 1
-3 5 0 0 0 4 Z = -16.0
1
6
4
Baris c
c
B
Kons.
Basis
c
j
1 1 -4 0 0 0
x
1
x
2
x
3
x
4
x
5
x
6
0 x
4
3 -1 0 1 0 -2
1/3 =
0.33
0 x
5
0 2 0 0 1 1
6/0=

-4 x
3
-1 1 1 0 0 1
4/-1=
-4
-3 5 0 0 0 4 Z = -16
1
6
4
Baris c
ratios
c
B
Kons.
Basis
c
j

Contoh Lain:
Minimize z = 4x
1
+ x
2

Subject to
3x
1
+ x
2
= 3
4x
1
+ 3x
2
6
x
1
+ 2x
2
4
x
1
, x
2
0
Bentuk Standard
Minimize z = 4x
1
+ x
2
+ 0x
3
+ 0x
4

Subject to
3x
1
+ x
2
= 3
4x
1
+ 3x
2
- x
3
= 6
x
1
+ 2x
2
+

x
4
= 4
x
1
, x
2
, x
3
, x
4
0

Basis awal
Minimize z = 4x
1
+ x
2
+ 0x
3
+ 0x
4

Subject to
3x
1
+ x
2
= 3
4x
1
+ 3x
2
- x
3
= 6
x
1
+ 2x
2
+

x
4
= 4
x
1
, x
2
, x
3
, x
4
0


Pendekatan untuk mendapatkan solusi basis layak awal
Trial-and-Error
o Variabel basis dipilih sebarang untuk tiap pembatas
o Tidak efisien
Penggunaan variabel semu (artificial variable)



PENENTUAN BASIS LAYAK

Contoh masalah LP
Meminimumkan Z = 4x
1
+ x
2

dengan pembatas-pembatas:
3x
1
+ x
2
= 3
4x
1
+ 3x
2
6
x
1
+ 2x
2
s 4
x
1
0, x
2
0

Bentuk standar
Meminimumkan Z = 4x
1
+ x
2

dengan pembatas-pembatas:
3x
1
+ x
2
= 3
4x
1
+ 3x
2
x
3
= 6
x
1
+ 2x
2
+ x
4
= 4
x
1
0, x
2
0, x
3
0, x
4
0

Penambahan variabel semu
3x
1
+ x
2
+ x
5
= 3
4x
1
+ 3x
2
x
3
+x
6
= 6
x
1
+ 2x
2
+ x
4
= 4
x
1
, x
2
, x
3
, x
4
, x
5
, x
6
0
Variabel semu : x
5
, x
6

Ide penggunaan variabel semu
Variabel semu merupakan variabel tak negatif yang ditambahkan pada ruas
kiri untuk tiap persamaan yang tidak mempunyai solusi basis awal.
Variabel semu ini berperan sebagai variabel sisipan (slack variable) untuk
memberikan solusi basis awal.
Variabel semu tidak mempunyai arti fisik pada permasalahan awal.
Prosedur memaksa variabel semu untuk bernilai nol jika kondisi optimal
tercapai.

Cara yang logis adalah memberikan penalti pada variabel semu dalam fungsi
tujuan.
Pendekatan
Metoda big M
Metoda dua fasa


Variabel semu diberikan suatu penalti dengan suatu bilangan yang besar
sekali pada fungsi tujuan.
Metode simplex mencoba untuk memperbaiki fungsi tujuan dengan cara
membuat variabel semu tidak ekonomis lagi untuk dipertahankan sebagai
variabel basis dengan nilai yang positif.
Untuk masalah
Minimasi : M
Maksimasi: -M
dimana M adalah bilangan yang sangat besar.
Meminimumkan Z = 4x
1
+ x
2
+ Mx
5
+ Mx
6

dengan pembatas-pembatas:
3x
1
+ x
2
+ x
5
= 3
4x
1
+ 3x
2
x
3
+x
6
= 6
x
1
+ 2x
2
+ x
4
= 4
x
1
, x
2
, x
3
, x
4
, x
5
, x
6
0

METODE BIG M

Nilai fungsi tujuan
konstanta dan vektor dari product inner
B
c Z =



Pemeriksaan optimalitas
Nilai fungsi tujuan relatif (profit relatif /ongkos relatif ) untuk variabel non basis:
(

=
kanonik sistem dalam dengan berkaitan
yang kolom dan dari
j
B
j j
x
c uct inner prod
c c
Kondisi optimal terjadi apabila semua nilai koefisien fungsi tujuan relatif untuk
variabel basis adalah tak positif [untuk masalah maksimasi] atau tak negatif [untuk
masalah minimasi].
Nilai fungsi tujuan relatif untuk variabel non basis










Tabel 1

( ) M M M Z 9
4
6
3
0 , , =
|
|
|
.
|

\
|
=
( ) M M M c 7 4
1
4
3
0 , , 4
1
=
|
|
|
.
|

\
|
=
( ) M M M c 4 1
2
3
1
0 , , 1
2
=
|
|
|
.
|

\
|
=
( ) M M M c =
|
|
|
.
|

\
|
=
0
1
0
0 , , 0
3

Tabel 2


Tabel 3


Tabel 4 (Optimal)


Output Tabel Simpleks dengan Software (WinQSB)













Fasa I
Mendapatkan solusi basis layak awal pada masalah original.
Penghilangan variabel semu.
Fungsi tujuan semu merupakan jumlah dari variabel semu yang
diminimasi.
Jika nilai fungsi tujuan sama dengan nol, maka semua variabel semu
bernilai nol dan solusi basis layak diperoleh bagi masalah original.
Jika nilai minimum fungsi tujuan adalah positif, maka paling sedikit terdapat
satu variabel yang positif dan ini berarti masalah original adalah tak layak,
dan algoritma berhenti.

Fasa II
Solusi basis layak yang diperoleh pada Fase I dioptimasi terhadap
fungsi tujuan original.
Tabel akhir pada Fase I menjadi tabel awal pada Fase II dengan
perubahan pada fungsi tujuan.

Metode dua-fasa (Fasa I)
Meminimumkan W = x
5
+ x
6

dengan pembatas-pembatas:
3x
1
+ x
2
+ x
5
= 3
4x
1
+ 3x
2
x
3
+x
6
= 6
x
1
+ 2x
2
+ x
4
= 4
x
1
, x
2
, x
3
, x
4
, x
5
, x
6
0







METODE 2 FASA

Tabel 1 [Fase I]

Tabel 2 [Fase I]

Tabel 3 [Fase I]




Tabel 1 [Fase II]

Tabel 2 [Fase II] (Optimal)



Dengan metode big M
Pada tabel optimal, satu atau lebih variabel semu tetap sebagai
variabel basis
Dengan metoda dua-fase
Pada tabel optimal pada fase I, nilai fungsi tujuannya adalah positif,
dimana satu atau lebih variabel semu sebagai basis)

Solusi tak layak (infeasible solution)

Contoh masalah LP
Memaksimumkan Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
2x
1
+ x
2
s 2
3x
1
+ 4x
2
12
x
1
0, x
2
0
Bentuk standar
Memaksimumkan Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
2x
1
+ x
2
+ x
3
= 2
3x
1
+ 4x
2
- x
4
= 12
x
1
, x
2
,

x
3
,

x
4
0
Penambahan variabel semu
2x
1
+ x
2
+ x
3
= 2
3x
1
+ 4x
2
- x
4
+ x
5
= 12
x
1
, x
2
,

x
3
,

x
4
, x
5
0
Contoh:
Metode big M
Memaksimumkan Z = 3x
1
+ 2x
2
Mx
5

dengan pembatas-pembatas:
2x
1
+ x
2
+ x
3
= 2
3x
1
+ 4x
2
- x
4
+ x
5
= 12
x
1
, x
2
,

x
3
,

x
4
, x
5

Tabel 1


Tabel 2


EVALUASI

SOAL 1
z= 3x1+x2
3x1+x24
x1-x20
x1,x2 0




SOAL 2
z= 5x1+3x2+x3
-x1+x2+x32
2x1+x2-x34
x1,x2,x3 0

VII. PRIMAL-DUAL

POKOK PEMBAHASAN
Hubungan Primal-Dual
Solusi Grafis
Dual Simplex

TUJUAN PEMBELAJARAN
1. Memahami perbedaan bentuk primal dan dual
2. Memahami hubungan antara persamaan primal dan dual
3. Memahami cara pemecahan permasalahan dual dengan menggunakan metoda
dual simplex

RINGKASAN MATERI



Setiap masalah pemrograman linier mempunyai satu pemrograman linier
yang terkait yang disebut dual.
Solusi pada masalah pemrograman liniear originalnya juga memberikan
solusi bagi dualnya.
Jika suatu solusi masalah pemrograman linier dipecahkan dengan simplex
method, pada dasarnya diperoleh solusi untuk dua masalah pemrograman
linier.

Suatu pemrograman linier dikatakan dalam bentuk simetris jika :
semua variabel dibatasi tak negatif
semua pembatas dalam bentuk pertidaksamaan:
Teori Dualitas

a. untuk masalah maksimasi, bentuk pertidaksamaan adalah lebih kecil atau
sama dengan
b. untuk masalah minimasi, bentuk pertidaksamaan adalah lebih besar atau
sama dengan

Memaksimumkan Z = c
1
x
1
+ c
2
x
2
+ + c
n
x
n

dengan pembatas a
11
x
1
+ a
12
x
2
+ + a
1n
x
n
s b
1

a
21
x
1
+ a
22
x
2
+ + a
2n
x
n
s b
2


a
m1
x
1
+ a
m2
x
2
+ + a
mn
x
n
s b
m

x
1
0, x
2
0,, x
n
0


Meminimumkan W = b
1
y
1
+ b
2
y
2
+ + b
m
y
m

dengan pembatas a
11
y
1
+ a
21
y
2
+ + a
m1
y
m
c
1

a
12
y
1
+ a
22
y
2
+ + a
m2
y
n
c
2

...


a
1n
y
1
+ a
2n
y
2
+ + a
mn
y
m
c
n

y
1
0, y
2
0,, y
m
0


Primal :
Memaksimumkan Z = cx
dengan pembatas Ax s b
x 0
Dual :
Meminimumkan W = yb
dengan pembatas yA c
y 0


A : matriks (m x n)
b : vektor kolom (m x 1)
c : vektor baris (1 x n)
x : vektor kolom (n x 1)
y : vektor baris (1 x m)


Primal
Max Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6
2x
1
+ x
2
s 8
x
1
+ x
2
s 1
x
2
s 2
x
1
, x
2
0

Dual
Min W = 6y
1
+ 8y
2
+ y
3
+ 2y
4

dengan pembatas-pembatas:
y
1
+ 2y
2
y
3


3
2y
1
+ y
2
+ y
3
+ y
4
2
y
1
, y
2
, y
3
, y
4
0



Koefisien fungsi tujuan untuk masalah primal menjadi konstanta ruas kanan
bagi dual.
Konstanta ruas kanan dari primal menjadi koefisien fungsi tujuan bagi dual.
Pertidaksamaan untuk pembatas dibalik untuk kedua masalah.
Tujuan diubah dari maksimasi untuk primal menjadi minimasi untuk dual.
Tiap kolom dalam primal menjadi baris (pembatas) pada dual; sehingga
jumlah pembatas dual sama dengan jumlah variabel primal.
Tiap baris (pembatas) dalam primal berkaitan dengan kolom pada dual;
sehingga satu variabel dual berkaitan dengan satu pembatas primal.
Dual dari masalah dual adalah masalah primal



Weak duality theorem
Optimality criterion theorem
Main duality theorem
Complementary slackness theorem

Misalkan diberikan program linier primal-dual simetris:
P: max Z = cx, Ax s b, x 0
D: min W = yb, yA c, y 0
Nilai fungsi tujuan dari masalah minimimasi (dual) untuk sebarang solusi layak
selalu lebih besar atau sama dengan nilai fungsi tujuan masalah maksimasi (primal).

Bukti
Misalkan:
x
0
: vektor solusi layak untuk primal
y
0
: vektor solusi layak untuk dual
Akan dibuktikan bahwa: y
0
b cx
0

Karena x
0
adalah layak untuk primal, maka Ax
0
s b, x
0
0 (1)
Karena y
0
adalah layak untuk dual, maka y
0
A c, y
0
0 (2)
Perkalian kedua sisi pertidaksamaan (1) dengan y
0
y
0
Ax
0
s y
0
b
Perkalian kedua sisi pertidaksamaan (2) dengan x
0
: y
0
Ax
0
s cx
0

Implikasi : y
0
b y
0
Ax
0
cx
0


Konsekuensi 1:
Nilai fungsi tujuan dari masalah maksimasi (primal) untuk sebarang solusi layak
merupakan batas bawah dari nilai minimum fungsi tujuan dual.
Konsekuensi 2:
Nilai fungsi tujuan dari masalah minimasi (dual) untuk sebarang solusi layak
(dual) merupakan batas atas dari nilai maksimum fungsi tujuan primal.
Konsekuensi 3:
Jika masalah primal adalah layak dan nilai fungsi tujuannya tak terbatas (dalam
hal ini, max Z +), maka masalah dual adalah tak layak.
Konsekuensi 4:
Jika masalah dual adalah layak dan nilai fungsi tujuannya tak terbatas (dalam hal
ini, min W -), maka masalah primal adalah tak layak.
Konsekuensi 5:
Jika masalah primal adalah layak dan dualnya tak layak maka masalah primal
tersebut adalah tak terbatas.
Konsekuensi 6:
Jika masalah dual adalah layak dan primalnya adalah tak layak maka masalah
dual tersebut adalah tak terbatas.

Ilustrasi #1
Primal
Max Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6
2x
1
+ x
2
s 8
x
1
+ x
2
s 1
x
2
s 2
x
1
, x
2
0
Dual
Min W = 6y
1
+ 8x
2
+ y
3
+ 2y
4

dengan pembatas-pembatas:
y
1
+ 2y
2
y
3


3
2y
1
+ y
2
+ y
3
+ y
4
2
y
1
, y
2
, y
3
, v
4
0


0 , 4
0
2
0
1
= = x x adalah solusi layak untuk primal.
Nilai fungsi tujuan primal Z = cx
0
= 12

Di sini Z = cx
0
s y
0
b = W dan memenuhi weak duality theorem.
Berdasarkan Konsekuensi (1), nilai minimum W untuk dual tidak dapat lebih
kecil dari 12.
Berdasarkan Konsekuensi (2), nilai minimum Z untuk primal tidak dapat
melebihi 40.
0 , 0 , 5 , 0
0
4
0
3
0
2
0
1
= = = = y y y y adalah solusi layak untuk dual
Nilai fungsi tujuan dual W = y
0
b = 40

Ilustrasi #2
Primal:
Memaksimumkan Z = 4x
1
+ x
2

dengan pembatas-pembatas:
x
1
x
2
s 2
-3x
1
+ x
2
s 3
x
1
0, x
2
0
Dual
Meminimumkan W = 2y
1
+ 3y
2

dengan pembatas-pembatas:
y
1
3y
2


4
- y
1
+ y
2
1
y
1
0, y
2
0





Jika terdapat solusi layak x
0
dan y
0
untuk masalah pemrograman linier dual simetris
sedemikian hingga nilai fungsi tujuannya adalah sama, maka solusi layak ini adalah
solusi optimal bagi masing-masing masalah.


Bukti
Misalkan x adalah sebarang solusi layak bagi masalah primal.
Maka berdasarkan Teorema 1, cx s y
0
b
Tetapi ini diberikan bahwa cx
0
= y
0
b.
Oleh karena itu cx s cx
0
untuk semua solusi layak bagi masalah primal.
Per definisi, x
0
adalah optimal bagi primal.
Argumen yang sama juga berlaku bagi optimalitas y
0
bagi masalah dual


Jika baik masalah primal maupun dual adalah layak, maka keduanya mempunyai
solusi optimal sedemikian hingga nilai optimalnya adalah sama.


Misalkan diberikan program linier primal-dual simetris:
P: max Z = cx, Ax s b, x 0
D: min W = yb, yA c, y 0
dimana
A : matriks (m x n)
b : vektor kolom (m x 1)
c : vektor baris (1 x n)
x : vektor kolom (n x 1)
y : vektor baris (1 x m)
Misalkan:
x
0
: vektor solusi layak untuk primal
y
0
: vektor solusi layak untuk dual
Maka x
0
dan y
0
adalah optimal untuk masalah masing jika dan hanya jika
( ) ( ) 0
0 0 0 0
= + Ax b y x c A y
Bukti :
Misalkan
|
|
|
|
|
.
|

\
|
=

m
m
u
u
u

2
1
) 1 (
u adalah vektor slack untuk primal
( )
n
n
v v v , , ,
2 1
) 1 (
=

v adalah vektor slack untuk dual


Karena x
0
dan y
0
adalah solusi layak, maka
0 u x b u Ax > = +
0 0 0 0
, ; (1)
0 v y c v A y > =
0 0 0 0
, ; (2)
(u
0
dan v
0
adalah nilai-nilai dari variabel slack yang berkaitan masing-masing dengan
solusi layak x
0
dan y
0
).
Perkalian (1) dengan y
0
y
0
Ax
0
+ y
0
u
0
= y
0
b (3)
Perkalian (2) dengan x
0
y
0
Ax
0
v
0
x
0
= cx
0
(4)
Pengurangan (3) dengan (4) y
0
u
0
+ v
0
x
0
= y
0
b cx
0
(5)



Untuk membuktikan Teorema 4, harus diperlihatkan bahwa x
0
dan y
0
adalah solusi
optimal bagi masing-masing masalah primal dan dual jika dan hanya jika
v
0
x
0
+ y
0
u
0
= 0 (6)



Bagian 1
Diasumsikan bahwa x
0
dan y
0
adalah solusi optimal dan harus dibuktikan bahwa
Persamaan (6) adalah benar.
Karena x
0
dan y
0
adalah optimal, berdasarkan Teorema 3 maka cx
0
= y
0
b.
Oleh karena itu, Persamaan (5) menjadi Persamaan (6)
y
0
u
0
+ v
0
x
0
= y
0
b cx
0
v
0
x
0
+ y
0
u
0
= 0

Bagian 2
Diasumsikan bahwa Persamaan (6) adalah benar dan akan dibuktikan bahwa x
0
dan
y
0
adalah solusi optimal bagi masing-masing masalah primal dan dual.
Karena Persamaan (6) benar, maka Persamaan (5) menjadi y
0
b cx
0
.


y
0
u
0
+ v
0
x
0
= y
0
b cx
0
y
0
b = cx
0

Berdasarkan Teorema 2 maka x
0
dan y
0
merupakan solusi optimal.

Complementary slackness condition
Persamaan (6) : v
0
x
0
+ y
0
u
0
= 0 dari complementary slackness theorem dapat
disederhanakan sebagai berikut:
v
j
0
x
j
0
= 0 untuk semua j = 1, 2, , n
y
i
0
u
i
0
= 0 untuk semua i = 1, 2, , m
dengan memperhatikan hal-hal berikut:
1. x
0
, u
0
, v
0
, y
0
0 dan oleh karena itu v
0
x
0
0 dan y
0
u
0
0.
2. Jika jumlah komponen-komponen tak negatif sama dengan nol, maka tiap
komponen adalah nol.
Jika suatu variabel primal (x
j
0
) adalah positif, maka pembatas dual yang
bersesuaian memenuhi persamaan pada titik optimalnya (yaitu, v
j
0
= 0)
Jika suatu pembatas primal adalah strick inequality pada titik optimal (yaitu, u
j
0
>
0), maka variabel dual yang bersesuaian (y
i
0
) harus nol

Jika suatu variabel dual (y
i
0
) adalah positif maka pembatas primal yang
bersesuaian memenuhi persamaan pada titik optimalnya (yaitu, u
i
0
= 0)
Jika suatu pembatas dual adalah strick inequality pada titik optimal (yaitu v
i
0
>
0), maka variabel primal yang bersesuaian harus nol
Ilustrasi
Primal
Max Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6
2x
1
+ x
2
s 8
x
1
+ x
2
s 1
x
2
s 2
x
1
, x
2
0

Dual
Min W = 6y
1
+ 8y
2
+ y
3
+ 2y
4

dengan pembatas-pembatas:
y
1
+ 2y
2
y
3


3
2y
1
+ y
2
+ y
3
+ y
4
2
y
1
, y
2
, v
1
, v
2
0
Primal
(Penambahan slack variable)
Max Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
+ u
1
= 6
2x
1
+ x
2
+ u
2
= 8
x
1
+ x
2

+ u
3
= 1
x
2
+ u
4
= 2
x
1
, x
2
, u
1
, u
2
, u
3
, u
4
0

Dual
(Penambahan slack variable)
Min W = 6y
1
+ 8x
2
+ y
3
+ 2y
4

dengan pembatas-pembatas:
y
1
+ 2y
2
y
3
v
1
= 3
2y
1
+ y
2
+ y
3
+ y
4
v
2
= 2
y
1
, y
2
, v
1
, v
2
0
Complementary slackness condition mengimplikasikan pada kondisi optimal:
0
0
1
0
1
= y u , 0
0
2
0
2
= y u , 0
0
3
0
3
= y u , 0
0
4
0
4
= y u , 0
0
1
0
1
= v x , 0
0
2
0
2
= v x
Dengan metode simplex diperoleh solusi optimal untuk masalah primal sebagai
berikut :
3 / 10
0
1
= x , 3 / 4
0
2
= x , Z = 38/3
Dengan penerapan complementary slackness condition, solusi optimal bagi dual
ditentukan sebagai berikut :
1. 0 0 3 / 10
0
1
0
1
= > = v x

2. 0 0 3 / 4
0
2
0
2
= > = v x
3. ( ) 0 , 0 6 3 / 4 2 3 / 10 2
0
1
0
1
0
2
0
1
> = = + = + y u x x
4. ( ) 0 , 0 8 3 / 4 3 / 10 2 2
0
2
0
2
0
2
0
1
> = = + = + y u x x
5. ( ) 0 , 0 1 2 3 / 4 3 / 10
0
3
0
3
0
2
0
1
= > < = + = + y u x x
6. 0 , 0 2 3 / 4
0
4
0
4
0
2
= > < = y u x
Kondisi (1), (2), (5) dan (6) mengimplikasikan:

Penerapan complementary slackness condition
Digunakan untuk mencari solusi primal optimal dari suatu solusi dual optimal,
dan sebaliknya.
Digunakan untuk memverifikasi apakah suatu solusi layak adalah optimal untuk
masalah primal.
Digunakan untuk menginvestigasi ciri-ciri umum dari solusi optimal pada
masalah primal dan dual dengan menguji hipotesis-hipotesis yang berbeda.
Kuhn-Tucker optimality condition untuk pemrograman non linier merupakan
pengembangan lebih lanjut dari complementary slackness condition dan sangat
berguna dalam pemrograman matematis lanjutan.

Primal Dual
A Matriks pembatas Transpos dari matriks pembatas
b Konstanta ruas kanan Vektor biaya
c Vektor biaya Konstanta ruas kanan
Fungsi tujuan Max Z = cx Min W = yb
Pertidaksamaan pembatas Ax s b yA c
Variabel keputusan x 0 y 0



Misal terdapat masalah linear programming simetris seperti berikut (primal). Maka
bentuk dualnya adalah (lihat tabel konversi primal dual) :
Primal
Max Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6
2x
1
+ x
2
s 8
x
1
+ x
2
s 1
x
2
s 2
x
1
, x
2
0

Dual
Min W = 6y
1
+ 8y
2
+ y
3
+ 2y
4

dengan pembatas-pembatas:
y
1
+ 2y
2
y
3


3
2y
1
+ y
2
+ y
3
+ y
4
2
y
1
, y
2
, v
1
, v
2
0

Bentuk primal dan dual diubah ke dalam bentuk standar. Pada kasus primal, terdapat
4 slack variable (u) dan pada kasus dual terdapat 2 slack variable (v). Slack
variable muncul akibat perubahan tanda pertidaksamaan menjadi persamaan :
Primal
(Penambahan slack variable)
Max Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
+ u
1
= 6
2x
1
+ x
2
+ u
2
= 8
x
1
+ x
2

+ u
3
= 1
x
2
+ u
4
= 2
x
1
, x
2
, u
1
, u
2
, u
3
, u
4
0

Dual
(Penambahan slack variable)
Min W = 6y
1
+ 8x
2
+ y
3
+ 2y
4

dengan pembatas-pembatas:
y
1
+ 2y
2
y
3
v
1
= 3
2y
1
+ y
2
+ y
3
+ y
4
v
2
= 2
y
1
, y
2
, v
1
, v
2
0

Solusi dari primal dan dual dapat dicari dengan metode simplex. Berikut ini adalah
tabel simplex untuk kasus primal.




Solusi dari primal dan dual dapat dicari dengan metode simplex. Berikut ini adalah
tabel simplex untuk kasus dual.





Dari tabel primal dan dual, dapat disimpulkan bahwa hubungan primal dengan dual
adalah sebagai berikut :
1. Solusi fisibel kasus minimisasi adalah batas atas dari solusi fisibel kasus
maksimisasi. Nilai fungsi tujuan dari masalah minimimasi (dual) untuk sebarang
solusi layak selalu lebih besar atau sama dengan nilai fungsi tujuan masalah
maksimasi (primal) weak duality theorem.
2. Jika kedua kasus telah mencapai solusi optimum, maka max z = min w main
duality theorem.
3. Jika nilai z = nilai w, maka solusi x yang menghasilkan nilai z tersebut adalah
solusi optimum, dan solusi y yang menghasilkan nilai w tersebut adalah solusi
optimal optimality criterion theorem.

4. Nilai optimum variabel solusi awal pada primal sama dengan nilai optimum
variabel-variabel dual yang berkorespondensi dengan persamaan pembatas pada
primal.
Dengan kata lain :
a. Jika variabel dual berkorespondensi dengan variabel slack awal pada kasus
primal, maka nilai optimum variabel tersebut sama dengan koefisien variabel
slack pada persamaan z yang optimum.
Bukti : y
1
pada dual berkorespondensi dengan u
1
pada primal, maka nilai
optimum y
3
(= 3, lihat iterasi 3 pada dual) sama dengan koefisien u
3
(= 3,
lihat iterasi 3 pada primal) pada persamaan z optimum.
b. Jika variabel dual berkorespondensi dengan variabel semu pada kasus primal,
maka nilai optimum variabel tersebut sama dengan koefisien variabel semu
pada persamaan z yang optimum setelah menghilangkan konstanta M.


Dalam pandangan ekonomi, solusi dual optimal dapat diinterpretasikan sebagai
harga yang dibayarkan untuk sumberdaya pembatas.
Berdasarkan Teorema 3 (main duality), nilai optimal bagi primal dan dual adalah
sama.
Jika x
0
dan y
0
masing-masing adalah solusi optimal, maka Z
0
= cx
0
= y
0
b = W
0
.
Dengan kata lain, nilai optimal dari masalah pemrograman linier (primal atau
dual) diberikan oleh dimana
b
1
, b
2
, , b
m
adalah jumlah yang terbatas dari sumberdaya 1, 2, .., m;
y
1
0
, y
1
0
, , y
1
0
adalah nilai optimal dari variabel dual.
Misalkan diasumsikan bahwa level sumberdaya 1 (yaitu, b
1
) diubah.
Maka, untuk variasi kecil dalam perubahan nilai b
1
, katakan Ab
1
, perubahan
dalam nilai optimal dari pemrograman linier Z
0
diberikan oleh y
1
0
(Ab
1
).
Dengan kata lain, nilai optimal dari variabel dual untuk tiap pembatas primal
memberikan perubahan bersih (net change) dalam nilai optimal dari fungsi tujuan
untuk peningkatan satu satuan dalam konstanta ruas kanan.
Oleh karena itu, nilai optimal dari variabel dual disebut shadow price yang dapat
digunakan untuk menentukan apakah ekonomis untuk menambah sumberdaya.


Primal :
Memaksimumkan Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6 (Bahan A)
2x
1
+ x
2
s 8 (Bahan B)
x
1
+ x
2
s 1 (Selisih permintaan cat interior dan eksterior)
x
2
s 2 (Permintaan cat interior)
x
1
0
x
2
0
Dual:
Meminimumkan W = 6y
1
+ 8x
2
+ y
3
+ 2y
4

dengan pembatas-pembatas:
y
1
+ 2y
2
y
3


3
2y
1
+ y
2
+ y
3
+ y
4
2
y
1
, y
2
, y
3
, y
4
0

Solusi optimal dual:
y
1
= 10/3 shadow price untuk pembatas bahan A, yaitu perubahan dari nilai Z
(profit total) per satu satuan peningkatan bahan A.
y
2
= 4/3 shadow price untuk pembatas Bahan B, yaitu perubahan dari nilai Z
(profit total) per satu satuan peningkatan bahan B.
y
3
= 0 shadow price untuk selisih permintaan cat interior dan exterior, yaitu
perubahan dari nilai Z (profit total) per satu satuan peningkatan selisih permintaan
cat interior dan exterior.
y
4
= 0 shadow price untuk pembatas permintaan cat interior, yaitu perubahan dari
nilai Z (profit total) per satu satuan peningkatan permintaan cat interior.






Masalah Primal
Memaksimumkan Z = 4x
1
+ 5x
2

dengan pembatas
3x
1
+ 2x
2
s 20
4x
1
3x
2
10
x
1
+ x
2
= 5
x
1
0
x
2
tak dibatas tanda
Masalah Dual
Meminimumkan W = 20y
1
+ 10y
2
+5y
3

dengan pembatas
3y
1
+ 4y
2
+ y
3
4
2y
1
3y
2
+ y
3
= 5
y
1
0
y
2
s 0
y
3
tak dibatasi tanda

Masalah Primal (Bentuk Simetris)
Memaksimumkan Z = 4x
1
+ 5x
3
5x
4

dengan pembatas
3x
1
+ 2x
3
2x
4
s 20
4x
1
+ 3x
3
3x
4
s 10
x
1
+ x
3
x
4
s 5
x
1
x
3
+ x
4
s 5
x
1
, x
3
, x
4
0

Masalah Dual (Bentuk Simetris)
Meminimumkan W = 20w
1
10w
2
+5w
3
5w
4

dengan pembatas
3w
1
4w
2
+ w
3
w
4
4
2w
1
+ 3w
2
+ w
3
w
4
5
2w
1
3w
2
w
3
+ w
4
5
w
1
, w
2
, w
3
, w
4
0







Primal (maksimasi) Dual (minimasi)
Matriks koefisien A Transpos matriks koefisien
Vektor ruas kanan Vektor biaya
Vektor harga c Vektor ruas kanan
Pembatas ke-i adalah persamaan Variabel dual y
i
tak dibatasi tanda


Pembatas ke-i bertipe s Varibel dual y
i
0
Pembatas ke-i bertipe Varibel dual y
i
s 0
x
j
tak dibatasi tanda Pembatas dual ke-j adalah persamaan
x
j
0 Pembatas dual ke-j bertipe
x
j
s 0 Pembatas ke-j bertipe s
Catatan
Teorema (1), (2), (3), dan (4) dari teori dualitas berlaku juga bagi primal-dual
tak simetris.
Complementary slackness condition juga berlaku untuk solusi optimal
primal-dual tak simetris..
Misalkan diberikan masalah pemrograman linier dalam bentuk standar
Memaksimumkan Z = cx
dengan pembatas
Ax = b
x 0
Masalah dual
Meminimumkan W = yb
dengan pembatas
yA c
y tak dibatasi tanda
Complementary slackness condition dipenuhi pada kondisi optimal:
(yA c)x = 0


Solusi dual optimal dapat ditentukan dengan complementary slackness condition
Solusi dual optimal dapat juga diperoleh secara langsung dari tabel simplex
optimal dari masalah primal.
Meminimumkan Z = cx
dengan pembatas
Ax = b
x 0
Misalkan :
P
j
: kolom ke-j dari matrix A
B : matrix basis optimal
Solusi primal optimal :
|
|
.
|

\
|
=
|
|
.
|

\
|
=

0
b B
x
x
x
1
*
N
B

dimana
x
B
: varabel basis
x
N
: variabel non basis

Nilai minimum Z = cx
*
= c
B
x
B
= c
B
B
-1
b
Karena B menunjukkan basis optimal, maka koefisien biaya relatif (
j
c ) yang
berkaitan dengan variabel basis harus tak negatif
0 > =
j j j
c c P t untuk semua j
dimana
t = c
B
B
-1
: vektor pengali simplex (simplex multiplier)
Dalam notasi matrix : c - t A 0 atau tA s c
yang merupakan pembatas pemrograman linier dual. Sehingga, pengali simplex
optimal harus memenuhi pembatas dual.

Nilai fungsi tujuan dual yang berkaitan dengan solusi layak adalah
W = yb = tb = c
B
B
-1
b
yang sama dengan nilai minimum Z.

Oleh karena itu, berdasarkan optimality criterion theorem, pengali simplex optimal
dari masalah primal merupakan nilai optimal dari variabel dual.

Ilustrasi menentukan solusi dual optimal
Primal (Dalam bentuk standar)
Max Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
+ x
3
= 6
2x
1
+ x
2
+ x
4
= 8
x
1
+ x
2

+ x
5
= 1
x
2
+ x
6
= 2
x
1
, x
2
, x
3
, x
4
, x
5
, x
6
0


Dual:
Min W = 6y
1
+ 8x
2
+ y
3
+ 2y
4

dengan pembatas-pembatas:
y
1
+ 2y
2
y
3
= 3
2y
1
+ y
2
+ y
3
+ y
4
= 2
y
1
0
y
2
0
y
3
0
y
4
0
y
1
, y
2
, y
3
, y
4
tak dibatasi tanda

Dengan metode revised simplex, solusi optimal untuk primal:
x = (x
2
, x
1
, x
5
, x
6
) = (4/3, 10/3, 3, 2/3), Z = 38/3
Matrix basis optimal:
| |
(
(
(
(

= =
1 0 0 1
0 1 1 1
0 0 2 1
0 0 1 2
6 5 1 2
P P P P B
Simplex multiplier optimal :
( ) ( ) 0 , 0 , 3 / 4 , 3 / 1
1 0 3 / 1 3 / 2
0 1 1 1
0 0 3 / 2 3 / 1
0 0 3 / 1 3 / 2
0 , 0 , 3 , 2
1
=
(
(
(
(


= =

B c
B

t memenuhi pembatas dual, dan nilai fungsi tujuannya : W = 6(1/3) + 8(4/3) + 1(0)
+ 2(0) = 38/3, yang bersesuaian dengan nilai optimal untuk masalah primal. Oleh
karena itu,
y
1
= 1/3, y
2
= 3/4, y
3
= 0, y
4
= 0 optimal untuk dual.
Simplex multiplier yang bersesuaian dengan tabel (primal) optimal adalah solusi
optimal bagi masalah dual.


Masalah Pemrograman Linier (Primal) dalam Bentuk Standar
Minimasi Z = cx
dengan pembatas
Ax = b
x 0
A : matrix (m x n)
P : vektor kolom dari matrix A
B : matrix basis untuk masalah primal
x
B
: variabel basis yang bersesuaian dengan B

Basis Layak Primal
Basis B : basis layak primal (primal feasible basis) B
-1
b 0
B : basis layak primal nilai variabel basis: B
-1
b
solusi layak basis x
B
= B
-1
b
nilai fungsi tujuan Z = c
B
B
-1
b
Kondisi Optimalitas
Untuk memeriksa apakah basis layak B adalah optimal hitung koefisien fungsi
tujuan relatif ) (
j
c
j j j
c c P = j = 1, , n
t = c
B
B
-1
: simplex multiplier


Basis layak primal B adalah optimal 0 >
j
c , j = 1, , n
Pemrograman linier standar bagi dual:
Maksimasi W = yb
dengan pembatas
yA s c
y tak dibatas tanda
Pembatas dual yA s c dapat ditulis:
( ) ( )
n n
c c c , , , , , ,
2 1 2 1
s P P P y
j j
c yP s
Metode Simplek Dual

0 >
j j
c yP , j = 1, , n
Jika basis layak primal B : basis optimal bagi masalah primal simplex multiplier t
= c
B
B
-1
memenuhi

0 >
j j
c yP , j = 1, , n
Implikasi t : layak bagi masalah dual
Nilai fungsi tujuan dual W = tb = c
B
B
-1
b sama dengan nilai fungsi tujuan primal
Berdasarkan optimality criterion theorem, t : optimal bagi masalah dual

Basis Dual Layak
Basis B untuk masalah primal
Minimasi Z = cx
dengan pembatas
Ax = b
x 0
layak dual (dual feasible) c c
B
B
-1
A 0 (Identik dengan pemeriksaan apakah
basis layak B optimal)
Basis B untuk masalah primal : layak primal dan layak dual
Basis B : basis optimal
Solusi optimal untuk primal : x
B
= B
-1
b, x
N
= 0. Solusi optimal untuk dual : y =
c
B
B
-1
. Nilai optimal primal = Nilai optimal dual

Catatan
Akar dari pemecahan masalah pemrograman linier mendapatkan solusi basis
B yang layak primal dan layak dual
Metode simplex bergerak dari satu basis layak primal ke basis yang lain
hingga basis tersebut menjadi layak dual
Metode simplex primal (primal simplex method)
Metode simplex dual (dual simplex method) bergerak dari satu basis layak
dual ke basis yang lain





Pemrograman linier bentuk standar:
Minimasi Z = cx
dengan pembatas
Ax = b
x 0
Metode simplex dual menggunakan tabel yang sama dengan metode simplex
primal.
Dalam semua tabel, koefisien fungsi tujuan relatif ) (
j
c dipertahankan tak negatif
Untuk maksimasi, ) (
j
c dipertahankan tak positif)
Konstanta ruas kanan tidak perlu tak negatif.
Algoritma mulai dengan membuat elemen ruas kanan menjadi tak negatif,
dengan pada saat yang sama menjaga koefisien ) (
j
c tak negatif.
Algoritma berhenti jika semua konstanta ruas kanan telah tak negatif.

Pemilihan Variabel Basis yang Keluar Basis
Pilih variabel basis yang membuat solusi saat ini menjadi tidak layak dengan kata
lain pilih variabel basis yang nilai solusinya negative. Aturan Pilih variabel basis
yang nilai
i
b paling negatif .
Misal: ( ) 0 min < =
i
i
r
b b ; variabel basis x
r
diganti baris ke-r : baris pivot
Pemilihan Variabel Non Basis yang Masuk Basis
Kolom pivot dipilih sedemikian rupa sehingga memenuhi dua kondisi sebagai
berikut:
1. Ketidaklayakan primal berkurang (atau paling sedikit, tidak bertambah jelek).
Rincian Metode Simplex Dual

Atau, paling sedikit konstanta ruas kanan pada baris r menjadi positif pada
tabel berikutnya
Variabel non basis (x
j
) dengan koefisien negative dalam baris r (y
rj
< 0)
yang memenuhi syarat untuk masuk basis.
2. Tabel berikutnya setelah operasi pivot harus tetap layak dual. Dapat dijamin
jika variabel non basis yang masuk basis dipilih dengan aturan rasio sebagai
berikut:
(
(

<
rj
j
y
y
c
rj
0
max ; j = m+1, , n


Perbedaan metode simplex dengan simplex dual :
Metode simplex pencarian solusi dimulai dari solusi layak (nilai konstanta 0)
namun tidak optimal (baris bernilai positif untuk kasus maksimisasi dan bernilai
negatif untuk kasus minimisasi).
Metode simplex dual pencarian solusi dimulai dari solusi optimal (baris bernilai
negatif untuk kasus maksimisasi dan bernilai positif untuk kasus minimisasi) namun
tidak layak (nilai konstanta 0).
Ilustrasi penyelesaian dengan metode simplex :
Meminimumkan Z = x
1
+ 4x
2
+ 3x
4

dengan pembatas
x
1
+ 2x
2
x
3
+ x
4
3
2x
1
x
2
+ 4x
3
+ x
4
2
x
1
, x
3
, x
3
, x
4
0
Bentuk standar :
Meminimumkan Z = x
1
+ 4x
2
+ 3x
4
+ Mx
7
+ Mx
8

dengan pembatas
x
1
+ 2x
2
x
3
+ x
4
x
5
+ x
7
= 3
2x
1
x
2
+ 4x
3
+ x
4
x
6
+ x
8
= 2
x
1
, x
3
, x
3
, x
4
, x
5
, x
6
0
Ilustrasi Metode Simplex Dual





Ubah tanda pada pembatas menjadi tanda s dengan mengalikan baris dengan -1:
Meminimumkan Z = x
1
+ 4x
2
+ 3x
4

dengan pembatas
- x
1
- 2x
2
+ x
3
- x
4
s -3

2x
1
+ x
2
- 4x
3
- x
4
s -2
x
1
, x
3
, x
3
, x
4
0
Bentuk standar :
Meminimumkan Z = x
1
+ 4x
2
+ 3x
4

dengan pembatas
- x
1
- 2x
2
+ x
3
- x
4
+ x
5
= -3
2x
1
+ x
2
- 4x
3
- x
4
+ x
6
= -2
x
1
, x
3
, x
3
, x
4
, x
5
, x
6
0
Pilih variabel basis dengan konstanta paling negatif sebagai entering variable. Pilih
variabel nonbasis dengan rasio (baris c dibagi konstanta negatif pada entering
variable) absolut terkecil sebagai leaving variable.

Tidak layak primal; Layak dual

Tidak layak primal; Layak dual


Layak primal; Layak dual; Iterasi berhenti karena seluruh konstanta bernilai positif.
Mengidentifikasi Ketidaklayakan Primal dalam Metode Simplex Dual
Dalam metode simplex dual selalu terdapat solusi layak bagi dual.
Metode simplex dual mengenali ketidaklayakan primal jika aturan rasio gagal
mengidentifikasi variabel non basis yang masuk basis
Semua elemen dalam kolom pivot : tak negatif
Memecahkan Masalah Maksimasi dengan Metode Simplex Dual
Dalam masalah maksimasi Kondisi optimalitas: Koefisien fungsi tujuan 0 ) ( s
j
c
Misal, 0 <
r
b dan x
r
: variabel keluar basis
Variabel non basis yang masuk basis dipilih sedemikian rupa sehingga elemen
baris c tetap tak positif pada iterasi berikutnya.
Aturan rasio:
(
(

<
rj
j
y
y
c
ij
0
min
Penerapan metode simplex dual
Analisis sensitivitas (sensitivity analysis) dan pemrograman parametrik
(parametric programming)
Algoritma pemrograman bilangan bulat (integer programming algorithms)
Algoritma pemrograman non linier (nonlinear programming algorithm)
Varian dari metode simplex: primal-dual algorithm, self-dual parametric
algorithm





EVALUASI



VIII. PRIMAL-DUAL

POKOK PEMBAHASAN
Analisis Sensitivitas

TUJUAN PEMBELAJARAN
1. Memahami solusi optimal dengan perubahan pada fungsi tujuan,
variabel keputusan, pembatas, vector dan RHS

RINGKASAN MATERI


Analisis sensitivitas adalah studi dalam perubahan solusi optimal dan nilai optimal
karena perubahan dalam koefisien data input.
Perubahan dapat terjadi pada:
Koefisien fungsi tujuan
Konstanta ruas kanan
Koefisien matrix (koefisien teknologi):
o Penambahan aktivitas atau variabel baru
o Perubahan pengunaan sumber dari aktivitas (perubahan kolom)
o Penambahan pembatas baru
Perubahan yang dilakukan memberikan efek yang berbeda-beda, yaitu:
Perubahan yang mempengaruhi optimalitas
Perubahan koefisien fungsi tujuan
Penambahan aktivitas (variabel) baru
Perubahan penggunaan sumber dari aktivitas
Perubahan yang mempengaruhi kelayakan
Perubahan konstanta ruas kanan
Penambahan pembatas baru

Pendahuluan

Contoh masalah programa linear:
Memaksimumkan Z = 3x
1
+ 2x
2

dengan pembatas-pembatas:
x
1
+ 2x
2
s 6 (Bahan A)
2x
1
+ x
2
s 8 (Bahan B)
x
1
+ x
2
s 1 (Selisih permintaan cat interior dan eksterior)
x
2
s 2 (Permintaan cat interior)
x
1
0
x
2
0
Tabel awal:


Tabel akhir (tabel optimal):


2 1 1
2 4 4 x x Z c + = =
2
3 / 2
1
3 / 1
3 / 2
) 0 , 0 , 2 , 4 ( 0
3
=
(
(
(
(

= c
0
3 / 1
1
3 / 2
3 / 1
) 0 , 0 , 2 , 4 ( 0
4
=
(
(
(
(

= c

Perubahan variable basis dalam koefisien fungsi tujuan
Jika dilakukan perubahan pada variable x
1
.

Kondisi tetap optimal jika:

Misal, variabel x
1
:













Perubahan Koefisien Fungsi Tujuan



Misal, variabel x
1
:












2 1 1
2 5 5 x x Z c + = =
3 / 8
3 / 2
1
3 / 1
3 / 2
) 0 , 0 , 2 , 5 ( 0
3
=
(
(
(
(

= c
3 / 1
3 / 1
1
3 / 2
3 / 1
) 0 , 0 , 2 , 5 ( 0
4
=
(
(
(
(

= c



Perubahan variable non basis dalam koefisien fungsi tujuan
Misal perubahan terjadi pada variabel x
3
:

Kondisi akan tetap optimal jika:


Penambahan Aktivitas Baru
Contoh kasus:
Memaksimumkan Z = 3x
1
+ 2x
2
+
3
/
2
x
7

dengan pembatas-pembatas:
x
1
+ 2x
2
+
3
/
4
x7 s 6 (Bahan A)
2x
1
+ x
2
+
3
/
4
x7 s 8 (Bahan B)
x
1
+ x
2
x7

s 1 (Selisih permintaan cat interior dan eksterior)
x
2
s 2 (Permintaan cat interior)
x
1
, x
2
, x
7
0


(
(
(
(

1 0 3 / 1 3 / 2
0 1 1 1
0 0 3 / 2 3 / 1
0 0 3 / 1 3 / 2
1
B
7 7 7
P = c c
(
(
(
(

=
0
1
4 / 3
4 / 3
7
P 2 / 3
7
= c
( ) ( ) ( ) 0 , 0 , 3 / 4 , 3 / 1
1 0 3 / 1 3 / 2
0 1 1 1
0 0 3 / 2 3 / 1
0 0 3 / 1 3 / 2
0 , 0 , 3 , 2 , , ,
1
6 5 1 2
=
(
(
(
(


= = =

B c
B
t t t t
( ) 4 / 1
0
1
4 / 3
4 / 3
0 , 0 , 3 / 4 , 3 / 1 2 / 3
7 7 7
=
(
(
(
(

= = P c c
(
(
(
(

=
(
(
(
(

(
(
(
(


=
4 / 1
1
4 / 1
4 / 1
0
1
4 / 3
4 / 3
1 0 3 / 1 3 / 2
0 1 1 1
0 0 3 / 2 3 / 1
0 0 3 / 1 3 / 2
7
P


















(
(
(
(

=
2
1
8
1
*
b
b
0
1
>

b B
(
(
(
(

1 0 3 / 1 3 / 2
0 1 1 1
0 0 3 / 2 3 / 1
0 0 3 / 1 3 / 2
1
B
(
(
(
(

=
2
1
8
7
*
b
(
(
(
(

=
(
(
(
(

(
(
(
(

0
2
3
2
2
1
8
7
1 0 3 / 1 3 / 2
0 1 1 1
0 0 3 / 2 3 / 1
0 0 3 / 1 3 / 2
* 1
b B
( ) ( ) ( ) ( ) 13 0 0 0 2 2 2 3 3 = + + + = Z
Perubahan Penggunaan Sumber dari Aktivitas
Perubahan pada aktivitas (variabel) non basis
Dilakukan analisis seperti kasus penambahan aktivitas baru
Perubahan pada aktivitas (variabel) basis
Menyelesaikan masalah pemrograman linier dari awal lagi


Misal terjadi perubahan pada Pembatas 1.






Misal Pembatas 1:




Perubahan konstanta ruas kanan
(
(
(
(

+
+
+

=
(
(
(
(

(
(
(
(

3 / 14 3 / 2
9
3 / 16 3 /
3 / 8 3 / 2
2
1
8
1 0 3 / 1 3 / 2
0 1 1 1
0 0 3 / 2 3 / 1
0 0 3 / 1 3 / 2
1
1
1
1 1
* 1
b
b
b
b b
b B
4 0
3
8
3
2
1
1
> > b
b
16 0
3
16
3
1
1
s > + b
b
9 0 9
1 1
s > + b b
7 0
3
14
3
2
1
1
s > +

b
b
7 4
1
s s b

(
(
(
(

=
2
1
8
9
*
b
(
(
(
(

=
(
(
(
(

(
(
(
(

3 / 4
0
3 / 7
3 / 10
2
1
8
9
1 0 3 / 1 3 / 2
0 1 1 1
0 0 3 / 2 3 / 1
0 0 3 / 1 3 / 2
* 1
b B


Misal Pembatas 1 berubah menjadi:



:


Dengan menerapkan dual simplex, menghasilkan:






Terdapat dua kondisi solusi optimal terhadap penambahan pembatas baru:
Solusi optimal saat ini memenuhi pembatas baru
Pembatas baru bersifat nonbinding atau redundant sehingga tidak
mengubah solusi optimal saat ini.
Solusi optimal saat ini tidak memenuhi pembatas baru
Pembatas baru bersifat binding
Contoh:



Penambahan pembatas baru
Pembatas baru: x
1
s 4
Solusi optimal saat ini : x = (x
1
, x
2
, x
5
, x
6
)
= (10/3, 4/3, 3, 2/3)
x
1
= 10/3 s 4
Pembatas baru: x
1
s 3
Solusi optimal saat ini : x = (x
1
, x
2
, x
5
, x
6
) = (10/3, 4/3, 3, 2/3)
x
1
= 10/3 > 3




Dengan menertapkan dual simplex, dihasilkan:

Penambahan slack variable x
7
: x
1
+ x
7
= 3
Solusi optimal saat ini : x = (x
1
, x
2
, x
5
, x
6
) = (10/3, 4/3, 3, 2/3)
x
1
= 10/3 > 3




EVALUASI


IX. INTEGER PROGRAMMING

POKOK PEMBAHASAN
Konsep Bilangan Bulat
Metoda Cutting Plane

TUJUAN PEMBELAJARAN
1. Memahami permasalahan dan solusi variable integer
2. Memahami metoda cutting plane

RINGKASAN MATERI


Pengantar Pemrograman Bilangan Bulat
Pemrograman bilangan bulat (integer programming) mensyaratkan bahwa
beberapa variabel keputusan harus mempunyai nilai yang bulat (bukan pecahan)
Disini, pembahasan hanya ditujukan untuk masalah pemrograman linier bilangan
bulat (integer linear programming problem)

Jenis Pemrograman Linier Bilangan Bulat
Pemrograman linier bilangan bulat murni (pure integer linear programming,
PILP)
Pemrograman linier bilangan bulat campuran (mixed integer linear
programming, MILP)
Pemrograman linier bilangan bulat biner (binary integer linear programming,
BILP)




Konsep Bilangan Bulat

Contoh Pemrograman Linier Bilangan Bulat Biner


Fungsi dengan N Nilai yang Mungkin
( )
N n
d d d x x x f atau atau atau , , ,
2 1 2 1
=
Perumusan ILP:


Contoh Kasus:
18 atau 12 atau 6 2 3
2 1
= + x x
Perumusan ILP:


Representasi Biner untuk Variabel Bilangan Bulat
Batas-batas untuk variabel x:
u x s s 0
1
2 2 dimana
+
s s
N N
u

Representasi biner:

=
=
N
i
i
i
y x
0
2
{ } N i y
i
, , 2 , 1 , 1 , 0 = =

Contoh Kasus:


Contoh Model Pemrograman Bilangan Bulat
a. Fixed Charge Problem
Misalkan terdapat n jenis produk
p
j
= harga satuan produk j
K
j
= biaya tetap untuk memproduksi produk j (independen terhadap jumlah
produksi)
c
j
= biaya variabel untuk memproduksi produk j (proporsional terhadap
jumlah produksi)
b
i
= kapasitas sumber i (i = 1, m)
a
ij
= kebutuhan sumber i untuk per unit produk j
Permasalahan :
Menentukan produk mana yang perlu diproduksi dan jumlah produksinya masing-
masing agar diperoleh profit (selisih penjualan dengan biaya tetap dan variabel) total
yang maksimum dengan memperhatikan kondisi:
ketersediaan kapasitas
jika suatu produk diputuskan untuk tidak diproduk maka jumlah produksinya
nol.

Variabel keputusan :
x
j
= jumlah produk j yang diproduksi
y
j
= keputusan untuk memproduksi atau tidak produk j;
y
j
= 1 jika produk j diproduksi
y
j
= 0 jika produk j tidak diproduksi


b. Knapsack Problem
Misalkan terdapat n item.
w
j
= berat item j
v
j
= nilai item j
W = kapasitas muatan (berat) dari kantong
Permasalahan :
Menentukan jumlah item yang perlu dimasukkan ke dalam kantong agar diperoleh
nilai total yang maksimum dengan memperhatikan kondisi kapasitas muatan (berat)
dari kantong
Variabel keputusan :
x
j
= jumlah item yang dimasukkan ke kantong



c. Set Covering Problem
Contoh masalah set covering problem dalam menentukan lokasi pendirian pos
siskamling


Misalkan terdapat n lokasi pendirian pos dan m jalan.
c
j
= biaya mendirikan pos di lokasi j
a
ij
= konstanta biner (0-1)
a
ij
= 1 jika jalan i dilayani oleh pos yang berlokasi di j
a
ij
= 0 jika sebaliknya
Pertanyaan:
Menentukan lokasi pendirian pos dimana tiap jalan dapat dilayani minimal oleh satu
pos sehingga diperoleh biaya total pendirian yang minimum
Variabel keputusan
x
j
= variabel biner (0-1) yang menentukan keputusan untuk mendirikan pos di
lokasi j (x
j
= 1 jika pos didirikan di lokasi j, x
j
= 0 sebaliknya)





Set Partitioning Problem
Tiap jalan tepat dilayani oleh satu pos


d. Traveling Salesman Problem


Misalkan terdapat n titik.
c
ij
= jarak antara titik i ke titik j (c
ij
= untuk i = j)
Permasalahan
Menentukan rute salesman yang berangkat dari suatu titik dan mengunjungi setiap
titik yang lain paling banyak sekali, serta kembali ke titik asal agar diperoleh jarak
total yang minimum
Variabel keputusan
X
ij
= keputusan untuk melintasi atau tidak busur (i, j)
x
ij
= 1 jika busur (i, j) dilintasi
x
ij
= 0 jika busur (i, j) tidak dilintas





Subtour breaking constraint bertujuan untuk mengeliminasi terjadinya solusi
subtour.

Suatu solusi traveling salesman problem yang layak (terbentuknya suatu tour).





e. Job Scheduling Problem
Misalkan
- terdapat n job dengan operasi-tunggal
- terdapat satu mesin tunggal
p
j
= waktu pengerjaan job j
w
j
= bobot kepentingan job j
Permasalahan:
Menentukan saat awal (juga secara implisit menentukan saat akhir) pengerjaan job
agar diperoleh waktu penyelesaian tertimbang total (total weighted completion time)
yang minimum dengan memperhatikan bahwa pada suatu saat mesin hanya dapat
mengerjakan satu operasi (job)
Variabel keputusan:
B
j
= saat awal pengerjaan job j
C
j
= saat akhir pengerjaan job j
y
ij
= keputusan apakah job i mendahului job i
y
ij
= 1 jika job i mendahului job j
y
ij
= 0 jika sebaliknya




Dalam kuliah ini, metode pemecahan kasus pemrograman bilangan bulat yang akan
dibahas adalah:
Cutting method
o Cutting Plane
Search method
o Branch and Bound

a. Metode Cutting Plane
o Dikembangkan oleh R.E. Gomory
o Algoritma
Fractional algorithm untuk masalah pemrograman bilangan bulat murni
(PILP)
Mixed algorithm untuk masalah pemrograman bilangan bulat campuran
(MILP)
Ilustrasi Suatu Masalah ILP
Maximasi Z = 7x
1
+ 9x
2

dengan pembatas-pembatas:
x
1
+ 3x
2
s 6
7x
1
+ x
2
s 35
x
1
, x
2
0 dan bilangan bulat
Daerah layak

Solusi Optimal Kontinyu (dengan mengabaikan kondisi integralitas)
Metode Pemecahan Model Pemrograman Bilangan Bulat


Ide Dasar dari Cutting Plane
Mengubah convex set dari daerah ruang pemecahan (solution space) sehingga
titik ekstrem menjadi bilangan bulat
Perubahan dibuat tanpa men-slicing off daerah layak dari masalah awal.
Perubahan dilakukan dengan penambahan beberapa secondary constraint.
Penambahan pembatas sekunder

Fractional Algorithm
Digunakan untuk memecahkan masalah pemrograman linier bilangan bulat murni
(PILP).
Mensyaratkan bahwa semua koefisien teknologi dan konstanta ruas kanan adalah
bilangan bulat.
2
13
3
1
2 1
s + x x 39 2 6
2 1
s + x x
Pada awalnya, masalah PILP dipecahkan sebagai LP reguler, yaitu dengan
mengabaikan kondisi integralitas.



Variabel x
i
(i = 1, , m) menunjukkan variabel basis
Variabel w
j
(j = 1, , n) menunjukkan variabel non basis

Misalkan persamaan ke-i dimana variabel x
i
diasumsikan bernilai bilangan bulat
bulat bilangan bukan ,
i
1
| o |

=
=
n
j
j
j
i i i
w x
Misal : | |
i i i
f + = | |
| |
ij
j
i
j
i
f + = o o
dimana
N = [a] adalah bilangan bulat terbesar sehingga N s a
0 < f
i
< 1
0 s f
ij
< 1
Dari baris sumber diperoleh:
| | | |

= =
+ =
n
j
j
j
i i i
n
j
i ij i
w x w f f
1 1
o |

Agar semua x
i
dan w
j
adalah bilangan bulat, maka ruas kanan dari persamaan harus
bilangan bulat Akibatnya, ruas kiri harus bilangan bulat.
Untuk f
ij
> 0 dan w
j
> 0 untuk semua i dan j maka

0
1
>

=
n
j
j ij
w f

Akibatnya
i
n
j
j ij i
f w f f s

=1

Karena f
i
< 1 maka
1
1
<

=
n
j
j ij i
w f f

Karena ruas kiri harus bilangan bulat, maka syarat perlu untuk memenuhi integralitas
adalah:
0
1
s

=
n
j
j ij i
w f f

Pertidaksamaan terakhir dapat dijadikan sebagai pembatas dalam bentuk:
i
n
j
j ij i
f w f S =

=1
; (fractional cut)

Tabel setelah penambahan fractional cut

Dengan penambahan fractional cut, tabel terakhir menjadi tidak layak walaupun
optimal sehingga metode dual simplex diterapkan untuk meniadakan
ketidaklayakan.

Algoritma berhenti jika solusi optimal bilangan bulat diperoleh.

Kekuatan fractional cut
i
n
j
j ij
f w f >

=1

k
n
j
j kj
f w f >

=1

Cut (1) dikatakan lebih kuat dari cut (2) jika f
i
> f
k
dan f
ij
s f
kj
untuk semua j dengan
strict inequality terpenuhi paling sedikit satu.
Aturan :
{ }
i
i
f max

=
n
j
ij
i
i
f
f
1
max

Ilustrasi Penerapan Fractional Algorithm
Maximasi Z = 7x
1
+ 9x
2

dengan pembatas-pembatas:
x
1
+ 3x
2
s 6
7x
1
+ x
2
s 35
x
1
, x
2
0 dan bilangan bulat

Tabel optimal kontinyu



Fractional cut:
2
1
22
1
22
7
4 3 1
= x x S
Tabel setelah penambahan fractional cut

Tabel yang diperoleh dengan dual simplex:


Tabel setelah penambahan fractional cut


Tabel yang diperoleh dengan dual simplex:

Solusi bilangan bulat optimal, x
1
= 4, x
2
= 3; Z = 55

Ilustrasi Fractional Cut secara grafis





Fractional cut 2:




Mixed Algorithm
Digunakan untuk memecahkan masalah pemrograman linier bilangan bulat
campuran (MILP)
Pada awalnya, masalah MILP dipecahkan sebagai LP reguler, yaitu dengan
mengabaikan kondisi integralitas.
Contoh:
Maximasi Z = 7x
1
+ 9x
2

dengan pembatas-pembatas:
x
1
+ 3x
2
s 6
7x
1
+ x
2
s 35
x
1
0 dan bilangan bulat
x
2
0
Misal x
k
adalah variabel bilangan bulat dari masalah MILP. Persamaan-x
k
dalam
solusi kontinyu optimal:



Untuk x
k
adalah bilangan bulat, maka
| | | | 1 atau + > s
k k k k
x x | | ; harus dipenuhi
Dari baris sumber, kondisi ini ekivalen dengan


Misal
J
+
= himpunan subscripts j untuk o
k
j
> 0
J
-
= himpunan subscripts j untuk o
k
j
< 0

Dari (1) dan (2) diperoleh

Karena (1) dan (2), tidak dapat terjadi secara simultan, maka (3) dan (4) dapat
digabungkan menjadi satu pembatas dalam bentuk.
k
n
J j
k
j
k
k
k
n
J j
k
j
k k
f w
f
f
w S =

+

+
e e
o o
1
; (mixed cut)



Ilustrasi Penerapan Mixed Algorithm
Maximasi Z = 7x
1
+ 9x
2

dengan pembatas-pembatas:
x
1
+ 3x
2
s 6
7x
1
+ x
2
s 35
x
1
0 dan bilangan bulat
x
2
0

Tabel optimal kontinyu:




Tabel setelah penambahan mixed cut

Tabel yang diperoleh dengan dual simplex:

Solusi optimal, x
1
= 4, x
2
= 10/3; Z = 55

b. Metode Branch and Bound
Metode yang paling banyak digunakan dalam praktek untuk memecahkan
masalah pemrograman bilangan bulat baik murni maupun campuran.
Digunakan sebagian besar software komersial

Pada dasarnya merupakan prosedur enumerasi yang efisien untuk memeriksa
semua solusi layak yang mungkin.
Algoritma BB untuk ILP (PILP & MILP)
Algoritma BB untuk BILP

Algoritma BB untuk ILP
Misalkan diberikan suatu masalah pemrograman
bilangan bulat sebagai berikut:
Maksimasi Z = cx
dengan pembatas
Ax = b
x > 0
x
j
bilangan bulat untuk j e I
dimana I adalah himpunan variabel bilangan bulat
Langkah pertama adalah memecahkan masalah ILP sebagai LP dengan
mengabaikan pembatas bilangan bulat (bounding)
Misalkan masalah LP dinyatakan sebagai LP-1 yang mempunyai nilai optimal
dari fungsi tujuan Z
1
.
PL-1
Maksimasi Z = cx
dengan pembatas
Ax = b
x > 0
Asumsikan bahwa solusi optimal dari LP-1 mengandung beberapa variabel
bilangan bulat yang mempunyai nilai pecahan.
Oleh karena itu, solusi optimal bilangan bulat untuk ILP belum diperoleh dan Z
1

menjadi batas atas (upper bound) dari nilai maksimum Z untuk ILP.
Langkah berikutnya adalah mempartisi daerah layak dari LP-1 dengan
mencabangkan (branching) salah satu variabel bilangan bulat yang nilainya
pecahan
Misalkan variabel x
j
dipilih untuk dicabangkan dengan nilai pecahan |
j
dalam
LP-1.

Misalkan dibuat dua masalah pemrograman linier baru, LP-2 dan LP-3 dengan
memasukkan masing-masing pembatas baru x
j
s [|] dan x
j
> [|]+1
PL-2
Maksimasi Z = cx
dengan pembatas
Ax = b
x
j
s [|]


x > 0
PL-3
Maksimasi Z = cx
dengan pembatas
Ax = b
x
j
> [|]+1
x > 0

Memecahkan (bounding) LP-2 dan LP-3
Asumsikan solusi LP-2 dan LP-3 masih pecahan
Langkah berikutnya adalah memilih node (masalah LP) yang akan dicabangkan.
Setelah masalah LP dipilih untuk dicabangkan lebih lanjut, langkahnya
selanjutnya adalah
a. memilih variabel bilangan bulat dengan nilai pecahan yang akan
dicabangkan untuk membentuk dua masalah LP baru (proses branching)
b. memecahkan masalah LP yang baru (proses bounding)
c. Jika solusi bilangan bulat diperoleh dari suatu masalah LP maka nilai Z-nya
menjadi batas bawah (lower bound) dari nilai maksimum Z untuk masalah ILP.
d. Proses branching dan bounding berlanjut hingga semua node dalam kondisi
fathomed.

e. Fathoming suatu node (masalah LP):
a. Solusi optimal LP merupakan bilangan bulat
b. Masalah LP adalah tak layak
c. Nilai optimal Z dari masalah LP tidak lebih baik daripada batas bawah
(lower bound) saat ini.


Esensi dari algoritma BB
a. Bounding
b. Branching
c. Fathoming
Ilustrasi Penerapan Algoritma BB
Maximasi Z = 2x
1
+ 3x
2

dengan pembatas-pembatas:
5x
1
+ 7x
2
s 35
4x
1
+ 9x
2
s 36

x
1
, x
2
0 dan bilangan bulat






Pencabangan dari LP-3






Aturan Pencabangan
Aturan-aturan pencabangan variabel adalah sebagai berikut:
a. Pilih variabel bilangan bulat yang mempunyai nilai pecahan terbesar dalam
solusi LP.
b. Pilih variabel bilangan bulat yang mempunyai prioritas paling tinggi.
Menunjukkan keputusan yang terpenting dalam model
Mempunyai koefisien profit/biaya paling besar
Mempunyai nilai yang kritis yang didasarkan pengalaman pengguna
c. Aturan pemilihan bebas, misal, pilih variabel bilangan bulat dengan indeks
paling kecil
Aturan penentuan masalah LP yang hendak dicabangkan:
a. Nilai optimal dari fungsi tujuan

b. LIFO (Last-In First-Out), yaitu masalah LP yang dipecahkan paling
belakangan.

Algoritma BB untuk BILP
Maximasi Z = 9x
1
+ 5x
2
+ 6x
3
+ 4x
4

dengan pembatas-pembatas:
6x
1
+ 3x
2
+ 5x3 + 2x4 s 10
x
3
+ x
4
s 1
-x1 + x3 + s 0
-x2 + x4 s 0
x
1
, x
2
, x
3
, x
4
= {0, 1}














EVALUASI



X. METODA TRANSPORTASI

POKOK PEMBAHASAN
Northe West Corner
Metoda Vogels

TUJUAN PEMBELAJARAN
1. Memahami konsep metode transportasi dan penerapannya
2. Memahami konsep solusi optimal permasalahan transportasi
3. Memahami metoda Vogels untuk pencarian solusi optimal

RINGKASAN MATERI


Masalah transportasi umumnya berkaitan dengan masalah pendistribusian suatu
produk dari beberapa sumber ke sejumlah tujuan dengan biaya yang minimum.
Contoh masalah transportasi:

Berapa yang harus dikirim dari gudang 1 dan 2 ke masing-masing konsumen
supaya biaya minimal?

Pendahuluan

Rumusan pemrograman linier untuk kasus transportasi:
Terdapat m sumber (misal: gudang) dimana produk disimpan.
Terdapat n tujuan (misal: pasar) dimana produk dibutuhkan.
Ketersediaan pasokan dari sumber : a
i
(i = 1, 2, , m)
Permintaan dari tujuan : b
j
(j = 1, 2, , n)
Biaya pengiriman dari sumber i ke tujuan j : c
ij
(i = 1, 2, , m; j = 1, 2, ,
n). Jika suatu sumber i tidak dapat memasok suatu tujuan j, maka c
ij
= M (M
bilangan positif yang sangat besar)
Permasalahannya adalah menentukan jumlah produk yang dikirim dari
sumber i ke tujuan j (dinyatakan dengan x
ij
) yang meminimumkan biaya
transportasi (pengiriman) total.
Sehingga, model matematis kasus transportasi secara umum adalah sebagai berikut.


Model umum masalah transportasi dalam bentuk jaringan:

Minimasi

= =
=
m
i
n
j
ij ij
x c Z
1 1
dengan pembatas-pembatas:
i
n
j
ij
a x s

=1
j
m
i
ij
b x >

=1
0 >
ij
x j i,
j = 1, 2, , n
i = 1, 2, , m
1
2
m
1
2
n
...
...
Sumber Tujuan
c
ij
a
1
a
2
a
i
a
m
b
1
b
2
b
j
b
n

Masalah Transportasi Standar/Seimbang
(Standar/Balanced Transportation Problem)

Model matematis:


Masalah Transportasi Tak Seimbang

Model matematis:


= =
=
n
i
j
m
j
i
b a
1 1
Minimasi

= =
=
m
i
n
j
ij ij
x c Z
1 1
dengan pembatas-pembatas:
i
n
j
ij
a x =

=1
j
m
i
ij
b x =

=1
0 >
ij
x j i,
j = 1, 2, , n
i = 1, 2, , m

= =
>
n
i
j
m
j
i
b a
1 1
Minimasi

=
+
=
=
m
i
n
j
ij ij
x c Z
1
1
1
dengan pembatas-pembatas:
i
n
j
ij
a x =

+
=
1
1
j
m
i
ij
b x =

=1
0 >
ij
x
j = 1, 2, , n, n+1
i = 1, 2, , m
j = n+1 adalah tujuan fiktif dengan permintaan

= =
+
=
n
i
j
m
j
i n
b a b
1 1
1
j i,
dan
m i c
n i
,..., 2 , 1 , 0
1 ,
= =
+


Model matematis:


Tabel Transportasi





= =
<
n
i
j
m
j
i
b a
1 1
Minimasi

+
= =
=
1
1 1
m
i
n
j
ij ij
x c Z
dengan pembatas-pembatas:
i
n
j
ij
a x =

=1
j
m
i
ij
b x =

+
=
1
1
0 >
ij
x
j = 1, 2, , n
i = 1, 2, , m+1
j = n+1 adalah tujuan fiktif dengan permintaan

= =
+
=
m
j
i
n
i
j n
a b b
1 1
1
j i,
dan
n j c
j m
,..., 2 , 1 , 0
, 1
= =
+

Contoh-contoh kasus:
a. Kasus I




Matriks transportasi:

To
From Albuquerque Boston Cleveland
Des Moines $5 $4 $3
Evansville $8 $4 $3
Fort Lauderdale $9 $7 $5

b. Kasus II
Shipping costs, Supply, and Demand for Powerco Example

Formulasi linier programming:
Min Z = 8X
11
+6X
12
+10X
13
+9X
14
+9X
21
+12X
22
+13X
23
+7X
24

+14X
31
+9X
32
+16X
33
+5X
34

S.T.: X
11
+X
12
+X
13
+X
14
<= 35 (Supply Constraints)
X
21
+X
22
+X
23
+X
24
<= 50


X
31
+X
32
+X
33
+X
34
<= 40
X
11
+X
21
+X
31
>= 45 (Demand Constraints)
X
12
+X
22
+X
32
>= 20


X
13
+X
23
+X
33
>= 30
X
14
+X
24
+X
34
>= 30
Xij >= 0 (i= 1,2,3; j= 1,2,3,4)


Algoritma pemecahan masalah transportasi:
Langkah 0:
Perumusan masalah dalam masalah transportasi standar
Langkah 1:
Penentuan solusi basis layak awal
Langkah 2:
Pemeriksaan optimalitas. Jika solusi optimal maka berhenti.
Penentuan solusi basis yang baru dan ke langkah 2
From To
City 1 City 2 City 3 City 4 Supply
(Million kwh)
Plant 1 $8 $6 $10 $9 35
Plant 2 $9 $12 $13 $7 50
Plant 3 $14 $9 $16 $5 40
Demand
(Million kwh)
45 20 30 30
Pemecahan Masalah Transportasi


Metode Penentuan Solusi Basis Layak Awal
Penentuan solusi basis layak awal dapat dilakukan dengan beberapa metode yaitu:
Northwest corner method
Least cost method
Vogels approximation method (VAM)

Northwest Corner Rule
Langkah-langkah pengerjaan dijelaskan melalui contoh kasus berikut ini:


2 2 2 1
3
10 8 5 4
7
7 6 6 8
5
4 3 4 4
Konsumen
Pabrik
Permintaan Konsumen
Ketersediaan
Produk
2 2 2 1
0
3
10 8 5 4
7
7 6 6 8
5
1 3 4 4




2 2 2 1
0
3
10 8 5 4
6
1
7 6 6 8
5
0 3 4 4
2 2 2 1
0
3
10 8 5 4
3
1 3
7 6 6 8
5
0 0 4 4
2 2 2 1
0
3
10 8 5 4
0
1 3 3
7 6 6 8
5
0 0 1 4


Solusi basis layak awal:

Biaya transportasi total Z = 92

Least Cost Rule

2 2 2 1
0
3
10 8 5 4
0
1 3 3
7 6 6 8
4
1
0 0 1 4
2 2 2 1
3
3
10 8 5 4
7
1 3 3
7 6 6 8
5
1 4
4 3 4 4
2 2 2 1
3
10 8 5 4
7
7 6 6 8
5
4 3 4 4




2 2 2 1
0
3
10 8 5 4
7
7 6 6 8
5
4 3 4 1
2 2 2 1
0
3
10 8 5 4
6
1
7 6 6 8
5
4 3 4 0
2 2 2 1
0
3
10 8 5 4
2
4 1
7 6 6 8
5
4 3 0 0



Solusi Basis Layak Awal

Biaya transportasi total Z = 79






2 2 2 1
0
3
10 8 5 4
2
4 1
7 6 6 8
2
3
4 0 0 0
2 2 2 1
0
3
10 8 5 4
2
4 1
7 6 6 8
0
2 3
2 0 0 0
2 2 2 1
0
3
10 8 5 4
0
2 4 1
7 6 6 8
0
2 3
0 0 0 0

Vogels Approximation Method (VAM)



P
e
n
a
l
t
i
2 2 2 1
3 1
10 8 5 4
7 1
7 6 6 8
5 0
4 3 4 4
Penalti 5 4 3 3
P
e
n
a
l
t
i
2 2 2 1
0
3
10 8 5 4
7 1
7 6 6 8
5 0
1 3 4 4
Penalti 3 2 1 4
P
e
n
a
l
t
i
2 2 2 1
0
3
10 8 5 4
3 3
4
7 6 6 8
5 0
1 3 4 0
Penalti 3 2 1


Solusi Basis Layak Awal:

Biaya transportasi total Z = 68

Degenerasi
Solusi basis layak dari masalah transportasi dikatakan degenerasi
(degenerate) jika satu atau lebih variabel basis mempunyai nilai nol.
Solusi basis dapat menjadi degenerasi jika sisa pasokan dan sisa permintaan
adalah sama untuk variabel yang akan dipilih menjadi basis.
Jumlah solusi basis dalam masalah transportasi harus : m + n 1 (m = jumlah
baris, n = jumlah kolom)


P
e
n
a
l
t
i
2 2 2 1
0
3
10 8 5 4
0
3 4
7 6 6 8
5
1 3 1 0
Penalti
Pasokan
2 2 2 1
3
3
10 8 5 4
7
3 4
7 6 6 8
5
1 3 1
Permintaan
4 3 4 4

Ilustrasi degenerasi:



2 2 2 1
4
10 8 5 4
5
7 6 6 8
8
4 5 4 4
Sisa
Pasokan
2 2 2 1
0
4
10 8 5 4
5
7 6 6 8
8
Sisa
Permintaan
0 5 4 4
Sisa
Pasokan
2 2 2 1
0
4
10 8 5 4
5
0
7 6 6 8
8
Sisa
Permintaan
0 5 4 4




Sisa
Pasokan
2 2 2 1
0
4
10 8 5 4
0
0 5
7 6 6 8
8
Sisa
Permintaan
0 0 4 4
Sisa
Pasokan
2 2 2 1
0
4
10 8 5 4
0
0 5 0
7 6 6 8
8
Sisa
Permintaan
0 0 4 4
Sisa
Pasokan
2 2 2 1
0
4
10 8 5 4
0
0 5 0
7 6 6 8
4
4
Sisa
Permintaan
0 0 0 4

( )
j i ij ij
v u c c + =


Perbaikan Solusi Basis Layak Awal
Pada perbaikan solusi basis layak awal, dilakukan:
Pemeriksaan optimalitas
Penentuan solusi basis layak yang baru
Metoda yang dapat digunakan:
Metoda u-v atau MODI (Modified Distribution Method)
Metoda Stepping-Stone

Metode u-v
Untuk sebarang solusi basis layak, tentukan nilai u
i
(untuk semua i) dan v
j
(untuk
semua j) sedemikian hingga

(Nilai u
i
dan v
j
bisa positif, negatif atau nol).
Untuk variabel non basis:


Kondisi optimalitas (masalah minimasi ) terjadi apabila



Pasokan
2 2 2 1
4
4
10 8 5 4
5
0 5 0
7 6 6 8
8
4 4
Permintaan
4 5 4 4
ij j i
c v u = + untuk setiap variabel basis x
ij
( ) 0 > + =
j i ij ij
v u c c
untuk semua variabel non basis

Jika kondisi belum optimal, variabel yang masuk basis adalah yang mempunyai
paling negatif (masalah minimasi)

Misal Diberikan Solusi Basis Layak Awal dengan Least Cost Method


Pemeriksaan optimalitas:

2 2 2 1
0
3
10 8 5 4
0
2 4 1
7 6 6 8
0
2 3
0 0 0 0
1
4 1
= +v u
10
1 2
= +v u
5
3 2
= +v u
4
4 2
= +v u
7
1 3
= +v u
6
2 3
= +v u
Enam persamaan dengan tujuh
variabel yang tak diketahui
terdapat tak hingga solusi yang
mungkin
Untuk mendapatkan solusi,
suatu nilai variabel tertentu dapat
ditetapkan sebarang, dan nilai
yang lain dapat dipecahkan.
Misalnya, u
1
= 0
v
1
= 7 v
2
= 6 v
3
= 2 v
4
= 1
u
1
= 0
2 2 2 1
3
3
u
2
= 3
10 8 5 4
7
2 4 1
u
3
= 0
7 6 6 8
5
2 3
4 3 4 4
ij
c


x
11
masuk basis

u = min(3, 2) = 2 x
21
keluar basis

Solusi baru:

Biaya transportasi total Z = 69
v
1
= 7 v
2
= 6 v
3
= 2 v
4
= 1
u
1
= 0
-5 2 -4 2 0 2 1
3
3
u
2
= 3
10 -1 8 5 4
7
2 4 1
u
3
= 0
7 6 4 6 7 8
5
2 3
4 3 4 4
( )
j i ij ij
v u c c + =
v
1
= 7 v
2
= 6 v
3
= 2 v
4
= 1
u
1
= 0
2 2 2 1
3
+u 3u
u
2
= 3
10 8 5 4
7
2u 4 1+u
u
3
= 0
7 6 6 8
5
2 3
4 3 4 4
2 2 2 1
4
2 1
10 8 5 4
7
4 3
7 6 6 8
5
2 3
4 3 4 4

Pemeriksaan Optimalitas


x
32
masuk basis

u = min(1, 4, 2) = 1 x
14
keluar basis

v
1
= 2 v
2
= 1 v
3
= 2 v
4
= 1
u
1
= 0
2 2 2 1
3
2 1
u
2
= 3
10 8 5 4
7
4 3
u
3
= 5
7 6 6 8
5
2 3
4 3 4 4
v
1
= 2 v
2
= 1 v
3
= 2 v
4
= 1
u
1
= 0
2 1 2 0 2 1
3
2 1
u
2
= 3
5 10 4 8 5 4
7
4 3
u
3
= 5
7 6 -1 6 2 8
5
2 3
4 3 4 4
v
1
= 2 v
2
= 1 v
3
= 2 v
4
= 1
u
1
= 0
2 2 2 1
3
2+u 1u
u
2
= 3
10 8 5 4
7
4u 3+u
u
3
= 5
7 6 6 8
5
2u 3 +u
4 3 4 4

Solusi baru:

Biaya transportasi total Z = 68


Solusi optimal.


2 2 2 1
4
3
10 8 5 4
7
3 4
7 6 6 8
5
1 3 1
4 3 4 4
v
1
= 2 v
2
= 1 v
3
= 1 v
4
= 0
u
1
= 0
2 2 2 1
4
3
u
2
= 4
10 8 5 4
7
3 4
u
3
= 5
7 6 6 8
5
1 3 1
4 3 4 4
v
1
= 2 v
2
= 1 v
3
= 1 v
4
= 0
u
1
= 0
2 1 2 1 2 1 1
4
3
u
2
= 4
10 8 5 4
7
3 4
u
3
= 5
7 6 6 3 8
5
1 3 1
4 3 4 4

( ) 0 s + =
j i ij ij
v u c c
Masalah Maksimasi
Pada kasus maksimasi, kondisi optimal terjadi jika koefisien fungsi tujuan relatif
untuk variabel non basis tak positif.


Untuk menentukan variabel non basis yang masuk basis, pilih variabel non basis
dengan koefisien fungsi tujuan relatif paling positif.





Contoh Implementasi Metode Stepping-stone

1. Tetapkan U
1
= 0
2. Hitung nilai U
i
dan V
j
dengan menggunakan persamaan C
ij
= U
i
+ V
j
, untuk
sel yang mendapatkan alokasi.
3. Hitung Reduced Cost (K
ij
)= C
ij
-U
i
-V
j,
untuk sel yang tidak mendapatkan
alokasi.



Contoh:









Optimal:




EVALUASI



XI. ASSIGMENT

POKOK PEMBAHASAN
Metoda Penugasan

TUJUAN PEMBELAJARAN
1. Memahami konsep assignment dan penerapannya
2. Memahami metoda pencarian solusi optimal

RINGKASAN MATERI


Model Penugasan
Model penugasan merupakan kasus khusus dari model transportasi,
dimana sejumlah m sumber ditugaskan kepada sejumlah n tujuan (satu
sumber untuk satu tujuan) sedemikan sehingga di dapat ongkos total yang
minimum.
Biasanya yang dimaksud dengan sumber ialah mesin-mesin, sedangkan yang
dimaksud dengan tujuan ialah pekerjaan (atau job).
Terdapat m mesin (M
1
, M
2
, , M
m
).
Terdapat n job (J
1
, J
2
, , J
n
) yang harus ditugaskan (dikerjakan) pada mesin.
Biaya pengerjaan untuk setiap job tergantung pada mesin yang ditugaskan.

Masalah Penugasan
Biaya pengerjaan job j pada mesin i dinyatakan dengan c
ij
. Jika suatu job i
tidak dapat ditugaskan pada mesin j, maka c
ij
= M (M bilangan positif yang
sangat besar)
Tiap mesin hanya dapat mengerjakan satu job.
Karena itu, bentuk standard model penugasan ini adalah jumlah mesin (m)
sama dengan jumlah job (n) yaitu sama dengan n.
Rumusan Masalah Penugasan

= =
=
n
i
n
j
ij ij
x c Z
1 1
Permasalahannya adalah menentukan penugasan job pada mesin yang
meminimumkan biaya total.

Rumusan Pemrograman Linier
(Tepatnya: Pemrograman Linier Bilangan Bulat 0-1)
Minimasi


dengan pembatas-pembatas:


Tabel Transportasi




, 1
1
=

=
n
j
ij
x
, 1
1
=

=
n
i
ij
x

=
lain yang
mesin pada ditugaskan job jika
0
1 i j
x
ij
i = 1, 2, , n
j = 1, 2, , n
Job
J
1
J
2
J
n
Mesin
M
1
c
11
c
12
c
1n
1
M
2
c
22
c
22
c
1n
1
1
M
n
c
n1
c
n2
c
nn
1
1 1 1 1

( )

= =
i
ij
j
j i ij
i j
ij ij
x q p c x c Z

=
i j
ij j
i j
ij i
i
ij
j
ij
x q x p x c

=
i j
ij j
i j
ij i
i
ij
j
ij
x q x p x c

|
.
|

\
|

|
|
.
|

\
|
=
i i
ij j
i j
ij i
i
ij
j
ij
x q x p x c
( ) ( ) 1 1

=
i
j
i
i
i
ij
j
ij
q p x c
konstanta =

i
ij
j
ij
x c
Masalah Penugasan Tak Standar
Jika jumlah mesin lebih banyak dari jumlah job (m > n) maka dibuat
tambahan (m n) job fiktif dengan biaya penugasan nol.
Jika jumlah mesin lebih sedikit dari jumlah job (m < n) maka dibuat
tambahan (n m) mesin fiktif dengan biaya penugasan nol.


Teknik yang dapat digunakan untuk menyelesaikan masalah penugasan:
Teknik untuk pemecahan masalah transportasi
Kendala: adanya degenerasi
Metoda pemecahan masalah pemrograman bilangan bulat biner
Pemrograman dinamis
Metode Hungarian (Hungarian Method)
Dalam kuliah ini, metode yang dibahas adalah Metode Hungarian.

Metode Hungarian
Asumsi adalah semua elemen biaya (c
ij
) tak negatif.
Prinsip dasar:
Solusi optimal penugasan tidak terpengaruh jika suatu konstanta
ditambahkan atau dikurangkan dari sebarang baris atau kolom dari
matriks biaya.











Pemecahan Masalah Penugasan

Struktur algoritma Metoda Hungarian:
Langkah 0:
Matriks biaya
Langkah 1:
Reduksi baris. Jika diperoleh solusi layak maka berhenti dan
diperoleh solusi optimal. Jika sebaliknya, lanjutkan ke Langkah 2.
Langkah 2:
Reduksi kolom. Jika diperoleh solusi layak maka berhenti dan
diperoleh solusi optimal. Jika sebaliknya, lanjutkan ke Langkah 3.
Langkah 3
Modifikasi matriks biaya. Algoritma berhenti apabila telah diperoleh
solusi layak (dan optimal).

Contoh 1:
Penugasan empat job dan empat mesin dengan biaya penugasan seperti pada tabel
berikut ini.

Reduksi baris dengan cara:
Cari nilai-nilai minimum dari tiap baris seperti pada gambar berikut ini.

Kurangkan masing-masing nilai biaya dengan nilai biaya minimum tiap barisnya
seperti tabel berikut ini.
J
1
J
2
J
3
J
4
M
1
10 9 8 7
M
2
3 4 5 6
M
3
2 1 1 2
M
4
4 3 5 6
J
1
J
2
J
3
J
4
M
1
10 9 8 7
M
2
3 4 5 6
M
3
2 1 1 2
M
4
4 3 5 6
Nilai Minimum Baris 1



Periksa nilai nol pada masing-masing baris.

Solusi dinyatakan layak jika terdapat nilai nol yang memasangkan masing-masing 1
mesin terhadap 1 job.
Karena pada kasus ini, nilai nol memasangkan masing-masing 1 mesin terhadap 1
job, maka solusi dikatakan optimal dengan kesimpulan sebagai berikut.







J
1
J
2
J
3
J
4
M
1
10 7 9 7 8 7 7 7
M
2
3 -3 4 3 5 3 6 3
M
3
2 1 1 1 1 1 2 1
M
4
4 3 3 3 5 3 6 - 3
J
1
J
2
J
3
J
4
M
1
3 2 1 0
M
2
0 1 2 3
M
3
1 0 0 1
M
4
1 0 2 3
M
1
J
4
M
2
J
1
M
3
J
3
M
4
J
2
Biaya penugasan total Z = 7 + 3 + 1 + 3 = 14

Contoh 2:
Penugasan empat job dan empat mesin dengan biaya penugasan seperti pada tabel
berikut ini.

Reduksi baris:

Hasil reduksi baris:

Karena Job 4 belum mendapatkan sebuah mesin, maka solusi dikatakan belum layak.





J
1
J
2
J
3
J
4
M
1
10 9 7 8
M
2
5 8 7 7
M
3
5 4 6 5
M
4
2 3 4 5
J
1
J
2
J
3
J
4
M
1
10 7 9 7 8 7 7 7
M
2
5 5 8 5 7 5 7 5
M
3
5 4 4 4 6 4 5 4
M
4
2 2 3 2 4 2 5 - 2
J
1
J
2
J
3
J
4
M
1
3 2 0 1
M
2
0 3 2 2
M
3
1 0 2 1
M
4
0 1 2 3

Selanjutnya, lakukan reduksi kolom.
Cari nilai minimum dari tiap-tiap kolom, lalu lakukan pengurangan setiap nilai
(ongkos) terhadap nilai minimum pada kolomnya.


Hasil reduksi kolom adalah sebagai berikut.

Solusi belum layak karena belum dapat ditemukan pasangan tepat satu-satu antara
mesin dan job.
Selanjutnya, lakukan modifikasi matriks seperti ilustrasi berikut ini.
J
1
J
2
J
3
J
4
M
1
3 2 0 1
M
2
0 3 2 2
M
3
1 0 2 1
M
4
0 1 2 3
J
1
J
2
J
3
J
4
M
1
3 0 2 0 0 0 1 1
M
2
0 0 3 0 2 0 2 1
M
3
1 0 0 0 2 0 1 1
M
4
0 0 1 0 2 0 3 1
J
1
J
2
J
3
J
4
M
1
3 2 0 0
M
2
0 3 2 1
M
3
1 0 2 0
M
4
0 1 2 2




J
1
J
2
J
3
J
4
M
1
3 2 0 0
M
2
0 3 2 1
M
3
1 0 2 0
M
4
0 1 2 2
Tarik garis (horizontal/vertikal) yang
menghubungkan nilai-nilai nol;
Buat garis seminimum mungkin
(biasanya jumlah kolom - 1)
J
1
J
2
J
3
J
4
M
1
3 2 0 0
M
2
0 3 2 1
M
3
1 0 2 0
M
4
0 1 2 2
Elemen terkecil
yang tak tertutup garis
Tandai elemen terkecil yang tidak
tertutupi garis.
J
1
J
2
J
3
J
4
M
1
3 2 0 0
M
2
0 3 2 1
M
3
1 0 2 0
M
4
0 1 2 2
Tambahkan nilai elemen yang berada
pada titik potong dua garis dengan
nilai elemen terkecil yang tidak tertutup
baris
3 + 1



Secara keseluruhan, operasinya adalah sebagai berikut:





J
1
J
2
J
3
J
4
M
1
3 2 0 0
M
2
0 3 2 1
M
3
1 0 2 0
M
4
0 1 2 2
Kurangi nilai elemen-elemen yang
tidak tertutup garis dengan nilai
elemen terkecil
3 - 1
J
1
J
2
J
3
J
4
M
1
3 2 0 0
M
2
0 3 2 1
M
3
1 0 2 0
M
4
0 1 2 2
Abaikan nilai elemen-elemen yang
tertutup satu garis
J
1
J
2
J
3
J
4
M
1
3 + 1 2 0 0
M
2
0 3 1 2 1 1 - 1
M
3
1 + 1 0 2 0
M
4
0 1 1 2 - 1 2 - 1


Hasil modifikasi matriks adalah sebagai berikut:

Solusi layak, karena sudah terdapat pasangan untuk tiap mesin dan tiap job.
Solusi optimal:

Solusi optimal alternatif:

J
1
J
2
J
3
J
4
M
1
4 2 0 0
M
2
0 2 1 0
M
3
2 0 2 0
M
4
0 0 1 1
J
1
J
2
J
3
J
4
M
1
4 2 0 0
M
2
0 2 1 0
M
3
2 0 2 0
M
4
0 0 1 1
M
1
J
3
M
2
J
1
M
3
J
4
M
4
J
2
Biaya penugasan total Z = 7 + 5 + 5 + 3 = 20
J
1
J
2
J
3
J
4
M
1
4 2 0 0
M
2
0 2 1 0
M
3
1 0 2 0
M
4
0 0 1 1
M
1
J
3
M
2
J
1
M
3
J
4
M
4
J
2
Biaya penugasan total Z = 7 + 7 + 4 + 2 = 20

Masalah Maksimasi
Langkah pengerjaan:
Langkah 1
Konversikan ke masalah minimasi dengan mengalikan semua elemen
(c
ij
) dari matrix biaya penugasan dengan -1.
Langkah 2
Jika beberapa elemen matrix biaya adalah negatif maka tambahan
suatu bilangan positif yang besar untuk masing-masing baris dan
kolom sehingga elemen-elemen biaya menjadi positif.
Langkah 3
Terapkan metode Hungarian.

Contoh 3:

Setiap nilai dikalikan (-1) sehingga menghasilkan matriks sebagai berikut:




J
1
J
2
J
3
J
4
M
1
6 4 -M 2
M
2
4 5 2 1
M
3
3 6 7 7
M
4
8 5 3 4
Max Profit:
J
1
J
2
J
3
J
4
M
1
-6 -4 M -2
M
2
-4 -5 -2 -1
M
3
-3 -6 -7 -7
M
4
-8 -5 -3 -4

Dengan langkah pengerjaan seperti yang telah dinyatakan di atas, pencarian solusi
optimal diilustrasikan sebagai berikut.


Solusi belum layak, langkah pengerjaan dilanjutkan dengan modifikasi matriks.
(Reduksi kolom tidak dilakukan karena nilai minimum tiap kolom adalah nol.)

Hasil modifikasi matriks:

Solusi belum layak, lakukan kembali modifikasi matrisk.

J
1
J
2
J
3
J
4
+
M
1
-6 -4 M -2 6
M
2
-4 -5 -2 -1 5
M
3
-3 -6 -7 -7 7
M
4
-8 -5 -3 -4 8
J
1
J
2
J
3
J
4
M
1
0 2 M+6 4
M
2
1 0 3 4
M
3
4 1 0 0
M
4
0 3 5 4
J
1
J
2
J
3
J
4
M
1
0 2 M+6 3 4 3
M
2
1 0 3 3 4 3
M
3
4 + 3 1 + 3 0 0
M
4
0 3 5 - 3 4 - 3
J
1
J
2
J
3
J
4
M
1
0 2 M + 3 1
M
2
1 0 0 1
M
3
7 4 0 0
M
4
0 3 2 1
J
1
J
2
J
3
J
4
M
1
0 2 M + 3 1
M
2
1 0 0 1
M
3
7 4 0 0
M
4
0 3 2 1


Solusi layak optimal:

Solusi layak optimal alternatif:







J
1
J
2
J
3
J
4
M
1
0 2 1 M + 3 - 1 1 1
M
2
1 + 1 0 0 1
M
3
7 + 1 4 0 0
M
4
0 3 1 2 1 1 1
J
1
J
2
J
3
J
4
M
1
0 1 M + 2 0
M
2
2 0 0 1
M
3
8 4 0 0
M
4
0 2 1 0
M1-J1
M2-J2
M3-J3
M4-J4
Z = 6 + 5 + 7 + 4 = 22
J
1
J
2
J
3
J
4
M
1
0 1 M + 2 0
M
2
2 0 0 1
M
3
8 4 0 0
M
4
0 2 1 0
M1-J4
M2-J2
M3-J3
M4-J1
Z = 2 + 5 + 7 + 8 = 22
Transhipment

EVALUASI



XII. ANALISIS JARINGAN

POKOK PEMBAHASAN
Lintasan Terpendek
Spanning Tree
Maximum Flow
TSP

TUJUAN PEMBELAJARAN
1. Memahami konsep node, arch, dan hubungan antar node
2. Memahami permasalahan pencarian rute terpendek
3. Memahami permasalahan spanning tree dan metoda pencarian solusi optimal
4. Memahami permasalahan Maximum Flow
5. Memahami permasalahan travel salesman problem dan metoda pencarian
solusi

RINGKASAN MATERI


Analisis Jaringan merupakan suatu perpaduan pemikiran yang logis,
digambarkan dengan suatu jaringan yang berisi lintasan-lintasan kegiatan dan
memungkinkan pengolahan secara analitis. Analisis jaringan kerja memungkinkan
suatu perencanaan yang efektif dari suatu rangkaian yang mempunyai interaktivitas.
Poin-poin penting dalam analisis jaringan:
Sebuah jaringan terdiri dari sekumpulan node yang terhubungan dengan arcs
atau branches.
Node (lingkaran kecil), menyatakan sebuah kejadian atau peristiwa atau
event. Kejadian didefinisikan sebagai ujung atau pertemuan dari satu atau
beberapa kegiatan
Pendahuluan

Arcs (Anak panah), menyatakan sebuah kegiatan atau aktivitas. Kegiatan di
sini didefinisikan sebagai hal yang memerlukan jangka waktu tertentu dalam
pemakaian sejumlah sumber daya (sumber tenaga, peralatan, material, biaya).




Jaringan G dinyatakan dengan notasi standard: G = (N, A); dengan N adalah set dari
node dan A adalah set dari arcs.
Contoh:
N = {1, 2, 3, 4, 5}
A = { (1, 3), (1, 2), (2, 3), (2, 4), (2, 5), (3, 4), (3, 5), (4, 5)}


Siklus adalah lintasan yang menghubungkan suatu node dengan node itu sendiri.
Contoh:
Lintasan 2 ke 3, 3 ke 4, dan 4 ke 2.

10
Arc
Node
Function on Arcs



Keuntungan dan Manfaat Analisis Jaringan
Menyelesaikan masalah yang berhubungan dengan desain sistem transportasi
& komunikasi
Dapat merencanakan suatu proyek secara keseluruhan.
Penjadwalan pekerjaan dalam urutan yang praktis dan efisien.
Pengadaan pengawasan dan pembagian kerja maupun biaya.
Penjadwalan ulang untuk mengatasi hambatan dan keterlambatan.
Menentukan kemungkinan pertukaran antara waktu dan biaya.

Permasalahan Jaringan
1. Masalah Spanning Tree minimal
2. Masalah Lintasan Terpendek (Shortest Path)
3. Masalah Maximum Flow
4. Travel Salesman Problem


- Tree merupakan sekelompok arcs yang terhubung yang tidak membentuk
siklus

- Spanning tree merupakan Tree yang menghubungkan seluruh node pada
suatu jaringan
1
2
3
4
5
Model Spanning Tree minimal
1
2
3
4


- Masalah spanning tree minimal berusaha untuk mencari jumlah arc lengths
minimum yang dibutuhkan untuk menghubungkan seluruh node dalam suatu
jaringan.
- Kriteria yang akan diminimisasi dalam kasus spanning tree minimal tidak
terbatas pada jarak meskipun istilah terdekat ("closest) digunakan untuk
menjelaskan suatu prosedur. Kriteria lainnya adalah seperti waktu dan biaya.

Prosedur Penyelesaian Spanning Tree
- Step 1: pilih salah satu node (bebas) dan hubungan pada node terdekat.
Kedua node ini menjadi connected nodes, dan sisa node lainnya menjadi
unconnected nodes.
- Step 2: identifikasi unconnected node yang terdekat dengan salah satu dari
connected nodes (tidak perlu mempertimbangkan ikatan). Tambahkan node
baru ini pada kelompok connected nodes. Ulangi langkan ini sampai seluruh
node terhubung.
- Note: Suatu kasus dengan n node yang akan dihubungkan akan memerlukan
n - 1 iterasi dari langkah di atas.

Contoh (mencari spanning tree minimal)

1
2
3
4
5
2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7

Iterasi 1:
Secara acak dipilih node 1, kita lihat bahwa node terdekat adalah node 2 (jarak = 30).
Sehingga, awalnya kita punya:
Connected nodes: 1,2
Unconnected nodes: 3,4,5,6,7,8,9,10
Arcs terpilih: 1-2


Iterasi 2:
Unconnected node terdekat dari connected node adalah node 5 (distance = 25 to node
2). Node 5 menjadi connected node.
Connected nodes: 1,2,5
Unconnected nodes: 3,4,6,7,8,9,10
Arcs terpilih: 1-2, 2-5

2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7
2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7


Iterasi 3:
Unconnected node terdekat dari connected node adalah node 7 (distance = 15 to node
5). Node 7 menjadi connected node.
Connected nodes: 1,2,5,7
Unconnected nodes: 3,4,6,8,9,10
Arcs terpilih: 1-2, 2-5, 5-7

Iterasi 4:
Unconnected node terdekat dari connected node adalah node 10 (distance = 20 to
node 7). Node 10 menjadi connected node.
Connected nodes: 1,2,5,7,10
Unconnected nodes: 3,4,6,8,9
Arcs terpilih: 1-2, 2-5, 5-7, 7-10

2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7
2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7

Iterasi 5:
Unconnected node terdekat dari connected node adalah node 8 (distance = 25 to node
10). Node 8 menjadi connected node.
Connected nodes: 1,2,5,7,10,8
Unconnected nodes: 3,4,6,9
Arcs terpilih: 1-2, 2-5, 5-7, 7-10, 10-8

Iterasi 6:
Unconnected node terdekat dari connected node adalah node 6 (distance = 35 to node
10). Node 6 menjadi connected node.
Connected nodes: 1,2,5,7,10,8,6
Unconnected nodes: 3,4,9
Arcs terpilih: 1-2, 2-5, 5-7, 7-10, 10-8, 10-6

2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7
2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7

Iterasi 7:
Unconnected node terdekat dari connected node adalah node 3 (distance = 20 to node
6). Node 3 menjadi connected node.
Connected nodes: 1,2,5,7,10,8,6,3
Unconnected nodes: 4,9
Arcs terpilih: 1-2, 2-5, 5-7, 7-10, 10-8, 10-6, 6-3

Iterasi 8:
Unconnected node terdekat dari connected node adalah node 9 (distance = 30 to node
6). Node 9 menjadi connected node.
Connected nodes: 1,2,5,7,10,8,6,3,9
Unconnected nodes: 4
Arcs terpilih: 1-2, 2-5, 5-7, 7-10, 10-8, 10-6, 6-3, 6-9

2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7
2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7

Iterasi 9:
Unconnected node yang tersisa tinggal node 4. Node yang paling dekat dengan node
4 adalah node 6 (distance = 45).
Selanjutnya, spanning tree minimal (lihat slide selanjutnya) terdiri dari:
Arcs: 1-2, 2-5, 5-7, 7-10, 10-8, 10-6, 6-3, 6-9, 6-4
Nilai: 30 + 25 + 15 + 20 + 25 + 35 + 20 + 30 + 45 = 245


Optimal spanning tree:


2
4
10
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
6
5
3
1
9
8
7
4
30
45
60
40
25
50
50
45
20
30
25
15
20
35
35
30
40
1
5
8
10
6
3
9
2
7

Beberapa aplikasi masalah Spanning Tree minimal
Disain jaringan telekomunikasi (fiber-optic networks, computer networks,
leased-line telephone networks, cable television networks, etc.)
Disain jaringan transportasi untuk meminimumkan biaya total dari
penyediaan link (rail lines, roads, etc.)
Disain jaringan high-voltage electrical transmission lines
Disain jaringan pipelines untuk menghubungkan sejumlah lokasi


Pada jaringan yang diberikan, cari lintasan jarak, waktu, atau biaya minimum
dari poin awal (the start node) sampai ke tujuan (the terminal node)
Definisi masalah
Terdapat n buah node, dimulai dengan start node 1 and diakhiri dengan
terminal node n.
Bi-directional arcs menghubungkan connected node i dan j dengan jarak
nonnegative, d
ij

Cari lintasan total jarak minimum yang menghubungkan node to node n.

Langkah-Langkah Pengerjaan Lintasan Terpendek
Step 1: tetapkan node 1 dengan label permanen [0,S]. Angka pertama adalah
jarak dari node 1; angka kedua adalah preceding node. Karena node 1 tidak
memiliki preceding node, maka starting node dilabeli dengan S.
Step 2: hitung label-label sementara, (d,n), untuk tiap node yang dapat
dicapai secara langsung dari node 1. d = jarak langsung dari node 1 ke node
in question ini disebut sebagai distance value. n menunjukkan preceding
node pada rute dari node 1 ini disebut sebagai preceding node value.
(Seluruh node yang dilabeli pada langkah ini memiliki n = 1.)
Step 3: identifikasi node dengan label sementara yang memiliki distance
value terkecil. Anggap node ini adalah node k. Node k kemudian dilabeli
secara permanen (menggunakan tanda kurung [ , ]). Jika seluruh node telah
dilabeli secara permanen, GO TO STEP 5.

Model Lintasan Terpendek

Step 4: untuk setiap node yang tidak memiliki label permanen yang dapat
dicapai secara langsung dari node k pada langkah 3, hitung jumlah t, dimana
t = (arc distance dari node k menuju node i)
+ (Distance value pada node k).
Jika node yang belum dilabeli secara permanen memiliki label
sementara, bandingkan t dengan distance value saat ini dengan node
yang dipertanyakan yang terlabeli sementara.
Jika t < distance value dari node yang terlabeli sementara,
ganti label sementara yang dipertanyakan dengan (t,k).
Jika t > distance value dari node yang terlabeli sementara,
pertahankan label sementara saat ini.
Jika node yang belum dilabeli secara permanen tidak memiliki label
sementara, buat label sementara (t,k) untuk node yang dipertanyakan.
Setelah itu, GO TO STEP 3.
Step 5:
Label permanen mengidentifikasi jarak terpendek dari node 1 menuju
setiap node seperti halnya preceding node pada rute terpendek.
Rute terpendek pada given node dapat dicari secara backwards dengan
dimulai dari given node dan bergerak menuju preceding node.
Dengan melanjutkan prosedur ini dari preceding node akan
menghasilkan rute terpendek dari node 1 menuju node yang
dipertanyakan.

Contoh Kasus Shortest Path
Find the shortest route from node 1 to all other nodes in the network:

6 4
4
7
3
5
1
8
6
2
5
3
6
2
3 1
2 5
7

Iteration 1
Step 1: tetapkan node 1 dengan label permanen [0,S].
Step 2: karena node 2, 3, dan 4 terhubung langsung dengan node 1, tetapkan
label sementara (4,1) untuk node 2; (7,1) untuk node 3; dan (5,1) untuk node
4.
Step 3: node 2 adalah node yang dilabeli sementara yang memiliki jarak
terpendek (4), dan selanjunya menjadi node baru yang terlabeli permanen.
Label sementara:

Step 4: untuk setiap node yang berlabel sementara yang terhubung dengan
node 2 hanya dengan satu arc, hitung jumlah arc length dengan distance value
node 2 (yaitu 4).
Node 3: 3 + 4 = 7 (tidak lebih kecil dari label saat ini; jangan diubah.)
Node 5: 5 + 4 = 9 (tetapkan label sementara pada node 5 dengan (9,2)
karena node 5 belum memiliki label.)
Hasil Iterasi 1

6 4
4
7
3
5
1
8
6
2
5
3
6
2
(4,1)
[0,S]
(5,1)
(7,1)
3 1
2 5
7
6 4
4
7
3
5
1
8
6
2
5
3
6
2
[4,1]
[0,S]
(5,1)
(7,1)
(9,2)
3 1
2 5
7


Iteration 2
Step 3: node 4 memiliki jarak label sementara terpendek (5). Node 4
menjadi node baru yang terlabeli permanen.
Step 4: untuk setiap node dengan label sementara yang terhubung dengan
node 4 menggunakan satu arc, hitung jumlah arc length dengan distance
value node 4 (yaitu 5).
Node 3: 1 + 5 = 6 (ganti label sementara node 3 dengan (6,4) karena 6 <
jarak saat ini (7))
Node 6: 8 + 5 = 13 (tetapkan label sementara node 6 dengan (13,4)
karena node 6 belum dilabeli.)
Hasil Iterasi 2


Iteration 3
Step 3: node 3 memiliki jarak label sementara terpendek (6), sehingga
menjadi node baru yang terlabeli secara permanen.
Step 4: untuk setiap node dengan label sementara yang terhubung dengan
node 3 hanya dengan satu arc, hitung jumlah arc length dengan jarak ke node
3 (yaitu 6).
Node 5: 2 + 6 = 8 (ganti label sementara node 5 dengan (8,3) karena 8 <
jarak saat ini (9))
Node 6: 6 + 6 = 12 (ganti label sementara node 6 dengan (12,3) karena
12 < jarak saat ini (13))
6 4
4
7
3
5
1
8
6
2
5
3
6
2
[4,1]
[0,S]
[5,1]
(6,4)
(9,2)
(13,4)
3 1
2 5
7

Hasil Iterasi 3


Iteration 4
Step 3: node 5 memiliki jarak label sementara terkecil (8), sehingga menjadi
node baru yang terlabeli permanen.
Step 4: untuk setiap node dengan label sementara yang terhubung dengan
node 5 hanya dengan satu arc, hitung jumlah arc length dengan distance value
dari node 5 (yaitu 8).
Node 6: 3 + 8 = 11 (ganti label sementara node 6 dengan (11,5) karena
11 < jarak saat ini (12))
Node 7: 6 + 8 = 14 (tetapkan label sementara untuk node 7 dengan (14,5)
karena node 7 belum dilabeli.)
Hasil Iterasi 4




6 4
4
7
3
5
1
8
6
2
5
3
6
2
[4,1]
[0,S]
[5,1]
[6,4]
(8,3)
(12,3)
3 1
2 5
7
6 4
4
7
3
5
1
8
6
2
5
3
6
2
[4,1]
[0,S]
[5,1]
[6,4]
[8,3]
(11,5)
(14,5)
3 1
2 5
7

Iteration 5
Step 3: node 6 memiliki jarak label sementara terkecil (11), sehingga
menjadi node baru dengan label permanen.
Step 4: untuk setiap node dengan label sementara yang terhubung dengan
node 6 hanya dengan satu arc, hitung jumlah arc length plus dengan distance
value node 6 (yaitu 11).
Node 7: 2 + 11 = 13 (ganti label sementara node 7 dengan (13,6) karena
13 < jarak saat ini (14))
Hasil Iterasi 5

Iteration 6
Step 3: node 7 jadi terlabeli permanen, dan karenanya seluruh node terlabeli
permanen. Lanjutkan pada ringkasan di langkah 5.
Step 5: ringkas dengan pengusutan backwards rute terpendek melewati label
permanen.

Ringkasan solusi
Node minimum distance shortest route
2 4 1-2
3 6 1-4-3
4 5 1-4
5 8 1-4-3-5
6 11 1-4-3-5-6
7 13 1-4-3-5-6-7

6 4
4
7
3
5
1
8
6
2
5
3
6
2
[4,1]
[0,S]
[5,1]
[6,4]
[8,3]
[11,5]
(13,6)
3 1
2 5
7




Masalah maximal flow terkait dengan penentuan volume aliran maksimum
dari satu node (disebut source) menuju node lainnya (disebu sink).
Pada masalah maximal flow, setiap arc memiliki arc flow capacity maksimum
yang membatasi aliran menuju arc tersebut.
Dimungkinkan bawah sebuah arc, (i,j), dapat memiliki flow capacity yang
berbeda antara dari i ke j dengan dari j ke i.

Langkah pengerjaan Maximum Flow
Step 1: cari sebuah lintasan dari source node menuju sink node yang
memiliki flow capacities positif (pada arah aliran) untuk setiap arcs pada
lintasan. Jila tidak ada lintasan yang tersedia, artinya solusi optimal telah
ditemukan.
Step 2: cari arc capacity terkecil, p
f
, pada lintasan yang terpilih di langkah 1.
Tingkatkan aliran pada jaringan dengan mengirim sejumlah p
f
pada lintasan
ini.
Step 3: pada lintasan yang terpilih di langkah 1, kurangi seluruh arc flow
capacities pada arah aliran dengan p
f
dan tambahkan seluruh arc flow pada
arah aliran yang berlawanan dengan p
f
. Selanjutnya Go to step 1.


6 4
4
7
3
5
1
8
6
2
5
3
6
2
3 1
2 5
7
Model Maximum Flow

Contoh kasus
Find the maximal flow from node 1 to node 7 in the following network:

Iteration 1
Step 1: cari lintasan dari source node, 1, menuju the sink node, 7,
yang memiliki flow capacities yang lebih besar dari nol pada seluruh
arcs lintasan. Salah satu lintasannya adalah 1-2-5-7.
Step 2: Arc flow capacity terkecil pada lintasan 1-2-5-7 adalah
minimum dari {4, 3, 2} = 2.
Step 3: kurangi seluruh arc flow pada arah aliran dengan 2 pada
lintasan ini dan tambahkan seluruh arc flow pada arah yang
berlawanan dengan 2:
(1-2) 4 - 2 = 2 (2-1) 0 + 2 = 2
(2-5) 3 - 2 = 1 (5-2) 3 + 2 = 5
(5-7) 2 - 2 = 0 (7-5) 0 + 2 = 2
Hasil Iterasi 1:

2 5
1
4
7
3 6
4
4
3
3
2
0
3
4
2
0
0
0
0
3 3
3
1 5
5 1
0 6
3
0
2 5
1
4
7
3 6
2
4
3
1
2
2
5
4
0
2
0
0
0
3 3
3
1
5
5 1
0 6
3
0

Iteration 2
Step 1: lintasan 1-4-7 memiliki flow capacity yang lebih kecil dari
nol pada tiap arc.
Step 2: Arc flow capacity terkecil pada 1-4-7 adalah 3.
Step 3: kurangi arc flow capacities lintasan pada arah aliran dengan 3,
dan tambahkan kapasitas ini pada arah yang berlawanan dengan 3:
(1-4) 4 - 3 = 1 (4-1) 0 + 3 = 3
(4-7) 3 - 3 = 0 (7-4) 0 + 3 = 3
Hasil Iterasi 2:


Iteration 3
Step 1: Lintasan 1-3-4-6-7 memiliki flow capacity lebih besar dari
nol pada tiap arc.
Step 2: Arc capacity minimum pada 1-3-4-6-7 adalah 1.
Step 3: kurangi arc capacities lintasan pada arah aliran dengan 1 dan
tambahkan arc capacities pada arah aliran berlawanan dengan 1:
(1-3) 3 - 1 = 2 (3-1) 0 + 1 = 1
(3-4) 3 - 1 = 2 (4-3) 5 + 1 = 6
(4-6) 1 - 1 = 0 (6-4) 1 + 1 = 2
(6-7) 5 - 1 = 4 (7-6) 0 + 1 = 1




2 5
1
4
7
3 6
2
1
3
1
2
2
5
4
0
2
3
0
3
3 3
0
1
5
5 1
0 6
3
0

Hasil Iterasi 3

Iteration 4
Step 1: Lintasan 1-3-6-7 memiliki flow capacity lebih besar dari nol
untuk tiap arc.
Step 2: Arc capacity minimum pada 1-3-6-7 adalah 2.
Step 3: kurangi seluruh arc flow capacities pada lintasan arah aliran
dengan 2 dan tambahkan arc flow capacities pada arah berlawanan
dengan 2:
(1-3) 2 - 2 = 0 (3-1) 1 + 2 = 3
(3-6) 6 - 2 = 4 (6-3) 0 + 2 = 2
(6-7) 4 - 2 = 2 (7-6) 1 + 2 = 3
Hasil Iterasi 4


2 5
1
4
7
3 6
2
1
2
1
2
2
5
4
0
2
3
1
3
3 3
0
0
6
4 2
0 6
2
1
2 5
1
4
7
3 6
2
1
0
1
2
2
5
4
0
2
3
3
3
3 3
0
0
6
2 2
2 4
2
3

Iteration 5
Step 1: dengan menggunakan algoritma shortest route, rute terpendek
dari node 1 menuju node 7 adalah 1-2-4-3-6-7.
Step 2: Arc capacity terkecil pada 1-2-4-3-6-7 adalah 2.
Step 3: kurangi arc flow capacities pada lintasan arah aliran dengan 2
dan tambahkan kapasitas ini pada arah berlawanan dengan 2:
(1-2) 2 - 2 = 0 (2-1) 2 + 2 = 4
(2-4) 2 - 2 = 0 (4-2) 3 + 2 = 5
(4-3) 6 - 2 = 4 (3-4) 2 + 2 = 4
(3-6) 4 - 2 = 2 (6-3) 2 + 2 = 4
(6-7) 2 - 2 = 0 (7-6) 3 + 2 = 5
Note:
Arc 3-4 pada iterasi 3, aliran 1 unit diarahkan dari node 3 menuju
node 4. Pada iterasi 5 aliran 2 unit diarahkan dari node 4 menuju node 3.
Dengan mengurangkan aliran yang ditentukan dari the capacity of the
"sending" end of the arc dan menambahkannya pada the "receiving" end of
the arc, kita telah mengetahui the net effect of the oppositely directed flow
assignments.
Hasil iterasi 5:

Sudah tidak terdapat flow menuju sink node 7 yang positif.
Dengan demikian, flow maksimal yang dari node 1 to node 7 telah didapat.



2 5
1
4
7
3 6
0
1
0
1
0
4
5
4
0
2
3
5
3
5 3
0
0
4
0 2
4 2
4
3

NOTE
Untuk mengidentifikasi jumlah maximal flow amount dan bagaimana cara
mendapatkannya (mengarahkannya):
Bandingkan kapasitas asli dengan kapasitas tersesuaikan akhir untuk tiap arc
di kedua arah.
Jika kapasitas tersesuaikan lebih kecil dari kapasitas asli, perbedaannya
menunjukkan jumlah aliran untuk arc tersebut.

Ringkasan Solusi:


NOTE
Terdapat degree of randomness untuk algoritma maximal flow.
Ingat kembali pada langkah 1 terdapat pernyataan cari satu lintasan...,
selama masih mengikuti algoritma, anda akan mendapat solusi, apapun
lintasan yang anda pilih pada setiap iterasi.
Dua orang yang menyelesaikan masalah mungkin mendapatkan solusi flow
routings yang berbeda, namun maximal flows akan tetap sama.






2 5
1
4
7
3 6
1
3
2
2
4
1
3
1
5
3
4

=
otherwise 0
. ke pelanggan dari berjalan kendaraan jika 1 j i
x
ij

- TSP mencari ongkos perjalanan minimal untuk mengunjungi sekumpulan
pelanggan tetap.
- Kendaraan harus mengunjungi setiap pelanggan tepat satu kali dan kembali
ke titik awal (depot).
- Fungsi objektif adalah ongkos total perjalanan.
Contoh Kasus


- Total Jumlah solusi adalah (n-1)! / 2 jika jarak simetris.
Contoh, jika terdapat 50 pelanggan yang akan dikunjungi, maka total jumlah
solusi yang mungkin adalah 49! / 2 = 3.04 x 10
62
.



Model Matematis TSP
Inputs: n = jumlah pelanggan termasuk depot
c
ij
= ongkos perjalanan dari pelanggan i menuju j
Decision variables:



Travel Salesman Problem
2 3
1
4
5
3
5
2
3
2
1
3
2
4
4


Pembatas (1) dan (2) untuk menjamin setiap pelanggan dikunjungi tepat satu kali.

Contoh:

minimize 2x
12
+3x
13
+2x
14
+3x
15
+3x
23
+4x
24
+...+5x
45

s.t. x
12
+x
13
+x
14
+x
15
= 1 for node 1
x
21
+x
31
+x
41
+x
51
= 1 for node 1
...
...


Apakah solusi ini fisibel untuk formulasi kita?
Kita membutuhkan pembatas tambahan yang disebut subtour elimination constraints.
{ } j i x
i x
j x
x c
ij
n
j
ij
n
i
ij
n
i
n
j
ij ij
, all for 0,1
all for 1
all for 1 s.t.
min
1
1
1 1
e
=
=

=
=
= =
(1)
(2)

Subtour Elimination Constraints


Contoh solusi fisible





e e
>
S i S j
ij
S x subset every for 1

e e
s
S i S j
ij
S S x subset every for 1
2 3
1
4
5
1
3
5
4
2
1
3
5
4
2

Contoh solusi tidak fisible


Penyelesaian TSP
Terdapat beberapa teknik untuk menyelesaikan TSP.
Pembahasan kali ini menggunakan Teknik Branch & Bound

Contoh kasus
Data C
ij
untuk 5 pelanggan adalah sebagai berikut:

Pencarian solusi awal
Dengan metode Hungarian:

1
3
5
4
2
Terdapat 2 stuktur
1 2 3 4 5
1 10 3 6 9
2 5 5 4 2
3 4 9 7 8
4 7 1 3 4
5 3 2 6 5
1 2 3 4 5
min
1 M 10 3 6 9 3
2 5 M 5 4 2 2
3 4 9 M 7 8 4
4 7 1 3 M 4 1
5 3 2 6 5 M 2


Nilai minimum diluar garis = 2

Nilai minimum diluar garis = 1

Solusi awal 1-3-1, 2-5-4-2 dengan z = 15.
Solusi awal tidak fisibel

Pencarian Solusi Fisibel

M-3 7 0 3 6
3 M-2 3 2 0
0 5 M-4 3 4
6 0 2 M-1 3
1 0 4 3 M-2
M-1 9 0 3 8
3 M-2 1 0 0
0 5 M-6 1 4
6 0 0 M-3 3
1 0 2 1 M-2
M-2 9 0 2 7
3 M-1 2 0 0
0 6 M-5 1 4
5 0 0 M-2 2
0 0 2 0 M-3
1
3 2
Z = 15
S = {(1-3-1), (2-5-4-2)}
Status: Tidak Layak
X
13
= 0 X
31
= 0

Pencarian solusi Masalah 2
Dengan metode Hungarian:


Nilai minimum diluar garis = 1


Nilai minimum diluar garis = 1

min
M 10 M 6 9 6
5 M 5 4 2 2
4 9 M 7 8 4
7 1 3 M 4 1
3 2 6 5 M 2
M-6 4 M-6 0 3
3 M-2 3 2 0
0 5 M-4 3 4
6 0 2 M-1 3
1 0 4 3 M-2
M-7 4 M-7 0 2
3 M-1 3 3 0
0 5 M-4 4 4
5 0 1 M-1 2
0 0 3 3 M-3


Solusi masalah 2: 1-4-3-1, 2-5 dengan z = 17.
Solusi masalah 2 tidak fisibel


Pencarian solusi Masalah 3
Dengan metode Hungarian:


Nilai minimum diluar garis = 1
M-7 5 M-7 0 2
4 M 3 3 0
0 6 M-5 3 3
5 0 0 M-2 1
0 0 2 2 M-4
1
3 2
Z = 15
S = {(1-3-1), (2-5-4-2)}
Status: Tidak Layak
X
13
= 0 X
31
= 0
Z = 17
S = {(1-4-3-1), (2-5)}
Status: Tidak Layak
min
M 10 3 6 9 3
5 M 5 4 2 2
M 9 M 7 8 7
7 1 3 M 4 1
3 2 6 5 M 2
M-3 7 0 3 6
3 M-2 3 2 0
M-7 2 M-7 0 1
6 0 2 M-1 3
1 0 4 3 M-2


Solusi masalah 3: 1-3-4-2-5-1 dengan z = 16.
Solusi masalah 3 fisibel


EVALUASI
Soal 1.
The State University campus has five computers. The distances between computers
are given in the figure below. What is the minimum length of cable required to
interconnect the computers? Note that if two computers are not connected this is
because of underground rock formations.

M-4 7 0 2 5
3 M-1 4 2 0
M-7 3 M-6 0 1
5 0 2 M-2 2
0 0 4 2 M-3
1
3 2
Z = 15
S = {(1-3-1), (2-5-4-2)}
Status: Tidak Layak
X
13
= 0 X
31
= 0
Z = 17
S = {(1-4-3-1), (2-5)}
Status: Tidak Layak
Z = 16
S = {(1-3-4-2-5-1)}
Status: Layak
4
2
5
3
1
6
4
5
1
3
2
2
2
4