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 Vogel’s
- Memahami konsep metoda transportasi dan
penerapannya
- Memahami konsep soluso optimal
permasalahan transportasi
- Memahami metoda Vogel’s 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 (naïve 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+x2≤40
3x1+4x2≤120
x1≤15
x1,x2≥0

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+x2≥4
x1-x2≥0
x1,x2 ≥0




SOAL 2
z= 5x1+3x2+x3
-x1+x2+x3≥2
2x1+x2-x3≥4
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 Vogel’s

TUJUAN PEMBELAJARAN
1. Memahami konsep metode transportasi dan penerapannya
2. Memahami konsep solusi optimal permasalahan transportasi
3. Memahami metoda Vogel’s 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
• Vogel’s 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

Vogel’s 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 3÷u
u
2
= 3
10 8 5 4
7
2÷u 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 1÷u
u
2
= 3
10 8 5 4
7
4÷u 3+u
u
3
= 5
7 6 6 8
5
2÷u 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

Satuan Acara Pengajaran: Mata Kuliah Kode Mata Kuliah
Minggu Ke(1)

: Penelitian Operasional 1 : IE 2313
Sub Pokok Bahasan (3)  Masalah Optimasi  Permasalahan Deterministik  Formulasi Model Programa Linear    Tujuan Instruksional Khusus (4) Memahami definisi dan lingkup penelitian operasional dalam penyelesaian suatu masalah Memahami konsep model matematis yang digunakan dalam perumusan programa linear Memahami konsep fungsi tujuan, variable keputusan dan pembatas Mampu merumuskan permasalahan nyata ke dalam model matematis program linear Memahami bentuk pertidaksamaan dan standar Memahami penyelesaian masalah programa linear dengan metoda grafis Memahami permasalahan optimal, khusus, dan unik Memahami konsep matriks basis dan invers Memahami konsep pembentukan matriks solusi layak dari sebuah permasalahan programa linear

Semester SKS
Kegiatan (5) Kuliah tatap muka Evaluasi (6)

:3 :3
Acuan (7) Bazaraa, Lieberman, Bronson

Pokok Bahasan (2)

1

Pendahuluan

Diskusi

2

Perumusan Model Programa Linear

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

 Kuliah tatap muka  Tugas

Diskusi

Bazaraa, Lieberman, Bronson

3

Solusi Grafis

 Solusi Optimal  Solusi Khusus

  

 Kuliah tatap muka  Tugas  Kuliah tatap muka  Tugas

Diskusi

Bazaraa

4

Basic Feasible Solution

 Vektor dan Matriks Basis  Matriks Inverse

Diskusi

Bazaraa

Minggu Ke(1)

Pokok Bahasan (2) Dasar Tabel Simplex

Sub Pokok Bahasan (3)   Dasar Tabel Simplex  Solusi Unik dan Alternatif  Starting Solution  Convergence  Permasalahan Khusus  Metoda 2 Fasa & Big M

Tujuan Instruksional Khusus (4) Memahami konsep pemecahan programa linear dengan metoda simplex Memahami solusi-solusi unik dan solusi alternatif Menguasai konsep tabel simplex Memahami solusi-solusi dalam tabel simplex Memahami permasalahan dengan variable dan pembatas khusus Menguasai metoda 2 Fasa dan Big M

Kegiatan (5) Kuliah tatap muka Kuliah tatap muka Kuliah tatap muka

Evaluasi (6) Diskusi & Latihan Soal Diskusi

Acuan (7) Bazaraa, Lieberman

5

    

6

Tabel Simplex

Bazaraa

7

Tabel Simplex Ujian Tengah Semester

Diskusi

Bazaraa

8

9

Primal-Dual

 Hubungan Primal-Dual  Solusi Grafis  Dual Simplex

10

Primal-Dual

 Analisis Sensitivitas  Konsep Bilangan Bulat  Metoda Cutting Plane

11

Integer Programming

 Memahami perbedaan bentuk primal dan dual  Memahami hubungan antara persamaan primal dan dual  Memahami cara pemecahan permasalahan dual dengan menggunakan metoda dual simplex  Memahami solusi optimal dengan perubahan pada fungsi tujuan, variabel keputusan, pembatas, vector dan RHS  Memahami permasalahan dan solusi variable integer  Memahami metoda cutting plane

Kuliah tatap muka

Diskusi

Bazaraa

Kuliah tatap muka Kuliah tatap muka

Latihan Soal

Bazaraa

Diskusi

Bazaraa

Minggu Ke(1)

Pokok Bahasan (2)

Sub Pokok Bahasan (3)

Tujuan Instruksional Khusus (4)
 Memahami konsep metoda transportasi dan penerapannya  Memahami konsep soluso optimal permasalahan transportasi  Memahami metoda Vogel’s untuk pencarian solusi optimal  Memahami konsep assignment dan penerapannya  Memahami metoda pencarian solusi optimal  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 

Kegiatan (5)

Evaluasi (6)
Diskusi & Latihan Soal

Acuan (7)

12

Metoda Transportasi

 Northe West Corner  Metoda Vogel’s

Kuliah tatap muka

Bazara

13

Assigment

 Metoda Penugasan

Kuliah tatap muka

Diskusi

Bronson

14

  Analisis Jaringan  

Lintasan Terpendek Spanning Tree Maximum Flow TSP

Kuliah tatap muka

Diskusi, Latihan Soal

Lieberman, Bronson

15 16 Ujian Akhir Semester

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

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

Revolusi industri mengakibatkan terjadinya pertumbuhan ukuran dan kompleksitas organisasi.I. POKOK PEMBAHASAN • • • Masalah Optimisasi Deterministik Formulasi Model PL PENDAHULUAN TUJUAN PEMBELAJARAN 1. Latar Belakang Sejarah Penelitian Operasional Kemunculan penelitian operasional dimulai semenjak masa revolusi industri. industri yang berkembang melakukan pembagian kerja dan . Karena itu. Paham konsep model matematis perumusan PL RINGKASAN MATERI Kronologi Perkembangan dalam Evolusi Teknik Industri OR berkembang seiring dengan keilmuan teknik industri membentuk industrial & system engineering. Paham definisi & lingkup OR 2.

segmentasi tanggung jawab manajemen dalam organisasi. untuk memprediksikan dan membandingkan hasil-hasil dari berbagai alternatif dari keputusan. industri. Hal ini dikenal dengan penelitian dalam operasi (militer) atau research in (military) operation. dan pertahanan. bisnis. dilakukan usaha-usaha untuk memecahkan masalah yang pada akhirnya dikenal dengan penelitian operasional. mesin. bahan. 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. Penelitian operasional berkembang pesat dipicu oleh perang dunia ke dua. pemerintah) 3. o Tujuan: membantu manajemen untuk menentukan kebijakan dan tindakannya secara ilmiah. Karenanya. 1947) 4. . strategi dan kontrol. dan uang dalam industri. Revolusi komputer  Hardware & Software packages Definisi Penelitian Operasional a. 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. Penerapan Penelitian Operasional pada berbagai jenis organisasi (bisnis. Metoda ilmiah (scientific method) dikembangkan untuk kebutuhan mengalokasikan sumber daya yang langka bagi berbagai operasi dan aktivitas militer secara efektif. pemerintahan. Industrial boom  Peningkatan ukuran dan kompleksitas organisasi 2. Faktor-faktor kunci tumbuhnya Penelitian Operasional (tahun 1950-an) 1. Namun. o Pendekatan: mengembangkan model-model ilmiah dari sistem yang mencakup pengukuran atas faktor-faktor antara lain peluang dan resiko. Kemajuan teknik-teknik dalam Penelitian Operasional  Metode Simpleks (Dantzig.

Shortest Path Problem Tentukan rute dari titik asal (S) ke titik tujuan (T) yang mempunyai jarak terpendek ! . yang biasanya dalam kondisi yang membutuhkan pengalokasian sumberdaya yang terbatas. Metodologinya adalah dengan menggunakan model. Sebagaian besar berkaitan dengan masalah pengalokasian sumber daya. Contoh Kasus Penelitian Operasional 1. The Operations Research Society of America (ORSA) o Penelitian operasional berkaitan dengan penentuan secara ilmiah bagaimana merancang dan mengoperasikan sistem manusia-mesin yang terbaik. Kata Kunci Definisi Penelitian Operasional     Bertujuan untuk membantu pengambil keputusan yang berkaitan dengan masalah yang kompleks (sebagai alat bantu dalam pengambilan keputusan). Aplikasinya sangat luas. 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.b.

b. Traveling Salesman Problem. Tujuannya adalah menentukan rute dengan jarak total yang paling minimum. 3. dan dia harus mulai dari dan kembali ke kota asal. Rantai Markov • Berapa probabilitas (dalam jangka panjang) bahwa suatu kesebelasan akan menang? . Maximal Flow Problem Tentukan aliran maksimum yang dapat dikirim dari titik asal (1) ke titik tujuan (7) ! c. TSP Seorang salesman harus menunjungi semua kota dimana tiap kota hanya dikunjungi sekali.

tentukan waktu (minggu) rata-rata tim tersebut kembali menang! 4. Pohon Keputusan Alternatif Alternatif Keputusan Alternatif Alternatif .• Jika saat ini tim menang. Teori Antrian • • Panjang antrian rata-rata antrian? Waktu rata-rata pelanggan dalam sistem? Berapa jumlah pelayan agar biaya total adalah minimum? 5.

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.3 million Citgo Petroleum Proctor and Gamble Optimize refinery operations and the supply. tidak saja diperlukan ahli Penelitian Operasional namun dari bidang yang lain. distribution. Nonlinear Programming. Simulation Linear Programming. Annual Savings $20 million + $250 million less inventory $100 million Delta Airlines Yellow Freight System 1994 Integer Programming 1992 Network Models. Forecasting. Beberapa penerapan Penelitian Operasional Organization IBM Nature of application Integrate a national wide of spareparts inventories to improve service support Maximize the profit from assigning airplane to over 2500 domestic flights Optimize the design of a national trucking network and the routing of shipments Year 1990 Related techniques Inventory Simulation Theory. Network Models. Forecasting Transportation and Assignment Problems $17.Seni dan Penelitian Operasional  Unsur manusia penting dalam setiap pengambilan keputusan. and marketing of products Redesign the North American production and distribution system to reduce costs and improve speed to market 1987 $70 million 1997 $200 million . Aspek ilmu terletak pada penyediaan teknik-teknik matematis dan algoritma untuk memecahkan masalah keputusan yang tepat. o Contoh: kasus elevator    Penelitian operasional memiliki aspek ilmu dan seni.

5 4 3 7 5 8.Rangking Penerapan Teknik Penelitian Operasional Turban (1969) Bayesian Decision Analysis Delphi Dynamic Programming Financial Methods Game Theory Heuristic Programming Integer and Mixed Programming Inventory Theory Linear Programming Network Models Nonlinear Programming PERT/CPM Risk Analysis Queuing Theory Simulation Statistical Analysis 6 8.5 10 12 6 Forgionne (1982) 5 2 6 4 9 10 8 .5 10 13.5 8 12 5 3 7 4 11 6 2 1 Forgionne (1982) 7 8 4 6 3 5 2 1 Thomas and Dacosta (1977) Accounting Advertising and Sales Research Capital Budgeting Equipment Replacement Forecasting – Market Planning Inventory Control Maintenance Packaging Personnel Management Plant Location 11 8 4 9 1 2.5 2 1 Ledbetter and Cox (1975) 6 7 2 4 5 3 1 Thomas and DaCosta (1977) 9 13.

5 7 5 Forgionne (1982) 3 1 7 - Modeling Process Elemen Utama Penelitian Operasional a. Model kuantitatif Komponen utama model OR: .Thomas and Dacosta (1977) Production Planning and Scheduling Project Planning Quality Control Transportation 2.

 Sifat proporsional dipenuhi jika kontribusi setiap variabel pada fungsi tujuan atau penggunaan sumber daya yang membatasi proporsional terhadap level nilai variabel. militer.Model kuantitatif terdiri dari: b. PL berkaitan dengan penjelasan suatu kasus dalam dunia nyata sebagai suatu model matematik yang terdiri dari sebuah fungsi tujuan linier dengan beberapa kendala linier. industri. PL banyak diterapkan dalam masalah ekonomi. kita dapat memeriksa kelinearan menggunakan grafik (diagram pencar) ataupun menggunakan uji hipotesa. Jika harga per unit produk misalnya adalah sama berapapun . social dan lain-lain. Karakteristik Pemrograman Linier:  Sifat linearitas suatu kasus dapat ditentukan dengan menggunakan beberapa cara. Solusi Ada dua macam:   Exact Technique Heuristic Technique Pengenalan Programa Linear Pemrograman Linier disingkat PL merupakan metode matematik dalam mengalokasikan sumber daya yang terbatas untuk mencapai suatu tujuan seperti memaksimumkan keuntungan dan meminimumkan biaya. additivitas. Secara statistik. divisibilitas dan kepastian fungsi tujuan dan pembatas. Secara teknis. linearitas ditunjukkan oleh adanya sifat proporsionalitas.

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

Memahami konsep fungsi tujuan.II. POKOK PEMBAHASAN • • PERUMUSAN MODEL PROGRAMA LINEAR Model Matematis Programa Linear Fungsi Tujuan. variable keputusan dan pembatas 2. Mampu merumuskan permasalahan nyata ke dalam model matematis program linear 3. Istilah lain: model pemrograman matematik (mathematical programming model) Perlu diingat. Memahami bentuk pertidaksamaan dan standar RINGKASAN MATERI Model Optimisasi Matematik (Mathematical Optimization Model)    Model Optimisasi Matematik adalah model matematik yang merepresentasikan masalah optimisasi. masalah optimasi adalah masalah yang terkait dengan penentuan keputusan yang memberikan ukuran performansi terbaik dari sekumpulan alternatif keputusan yang ada  Klasifikasi: . Jenis Variabel Keputusan dan Pembatas TUJUAN PEMBELAJARAN 1.

  Pada tahap awal. sosial dan lain-lain. kita dapat memeriksa kelinearan menggunakan grafik (diagram pencar) ataupun menggunakan uji hipotesis. Merupakan metode matematik dalam mengalokasikan sumber daya yang langka untuk mencapai suatu tujuan seperti memaksimumkan keuntungan dan meminimumkan biaya. Dapat diterapkan dalam masalah-masalah sektor pemerintah dan swasta.  Posisi Linear Programming dalam Klasifikasi Model Optimisasi Matematik: 1. Sifat linearitas. industri. dan perbekalan. divisibilitas dan kepastian fungsi tujuan dan pembatas.  Merupakan salah satu teknik OR yang digunakan paling luas dan diketahui dengan baik. LP disadari sebagai pendekatan penyelesaian masalah yang sangat ampuh untuk analisis keputusan dalam bidang bisnis. suatu kasus dapat ditentukan dengan menggunakan beberapa cara:   Secara statistik. additivitas. Secara teknis. linearitas ditunjukkan oleh adanya sifat proporsionalitas. militer. LP berkaitan dengan penjelasan suatu dunia nyata sebagai suatu model matematik yang terdiri dari sebuah fungsi tujuan linier dan beberapa kendala linier. Hasilnya. penerapan-penerapan LP banyak dijumpai pada masalahmasalah militer seperti logistik. .  Diterapkan dalam masalah ekonomi. transportasi.

  Mengidentifikasi semua pembatas (constraint) dan menyatakannya dengan persamaan atau pertidaksamaan linier sebagai fungsi dari variabel keputusan. Langkah-Langkah Membangun Model LP 1. semua parameter dari model adalah diketahui dan deterministik. berarti unit aktivitas dapat dibagi ke dalam sembarang level fraksional. 5. Sifat proporsional. 4. b. 3. Pembentukan model matematik Mengidentifikasikan variabel yang tak diketahui yang akan ditentukan nilainya (decision variable) dan menyatakannya dengan simbol-simbol matematis. 2. Sifat kepastian.  pernyataan tujuan sumber daya yang membatasi alternatif keputusan yang mungkin hubungan antara bagian dan lain-lain. c. d. mengasumsikan bahwa kontribusi sebuah variabel keputusan terhadap fungsi tujuan dan fungsi pembatas adalah independent dengan variabel yang lainnya. dipenuhi jika kontribusi tiap variabel terhadap fungsi tujuan dan fungsi pembatas adalah proporsional terhadap nilai dari variabel tersebut.2. Kelima asumsi (sifat) ini dalam dunia nyata tidak selalu dapat dipenuhi. . e. Mengidentifikasi tujuan atau kriteria dan menyatakannya sebagai suatu fungsi linier dari variabel keputusan yang hendak dimaksimumkan atau diminimumkan (fungsi tujuan). sehingga nilai variabel keputusan non integer dimungkinkan. Sifat additivitas. dalam linear programming diperlukan analisis sensitivitas terhadap solusi optimal yang diperoleh. Formulasi Permasalahan   Mempelajari sistem relevan Mengembangkan pernyataan permasalahan: a. Sifat divisibilitas. Untuk meyakinkan dipenuhinya kelima asumsi ini.

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

pembatas berbetuk pertidaksamaan ≤. variabel keputusan non-negatif o Untuk persoalan maksimasi.– Pada kasus minimasi adalah sebuah titik di area feasible yang memiliki nilai fungsi tujuan terkecil. Proses yang dikerjakan hanya merakit meja dan kursi. Perakitan dilakukan oleh 4 orang karyawan dengan waktu kerja 8 jam perhari. Dibutuhkan waktu 2 jam untuk merakit 1 unit meja dan 30 menit untuk merakit 1 unit kursi. pembatas berbentuk pertidaksamaan ≥. Pelanggan pada umumnya membeli . variabel keputusan non-negatif o Berguna dalam membahas hubungan dualitas Contoh Kasus Seorang pengrajin menghasilkan satu tipe meja dan satu tipe kursi. Format Standard & Kanonik  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.

5 x2 ≤ 32 4x1≥ x2 atau 4x1 – x2 ≥ 0 x1 . Oleh karena itu pengrajin harus memproduksi kursi paling banyak empat kali jumlah meja. keputusan & batasan sumber daya adalah sebagai berikut:    Tujuan yang ingin dicapai adalah memaksimumkan pendapatan. Definisikan: x1 = jumlah meja yang akan diproduksi x2 = jumlah kursi yang akan diproduksi Model umum Linear Programming kasus di atas adalah : Fungsi tujuan: Maksimumkan z = 1. Alternatif keputusan adalah jumlah meja dan kursi yang akan diproduksi. Formulasikan kasus tersebut ke dalam model matematiknya ! Solusi: Berdasarkan informasi yang diberikan pada soal.2 x1 + 0. identifikasi tujuan. Sumber daya yang membatasi adalah waktu kerja karyawan dan perbandingan jumlah kursi dan meja yang harus diproduksi (pangsa pasar).2 juta dan per unit kursi adalah Rp 500 ribu. x2 ≥ 0 . alternatif.paling banyak 4 kursi untuk 1 meja. Harga jual per unit meja adalah Rp 1.5 x2 Kendala: 2x1 + 0.

Pakan tersebut disiapkan menggunakan campuran jagung dan bungkil kedelai dengan komposisi sebagai berikut : Kebutuhan pakan kambing setiap harinya adalah paling banyak 1% kalsium.EVALUASI 1. Formulasikan masalah di atas ke dalam bentuk model matematiknya ! . Jumlah pinjaman pembelian mobil paling tidak dua kali lipat dibandingkan pinjaman pribadi. Suatu bank kecil mengalokasikan dana maksimum Rp 180 juta untuk pinjaman pribadi dan pembelian mobil satu bulan ke depan. Formulasikan permasalahan di atas ke dalam model matematiknya ! 2. Bank mengenakan biaya suku bunga per tahun 14% untuk pinjaman pribadi dan 12% untuk pinjaman pembelian mobil. paling sedikit 30% protein dan paling banyak 5% serat. Kedua tipe pinjaman itu dikembalikan bersama dengan bunganya satu tahun kemudian. Pengalaman sebelumnya menunjukkan bahwa 1% pinjaman pribadi merupakan kredit macet. Seorang peternak memiliki 200 kambing yang mengkonsumsi 90 kg pakan khusus setiap harinya.

Memahami penyelesaian masalah programa linear dengan metoda grafis 2. POKOK PEMBAHASAN • • Solusi Optimal Solusi Khusus SOLUSI GRAFIS TUJUAN PEMBELAJARAN 1. interior dan eksterior. yaitu bahan A dan B. Memahami permasalahan optimal. Ketersediaan bahan maksimum per hari adalah 6 ton untuk A dan 8 ton untuk B.III. 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) Eksterior Bahan mentah A Bahan mentah B 1 2 Interior 2 1 Ketersediaan maksimum per hari (ton) 6 8 . dan unik RINGKASAN MATERI Solusi Optimal CONTOH KASUS A     PT CAT merupakan perusahaan kecil pembuat cat yang memproduksi dua jenis cat. khusus. Terdapat dua jenis bahan yang digunakan.

Berapa banyak cat interior dan eksterior yang harus diproduksi per hari agar diperoleh pendapatan yang maksimum? SOLUSI CONTOH KASUS A Memodelkan masalah Variabel keputusan: x1 = jumlah cat eksterior yang diproduksi per hari x2 = jumlah cat interior yang diproduksi per hari Pembatas: 1. x2 ≥ 0 Fungsi Tujuan: Memaksimumkan pendapatan total Z = 3x1 + 2x2 Sehingga. o Permintaan maksimum cat interior adalah 2 ton per hari.   Harga jual produk cat adalah $3 untuk cat eksterior dan $2 untuk cat interior. Pembatas tak negatif x1 ≥ 0. Ketersediaan bahan Bahan A : x1 + 2x2  6 Bahan B : 2x1 + x2  8 2. akan didapatkan : Memaksimumkan Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2  6 2x1 + x2  8 – x1 + x2  1 x2  2 x1 ≥ 0 dan x2 ≥ 0 : x2 – x1 1 : x2  2 . Penelitian pasar menunjukkan bahwa o Jumlah permintaan cat interior dikurangi dengan jumlah permintaan cat eksterior tidak lebih dari satu ton. Permintaan Selisih permintaan Permintaan cat interior 3.

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 = 3x1+ 2x2 .

yaitu Aqua & Hydro. Bagaimana strategi produksi terbaik yang dapat dilakukan oleh PT. MOKLET memproduksi 2 jenis pipa. Gunakan metode grafik untuk menyelesaikan masalah tersebut! SOLUSI CONTOH KASUS B Maksimisasi 350 X1 + 300 X2 S. MOKLET? 2. 1566 jam kerja.CONTOH KASUS B PT. dan 2880 persediaan pipa. dengan rincian sumber daya sebagai berikut: AQUA Pompa Jam Kerja Pipa Laba/unit 1 9 jam 12 meter $350 HYDRO 1 6 jam 16 meter $300 Terdapat 200 pompa. 1.T. : X1 + X2 ≤ 200 – 9 X1 + 6 X2 ≤ 1566 – 12 X1 + 16 X2 ≤ 2880 – X1 ≥ 0 dan X2 ≥ 0 .

2.Solusi Khusus Jenis-jenis Solusi : 1. Terdapat satu solusi optimal/unique seperti pada kasus-kasus yang dibahas sebelumnya. Solusi optimal alternatif Fungsi Tujuan : Maks Z  x1  2 x2 Pembatas : x1  2 x2  10 x1  x2  1 x2  4 x1  0 x2  0 . Solusi optimal unbounded/tak berbatas. 4. Solusi optimal infinite / alternatif/ multiple. 3. Tidak terdapat solusi yang layak.

Solusi tak terbatas Fungsi Tujuan : Maks Z  x1  2 x2 Pembatas : x1  x2  1 x2  4 x1  0 x2  0 .

Solusi tak layak Fungsi Tujuan : Maks Z  x1  2 x2 Pembatas : x1  x2  1 x1  2 x2  10 x1  0 x2  0 Keunggulan & Kelemahan Pemecahan masalah LP dengan metode grafis Keuntungan – Mudah Keterbatasan – Hanya cocok untuk masalah LP dengan dua variabel keputusan. Analisis Sensitivitas Perubahan Dalam Sumber Masalah sensitivitas 1 – Berapa banyak suatu sumber dapat ditingkatkan untuk memperbaiki nilai optimum dari fungsi tujuan Z? . – Sensitif terhadap tingkat ketelitian.

– 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): .

2/3 Perubahan maksimum dalam fungsi tujuan (dalam ribuan) 13 – 122/3 = 1/3 18 – 122/3 = 51/3 122/3 – 122/3 = 0 122/3 – 122/3 = 0 Shadow price 1 4 Langka Langka Berlimpah Berlimpah /3 /3 0 0 .Penurunan Pembatas (4): Sumber Yang Diprioritaskan Untuk Ditingkatkan : Masalah sensitivitas – Sumberdaya mana yang perlu ditingkatkan? yi  max Z i max bi maxZi = perubahan maksimum dalam nilai Z akibat peningkatan pembatas i  max bi = perubahan maksimum dari sumber/pembatas I = shadow price pembatas i yi Shadow price Sumber daya 1 2 3 4 Jenis Perubahan maksimum dalam sumber 7–6=1 12 – 8 = 4 – 2 – 1 = –3 11/3 – 2 = .

– Berapa besar koefisien fungsi tujuan dapat diubah untuk merubah status sumber dari berlimpah ke langka. . 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. Sumber (2) (bahan B) seharusnya mendapatkan prioritas dalam pengalokasian dana. dan sebaliknya. Perubahan Koefisien Fungsi Tujuan • • • Perubahan dalam koefisien fungsi tujuan akan memengaruhi slope dari garis lurus yang merepresentasikannya.Interpretasi: 1. Sumber (3) dan (4) tidak perlu ditingkatkan. 2.

Rentang c1 untuk mempertahankan solusi optimal pada titik C Minimum dari c1  slope Z = slope pembatas (1) c1 1   c1  1 2 2 Minimum dari c1  slope Z = slope pembatas (2) c1 2   c1  4 2 1 .

Setiap mesin dapat digunakan selama 8 jam per hari. Untuk produk B. Satu unit produk A membutuhkan proses selama 2 jam di mesin 1 dan 1 jam di mesin 2. Tentukan range dari nilai shadow price untuk mesin 1 dan 2 . Tentukan nilai shadow price untuk mesin 1 dan 2 3. Tentukan solusi optimum dengan metode grafis 2. Keuntungan per unit produk A dan B adalah $30 dan $20. satu unit membutuhkan proses 1 jam di mesin 1 dan 3 jam di mesin 2. 1.Rentang c1 agar titik C tetap sebagai titik optimal: 1  c1  4 Rentang c2 untuk mempertahankan solusi optimal pada titik C Minimum dari c2  slope Z = slope pembatas (2) 3 2   c2  3 2 c2 1 Minimum dari c1  slope Z = slope pembatas (1) 3 1   c2  6 c2 2 Rentang c2 agar titik C tetap sebagai titik optimal: 3 c 6 2 2 EVALUASI Soal: Suatu perusahaan memproduksi dua jenis produk.

POKOK PEMBAHASAN • • Vektor dan Matriks Basis Matriks Inverse BASIC FEASIBLE SOLUTION TUJUAN PEMBELAJARAN 1.IV. Memahami konsep matriks basis dan invers 2. Memahami konsep pembentukan matriks solusi layak dari sebuah permasalahan programa linear RINGKASAN MATERI Bentuk Standard Linear Programming 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 .

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)  a11 a A   21    am1 a12 a22 am 2  a1n   a2 n       amn   x1  x  x   2     xn   b1  b  b 2    bm  c  c1 c2  cn  .

maka variabel yang tak dibatasi tanda diganti dengan selisih dua variabel tak negative • Contoh: x1 + x5 = 50 x1 ≥ 0 x5 tak dibatasi tanda/ unrestricted  . Variabel baru tersebut disebut slack variable Contoh: Variabel yang tak dibatasi tanda • • Dalam LP. – 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. adakalanya terdapat nilai variabel yang tak dibatasi tanda (positif atau negatif) Karena bentuk standar LP memerlukan semua variabel adalah tak negatif. • • • Ini dilakukan dengan penambahan variabel baru untuk menunjukkan slack antara ruas kiri dan kanan pada tiap pertidaksamaan. Tidak semua masalah LP dalam bentuk standar – Pembatas pertidaksamaan (inequality constraint).Reduksi ke bentuk standar • • Metode simpleks untuk memecahkan masalah LP memerlukan setiap masalah dinyatakan dalam bentuk standar.

Daerah layak (feasible region). 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). Secara matematis. Secara matematis. 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. . Jika suatu masalah LP tidak mempunyai optimum tertentu (finite optimum). Z  +. maka LP dikatakan mempunyai solusi yang tak terbatas (unbounded solution) Pemecahan Sistem Persamaan Linier • Permasalahan mendapatkan matematis solusi dari utama suatu dalam sistem pemrograman persamaaan linier linier adalah yang memaksimumkan atau meminimumkan suatu fungsi tujuan linier. x7 ≥ 0 Definisi Dasar Basis Feasible Solution • • Suatu solusi layak (feasible solution) adalah suatu vektor tak negatif x yang memenuhi persamaan Ax = b.x5 = x6 – x7  x1 + x6 – x7 = 50 x1 ≥ 0. Solusi optimal dari masalah LP dikatakan unik (unique optimum) jika hanya terdapat tepat satu solusi optimal. x6 ≥ 0. S = {x | Ax = b. dinyatakan dengan S. adalah himpunan dari semua solusi layak yang mungkin.  x  S Nilai optimal (optimal value) dari masalah LP adalah nilai fungsi tujuan yang berkaitan dengan solusi optimal. yaitu maks. x* adalah optimal  x*  S dan cx* ≥ cx.

o Menambahkan ke sebarang persamaan dengan suatu konstanta pengali (positif. S2 dan S3 adalah ekivalen. maka sistem mempunyai lebih dari satu solusi. Contoh. • Contoh: • Sistem S1. 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. yaitu solusi bagi satu sistem secara otomatis memberikan solusi bagi sistem yang lain.• Sistem persamaan linier dapat diselesaikan dengan menggunakan prosedur klasik Gauss-Jordan elimination. sistem dengan dua persamaan dengan lima variabel yang tak diketahui: • • • Karena terdapat lebih banyak jumlah variabel yang tak diketahui daripada persamaan. • • 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. negatif atau nol) ke sebarang persamaan yang lain. .

salah satu titik pojok (corner point) dari daerah layak adalah solusi optimal. dan nol pada persamaan yang lain. Dengan m pembatas dan n variabel. x2 = 2. 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. Variabel basis (basic variable) o Variabel xi dikatakan sebagai variabel basis jika dalam suatu persamaan ia muncul dengan koefisien satu pada persamaan tersebut. setiap solusi basis layak adalah solusi basis. Sistem S3 disebut sistem kanonik (canonical system). maka jumlah maksimum solusi basis layak adalah juga terbatas dengan hubungan ini. Ini berarti bahwa suatu solusi optimal dari model LP dapat diperoleh hanya dengan memeriksa solusi basis layaknya.• • • • Untuk sistem S3. x4 = x5 = x6 = 0 akan memberikan x1 = 6. • • Variabel non basis (nonbasic variable) o Variabel yang bukan variabel basis. Dari kesimpulan dengan metode grafis: o Jika terdapat suatu solusi optimal dari model LP. jumlah maksimum dari solusi basis bagi LP dalam bentuk standar adalah terbatas dan diberikan oleh n n!    m  m!n  m !   • • Per definisi. • • Solusi basis layak (basic feasible solution) o Solusi basis dimana nilai variabel basisnya adalah tak negatif. • • Dengan mudah dapat ditunjukkan bahwa setiap titik pojok dari daerah layak berkaitan dengan suatu solusi basis layak dari persamaan pembatas. Variabel x1 dan x2 dari sistem kanonik disebut variabel basis (basic variable).

maka solusinya adalah  XB  x  X N  dengan XB  B b 1 • • • • • • XN  0 Jika xB ≥ 0. pemecahan lebih efisien karena hanya memeriksa sebagian solusi basis layak. • Dengan metode simpleks (simplex method).• Pendekatan naif (naïve 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. x4 ≥ 0 . x3 . B = basic matrix (basis) N = nonbasic matrix Komponen xB disebut variabel basis/ variabel dependent Komponen xN disebut variabel nonbasis/ variabel independent Fungsi pembatas sebagai berikut: x1 + x2 ≤ 6 x2 ≤ 3 x1 . BASIC FEASIBLE SOLUTION • Jika fungsi pembatas adalah Ax = B. maka x disebut BASIC FEASIBLE SOLUTION dari sistem dan tersebut. x2 ≥ 0 • Bentuk standard: x1 + x2 + x3 x2 =6 + x4 = 3 x1 . x2 .

a2. 3. dan 5 merupakan basic feasible solution.• Matriks Pembatas A = [a1. Poin 4 merupakan solusi basis yang tidak feasible . 2. a3. a4] 1 1 1 0  A  0 1 0 1 • Basis yang mungkin • • Poin 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.A-1 = A-1. maka A disebut matrik tunggal (singular) Invers matrik 2 x 2 a b  A dapat di invers jika ad . Demikian juga halnya dengan matrik A. maka hasilnya adalah 1.A = I  2 -5 3 5 A A-1     -1 3  1 2  Maka : 1 0  AA -1  A -1A   0 1   Jika tidak ditemukan matrik A-1. Misalkan 5. maka matrik A non-inverti 1. .MENCARI INVERSE MATRIKS Suatu bilangan jika dikalikan dengan kebalikannya.5-1 atau 5-1.5 = 1.bc  0 c d   Maka . A-1 diperoleh dengan rumus : Jika ad – bc = 0.

 Perkalian matrik dengan matrik inversnya menghasilkan matrik identitas  Dilakukan penyelesaian persamaan melalui eliminasi ataupun substitusi sehingga diperoleh nilai elemen-elemen matrik invers. Mencari invers dengan OBE (Operasi Baris Elementer) Langkah-langkah :  Dilakukan OBE pada hingga operasi berikut: diperoleh dengan memperhatikan definisi b ij  menukar baris ke i dengan baris ke j b i (p)  mengalikan baris ke i dengan p  0 b ij (p)  b i  pb j  ganti baris ke i dengan baris baru yang merupakan baris ke i ditambah dengan baris ke j yang dikalikan dengan p. maka EA = matrik baru yang terjadi bila OBE tersebut dilakukan pada matrik A. E = matrik elementer. Matriks Elementer: (E) Matriks A(nxn) disebut elementer bila dengan sekali melakukan Operasi Baris Elementer (OBE) terhadap matriks identitas In. 2. .

Dengan demikian : . matrik A dapat dituliskan sebagai hasil kali dari matrik elementer. Kita memiliki E4E3E2E1A = I dengan : Matrik elementer ini menyatakan operasi baris elementer untuk membentuk matrik A menjadi matrik identitas. Dengan demikian.Notasi sebagai berikut : Tunjukkan bahwa matrik adalah perkalian matrik elementer ! Dari penyelesaian dengan OBE yang menghasilkan matrik identitas. maka matrik A adalah matrik invertible.

 Matrik invers diperoleh dengan mengkalikan matrik adjoint dengan seperdeterminan 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 : .3. Mencari Invers dengan Matrik Adjoint A -1  1 adj(A) A Langkah-langkah :  Hitung  Cari matrik adjoint dengan terlebih dahulu menentukan matrik kofaktor.  Matrik adjoint merupakan matrik transpose dari matrik kofaktor.

Kesimpulan : Contoh soal: .Sehingga diperoleh matrik kofaktor A : Matrik adjoint merupakan matrik transpose dari matrik kofaktor.

.

Invers matrik 3 x 3 Sama seperti mencari invers matrik 2 x 2. a b c  A  d e f    g h i    . hanya diperlukan ketelitian yang lebih dibandingkan mencari invers matrik 2 x 2.

Contoh soal 1: Jawab: .

Cara:  C11  adj(A) =  C12 C  13 C21 C22 C23 C31    5 4  4    C32  =  1  2 0  1 0 2 C33     |A| = a11C11 + a12C12 + a13C13 = (2)(-5) + (4)(1) + (4)(1) =-2  1  adj ( A) A-1 = =   1 2 0  2 1 0 2 | A|   5 4  4  5 2 2   2  =  1 1 0  2   1 0  1  2  Contoh soal 2: 2 4 4 Carilah invers dari B =  1 3 2  dengan melakukan OBE !    1  2  3   Jawab : 2 (B | I) =   4 4 1 3 2  1  2  3  1 0 0  B13 0 1 0 ~ 0 0 1  0 0 1  B21(1)  0 1 0 ~ B31(2) 1 0 0   1  2  3  1 3 2 2 4 4   1  2  3   0 1 1  0 0 2  0 0 1  B1(-1)  0 1 1 ~ B 1 0 2  3(-1/2)  .

maka matrik A tidak punya invers (non-invertibel) . 1  2  3   0 1 1  0 0 2  1 2 3   0 1 1 0 0 1  0 0 1  B1(-1)  0 1 1 ~ B 1 0 2  3(-1/2)  0 0  1 B13(-3)  0 1 1 ~  12 0  1 B23(1)  3 2 1 2 0  0 1 0 0 0 1   12  12 0 2  B12(-2)  1 0 ~ 0  1  1 0 0  0 1 0 0 0 1  = (I | B-1) 2 2    12 1 0   12 0  1  5 2  5 2 2   21  Jadi B-1 =   2 1 0    1 0  1  2  Contoh Soal 3: Cari matrik invers dari Jawab: A I  OBE I A  -1 B21(-2) B31(1) B32(1) Karena elemen baris ke 3 pada matrik kiri semua nol.

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

 Memerlukan kondisi dengan semua pembatas dinyatakan dalam bentuk sistem kanonik dimana suatu solusi basis layak dapat langsung diperoleh. .V. 3. POKOK PEMBAHASAN • • Dasar Tabel Simplex Solusi Unik dan Alternatif DASAR TABEL SIMPLEX TUJUAN PEMBELAJARAN 1. Memahami solusi-solusi unik dan solusi alternatif RINGKASAN MATERI Pendahuluan Metode Simplex  Dikembangkan oleh G. Memahami konsep pemecahan programa linear dengan metoda simplex 2. Semua variabel non negatif.B. 2. Ciri-ciri dari bentuk baku model LP adalah : 1. Fungsi tujuan dari maksimum maupun minimum.  Merupakan prosedur iteratif untuk memecahkan masalah LP dengan mengekspresikannya dalam bentuk standar. Dantzig. Semua kendala berupa persamaan dengan sisi kanan non negatif.

x4 ≥ 0. x2 ≥ 0 Bentuk Standard: Memaksimumkan Z = 3x1+2x2 +0x3+0x4+0x5+0x6 dengan pembatas-pembatas: x1 + 2x2 + x3 2x1 + x2 – x1 + x2 x2 + x4 + x5 =6 =8 =1 + x6 = 2 x1 ≥ 0. x3 ≥ 0. x2 ≥ 0. x5 ≥ 0.LANGKAH UMUM Mulai dengan suatu solusi layak basis Perbaiki solusi awal jika mungkin Cari solusi layak basis yang mempunyai nilai fungsi tujuan lebih baik Cari solusi-solusi layak basis yang dapat memperbaiki nilai fungsi tujuan Berhenti jika suatu solusi layak basis tidak dapat diperbaiki lagi maka solusi layak basis tersebut menjadi solusi optimal Kasus: Memaksimumkan Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2  6 2x1 + x2  8 – x1 + x2  1 x2  2 x1 ≥ 0. x6 ≥ 0 .

x3 = 6. Untuk mendapatkan solusi basis layak tetangga. pilihan yang harus dibuat adalah menentukan variabel non basis mana yang dapat memberikan perbaikan pada nilai Z. Permasalahannya adalah memilih solusi basis dan solusi non basis yang pertukarannya memberikan perbaikan maksimum pada nilai fungsi tujuan. x6 = 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 x1 = x2 = 0.Penetapan Solusi Layak Basis Awal: Variabel basis : x3. Membuat variabel non basis menjadi variabel basis adalah ekivalen dengan menaikkan nilainya dari nol ke positif. x4 = 8. x6 = 2 dengan Z= 0. x4. . Suatu solusi basis layak tetangga (adjacent basic feasible solution) berbeda dengan solusi basis layak (basic feasible solution) saat ini hanya tepat satu variabel basis. Jika solusi solusi belum optimal. metode simpleks mencari suatu solusi basis layak tetangga (adjacent basic feasible solution) dengan nilai Z yang lebih besar. x4 = 8. x5 = 1. metoda simpleks :  Membuat salah satu variabel basis menjadi variabel non basis. Dalam solusi basis layak :  Variabel basis dapat mempunyai nilai yang positif. x6 Dengan menetapkan x1 = x2 = 0.  Varibel non basis selalu mempunyai nilai nol. Pemeriksaan dilakukan dengan pertama-tama memeriksa apakah solusi saat ini adalah optimal.  Menjadikan salah satu variabel non basis menjadi variabel basis. metode simpleks memeriksa apakah mungkin untuk mendapatkan solusi basis layak yang lebih baik dengan nilai Z yang lebih besar. Tentu saja. Ini dilakukan dengan menaikkan nilai variabel non basis menjadi satu unit dan memeriksa perubahannya pada nilai fungsi tujuan Z. maka diperoleh solusi basis : x3 = 6. x5 = 1. x5.

x6 akan turun dan nilainya harus tak negatif agar tetap layak. . x6 = 2 x1 = 0. x5 = 0. x3 = 5. x5. Karena Z untuk x1 > Z untuk x2 maka menaikkan x1 lebih baik. x6 = 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 x2 Z = 2 – 0 = 2 Karena Z positif untuk x1 dan x2  nilai fungsi tujuan dapat dinaikkan. x3 = 4. x5 = 2. x2 = 0. x4 = 6. x2 = 1. Sampai seberapa jauh x1 dapat dinaikkan? Jika x1 dinaikkan maka nilai variabel basis : x3. 4.Misalkan variabel non basis x1 dinaikkan 1 unit 1x1 2x1 –x1 0x1 Nilai fungsi tujuan Z = 3(1)+2(0)+0(5)+0(6)+0(2)+0(2)= 3 Perubahan nilai Z per peningkatan satu unit x1 Z = 3 – 0 = 3 Misalkan variabel non basis x2 dinaikkan 1 unit 2x2 + x3 1x2 1x2 1x2 + x4 + x5 =6 =8 =1 + x6 = 2 +x3 + x4 + x5 =6 =8 =1 + x6 = 2 x1 = 1. Batas peningkatan x1: x1 2x1 – x1 0x1 + x3 + x4 + x5 =6 =8 =1 + x6 = 2  x1 = 6  x1 = 4  x1 =   x1 =  Maksimum peningkatan x1 = minimum (6. x4. x4 = 7. ) = 4 .

x5. x2 = 0. maka x4 menjadi variabel non basis x1 = 4. x4 . x6 = 2 dan Z = 12 x1 + 2x2 + x3 2 x1 + x2 – x1 + x2 x2 Sistem kanonik: 3 +x3 + x4 + x5 =6 =8 =1 + x6 = 2 =6 + x4 + x5 =8 =1 + x6 = 2 /2 x2 + x3 3 –1/2 x4 + 1/2 x4 + 1/2 x4 + x5 =2 =4 =5 + x6 = 2 x1 + 1/2x2 /2 x2 x2 Variabel basis : x1. x3 = 2. x4 = 0. x6. x5 = 5.variabel masuk basis x1 dinaikkan 4 unit x1 2x1 –x1 0x1 x1 dinaikkan 4 unit. Variabel non basis: x2. x3.

x3. x6 = 1 Nilai fungsi tujuan Z = 3(7/2)+2(1)+0(1/2)+0(0)+0(7/2)+0(1) = 121/2 Perubahan nilai Z per peningkatan satu unit x2 Z = 121/2 – 12 = 1/2 Misalkan variabel non basis x4 dinaikkan 1 unit x3 x1 – 1/2 x4 + 1/2 x4 + 1/2 x4 + x5 0 x4 7 5 =2 =4 =5 + x6 = 2 x1= /2. Batas peningkatan x2: 3 = 101/2 Perubahan nilai Z per peningkatan satu unit x4 /2 x2 + x3 /2 x2 x2 + x5 + x6 =2 =4  x2 = 4/3  x2 = 8 x1 + 1/2 x2 3 = 5  x2 = 10/3 = 2  x2 = 2 .Memperbaiki Solusi Layak 2: Misalkan variabel non basis x2 dinaikkan 1 unit 3 /2 x2 + x3 /2 x2 x2 + x5 + x6 =2 =4 =5 =2 x1 + 1/2 x2 3 x1= 7/2. x5. x3 = /2. x4 = 0. x2 = 0. x6 = 2 Nilai fungsi tujuan Z = 3(7/2)+2(0)+0(5/2)+0(1)+0(9/2)+0(2) Z = 101/2 – 12 = – 3/2 Karena Z positif untuk x2  nilai fungsi tujuan dapat dinaikkan Karena Z negatif untuk x4  nilai fungsi tujuan tidak dapat dinaikkan Sampai seberapa jauh x2 dapat dinaikkan? Jika x2 dinaikkan maka nilai variabel basis : x1. x6 akan turun dan nilainya harus tak negatif agar tetap layak. x2 = 1. x4 = 1. x3 = 1/2. x5 = 7/2. x5 = 9/2.

x5 = 3. 10/3. x4 . x6. 8. x6 = 2/3 dan Z = 122/3 3 1 /2 x2 + x3 – 1/2 x4 + /2 x4 + 1/2 x4 + x5 1 =2 =4 =5 + x6 = 2 = 4/3 = 10/3 =3 + x6 = 2/3 x1 + /2 x2 3 /2 x2 x2 sistem kanonik: x2 + 2/3 x3 – 1/3 x4 x1 – 1/3 x3 + 2/3 x4 – x3 + x 4 + x5 – 2/3 x3 + 1/3 x4 Variabel basis : x1. x4 = 0. x5. Variabel non basis: x3. x3 = 0.Maksimum peningkatan x2 x2 dinaikkan ke 4/3 = minimum (4/3. x2. 2) = 4/3 maka x3 menjadi variabel non basis x1 = 10/3. x2 = 4/3.

. Untuk masalah maksimasi: – Suatu solusi basis layak adalah optimal jika profit relatif (Z) dari variabel non basis adalah negatif atau nol. x2 = 2/3. x4 = 0. x5 = 4.Memperbaiki Solusi Layak 3: Misalkan variabel non basis x3 dinaikkan 1 unit x2 + 2/3 x3 x1 – 1/3 x3 – x3 + x5 – 2/3 x3 Nilai fungsi tujuan Z = 3(11/3)+2(2/3)+0(1)+0(0)+0(4)+0(4/3) = 121/3 Perubahan nilai Z per peningkatan satu unit x3 Z = 121/3 – 122/3 = – 1/3 Misalkan variabel non basis x4 dinaikkan 1 unit x2 x1 – 1/3 x4 + 2/3 x4 x4 + x5 1 = 4/3 = 10/3 =3 + x6 = 2/3 x1= 11/3. x2 = 5/3. x4 = 1. x5 = 2. x3 = 0. Karena tidak ada variabel non basis yang dapat dinaikkan yang dapat memberikan peningkatan pada nilai fungsi tujuan Z maka solusi saat ini adalah optimal. x3 = 1. x6 = 4/3 = 4/3 = 10/3 =3 + x6 = 2/3 /3x4 x1= 8/3. x6 = 1/3 Nilai fungsi tujuan Z = 3(8/3)+2(5/3)+0(0)+0(1)+0(2)+0(1/3) = 111/3 Perubahan nilai Z per peningkatan satu unit x4 Z = 111/3 – 122/3 = – 4/3 Karena Z negatif untuk x3 dan x4  nilai fungsi tujuan tidak dapat dinaikkan.

x2 ≥ 0.0    0 1    2   . x4 ≥ 0. x5 ≥ 0. Representasi tabel untuk solusi basis layak awal Nilai fungsi tujuan Z  inner product dari vektor cB dan konstanta 6   8 Z  0. x6 ≥ 0. x2 ≥ 0 Bentuk kanonik Memaksimumkan Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2 + x3 2x1 + x2 – x1 + x2 x2 + x4 + x5 =6 =8 =1 + x6 = 2 x1 ≥ 0.0.Metode Simpleks dalam Bentuk Tabular Contoh : Memaksimumkan Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2  6 2x1 + x2  8 – x1 + x2  1 x2  2 x1 ≥ 0. x3 ≥ 0.0.

0    3 1   0   Tabel 1 (awal)  2   1 c2  2  0. .0. Nilai fungsi tujuan relatif untuk variabel non basis 1   2 c1  3  0.0..0.0    2 1   1   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.Pemeriksaan optimalitas Nilai fungsi tujuan relatif (profit relatif /ongkos relatif ) untuk variabel non basis:  inner product dari cB dan kolom yang  cj  cj    berkaitan dengan x j dalam sistem kanonik  Kondisi optimal terjadi apabila semua nilai koefisien fungsi tujuan relatif untuk variabel non basis adalah tak positif [untuk masalah maksimasi].0. yaitu variabel non basis yang mempunyai nilai fungsi tujuan relatif terbesar (paling positif untuk masalah maksimasi).

aturan rasio minimum (minimum ratio rule) digunakan untuk menentukan limit bagi tiap pembatas. Nomor baris 1 2 3 4 Variabel basis x3 x4 x5 x6 Batas atas bagi x1 6/1 = 6 8/2 = 4 (minimum)   .Penentuan variabel yang keluar (leaving variable) Untuk menentukan variabel basis yang akan diganti (leaving variable).

Tabel 2

Penentuan variabel yang masuk (entering variable)

Tabel 3 (Optimal)

Output Tabel Simpleks dengan Software

PEMECAHAN UNTUK MASALAH MINIMISASI
 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 = 4x1 + x2 dengan pembatas-pembatas: 3x1 + x2 = 3 4x1 + 3x2 ≥ 6 x1 + 2x2  4 x1 ≥ 0, x2 ≥ 0 Memaksimumkan Z’ = -4x1 - x2 dengan pembatas-pembatas: 3x1 + x2 = 3 4x1 + 3x2 ≥ 6 x1 + 2x2  4

x1 ≥ 0, x2 ≥ 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’)

MASALAH-MASALAH KOMPUTASI
 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)

SOLUSI OPTIMUM ALTERNATIF
Memaksimumkan Z = 2x1 + 4x2 dengan pembatas-pembatas: x1 + 2x2  5 x1 + x2  4 x1 ≥ 0, x2 ≥ 0 Bentuk Standard Memaksimumkan Z = 2x1 + 4x2 dengan pembatas-pembatas: x1 + 2x2 + x3 x1 + x2 =5 + x4 = 4

x1 ≥ 0, x2 ≥ 0, x3 ≥ 0, x4 ≥ 0

Tabel 1 Tabel 2 (Optimal) Tabel 3 (Optimal alternatif) .

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. x3 ≥ 0. SOLUSI TAK TERBATAS Memaksimumkan Z = 2x1 + 3x2 dengan pembatas-pembatas: x1 – x2  2 -3x1 + x2  3 x1 ≥ 0. x4 ≥ 0 . x2 ≥ 0.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. x2 ≥ 0 Bentuk Standard Memaksimumkan Z = 2x1 + 3x2 dengan pembatas-pembatas: x1 – x2 + x3 -3x1 + x2 =2 + x4 = 3 x1 ≥ 0.

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

maka pemilihan variabel yang keluar basis (leaving variable) dapat dilakukan sebarang.  Oleh karena itu.  Dengan demikian. Contoh: Memaksimumkan Z = 3x1 + 9x2 dengan pembatas-pembatas: x1 + 4x2  8 x1 + 2x2  4 x1 ≥ 0.  Dalam kasus ini. kegagalan dalam aturan rasio minimum mengindikasikan bahwa masalah LP mempunyai solusi yang tak terbatas. masalah LP dikatakan mempunyai solusi yang degenerate. Karena tiap peningkatan satu unit x1 akan meningkatkan Z sebesar 11 unit. satu atau lebih variabel basis akan mempunyai nilai nol pada iterasi berikutnya. maka fungsi tujuan dapat dinaikkan tak terbatas. solusi bagi masalah LP adalah solusi tak terbatas (unbounded solution). x2 ≥ 0 . Solusi secara grafis DEGENERASI  Jika terjadi nilai yang sama pada rasio minimum.  Akibatnya.

x4 ≥ 0 Tabel 1 Tabel 2 . x3 ≥ 0. x2 ≥ 0.Bentuk Standard Memaksimumkan Z = 3x1 + 9x2 dengan pembatas-pembatas: x1 + 4x2 + x3 x1 + 2x2 =8 + x4 = 4 x1 ≥ 0.

Solusi secara grafis  Dari sudut pandang teoritis. .Tabel 3 (Optimal)  Implikasi praktek dari degenerasi?  Terdapat pembatas yang redundan. degenerasi mempunyai implikasi:  Fenomena cycling atau circling  prosedur simpleks mengulangi iterasi yang sama tanpa memperbaiki nilai fungsi tujuan dan tanpa pernah berhenti.

x2≥0 .EVALUASI SOAL: Hitung dengan simpleks table: Maks z = 50x1 + 40x2 2x1+x2≤40 3x1+4x2≤120 x1≤15 x1.

POKOK PEMBAHASAN • • Permasalahan Khusus Metoda 2 Fasa & Big M TABEL SIMPLEX TUJUAN PEMBELAJARAN 1. x2. Menguasai metoda 2 Fasa dan Big M RINGKASAN MATERI Review Primal Simplex Method Contoh : Minimize Subject to x1 + x2 + 2x3 ≤ 9 x1 + x2 . x2. x6 ≥ 0 . x3. x5.VI.x3 -x1 + x2 + x3 + x5 =2 + x6 = 4 =9 z = x1 + x2 – 4 x3 + 0x4 + 0x5 + 0x6 x1. x3 ≥ 0 z = x1 + x2 – 4 x3 Bentuk Standard Minimize Subject to x1 + x2 + 2x3 + x4 x1 + x2 . Memahami permasalahan dengan variable dan pembatas khusus 2.x3 ≤ 2 -x1 + x2 + x3 ≤ 4 x1. x4.

5 2/-1= -2 2/1 = 4 . ratios x4 x5 x6 Baris c 9 9/2 = 4. x6 ≥ 0 Iterasi 1 cB cj Basis 0 x4 0 x5 0 x6 Baris c 1 x1 1 1 -1 1 1 x1 1 1 -1 1 1 x2 1 1 1 1 1 x2 1 1 1 1 -4 x3 2 -1 1 -4 -4 x3 2 -1 1 -4 0 x4 1 0 0 0 0 x4 1 0 0 0 0 x5 0 1 0 0 0 x5 0 1 0 0 0 x6 0 0 1 0 0 x6 0 0 1 0 Kons. 9 2 4 Z= 0 ratios 9/2 = 4.x3 -x1 + x2 + x3 + x5 =2 + x6 = 4 =9 z = x1 + x2 – 4 x3 + 0x4 + 0x5 + 0x6 x1.Basis Awal Minimize Subject to x1 + x2 + 2x3 + x4 x1 + x2 .5 2 2/-1= -2 4 2/1 = 4 Z= 0 cB cj Basis 0 x4 0 x5 0 x6 Baris c 1 x1 1 1 -1 1 1 x2 1 1 1 1 -4 x3 2 -1 1 -4 0 x4 1 0 0 0 0 x5 0 1 0 0 0 x6 0 0 1 0 Kons. x2. x5. x4. 9 2 4 Z= 0 cB 0 0 0 cj Basis Kons. x3.

1 6 4 Z = -16.Iterasi 2 cB cj Basis 0 x4 0 x5 -4 x3 Baris c 1 x1 3 0 -1 -3 1 x1 3 0 -1 -3 1 x2 -1 2 1 5 1 x2 -1 2 1 5 -4 x3 0 0 1 0 -4 x3 0 0 1 0 0 x4 1 0 0 0 0 x4 1 0 0 0 0 x5 0 1 0 0 0 x5 0 1 0 0 0 x6 -2 1 1 4 0 x6 -2 1 1 4 Kons.0 cB cj Basis 0 x4 0 x5 -4 x3 Baris c Kons.33 6/0= 4/-1= ∞ -4 Iterasi 3 . 1 6 4 Z = -16 ratios 1/3 = 0.

Contoh Lain: Minimize Subject to 3x1 + x2 = 3 4x1 + 3x2 ≥ 6 x1 + 2x2 ≤ 4 x1.x3 x1 + 2x2 + x4 = 4 x1. x2 ≥ 0 Bentuk Standard Minimize Subject to 3x1 + x2 4x1 + 3x2 . x2. x3. x3. x2.x3 x1 + 2x2 + x4 = 4 x1. x4 ≥ 0 =3 =6 z = 4x1 + x2 + 0x3 + 0x4 z = 4x1 + x2 Basis awal Minimize Subject to 3x1 + x2 4x1 + 3x2 . x4 ≥ 0 =3 =6 z = 4x1 + x2 + 0x3 + 0x4 PENENTUAN BASIS LAYAK 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) .

Variabel semu tidak mempunyai arti fisik pada permasalahan awal. x2 ≥ 0 Bentuk standar Meminimumkan Z = 4x1 + x2 dengan pembatas-pembatas: 3x1 + x2 =3 =6 + x4 = 4 4x1 + 3x2 – x3 x1 + 2x2 x1 ≥ 0. Variabel semu ini berperan sebagai variabel sisipan (slack variable) untuk memberikan solusi basis awal. Prosedur memaksa variabel semu untuk bernilai nol jika kondisi optimal tercapai. x3 ≥ 0. x4 ≥ 0 Penambahan variabel semu 3x1 + x2 + x4 + x5 =3 +x6 = 6 =4 4x1 + 3x2 – x3 x1 + 2x2 x1. x6 Ide penggunaan variabel semu • • • • Variabel semu merupakan variabel tak negatif yang ditambahkan pada ruas kiri untuk tiap persamaan yang tidak mempunyai solusi basis awal. x3. x2. x2 ≥ 0. x4. .Contoh masalah LP Meminimumkan Z = 4x1 + x2 dengan pembatas-pembatas: 3x1 + x2 = 3 4x1 + 3x2 ≥ 6 x1 + 2x2  4 x1 ≥ 0. x6 ≥ 0 Variabel semu : x5. x5.

x2. Meminimumkan Z = 4x1 + x2 + Mx5 + Mx6 dengan pembatas-pembatas: 3x1 + x2 + x4 + x5 =3 +x6 = 6 =4 4x1 + 3x2 – x3 x1 + 2x2 x1. • Untuk masalah – Minimasi : M – Maksimasi: -M dimana M adalah bilangan yang sangat besar. x6 ≥ 0 .• • Cara yang logis adalah memberikan penalti pada variabel semu dalam fungsi tujuan. x5. x4. x3. Pendekatan • • Metoda big M Metoda dua fasa METODE BIG M • • 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.

0 4   4  7 M 1   1   c2  1  M . Nilai fungsi tujuan relatif untuk variabel non basis  3   c1  4  M . M . M .0 6   9M  4   Pemeriksaan optimalitas Nilai fungsi tujuan relatif (profit relatif /ongkos relatif ) untuk variabel non basis:  inner product dari cB dan kolom yang  cj  cj    berkaitan dengan x j dalam sistem kanonik  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]. M .0  1  M 0   Tabel 1 . M .Nilai fungsi tujuan Z  inner product dari vektor cB dan konstanta  3   Z  M .0 3   1  4M  2   0   c3  0  M .

Tabel 2 Tabel 3 Tabel 4 (Optimal) .

Output Tabel Simpleks dengan Software (WinQSB) .

METODE 2 FASA • Fasa I – Mendapatkan solusi basis layak awal pada masalah original. x3. – Tabel akhir pada Fase I menjadi tabel awal pada Fase II dengan perubahan pada fungsi tujuan. x2. • Fasa II – Solusi basis layak yang diperoleh pada Fase I dioptimasi terhadap fungsi tujuan original. Jika nilai minimum fungsi tujuan adalah positif. Metode dua-fasa (Fasa I) Meminimumkan W = x5 + x6 dengan pembatas-pembatas: 3x1 + x2 + x4 + x5 =3 +x6 = 6 =4 4x1 + 3x2 – x3 x1 + 2x2 x1. maka semua variabel semu bernilai nol dan solusi basis layak diperoleh bagi masalah original. dan algoritma berhenti. x4. x6 ≥ 0 . x5. – Fungsi tujuan semu merupakan jumlah dari variabel semu yang diminimasi. maka paling sedikit terdapat satu variabel yang positif dan ini berarti masalah original adalah tak layak. – Penghilangan variabel semu. – Jika nilai fungsi tujuan sama dengan nol.

Tabel 1 [Fase I] Tabel 2 [Fase I] Tabel 3 [Fase I] .

Tabel 1 [Fase II] Tabel 2 [Fase II] (Optimal) Solusi tak layak (infeasible solution) • Dengan metode big M – Pada tabel optimal. dimana satu atau lebih variabel semu sebagai basis) . satu atau lebih variabel semu tetap sebagai variabel basis • Dengan metoda dua-fase – Pada tabel optimal pada fase I. nilai fungsi tujuannya adalah positif.

x4 + x5 = 12 x1.x4 + x5 = 12 3x1 + 4x2 x1. x5 ≥ 0 Contoh: Metode big M Memaksimumkan Z = 3x1 + 2x2 – Mx5 dengan pembatas-pembatas: 2x1 + x2 + x3 =2 3x1 + 4x2 . x3. x4 ≥ 0 Penambahan variabel semu 2x1 + x2 + x3 =2 . x2. x4. x2. x4. x2.Contoh masalah LP Memaksimumkan Z = 3x1 + 2x2 dengan pembatas-pembatas: 2x1 + x2  2 3x1 + 4x2 ≥ 12 x1 ≥ 0.x4 =2 = 12 3x1 + 4x2 x1. x2 ≥ 0 Bentuk standar Memaksimumkan Z = 3x1 + 2x2 dengan pembatas-pembatas: 2x1 + x2 + x3 . x5 ≥ Tabel 1 . x3. x3.

x2.Tabel 2 EVALUASI SOAL 1 z= 3x1+x2 3x1+x2≥4 x1-x2≥0 x1.x2 ≥0 SOAL 2 z= 5x1+3x2+x3 -x1+x2+x3≥2 2x1+x2-x3≥4 x1.x3 ≥0 .

Suatu pemrograman linier dikatakan dalam bentuk simetris jika : • • semua variabel dibatasi tak negatif semua pembatas dalam bentuk pertidaksamaan: . POKOK PEMBAHASAN • • • Hubungan Primal-Dual Solusi Grafis Dual Simplex PRIMAL-DUAL TUJUAN PEMBELAJARAN 1. Memahami perbedaan bentuk primal dan dual 2. Memahami hubungan antara persamaan primal dan dual 3. pada dasarnya diperoleh solusi untuk dua masalah pemrograman linier.VII. Solusi pada masalah pemrograman liniear originalnya juga memberikan solusi bagi dualnya. Jika suatu solusi masalah pemrograman linier dipecahkan dengan simplex method. Memahami cara pemecahan permasalahan dual dengan menggunakan metoda dual simplex RINGKASAN MATERI Teori Dualitas • • • Setiap masalah pemrograman linier mempunyai satu pemrograman linier yang terkait yang disebut dual.

… … a1ny1 + a2ny2 + … + amnym ≥ cn y1≥0.. bentuk pertidaksamaan adalah ―lebih besar atau sama dengan Memaksimumkan dengan pembatas Z = c1x1 + c2x2 + … + cnxn a11x1 + a12x2 + … + a1nxn  b1 a21x1 + a22x2 + … + a2nxn  b2 … … … am1x1 + am2x2 + … + amnxn  bm x1≥0. xn≥0 Meminimumkan dengan pembatas W = b1y1 + b2y2 + … + bmym a11y1 + a21y2 + … + am1ym ≥ c1 a12y1 + a22y2 + … + am2yn ≥ c2 . ym≥0 Primal : Memaksimumkan dengan pembatas Z = cx Ax  b x≥0 Dual : Meminimumkan dengan pembatas W = yb yA ≥ c y≥0 . untuk masalah minimasi.….a.. bentuk pertidaksamaan adalah ―lebih kecil atau sama dengan‖ b. x2≥0.…. untuk masalah maksimasi. y2≥0.

Tiap kolom dalam primal menjadi baris (pembatas) pada dual. y4 ≥ 0 ≥3 ≥2 • • • • • • • Koefisien fungsi tujuan untuk masalah primal menjadi konstanta ruas kanan bagi dual. sehingga jumlah pembatas dual sama dengan jumlah variabel primal. Pertidaksamaan untuk pembatas dibalik untuk kedua masalah. y3. x2 ≥ 0 6 8 1 2 Dual Min W = 6y1 + 8y2 + y3 + 2y4 dengan pembatas-pembatas: y1 + 2y2 – y3 2y1 + y2 + y3 + y4 y1. sehingga satu variabel dual berkaitan dengan satu pembatas primal.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 = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2 2x1 + x2 – x1 + x2 x2 x1. Tiap baris (pembatas) dalam primal berkaitan dengan kolom pada dual. Tujuan diubah dari maksimasi untuk primal menjadi minimasi untuk dual. y2. Dual dari masalah dual adalah masalah primal . Konstanta ruas kanan dari primal menjadi koefisien fungsi tujuan bagi dual.

x ≥ 0 D: min W = yb. maka Perkalian kedua sisi pertidaksamaan (1) dengan y0  y0Ax0  y0b Perkalian kedua sisi pertidaksamaan (2) dengan x0 : Implikasi : y0b ≥ y0Ax0 ≥ cx0 y0Ax0  cx0 . Bukti Misalkan: x0 : vektor solusi layak untuk primal y0 : vektor solusi layak untuk dual Akan dibuktikan bahwa: y0b ≥ cx0 (1) (2) y0A ≥ c. y0 ≥ 0 Karena x0 adalah layak untuk primal.• • • • Weak duality theorem Optimality criterion theorem Main duality theorem Complementary slackness theorem Misalkan diberikan program linier primal-dual simetris: P: max Z = cx. x0 ≥ 0 Karena y0 adalah layak untuk dual. Ax  b. 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). yA ≥ c. maka Ax0  b.

• Konsekuensi 2: Nilai fungsi tujuan dari masalah minimasi (dual) untuk sebarang solusi layak (dual) merupakan batas atas dari nilai maksimum fungsi tujuan primal. y3. max Z +). maka masalah dual adalah tak layak. • Konsekuensi 4: Jika masalah dual adalah layak dan nilai fungsi tujuannya tak terbatas (dalam hal ini. x2 ≥ 0 0 x10  4. x2  0 adalah solusi layak untuk primal. • Konsekuensi 5: Jika masalah primal adalah layak dan dualnya tak layak maka masalah primal tersebut adalah tak terbatas. • Konsekuensi 3: Jika masalah primal adalah layak dan nilai fungsi tujuannya tak terbatas (dalam hal ini. Ilustrasi #1 Primal Max Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2 2x1 + x2 – x1 + x 2 x2 x1. v4 ≥ 0 ≥3 ≥2 6 8 1 2 Nilai fungsi tujuan primal Z = cx0 = 12 . y2. Dual Min W = 6y1 + 8x2 + y3 + 2y4 dengan pembatas-pembatas: y1 + 2y2 – y3 2y1 + y2 + y3 + y4 y1. min W -). • Konsekuensi 6: Jika masalah dual adalah layak dan primalnya adalah tak layak maka masalah dual tersebut adalah tak terbatas.• Konsekuensi 1: Nilai fungsi tujuan dari masalah maksimasi (primal) untuk sebarang solusi layak merupakan batas bawah dari nilai minimum fungsi tujuan dual. maka masalah primal adalah tak layak.

x2 ≥ 0 Dual Meminimumkan W = 2y1 + 3y2 dengan pembatas-pembatas: y1 – 3y2 ≥ 4 . Berdasarkan Konsekuensi (2).0 0 0 y10  0. y2  5.y1 + y2 ≥ 1 y1 ≥ 0. Berdasarkan Konsekuensi (1). nilai minimum W untuk dual tidak dapat lebih kecil dari 12. nilai minimum Z untuk primal tidak dapat melebihi 40. y3  0. y4  0 adalah solusi layak untuk dual Nilai fungsi tujuan dual W = y0b = 40 Di sini Z = cx0  y0b = W dan memenuhi weak duality theorem. y2 ≥ 0 . Ilustrasi #2 Primal: Memaksimumkan Z = 4x1 + x2 dengan pembatas-pembatas: x1 – x2  2 -3x1 + x2  3 x1 ≥ 0.

maka solusi layak ini adalah solusi optimal bagi masing-masing masalah. Per definisi. x0 adalah optimal bagi primal. Bukti Misalkan x adalah sebarang solusi layak bagi masalah primal. Oleh karena itu cx  cx0 untuk semua solusi layak bagi masalah primal. Argumen yang sama juga berlaku bagi optimalitas y0 bagi masalah dual Jika baik masalah primal maupun dual adalah layak. Maka berdasarkan Teorema 1. . maka keduanya mempunyai solusi optimal sedemikian hingga nilai optimalnya adalah sama.Jika terdapat solusi layak x0 dan y0 untuk masalah pemrograman linier dual simetris sedemikian hingga nilai fungsi tujuannya adalah sama. cx  y0b Tetapi ini diberikan bahwa cx0 = y0b.

yA ≥ c. vn  adalah vektor slack untuk dual Karena x0 dan y0 adalah solusi layak. u0  0 y 0 . v2 . y 0 A  v 0  c. Perkalian (1) dengan y0  y0Ax0 + y0u0 = y0b Perkalian (2) dengan x0  y0Ax0 – v0x0 = cx0 Pengurangan (3) dengan (4)  y u + v x = y b – cx 0 0 0 0 0 0 (3) (4) (5) . 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: x0 : vektor solusi layak untuk primal y0 : vektor solusi layak untuk dual Maka x0 dan y0 adalah optimal untuk masalah masing jika dan hanya jika y A  cx 0 0  y 0 b  Ax 0  0   Bukti :  u1     u2  Misalkan u    adalah vektor slack untuk primal ( m1)    u   m (1n ) v  v1 . Ax  b. maka Ax 0  u0  b. x0 . v0  0 (1) (2) (u0 dan v0 adalah nilai-nilai dari variabel slack yang berkaitan masing-masing dengan solusi layak x0 dan y0).Misalkan diberikan program linier primal-dual simetris: P: max Z = cx.. x ≥ 0 D: min W = yb.

Persamaan (5) menjadi Persamaan (6) y0u0 + v0x0 = y0b – cx0  v0x0 + y0u0 = 0 Bagian 2 Diasumsikan bahwa Persamaan (6) adalah benar dan akan dibuktikan bahwa x0 dan y0 adalah solusi optimal bagi masing-masing masalah primal dan dual. y0 ≥ 0 dan oleh karena itu v0x0 ≥ 0 dan y0u0 ≥ 0. • • Jika suatu variabel primal (xj0) adalah positif. maka Persamaan (5) menjadi y0b – cx0. harus diperlihatkan bahwa x0 dan y0 adalah solusi optimal bagi masing-masing masalah primal dan dual jika dan hanya jika v0x0 + y0u0 = 0 (6) Bagian 1 Diasumsikan bahwa x0 dan y0 adalah solusi optimal dan harus dibuktikan bahwa Persamaan (6) adalah benar. maka variabel dual yang bersesuaian (yi0) harus nol . Karena x0 dan y0 adalah optimal. vj0 = 0) Jika suatu pembatas primal adalah strick inequality pada titik optimal (yaitu. …. 2. x0. 2. v0.Untuk membuktikan Teorema 4. 2. y0u0 + v0x0 = y0b – cx0  y0b = cx0 Berdasarkan Teorema 2 maka x0 dan y0 merupakan solusi optimal. Complementary slackness condition Persamaan (6) : v0x0 + y0u0 = 0 dari complementary slackness theorem dapat disederhanakan sebagai berikut: vj0xj0 = 0 yi0ui0 = 0 untuk semua j = 1. Jika jumlah komponen-komponen tak negatif sama dengan nol. maka pembatas dual yang bersesuaian memenuhi persamaan pada titik optimalnya (yaitu. u0. n untuk semua i = 1. m dengan memperhatikan hal-hal berikut: 1. Oleh karena itu. …. berdasarkan Teorema 3 maka cx0 = y0b. Karena Persamaan (6) benar. maka tiap komponen adalah nol. uj0 > 0).

x2  4 / 3 . y2. x2 v2  0 Dual (Penambahan slack variable) Min W = 6y1 + 8x2 + y3 + 2y4 =6 + u2 + u3 =8 =1 + u4 = 2 dengan pembatas-pembatas: y1 + 2y2 – y3 2y1 + y2 + y3 + y4 y1. u2. Z = 38/3 Dengan penerapan complementary slackness condition. x10v10  0 . v2 ≥ 0 ≥3 ≥2 Primal (Penambahan slack variable) Max Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2 + u1 2x1 + x2 – x1 + x 2 x2 x1. v1. v2 ≥ 0 – v1 =3 – v2 = 2 Dengan metode simplex diperoleh solusi optimal untuk masalah primal sebagai berikut : 0 x10  10 / 3 . v1. u3 y3  0 . u2 y2  0 . u1. solusi optimal bagi dual ditentukan sebagai berikut : 1. y2. u3. x10  10 / 3  0  v10  0 . ui0 = 0) Jika suatu pembatas dual adalah strick inequality pada titik optimal (yaitu vi0 > 0). u4 y4  0 . x2 ≥ 0 6 8 1 2 Dual Min W = 6y1 + 8y2 + y3 + 2y4 dengan pembatas-pembatas: y1 + 2y2 – y3 2y1 + y2 + y3 + y4 y1. x2. maka variabel primal yang bersesuaian harus nol Ilustrasi Primal Max Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2 2x1 + x2 – x1 + x 2 x2 x1.• • Jika suatu variabel dual (yi0) adalah positif maka pembatas primal yang bersesuaian memenuhi persamaan pada titik optimalnya (yaitu. u4 ≥ 0 Complementary slackness condition mengimplikasikan pada kondisi optimal: 0 0 0 0 0 0 0 0 u10 y10  0 .

0 0 2. Digunakan untuk memverifikasi apakah suatu solusi layak adalah optimal untuk masalah primal. y4  0 Kondisi (1). Primal A b c Fungsi tujuan Pertidaksamaan pembatas Variabel keputusan Matriks pembatas Konstanta ruas kanan Vektor biaya Max Z = cx Ax  b x≥0 Dual Transpos dari matriks pembatas Vektor biaya Konstanta ruas kanan Min W = yb yA ≥ c y≥0 .  x10  x2  10 / 3  4 / 3  2  1  u3  0. y3  0 0 0 0 6. dan sebaliknya. Kuhn-Tucker optimality condition untuk pemrograman non linier merupakan pengembangan lebih lanjut dari complementary slackness condition dan sangat berguna dalam pemrograman matematis lanjutan. x2  4 / 3  0  v2  0 0 3. (2). (5) dan (6) mengimplikasikan: Penerapan complementary slackness condition • • • • Digunakan untuk mencari solusi primal optimal dari suatu solusi dual optimal. x2  4 / 3  2  u4  0. x10  2 x2  10 / 3  24 / 3  6  u10  0. 2 x10  x2  210 / 3  4 / 3  8  u2  0. y2  0 0 0 0 5. y10  0 0 0 0 4. Digunakan untuk menginvestigasi ciri-ciri umum dari solusi optimal pada masalah primal dan dual dengan menguji hipotesis-hipotesis yang berbeda.

+ u2 + u3 =6 =8 =1 + u4 = 2 Dual (Penambahan slack variable) Min W = 6y1 + 8x2 + y3 + 2y4 dengan pembatas-pembatas: y1 + 2y2 – y3 2y1 + y2 + y3 + y4 y1. u1. x2 ≥ 0 Bentuk primal dan dual diubah ke dalam bentuk standar. u3.Misal terdapat masalah linear programming simetris seperti berikut (primal). v2 ≥ 0 ≥3 ≥2 . v1. u4 ≥ 0 Solusi dari primal dan dual dapat dicari dengan metode simplex. Berikut ini adalah tabel simplex untuk kasus primal. Maka bentuk dualnya adalah (lihat tabel konversi primal – dual) : Primal Max Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2 2x1 + x2 – x1 + x 2 x2 x1. y2. x2. u2. Pada kasus primal. y2. 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 = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2 + u1 2x1 + x2 – x1 + x 2 x2 x1. v1. v2 ≥ 0 – v1 =3 – v2 = 2 6 8 1 2 Dual Min W = 6y1 + 8y2 + y3 + 2y4 dengan pembatas-pembatas: y1 + 2y2 – y3 2y1 + y2 + y3 + y4 y1.

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

dan solusi y yang menghasilkan nilai w tersebut adalah solusi optimal  optimality criterion theorem. 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. dapat disimpulkan bahwa hubungan primal dengan dual adalah sebagai berikut : 1. Solusi fisibel kasus minimisasi adalah batas atas dari solusi fisibel kasus maksimisasi. maka max z = min w  main duality theorem. maka solusi x yang menghasilkan nilai z tersebut adalah solusi optimum. . 3.Dari tabel primal dan dual. Jika nilai z = nilai w. Jika kedua kasus telah mencapai solusi optimum. 2.

bm adalah jumlah yang terbatas dari sumberdaya 1. • • • • Dalam pandangan ekonomi.4. nilai optimal bagi primal dan dual adalah sama. Maka. 2. solusi dual optimal dapat diinterpretasikan sebagai harga yang dibayarkan untuk sumberdaya pembatas. katakan b1.. 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. Dengan kata lain : a. b2. . Dengan kata lain. . y10 adalah nilai optimal dari variabel dual. m. Berdasarkan Teorema 3 (main duality). b1) diubah. lihat iterasi 3 pada primal) pada persamaan z optimum. untuk variasi kecil dalam perubahan nilai b1. maka nilai optimum y3 (= 3.. • • Misalkan diasumsikan bahwa level sumberdaya 1 (yaitu. Jika x0 dan y0 masing-masing adalah solusi optimal. maka nilai optimum variabel tersebut sama dengan koefisien variabel slack pada persamaan z yang optimum. lihat iterasi 3 pada dual) sama dengan koefisien u 3 (= 3. nilai optimal dari variabel dual disebut shadow price yang dapat digunakan untuk menentukan apakah ekonomis untuk menambah sumberdaya. …. • Dengan kata lain. • Oleh karena itu. Bukti : y1 pada dual berkorespondensi dengan u1 pada primal. Jika variabel dual berkorespondensi dengan variabel slack awal pada kasus primal. nilai optimal dari masalah pemrograman linier (primal atau dual) diberikan oleh dimana b1. y10. y10. perubahan dalam nilai optimal dari pemrograman linier Z0 diberikan oleh y10(b1). Nilai optimum variabel solusi awal pada primal sama dengan nilai optimum variabel-variabel dual yang berkorespondensi dengan persamaan pembatas pada primal. 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. b. maka Z0 = cx0 = y0b = W0. ….

yaitu perubahan dari nilai Z ≥3 ≥2 (Bahan A) (Bahan B) (Selisih permintaan cat interior dan eksterior) (Permintaan cat interior) (profit total) per satu satuan peningkatan bahan B. y3. yaitu perubahan dari nilai Z (profit total) per satu satuan peningkatan selisih permintaan cat interior dan exterior. shadow price untuk selisih permintaan cat interior dan exterior. y2 = 4/3  y3 = 0  shadow price untuk pembatas Bahan B. y2.Primal : Memaksimumkan Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2  6 2x1 + x2  8 – x1 + x2  1 x2  2 x1 ≥ 0 x2 ≥ 0 Dual: Meminimumkan W = 6y1 + 8x2 + y3 + 2y4 dengan pembatas-pembatas: y1 + 2y2 – y3 2y1 + y2 + y3 + y4 y1. y4 ≥ 0 Solusi optimal dual: y1 = 10/3  shadow price untuk pembatas bahan A. . yaitu perubahan dari nilai Z (profit total) per satu satuan peningkatan permintaan cat interior. y4 = 0  shadow price untuk pembatas permintaan cat interior. yaitu perubahan dari nilai Z (profit total) per satu satuan peningkatan bahan A.

w4 ≥ 0 . w3.Masalah Primal Memaksimumkan Z = 4x1 + 5x2 dengan pembatas 3x1 + 2x2  20 4x1 – 3x2 ≥ 10 x1 + x2 = 5 x1 ≥ 0 x2 tak dibatas tanda Masalah Dual Meminimumkan W = 20y1 + 10y2 +5y3 dengan pembatas 3y1 + 4y2 + y3 ≥ 4 2y1 – 3y2 + y3 = 5 y1 ≥ 0 y2  0 y3 tak dibatasi tanda Masalah Primal (Bentuk Simetris) Memaksimumkan Z = 4x1 + 5x3 – 5x4 dengan pembatas 3x1 + 2x3 – 2x4  20 – 4x1 + 3x3 – 3x4  – 10 x1 + x3 – x4  5 – x1 – x3 + x4  – 5 x1. w2. x4 ≥ 0 Masalah Dual (Bentuk Simetris) Meminimumkan W = 20w1 – 10w2 +5w3 – 5w4 dengan pembatas 3w1 – 4w2 + w3 – w4 ≥ 4 2w1 + 3w2 + w3 – w4 ≥ 5 – 2w1 – 3w2 – w3 + w4 ≥ – 5 w1. x3.

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 .. dan (4) dari teori dualitas berlaku juga bagi primal-dual tak simetris. (3).Primal (maksimasi) Matriks koefisien A Vektor ruas kanan Vektor harga c Pembatas ke-i adalah persamaan Pembatas ke-i bertipe  Pembatas ke-i bertipe ≥ xj tak dibatasi tanda xj ≥ 0 xj  0 Catatan • • Dual (minimasi) Transpos matriks koefisien Vektor biaya Vektor ruas kanan Variabel dual yi tak dibatasi tanda Varibel dual yi ≥ 0 Varibel dual yi  0 Pembatas dual ke-j adalah persamaan Pembatas dual ke-j bertipe ≥ Pembatas ke-j bertipe  Teorema (1). (2).

pengali simplex optimal harus memenuhi pembatas dual. Sehingga.• • Solusi dual optimal dapat ditentukan dengan complementary slackness condition Solusi dual optimal dapat juga diperoleh secara langsung dari tabel simplex optimal dari masalah primal. . maka koefisien biaya relatif ( c j ) yang berkaitan dengan variabel basis harus tak negatif c j  c j  Pj  0 untuk semua j dimana  = cBB-1 : vektor pengali simplex (simplex multiplier) Dalam notasi matrix : c . Nilai fungsi tujuan dual yang berkaitan dengan solusi layak adalah W = yb = b = cBB-1b yang sama dengan nilai minimum Z. A ≥ 0 atau A  c yang merupakan pembatas pemrograman linier dual. Meminimumkan Z = cx dengan pembatas Ax = b x≥0 Misalkan : Pj : kolom ke-j dari matrix A B : matrix basis optimal Solusi primal optimal :  x B   B 1b  x   x   0    N   * dimana xB : varabel basis xN : variabel non basis Nilai minimum Z = cx* = cBxB = cBB-1b Karena B menunjukkan basis optimal.

3. y4 = 0  optimal untuk dual. x4. yang bersesuaian dengan nilai optimal untuk masalah primal. x2. pengali simplex optimal dari masalah primal merupakan nilai optimal dari variabel dual. x5.0. y1 = 1/3. dan nilai fungsi tujuannya : W = 6(1/3) + 8(4/3) + 1(0) + 2(0) = 38/3.0. y3. x6 ≥ 0 + x4 + x5 =6 =8 =1 + x6 = 2 Dual: Min W = 6y1 + 8x2 + y3 + 2y4 dengan pembatas-pembatas: y1 + 2y2 – y3 2y1 + y2 + y3 + y4 y1 y2 y3 y4 =3 =2 ≥0 ≥0 ≥0 ≥0 y1. Z = 38/3 Matrix basis optimal: B  P2 P1 P5 2 1 1 2 P6    1  1  1 0 0 0 1 0 0 0  0  1 0 0   1 / 3. y2. Ilustrasi menentukan solusi dual optimal Primal (Dalam bentuk standar) Max Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2 + x3 2x1 + x2 – x1 + x 2 x2 x1. x3. x5. Simplex multiplier yang bersesuaian dengan tabel (primal) optimal adalah solusi optimal bagi masalah dual.4 / 3. x1. solusi optimal untuk primal: x = (x2.Oleh karena itu. y3 = 0. y2 = 3/4. 2/3).0  1 1   2 / 3 1 / 3 0 0 1 0  memenuhi pembatas dual. Oleh karena itu. 10/3. y4 tak dibatasi tanda Dengan metode revised simplex. berdasarkan optimality criterion theorem. .3.0 0  1 Simplex multiplier optimal :  2 / 3 1/ 3  1/ 3 2 / 3 1 π  c B B  2. x6) = (4/3.

…. P2 .. c2 .Metode Simplek Dual Masalah Pemrograman Linier (Primal) dalam Bentuk Standar Minimasi dengan pembatas Ax = b x≥0 A : matrix (m x n) P : vektor kolom dari matrix A B : matrix basis untuk masalah primal xB : variabel basis yang bersesuaian dengan B Z = cx Basis Layak Primal Basis B : basis layak primal (primal feasible basis)  B-1b ≥ 0 B : basis layak primal  nilai variabel basis: B-1b solusi layak basis xB = B-1b nilai fungsi tujuan Z = cBB-1b Kondisi Optimalitas Untuk memeriksa apakah basis layak B adalah optimal  hitung koefisien fungsi tujuan relatif (c j ) c j  c j  πPj j = 1.. cn  yP j  c j . Pn   c1 . n  = cBB-1 : simplex multiplier Basis layak primal B adalah optimal  c j  0 . j = 1. …. n Pemrograman linier standar bagi dual: Maksimasi dengan pembatas yA  c y tak dibatas tanda Pembatas dual yA  c dapat ditulis: W = yb yP1 .

…. n Jika basis layak primal B : basis optimal bagi masalah primal  simplex multiplier  = cBB-1 memenuhi c j  yP j  0 .c j  yP j  0 . Solusi optimal untuk dual cBB . n Implikasi   : layak bagi masalah dual Nilai fungsi tujuan dual W = b = cBB-1b sama dengan nilai fungsi tujuan primal  Berdasarkan optimality criterion theorem.   : optimal bagi masalah dual Basis Dual Layak Basis B untuk masalah primal Minimasi dengan pembatas Ax = b x≥0 layak dual (dual feasible)  c – cBB-1A ≥ 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 : xB = B-1b. Nilai optimal primal = Nilai optimal dual -1 Z = cx :y= 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 . j = 1. …. j = 1. xN = 0.

variabel basis xr diganti baris ke-r : baris pivot i   Pemilihan Variabel Non Basis yang Masuk Basis Kolom pivot dipilih sedemikian rupa sehingga memenuhi dua kondisi sebagai berikut: 1. dengan pada saat yang sama menjaga koefisien (c j ) tak negatif. . Algoritma mulai dengan membuat elemen ruas kanan menjadi tak negatif.Rincian Metode Simplex Dual Pemrograman linier bentuk standar: Minimasi dengan pembatas Ax = b x≥0 • • Metode simplex dual menggunakan tabel yang sama dengan metode simplex primal. (c j ) dipertahankan tak positif) • • Konstanta ruas kanan tidak perlu tak negatif. Dalam semua tabel. Misal: br  min bi  0 . • Algoritma berhenti jika semua konstanta ruas kanan telah tak negatif. koefisien fungsi tujuan relatif (c j ) dipertahankan tak negatif Untuk maksimasi. Z = cx 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 bi paling negatif . Ketidaklayakan primal berkurang (atau paling sedikit. tidak bertambah jelek).

x3. x3. 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). x4 ≥ 0 Bentuk standar : Meminimumkan Z = x1 + 4x2 + 3x4 + Mx7 + Mx8 dengan pembatas x1 + 2x2 – x3 + x4 – x5 – 2x1 – x2 + 4x3 + x4 x1. x5. n y rj  0 y  rj    Ilustrasi Metode Simplex Dual 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). Dapat dijamin jika variabel non basis yang masuk basis dipilih dengan aturan rasio sebagai berikut:  cj  max   . paling sedikit konstanta ruas kanan pada baris r menjadi positif pada tabel berikutnya  Variabel non basis (xj) dengan koefisien negative dalam baris r (yrj < 0) yang memenuhi syarat untuk masuk basis. Tabel berikutnya setelah operasi pivot harus tetap layak dual. …. 2. x4. j = m+1. x3. x6 ≥ 0 – x6 + x7 = 3 + x8 = 2 . x3. Ilustrasi penyelesaian dengan metode simplex : Meminimumkan Z = x1 + 4x2 + 3x4 dengan pembatas x1 + 2x2 – x3 + x4 ≥ 3 – 2x1 – x2 + 4x3 + x4 ≥ 2 x1.Atau.

x4  -3 .Ubah tanda ≥ pada pembatas menjadi tanda  dengan mengalikan baris dengan -1: Meminimumkan Z = x1 + 4x2 + 3x4 dengan pembatas .2x2 + x3 .x1 .

x6 ≥ 0 Pilih variabel basis dengan konstanta paling negatif sebagai entering variable. x4 ≥ 0 Bentuk standar : Meminimumkan Z = x1 + 4x2 + 3x4 dengan pembatas . x4.x4  -2 x1. x3.4x3 .2x2 + x3 . x3. Layak dual Tidak layak primal.x4 + x5 2x1+ x2 .2x1 + x2 .x1 . x3. x5.x4 x1. x3. Tidak layak primal. Layak dual .4x3 . Pilih variabel nonbasis dengan rasio (baris = -3 + x6 = -2 c dibagi konstanta negatif pada entering variable) absolut terkecil sebagai leaving variable.

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 (c j )  0 Misal. 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.Layak primal. br  0 dan xr : variabel keluar basis Variabel non basis yang masuk basis  dipilih sedemikian rupa sehingga elemen baris c tetap tak positif pada iterasi berikutnya. self-dual parametric algorithm . c  Aturan rasio: min  j  yij  0 y  rj    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.

EVALUASI .

variabel keputusan. 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 . vector dan RHS RINGKASAN MATERI Pendahuluan Analisis sensitivitas adalah studi dalam perubahan solusi optimal dan nilai optimal karena perubahan dalam koefisien data input.VIII. 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. pembatas. Memahami solusi optimal dengan perubahan pada fungsi tujuan. PRIMAL-DUAL POKOK PEMBAHASAN • Analisis Sensitivitas TUJUAN PEMBELAJARAN 1.

Contoh masalah programa linear: Memaksimumkan Z = 3x1 + 2x2 dengan pembatas-pembatas: x1 + 2x2  6 2x1 + x2  8 – x1 + x2  1 x2  2 x1 ≥ 0 x2 ≥ 0 Tabel awal: (Bahan A) (Bahan B) (Selisih permintaan cat interior dan eksterior) (Permintaan cat interior) Tabel akhir (tabel optimal): .

2.0.0)   1     1/ 3  . Kondisi tetap optimal jika: Misal.0. variabel x1: c1  4  Z  4 x1  2 x2  2/3   1/ 3   2 c3  0  (4.0)   1     2 / 3   1 / 3  2/3  0 c 4  0  (4.Perubahan Koefisien Fungsi Tujuan Perubahan variable basis dalam koefisien fungsi tujuan Jika dilakukan perubahan pada variable x1.2.

0.2.2.0)   1     1/ 3  .Misal.0. variabel x1: c1  5  Z  5x1  2 x2  2/3   1/ 3    8 / 3 c3  0  (5.0)   1     2 / 3  1 / 3  2/3    1/ 3 c4  0  (5.

Perubahan variable non basis dalam koefisien fungsi tujuan Misal perubahan terjadi pada variabel x3: Kondisi akan tetap optimal jika: Penambahan Aktivitas Baru Contoh kasus: Memaksimumkan Z = 3x1 + 2x2 + 3/2 x7 dengan pembatas-pembatas: x1 + 2x2 + 3/4 x7  6 (Bahan A) 2x1 + x2 + 3/4 x7  8 (Bahan B) – x1 + x2 – x2 x1. x2. x7 ≥ 0 x7  1 (Selisih permintaan cat interior dan eksterior)  2 (Permintaan cat interior) .

0 0  1 .4 / 3.c7  c7  πP7 c7  3 / 2  2 / 3 1/ 3 3 / 4  1/ 3 2 / 3 3 / 4   B 1   P7    1  1 1     0  2 / 3 1 / 3 0 0 1 0 0 0  0  1  2 / 3 1/ 3  1/ 3 2 / 3 1 π   2 .3.0.  5 .0  1     0   2 / 3 1/ 3  1/ 3 2 / 3 P7    1 1   2 / 3 1 / 3 0 0 1 0 0 3 / 4  1 / 4  0 3 / 4  1 / 4     0   1    1      1   0    1 / 4 0 0 1 0 0 0   1 / 3.  1 .0.0.  6   c B B  2.4 / 3.0  1 1   2 / 3 1 / 3 3 / 4 3 / 4   1/ 4 c7  c7  πP7  3 / 2  1 / 3.

b1  8 * b   1   2  2 / 3 1/ 3  1/ 3 2 / 3 1 B   1 1   2 / 3 1 / 3 0 0 1 0 0 0 1 0 0 0  0  1 B 1b  0  2 / 3 1/ 3  1/ 3 2 / 3 1 * B b   1 1   2 / 3 1 / 3 0 b1   2b1 / 3  8 / 3  0  8    b1 / 3  16 / 3         b1  9 0  1       1  2   2b1 / 3  14 / 3 2b1 8   0  b1  4 3 3 b 16  1   0  b1  16 3 3 4  b1  7  b1  9  0  b1  9  2b1 14   0  b1  7 3 3 Misal Pembatas 1: 7  8  * b   1    2  2 / 3 1/ 3  1/ 3 2 / 3 1 * B b   1 1   2 / 3 1 / 3 0 0 1 0 0  7   2  0  8   3       0  1   2      1   2 0  Z  33  22  20  00  13 .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 Perubahan konstanta ruas kanan Misal terjadi perubahan pada Pembatas 1.

Misal Pembatas 1 berubah menjadi: : 9  8  * b   1    2  2 / 3 1/ 3  1/ 3 2 / 3 1 * B b   1 1   2 / 3 1 / 3 0 0 1 0 0 9  10 / 3  0  8   7 / 3       0  1   0      1 2  4 / 3 Dengan menerapkan dual simplex. menghasilkan: .

3. • Solusi optimal saat ini tidak memenuhi pembatas baru  Pembatas baru bersifat binding Contoh: Pembatas baru: x1  4 x = (x1. 4/3.Penambahan pembatas baru 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. 2/3) x1 = 10/3 > 3 . x6) = (10/3. x2. 4/3. x2. 3. 2/3) Solusi optimal saat ini : x1 = 10/3  4 Pembatas baru: x1  3 Solusi optimal saat ini : x = (x1. x5. x5. x6) = (10/3.

3. 4/3. x6) = (10/3. 2/3) x1 = 10/3 > 3 Dengan menertapkan dual simplex.Penambahan slack variable x7: x1 + x7 = 3 Solusi optimal saat ini : x = (x1. x5. dihasilkan: . x2.

EVALUASI .

MILP) Pemrograman linier bilangan bulat biner (binary integer linear programming.IX. Memahami permasalahan dan solusi variable integer 2. Memahami metoda cutting plane RINGKASAN MATERI Konsep Bilangan Bulat Pengantar Pemrograman Bilangan Bulat • • Pemrograman bilangan bulat (integer programming) mensyaratkan bahwa beberapa variabel keputusan harus mempunyai nilai yang bulat (bukan pecahan) Disini. BILP) . PILP) Pemrograman linier bilangan bulat campuran (mixed integer linear programming. 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. POKOK PEMBAHASAN • • Konsep Bilangan Bulat Metoda Cutting Plane INTEGER PROGRAMMING TUJUAN PEMBELAJARAN 1.

Contoh Pemrograman Linier Bilangan Bulat Biner Fungsi dengan N Nilai yang Mungkin f x1 . x2 . xn   d1 atau d 2 atau  atau d N Perumusan ILP: Contoh Kasus: 3x1  2 x2  6 atau 12 atau 18 Perumusan ILP: Representasi Biner untuk Variabel Bilangan Bulat Batas-batas untuk variabel x: 0  x  u dimana 2 N  u  2 N 1 ..

2. N Contoh Kasus: Contoh Model Pemrograman Bilangan Bulat a. Fixed Charge Problem Misalkan terdapat n jenis produk pj Kj cj jumlah bi aij = harga satuan produk j = biaya tetap untuk memproduksi produk j (independen terhadap jumlah produksi) = biaya variabel untuk memproduksi produksi) = kapasitas sumber i (i = 1. …m) = kebutuhan sumber i untuk per unit produk j produk j (proporsional terhadap Permasalahan : Menentukan produk mana yang perlu diproduksi dan jumlah produksinya masingmasing 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. .Representasi biner: x   2i yi i 0 N yi  0.. i  1.1.

yj = 1 jika produk j diproduksi yj = 0 jika produk j tidak diproduksi b. wj vj W = berat item j = nilai item j = 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 : xj = jumlah item yang dimasukkan ke kantong . Knapsack Problem Misalkan terdapat n item.Variabel keputusan : xj yj = jumlah produk j yang diproduksi = keputusan untuk memproduksi atau tidak produk j.

xj = 0 sebaliknya) . Set Covering Problem Contoh masalah set covering problem dalam menentukan lokasi pendirian pos siskamling Misalkan terdapat n lokasi pendirian pos dan m jalan. cj aij = biaya mendirikan pos di lokasi j = konstanta biner (0-1) aij = 1 jika jalan i dilayani oleh pos yang berlokasi di j aij = 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 xj = variabel biner (0-1) yang menentukan keputusan untuk mendirikan pos di lokasi j (xj = 1 jika pos didirikan di lokasi j.c.

j) tidak dilintas . Traveling Salesman Problem Misalkan terdapat n titik. j) xij = 1 jika busur (i. serta kembali ke titik asal agar diperoleh jarak total yang minimum Variabel keputusan Xij = keputusan untuk melintasi atau tidak busur (i. j) dilintasi xij = 0 jika busur (i.Set Partitioning Problem Tiap jalan tepat dilayani oleh satu pos d. cij = jarak antara titik i ke titik j (cij =  untuk i = j) Permasalahan Menentukan rute salesman yang berangkat dari suatu titik dan mengunjungi setiap titik yang lain paling banyak sekali.

.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 pj wj 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: Bj Cj yij = saat awal pengerjaan job j = saat akhir pengerjaan job j = keputusan apakah job i mendahului job i yij = 1 jika job i mendahului job j yij = 0 jika sebaliknya = waktu pengerjaan job j = bobot kepentingan job j .

E.Metode Pemecahan Model Pemrograman Bilangan Bulat Dalam kuliah ini. 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 = 7x1 + 9x2 dengan pembatas-pembatas: –x1 + 3x2 7x1 + x2 6  35 x1. x2 ≥ 0 dan bilangan bulat Daerah layak Solusi Optimal Kontinyu (dengan mengabaikan kondisi integralitas) . 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.

yaitu dengan mengabaikan kondisi integralitas. masalah PILP dipecahkan sebagai LP reguler.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. Penambahan pembatas sekunder – Fractional Algorithm • • Digunakan untuk memecahkan masalah pemrograman linier bilangan bulat murni (PILP). Perubahan dilakukan dengan penambahan beberapa secondary constraint. Mensyaratkan bahwa semua koefisien teknologi dan konstanta ruas kanan adalah bilangan bulat. . 1 13 x1  x2  3 2 6 x1  2 x2  39 • Pada awalnya.

Variabel xi (i = 1, …, m) menunjukkan variabel basis Variabel wj (j = 1, …, n) menunjukkan variabel non basis Misalkan persamaan ke-i dimana variabel xi diasumsikan bernilai bilangan bulat

xi   i    i j w j ,
j 1

n

i bukan bilangan bulat

Misal : i  i   f i

 i j   i j  f ij
dimana N = [a] adalah bilangan bulat terbesar sehingga N  a 0 < fi < 1 0  fij < 1 Dari baris sumber diperoleh:

f i   f ij wi  xi   i     i j w j
j 1 j 1

n

n

 

Agar semua xi dan wj adalah bilangan bulat, maka ruas kanan dari persamaan harus bilangan bulat  Akibatnya, ruas kiri harus bilangan bulat. Untuk fij  0 dan wj  0 untuk semua i dan j maka

f
j 1

n

ij

wj  0

Akibatnya

f i   f ij w j  f i
j 1

n

Karena fi < 1 maka

f i   f ij w j  1
j 1

n

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

f i   f ij w j  0
j 1

n

Pertidaksamaan terakhir dapat dijadikan sebagai pembatas dalam bentuk:

Si   f ij w j  f i ;
j 1

n

(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

f
j 1
n

n

ij

w j  fi
wj  fk

f
j 1

kj

Cut (1) dikatakan lebih kuat dari cut (2) jika fi  fk dan fij  fkj untuk semua j dengan strict inequality terpenuhi paling sedikit satu. Aturan : max  f i 
i

   f    max  n i  i   f ij   j 1   
Ilustrasi Penerapan Fractional Algorithm Maximasi Z = 7x1 + 9x2 dengan pembatas-pembatas: –x1 + 3x2 7x1 + x2 6  35

x1, x2 ≥ 0 dan bilangan bulat Tabel optimal kontinyu

Fractional cut:
S1  7 1 1 x3  x4   22 22 2

Tabel setelah penambahan fractional cut

Tabel yang diperoleh dengan dual simplex:

Tabel setelah penambahan fractional cut

Z = 55 Ilustrasi Fractional Cut secara grafis . x1 = 4. x2 = 3.Tabel yang diperoleh dengan dual simplex: Solusi bilangan bulat optimal.

Fractional cut 2: .

yaitu dengan mengabaikan kondisi integralitas. Persamaan-xk dalam solusi kontinyu optimal: 6  35 x1 ≥ 0 dan bilangan bulat Untuk xk adalah bilangan bulat.– Mixed Algorithm • • Digunakan untuk memecahkan masalah pemrograman linier bilangan bulat campuran (MILP) Pada awalnya. maka xk   k  atau xk   k   1. harus dipenuhi Dari baris sumber. masalah MILP dipecahkan sebagai LP reguler. kondisi ini ekivalen dengan Misal J+ = himpunan subscripts j untuk kj  0 J. Contoh: Maximasi Z = 7x1 + 9x2 dengan pembatas-pembatas: –x1 + 3x2 7x1 + x2 x2 ≥ 0 Misal xk adalah variabel bilangan bulat dari masalah MILP.= himpunan subscripts j untuk kj < 0 .

n  n j  fk   S k     k wk   kj wk    f k .Dari (1) dan (2) diperoleh Karena (1) dan (2). maka (3) dan (4) dapat digabungkan menjadi satu pembatas dalam bentuk. tidak dapat terjadi secara simultan. (mixed cut)  f k  1 jJ  jJ     Ilustrasi Penerapan Mixed Algorithm Maximasi Z = 7x1 + 9x2 dengan pembatas-pembatas: –x1 + 3x2 7x1 + x2 x2 ≥ 0 Tabel optimal kontinyu: 6  35 x1 ≥ 0 dan bilangan bulat .

Z = 55 b. x2 = 10/3.Tabel setelah penambahan mixed cut Tabel yang diperoleh dengan dual simplex: Solusi optimal. Digunakan sebagian besar software komersial . x1 = 4. Metode Branch and Bound • • Metode yang paling banyak digunakan dalam praktek untuk memecahkan masalah pemrograman bilangan bulat baik murni maupun campuran.

Oleh karena itu. solusi optimal bilangan bulat untuk ILP belum diperoleh dan Z1 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 xj dipilih untuk dicabangkan dengan nilai pecahan j dalam LP-1. .• • • Pada dasarnya merupakan prosedur enumerasi yang efisien untuk memeriksa semua solusi layak yang mungkin. 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. 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 xj bilangan bulat untuk j  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 Z1.

langkahnya selanjutnya adalah a. .• Misalkan dibuat dua masalah pemrograman linier baru. d. memecahkan masalah LP yang baru (proses bounding) c. Setelah masalah LP dipilih untuk dicabangkan lebih lanjut. LP-2 dan LP-3 dengan memasukkan masing-masing pembatas baru xj  [ ] dan xj  []+1 PL-2 Maksimasi Z = cx dengan pembatas Ax = b xj  [ ] x0 PL-3 Maksimasi Z = cx dengan pembatas Ax = b xj  [ ]+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. memilih variabel bilangan bulat dengan nilai pecahan yang akan dicabangkan untuk membentuk dua masalah LP baru (proses branching) b. 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. Proses branching dan bounding berlanjut hingga semua node dalam kondisi fathomed.

e. Solusi optimal LP merupakan bilangan bulat b. Nilai optimal Z dari masalah LP tidak lebih baik daripada batas bawah (lower bound) saat ini. Masalah LP adalah tak layak c. Fathoming suatu node (masalah LP): a. Bounding b. Branching c. • Esensi dari algoritma BB a. Fathoming Ilustrasi Penerapan Algoritma BB Maximasi Z = 2x1 + 3x2 dengan pembatas-pembatas: 5x1 + 7x2 4x1 + 9x2  35  36 .

x2 ≥ 0 dan bilangan bulat .x1.

Pencabangan dari LP-3 .

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

LIFO (Last-In First-Out). x2. x3. Algoritma BB untuk BILP Maximasi Z = 9x1 + 5x2 + 6x3 + 4x4 dengan pembatas-pembatas: 6x1 + 3x2 + 5x3 + 2x4 x3 + x4 -x1 -x2 + x3 + + x4  10 1 0 0 x1. 1} .b. x4 = {0. yaitu masalah LP yang dipecahkan paling belakangan.

.

EVALUASI .

POKOK PEMBAHASAN • • Northe West Corner Metoda Vogel’s METODA TRANSPORTASI TUJUAN PEMBELAJARAN 1. Memahami metoda Vogel’s untuk pencarian solusi optimal RINGKASAN MATERI Pendahuluan Masalah transportasi umumnya berkaitan dengan masalah pendistribusian suatu produk dari beberapa sumber ke sejumlah tujuan dengan biaya yang minimum. Memahami konsep solusi optimal permasalahan transportasi 3.X. Memahami konsep metode transportasi dan penerapannya 2. Contoh masalah transportasi: Berapa yang harus dikirim dari gudang 1 dan 2 ke masing-masing konsumen supaya biaya minimal? .

2. Jika suatu sumber i tidak dapat memasok suatu tujuan j. 2. Terdapat n tujuan (misal: pasar) dimana produk dibutuhkan. …. cij Tujuan 1 b1 b2 bj bn 2 . n x ij xij  0 i. n).. n m . 2.. j = 1. m) Permintaan dari tujuan : bj (j = 1. Sehingga.. 2.Rumusan pemrograman linier untuk kasus transportasi: • • • • • Terdapat m sumber (misal: gudang) dimana produk disimpan. n) Biaya pengiriman dari sumber i ke tujuan j : cij (i = 1. m. ….. j Model umum masalah transportasi dalam bentuk jaringan: Sumber a1 a2 ai am 1 2 . 2. m j = 1. 2. …. …. Ketersediaan pasokan dari sumber : ai (i = 1. …. …. Minimasi Z   cij xij i 1 j 1 m n dengan pembatas-pembatas: x j 1 m i 1 n ij  ai  bj i = 1. maka cij = M (M bilangan positif yang sangat besar) • Permasalahannya adalah menentukan jumlah produk yang dikirim dari sumber i ke tujuan j (dinyatakan dengan xij) yang meminimumkan biaya transportasi (pengiriman) total. model matematis kasus transportasi secara umum adalah sebagai berikut.

.n1  0. 2. ….Masalah Transportasi Standar/Seimbang (Standar/Balanced Transportation Problem)  a  b j 1 i i 1 m n j Model matematis: Minimasi Z   cij xij i 1 j 1 m n dengan pembatas-pembatas: x j 1 n ij  ai  bj i = 1. n x i 1 m ij xij  0 Masalah Transportasi Tak Seimbang i. 2.. 2. 2. j m n j 1 i 1 j = n+1 adalah tujuan fiktif dengan permintaan bn 1   ai   b j dan ci . n+1 x i 1 ij  bj xij  0 i. j  a  b j 1 i i 1 m n j Model matematis: Minimasi Z   cij xij i 1 j 1 m n 1 dengan pembatas-pembatas: x j 1 m n 1 ij  ai i = 1. m . ….2... …. n. i  1. m j = 1. …. m j = 1.

n Tabel Transportasi . ….. j  0. ai   b j j 1 i 1 m n Model matematis: Minimasi Z   cij xij i 1 j 1 m 1 n dengan pembatas-pembatas: x j 1 m 1 i 1 n ij  ai  bj i = 1. 2. j  1. n x ij j = n+1 adalah tujuan fiktif dengan permintaan bn 1   b j   ai i 1 j 1 xij  0 i.. 2. m+1 j = 1.2... …. j n m dan cm1.

Kasus I To From Des Moines Evansville Fort Lauderdale Albuquerque $5 $8 $9 Boston $4 $4 $7 Cleveland $3 $3 $5 Matriks transportasi: .Contoh-contoh kasus: a.

T. Kasus II Shipping costs. j= 1.: X11+X12+X13+X14 <= 35 X21+X22+X23+X24 <= 50 X31+X32+X33+X34 <= 40 X11+X21+X31 >= 45 X12+X22+X32 >= 20 X13+X23+X33 >= 30 X14+X24+X34 >= 30 Xij >= 0 (i= 1. Supply. Jika solusi optimal maka berhenti.2. and Demand for Powerco Example From City 1 Plant 1 Plant 2 $8 $9 City 2 $6 $12 To City 3 City 4 $10 $13 $9 $7 Supply (Million kwh) 35 50 Plant 3 Demand (Million kwh) $14 45 $9 20 $16 30 $5 30 40 Formulasi linier programming: Min Z = 8X11+6X12+10X13+9X14+9X21+12X22+13X23+7X24 +14X31+9X32+16X33+5X34 S.3.3.2. Penentuan solusi basis yang baru dan ke langkah 2 .b.4) (Demand Constraints) (Supply Constraints) Pemecahan Masalah Transportasi Algoritma pemecahan masalah transportasi: • • • Langkah 0: – – – – Perumusan masalah dalam masalah transportasi standar Langkah 1: Penentuan solusi basis layak awal Langkah 2: Pemeriksaan optimalitas.

Metode Penentuan Solusi Basis Layak Awal Penentuan solusi basis layak awal dapat dilakukan dengan beberapa metode yaitu: • • • Northwest corner method Least cost method Vogel’s approximation method (VAM) Northwest Corner Rule Langkah-langkah pengerjaan dijelaskan melalui contoh kasus berikut ini: Ketersediaan Produk Konsumen 2 2 2 1 3 10 Pabrik 8 5 4 7 7 6 6 8 5 4 3 4 4 Permintaan Konsumen 2 3 10 2 2 1 0 8 5 4 7 7 6 6 8 5 1 3 4 4 .

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

2 3 10 1 7 2 2 1 0 8 3 6 1 5 3 6 4 0 8 4 1 4 0 Solusi basis layak awal: 0 2 3 10 1 7 3 2 2 1 3 8 3 6 1 5 4 7 6 4 4 4 8 5 4 3 Biaya transportasi total Z = 92 Least Cost Rule 2 2 2 1 3 10 8 5 4 7 7 6 6 8 5 4 3 4 4 .

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

2 2 2 3 1 0 10 8 4 5 1 6 4 2 7 3 4 0 6 8 2 0 0 2 2 2 3 1 0 10 8 4 5 1 6 4 2 7 2 2 Solusi Basis Layak Awal 6 3 0 0 8 0 0 2 2 2 3 1 0 10 2 7 2 0 8 4 6 3 0 0 5 1 6 4 0 8 0 0 Biaya transportasi total Z = 79 .

Vogel’s Approximation Method (VAM) Penalti 2 2 2 1 3 10 8 5 4 7 1 1 7 6 6 8 5 0 4 Penalti 5 3 4 4 3 4 3 Penalti 2 3 2 2 1 0 10 8 5 4 7 1 7 6 6 8 5 0 1 Penalti 3 3 2 4 1 4 4 Penalti 2 3 2 2 1 0 10 8 5 4 7 6 6 8 5 0 4 3 3 1 Penalti 3 3 2 4 1 0 .

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) .Penalti 2 3 2 2 1 0 10 8 3 7 6 6 5 4 8 5 4 0 1 Penalti 3 1 0 Solusi Basis Layak Awal: Pasokan 2 3 10 8 3 7 1 Permintaan 4 2 2 1 3 5 4 6 1 4 7 6 3 3 8 5 4 4 Biaya transportasi total Z = 68 Degenerasi • • • Solusi basis layak dari masalah transportasi dikatakan degenerasi (degenerate) jika satu atau lebih variabel basis mempunyai nilai nol.

Ilustrasi degenerasi: 2 2 2 1 4 10 8 5 4 5 7 6 6 8 8 4 5 4 4 Sisa Pasokan 2 4 10 2 2 1 0 8 5 4 5 7 6 6 8 8 Sisa 0 Permintaan 5 4 4 Sisa Pasokan 2 4 10 0 7 2 2 1 0 8 5 4 5 6 6 8 8 Sisa 0 Permintaan 5 4 4 .

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

negatif atau nol). cij  cij  ui  v j  untuk semua variabel non basis Kondisi optimalitas (masalah minimasi ) terjadi apabila cij  cij  ui  v j   0 . 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 ui (untuk semua i) dan vj (untuk semua j) sedemikian hingga ui  v j  cij Untuk variabel non basis: untuk setiap variabel basis xij (Nilai ui dan vj bisa positif.Pasokan 2 4 10 0 7 2 2 1 4 8 5 6 4 5 0 6 4 4 4 4 5 8 8 Permintaan 4 5 Perbaikan Solusi Basis Layak Awal • Pada perbaikan solusi basis layak awal.

u1 = 0 v1 = 7 u1 = 0 u2 = 3 u3 = 0 2 v2 = 6 2 v3 = 2 2 v4 = 1 1 3 3 10 2 7 2 4 8 4 6 3 3 4 5 1 6 4 7 8 5 4 . suatu nilai variabel tertentu dapat ditetapkan sebarang. Misalnya.Jika kondisi belum optimal. variabel yang masuk basis adalah yang mempunyai cij paling negatif (masalah minimasi) Misal Diberikan Solusi Basis Layak Awal dengan Least Cost Method 2 2 2 3 1 0 10 2 7 2 0 8 4 6 3 0 0 5 1 6 4 0 8 0 0 u1  v4  1 u2  v1  10 u2  v3  5 u2  v4  4 u3  v1  7 u3  v2  6 Pemeriksaan optimalitas: Enam persamaan dengan tujuh variabel yang tak diketahui  terdapat tak hingga solusi yang mungkin Untuk mendapatkan solusi. dan nilai yang lain dapat dipecahkan.

2) = 2  x21 keluar basis Solusi baru: 2 2 10 2 2 1 1 4 8 4 5 3 6 4 7 7 2 4 Biaya transportasi total Z = 69 6 3 3 4 8 5 4 .cij  cij  ui  v j  v1 = 7 u1 = 0 u2 = 3 u3 = 0 -5 2 v2 = 6 -4 2 v3 = 2 0 2 3 10 2 7 2 4 x11 masuk basis v4 = 1 1 3 -1 8 4 6 4 5 1 6 7 4 7 8 3 3 4 4 5 v1 = 7 v2 = 6 v3 = 2 v4 = 1 u1 = 0 u2 = 3 u3 = 0 2 + 10 2 7 2 4 3 3 2 2 3 1 3 8 4 6 5 1+ 6 4 7 8 5 4 4  = min(3.

4.Pemeriksaan Optimalitas v1 = 2 u1 = 0 u2 = 3 u3 = 5 2 2 10 v2 = 1 2 v3 = 2 2 v4 = 1 1 1 3 8 4 5 3 6 4 7 7 2 4 6 3 3 4 8 5 4 v1 = 2 u1 = 0 u2 = 3 u3 = 5 2 2 5 10 v2 = 1 1 2 v3 = 2 0 2 v4 = 1 1 1 3 4 8 4 5 3 6 2 4 7 7 2 4 6 3 3 -1 8 5 4 4 x32 masuk basis v1 = 2 2 u1 = 0 2+ 10 v2 = 1 2 v3 = 2 2 v4 = 1 1 1 3 4 3+ u2 = 3 u3 = 5 8 4 5 7 7 2 4 6 3 3 6 + 4 4 8 5  = min(1. 2) = 1  x14 keluar basis .

Solusi baru: 2 3 10 2 2 1 4 8 3 5 4 6 1 4 7 7 1 4 Biaya transportasi total Z = 68 6 3 3 8 5 4 4 v1 = 2 u1 = 0 u2 = 4 u3 = 5 2 3 10 v2 = 1 2 v3 = 1 2 v4 = 0 1 4 8 3 5 4 6 1 4 7 7 1 4 6 3 3 8 5 4 4 v1 = 2 u1 = 0 u2 = 4 u3 = 5 2 3 10 v2 = 1 1 2 v3 = 1 1 2 v4 = 0 1 1 4 8 3 5 4 6 1 3 4 7 7 1 4 6 3 3 8 5 4 4 Solusi optimal. .

pilih variabel non basis dengan koefisien fungsi tujuan relatif paling positif. cij  cij  ui  v j   0 Untuk menentukan variabel non basis yang masuk basis. Contoh Implementasi Metode Stepping-stone . kondisi optimal terjadi jika koefisien fungsi tujuan relatif untuk variabel non basis tak positif.Masalah Maksimasi Pada kasus maksimasi.

3. Hitung Reduced Cost (Kij)= Cij-Ui-Vj. Tetapkan U1= 0 2. untuk sel yang mendapatkan alokasi.1. Contoh: . Hitung nilai Ui dan Vj dengan menggunakan persamaan Cij = Ui + Vj. untuk sel yang tidak mendapatkan alokasi.

Optimal: EVALUASI .

Terdapat n job (J1. Biaya pengerjaan untuk setiap job tergantung pada mesin yang ditugaskan. Masalah Penugasan • Biaya pengerjaan job j pada mesin i dinyatakan dengan cij. Karena itu. Jika suatu job i tidak dapat ditugaskan pada mesin j. sedangkan yang dimaksud dengan tujuan ialah pekerjaan (atau job). Mm). …. POKOK PEMBAHASAN • Metoda Penugasan ASSIGMENT TUJUAN PEMBELAJARAN 1. J2.XI. . • • • • Biasanya yang dimaksud dengan sumber ialah mesin-mesin. Memahami metoda pencarian solusi optimal RINGKASAN MATERI Rumusan Masalah Penugasan Model Penugasan • Model penugasan merupakan kasus khusus dari model transportasi. bentuk standard model penugasan ini adalah jumlah mesin (m) sama dengan jumlah job (n) yaitu sama dengan n. Jn) yang harus ditugaskan (dikerjakan) pada mesin. …. Memahami konsep assignment dan penerapannya 2. dimana sejumlah m sumber ditugaskan kepada sejumlah n tujuan (satu sumber untuk satu tujuan) sedemikan sehingga di dapat ongkos total yang minimum. Terdapat m mesin (M1. M2. maka cij = M (M bilangan positif yang sangat besar) • • Tiap mesin hanya dapat mengerjakan satu job.

2. …. Rumusan Pemrograman Linier (Tepatnya: Pemrograman Linier Bilangan Bulat 0-1) Minimasi Z   cij xij i 1 j 1 n n dengan pembatas-pembatas: x j 1 n i 1 n ij  1. 2.• Permasalahannya adalah menentukan penugasan job pada mesin yang meminimumkan biaya total.  1. n jika job j ditugaskan pada mesin i yang lain x ij 1  xij   0  Tabel Transportasi Job J1 M1 M2 c11 J2 c12 Jn c1n 1 c22 c22 c1n 1 Mesin 1 cn1 1 1 Mn cn2 1 1 cnn 1 . i = 1. n j = 1. ….

Metode Hungarian • • Asumsi adalah semua elemen biaya (cij) tak negatif. Prinsip dasar: – Solusi optimal penugasan tidak terpengaruh jika suatu konstanta ditambahkan atau dikurangkan dari sebarang baris atau kolom dari matriks biaya. Jika jumlah mesin lebih sedikit dari jumlah job (m < n) maka dibuat tambahan (n – m) mesin fiktif dengan biaya penugasan nol. metode yang dibahas adalah Metode Hungarian.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. Pemecahan Masalah Penugasan 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. Z   cij xij   cij  pi  q j xij i j i j   cij xij   pi xij  q j xij i j i j i j   cij xij   pi xij  q j xij       cij xij   pi   xij   q j   xij    i j i  i   j  i   cij xij   pi 1  q j 1 i j i i i j i j i j   cij xij  konstanta i j .

• 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. Jika diperoleh solusi layak maka berhenti dan diperoleh solusi optimal.Struktur algoritma Metoda Hungarian: • • Langkah 0: – – • Matriks biaya Langkah 1: Reduksi baris. Langkah 2: – Reduksi kolom. lanjutkan ke Langkah 3. . lanjutkan ke Langkah 2. J1 M1 M2 M3 M4 J2 9 4 1 3 J3 8 5 1 5 J4 7 6 2 6 Nilai Minimum Baris 1 10 3 2 4 Kurangkan masing-masing nilai biaya dengan nilai biaya minimum tiap barisnya seperti tabel berikut ini. Jika sebaliknya. J1 M1 M2 M3 M4 Reduksi baris dengan cara: J2 9 4 1 3 J3 8 5 1 5 J4 7 6 2 6 10 3 2 4 Cari nilai-nilai minimum dari tiap baris seperti pada gambar berikut ini. Jika diperoleh solusi layak maka berhenti dan diperoleh solusi optimal. Jika sebaliknya.

J1 M1 M2 M3 M4 10 – 7 3 -3 2–1 4–3 J2 9–7 4–3 1–1 3–3 J3 8–7 5–3 1–1 5–3 J4 7–7 6–3 2–1 6-3 Periksa nilai nol pada masing-masing baris. J1 M1 M2 M3 M4 J2 2 1 0 0 J3 1 2 0 2 J4 0 3 1 3 3 0 1 1 Solusi dinyatakan layak jika terdapat nilai nol yang memasangkan masing-masing 1 mesin terhadap 1 job. nilai nol memasangkan masing-masing 1 mesin terhadap 1 job. maka solusi dikatakan optimal dengan kesimpulan sebagai berikut. M1  J4 M2  J1 M3  J3 M4  J2 Biaya penugasan total Z = 7 + 3 + 1 + 3 = 14 . Karena pada kasus ini.

maka solusi dikatakan belum layak.Contoh 2: Penugasan empat job dan empat mesin dengan biaya penugasan seperti pada tabel berikut ini. . J1 M1 10 J2 9 J3 7 J4 8 M2 M3 M4 Reduksi baris: 5 5 2 8 4 3 7 6 4 7 5 5 J1 M1 M2 M3 M4 Hasil reduksi baris: J2 9–7 8–5 4–4 3–2 J3 8–7 7–5 6–4 4–2 J4 7–7 7–5 5–4 5-2 10 – 7 5–5 5–4 2–2 J1 M1 M2 M3 3 0 1 J2 2 3 0 J3 0 2 2 J4 1 2 1 M4 0 1 2 3 Karena Job 4 belum mendapatkan sebuah mesin.

J2 2 3 0 1 J3 0 2 2 2 J4 0 1 0 2 3 0 1 0 Solusi belum layak karena belum dapat ditemukan pasangan tepat satu-satu antara Selanjutnya.Selanjutnya. J1 M1 M2 M3 M4 mesin dan job. lakukan reduksi kolom. lalu lakukan pengurangan setiap nilai (ongkos) terhadap nilai minimum pada kolomnya. Cari nilai minimum dari tiap-tiap kolom. J1 M1 M2 3 0 J2 2 3 J3 0 2 J4 1 2 M3 M4 1 0 0 1 2 2 1 3 J1 M1 M2 3–0 0–0 J2 2–0 3–0 J3 0–0 2–0 J4 1–1 2–1 M3 M4 1–0 0–0 0–0 1–0 2–0 2–0 1–1 3–1 Hasil reduksi kolom adalah sebagai berikut. lakukan modifikasi matriks seperti ilustrasi berikut ini. .

Buat garis seminimum mungkin (biasanya jumlah kolom . J1 M1 M2 M3 M4 3 0 1 0 J2 2 3 0 1 J3 0 2 2 2 J4 0 1 0 2 Elemen terkecil yang tak tertutup garis Tambahkan nilai elemen yang berada pada titik potong dua garis dengan nilai elemen terkecil yang tidak tertutup baris J1 M1 3 3+1 J2 2 J3 0 J4 0 M2 M3 M4 0 1 0 3 0 1 2 2 2 1 0 2 .Tarik garis (horizontal/vertikal) yang menghubungkan nilai-nilai nol.1) J1 M1 3 J2 2 J3 0 J4 0 M2 M3 M4 0 1 0 3 0 1 2 2 2 1 0 2 Tandai elemen terkecil yang tidak tertutupi garis.

operasinya adalah sebagai berikut: M2 M3 M4 0 1+1 0 3–1 0 1–1 2–1 2 2-1 1-1 0 2-1 .Kurangi nilai elemen-elemen yang tidak tertutup garis dengan nilai elemen terkecil J1 M1 3 J2 2 3-1 J3 0 J4 0 M2 M3 M4 0 1 0 3 0 1 2 2 2 1 0 2 Abaikan nilai elemen-elemen yang tertutup satu garis J1 M1 3 J2 2 J3 0 J4 0 M2 M3 M4 J1 M1 3+1 0 1 0 J2 2 3 0 1 J3 0 2 2 2 J4 0 1 0 2 Secara keseluruhan.

J1 M1 M2 M3 M4 M1  J3 M2  J1 M3  J4 M4  J2 Solusi optimal alternatif: J2 2 2 0 0 J3 0 1 2 1 J4 0 0 0 1 4 0 2 0 Biaya penugasan total Z = 7 + 5 + 5 + 3 = 20 J1 M1 M2 M3 M4 M1  J3 M2  J1 M3  J4 M4  J2 J2 2 2 0 0 J3 0 1 2 1 J4 0 0 0 1 4 0 1 0 Biaya penugasan total Z = 7 + 7 + 4 + 2 = 20 . karena sudah terdapat pasangan untuk tiap mesin dan tiap job.Hasil modifikasi matriks adalah sebagai berikut: J1 M1 4 J2 2 J3 0 J4 0 M2 M3 M4 Solusi optimal: 0 2 0 2 0 0 1 2 1 0 0 1 Solusi layak.

• Langkah 3 – Terapkan metode Hungarian. Contoh 3: Max Profit: M1 M2 M3 M4 J1 6 4 3 8 J2 4 5 6 5 J3 -M 2 7 3 J4 2 1 7 4 Setiap nilai dikalikan (-1) sehingga menghasilkan matriks sebagai berikut: M1 M2 M3 M4 J1 -6 -4 -3 -8 J2 -4 -5 -6 -5 J3 M -2 -7 -3 J4 -2 -1 -7 -4 .Masalah Maksimasi Langkah pengerjaan: • Langkah 1 – • Konversikan ke masalah minimasi dengan mengalikan semua elemen (cij) 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.

(Reduksi kolom tidak dilakukan karena nilai minimum tiap kolom adalah nol. pencarian solusi optimal diilustrasikan sebagai berikut. M1 M2 M3 M4 J1 0 1 7 0 J2 2 0 4 3 J3 M+3 0 0 2 J4 1 1 0 1 .) M1 M2 M3 M4 Hasil modifikasi matriks: J1 0 1 4+3 0 J2 2 0 1+3 3 J3 M+6 – 3 3–3 0 5-3 J4 4–3 4–3 0 4-3 M1 M2 M3 M4 J1 0 1 7 0 J2 2 0 4 3 J3 M+3 0 0 2 J4 1 1 0 1 Solusi belum layak. M1 M2 M3 M4 J1 -6 -4 -3 -8 J1 0 1 4 0 J2 -4 -5 -6 -5 J2 2 0 1 3 J3 M -2 -7 -3 J4 -2 -1 -7 -4 J3 M+6 3 0 5 + 6 5 7 8 J4 4 4 0 4 M1 M2 M3 M4 Solusi belum layak.Dengan langkah pengerjaan seperti yang telah dinyatakan di atas. lakukan kembali modifikasi matrisk. langkah pengerjaan dilanjutkan dengan modifikasi matriks.

M1 M2 M3 M4 Solusi layak optimal: J1 0 1+1 7+1 0 J2 2–1 0 4 3–1 J3 M+3-1 0 0 2–1 J4 1–1 1 0 1–1 M1 M2 M3 M4 M1-J1 M2-J2 M3-J3 M4-J4 J1 0 2 8 0 J2 1 0 4 2 J3 M+2 0 0 1 J4 0 1 0 0 Z = 6 + 5 + 7 + 4 = 22 Solusi layak optimal alternatif: M1 M2 M3 M4 M1-J4 M2-J2 M3-J3 M4-J1 J1 0 2 8 0 J2 1 0 4 2 J3 M+2 0 0 1 J4 0 1 0 0 Z = 2 + 5 + 7 + 8 = 22 Transhipment .

EVALUASI .

dan hubungan antar node 2. Analisis jaringan kerja memungkinkan suatu perencanaan yang efektif dari suatu rangkaian yang mempunyai interaktivitas. Kejadian didefinisikan sebagai ujung atau pertemuan dari satu atau beberapa kegiatan . Poin-poin penting dalam analisis jaringan: • • Sebuah jaringan terdiri dari sekumpulan node yang terhubungan dengan arcs atau branches.XII. Memahami permasalahan Maximum Flow 5. Memahami konsep node. POKOK PEMBAHASAN • • • • Lintasan Terpendek Spanning Tree Maximum Flow TSP ANALISIS JARINGAN TUJUAN PEMBELAJARAN 1. Memahami permasalahan pencarian rute terpendek 3. menyatakan sebuah kejadian atau peristiwa atau event. Memahami permasalahan travel salesman problem dan metoda pencarian solusi RINGKASAN MATERI Pendahuluan Analisis Jaringan merupakan suatu perpaduan pemikiran yang logis. arch. Memahami permasalahan spanning tree dan metoda pencarian solusi optimal 4. digambarkan dengan suatu jaringan yang berisi lintasan-lintasan kegiatan dan memungkinkan pengolahan secara analitis. Node (lingkaran kecil).

5} A = { (1. 4). biaya). (3. dan 4 ke 2. menyatakan sebuah kegiatan atau aktivitas. peralatan. . (1. 4.• Arcs (Anak panah). Contoh: N = {1. (4. (2. 3 ke 4. 3. Kegiatan di sini didefinisikan sebagai hal yang memerlukan jangka waktu tertentu dalam pemakaian sejumlah sumber daya (sumber tenaga. 5)} Siklus adalah lintasan yang menghubungkan suatu node dengan node itu sendiri. 2). Arc Node Function on Arcs 10 Jaringan G dinyatakan dengan notasi standard: G = (N. 4). A). (2. 3). 5). (3. Contoh: Lintasan 2 ke 3. 2. dengan N adalah set dari node dan A adalah set dari arcs. (2. material. 3). 5).

Masalah Lintasan Terpendek (Shortest Path) 3.  Penjadwalan ulang untuk mengatasi hambatan dan keterlambatan. Masalah Spanning Tree minimal 2. Masalah Maximum Flow 4.  Pengadaan pengawasan dan pembagian kerja maupun biaya.  Penjadwalan pekerjaan dalam urutan yang praktis dan efisien. Travel Salesman Problem Model Spanning Tree minimal  Tree merupakan sekelompok arcs yang terhubung yang tidak membentuk siklus 1 3 2  4 Spanning tree merupakan Tree yang menghubungkan seluruh node pada suatu jaringan .  Menentukan kemungkinan pertukaran antara waktu dan biaya.1 3 5 2 4 Keuntungan dan Manfaat Analisis Jaringan  Menyelesaikan masalah yang berhubungan dengan desain sistem transportasi & komunikasi  Dapat merencanakan suatu proyek secara keseluruhan. Permasalahan Jaringan 1.

Contoh (mencari spanning tree minimal) 3 60 45 50 1 4 20 45 40 6 9 30 40 35 30 5 25 15 7 20 10 2 35 30 50 25 8 .  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. dan sisa node lainnya menjadi unconnected nodes. Kedua node ini menjadi connected nodes. Ulangi langkan ini sampai seluruh node terhubung.1 iterasi dari langkah di atas.1 3 5 2 4  Masalah spanning tree minimal berusaha untuk mencari jumlah arc lengths minimum yang dibutuhkan untuk menghubungkan seluruh node dalam suatu jaringan.  Note: Suatu kasus dengan n node yang akan dihubungkan akan memerlukan n . Prosedur Penyelesaian Spanning Tree  Step 1: pilih salah satu node (bebas) dan hubungan pada node terdekat. Kriteria lainnya adalah seperti waktu dan biaya.  Kriteria yang akan diminimisasi dalam kasus spanning tree minimal tidak terbatas pada jarak meskipun istilah ―terdekat‖ ("closest―) digunakan untuk menjelaskan suatu prosedur.

9.6.7.2.2 Unconnected nodes: 3.6.8.8.9.4.Iterasi 1: Secara acak dipilih node 1.5 Unconnected nodes: 3. Connected nodes: 1.10 Arcs terpilih: 1-2.7.5. awalnya kita punya: Connected nodes: 1.10 Arcs terpilih: 1-2 3 60 45 50 1 4 20 45 40 6 9 30 40 35 30 5 25 15 7 20 10 2 35 30 50 25 8 Iterasi 2: Unconnected node terdekat dari connected node adalah node 5 (distance = 25 to node 2). kita lihat bahwa node terdekat adalah node 2 (jarak = 30). Node 5 menjadi connected node.4. Sehingga. 2-5 45 50 1 4 3 60 20 45 40 6 9 30 40 35 30 5 25 15 7 20 10 2 35 30 50 25 8 .

5-7.2.9. Connected nodes: 1. Node 7 menjadi connected node.10 Unconnected nodes: 3. Connected nodes: 1.8. 7-10 3 60 45 50 1 4 20 45 40 6 9 30 40 35 30 5 25 15 7 20 10 2 35 30 50 25 8 . 5-7 3 60 45 50 1 4 20 45 40 6 9 30 40 35 30 5 25 15 7 20 10 2 35 30 50 25 8 Iterasi 4: Unconnected node terdekat dari connected node adalah node 10 (distance = 20 to node 7).Iterasi 3: Unconnected node terdekat dari connected node adalah node 7 (distance = 15 to node 5).5.8.7.5. 2-5.7 Unconnected nodes: 3.9 Arcs terpilih: 1-2.10 Arcs terpilih: 1-2.2. 2-5.6.6. Node 10 menjadi connected node.4.4.

4. Node 6 menjadi connected node.10. Node 8 menjadi connected node. 5-7.5. 7-10.9 Arcs terpilih: 1-2. 10-8. 10-6 3 45 60 20 9 30 6 40 50 1 4 45 40 30 35 5 25 15 7 20 10 2 35 30 50 25 8 .4. 2-5.7.6. 10-8 3 45 60 50 1 4 45 20 6 9 30 40 35 40 30 5 25 2 15 7 35 30 50 20 10 25 8 Iterasi 6: Unconnected node terdekat dari connected node adalah node 6 (distance = 35 to node 10).10.Iterasi 5: Unconnected node terdekat dari connected node adalah node 8 (distance = 25 to node 10). 2-5.6 Unconnected nodes: 3.8 Unconnected nodes: 3. Connected nodes: 1.5.9 Arcs terpilih: 1-2.7. 5-7. Connected nodes: 1.8. 7-10.2.2.

7. 7-10. 6-3. 2-5. 10-6. Node 9 menjadi connected node.2.Iterasi 7: Unconnected node terdekat dari connected node adalah node 3 (distance = 20 to node 6).10.8.6. 5-7.8.5. 2-5. 6-9 3 45 50 1 4 45 60 20 6 40 40 35 5 9 30 30 25 2 35 30 50 15 7 20 10 25 8 .9 Unconnected nodes: 4 Arcs terpilih: 1-2. 5-7. 6-3 3 45 50 1 4 45 60 20 6 40 40 35 5 9 30 30 25 2 35 30 50 15 7 20 10 25 8 Iterasi 8: Unconnected node terdekat dari connected node adalah node 9 (distance = 30 to node 6).3 Unconnected nodes: 4. 10-8. Node 3 menjadi connected node.3.9 Arcs terpilih: 1-2.10.6.5. 10-6. 7-10.2. 10-8.7. Connected nodes: 1. Connected nodes: 1.

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

(Seluruh node yang dilabeli pada langkah ini memiliki n = 1. untuk tiap node yang dapat dicapai secara langsung dari node 1.n).)  Disain jaringan high-voltage electrical transmission lines  Disain jaringan pipelines untuk menghubungkan sejumlah lokasi Model Lintasan Terpendek  Pada jaringan yang diberikan. (d. computer networks.Beberapa aplikasi masalah Spanning Tree minimal  Disain jaringan telekomunikasi (fiber-optic networks.S]. Karena node 1 tidak memiliki preceding node.) • Step 3: identifikasi node dengan label sementara yang memiliki distance value terkecil. dimulai dengan start node 1 and diakhiri dengan terminal node n. ]). Langkah-Langkah Pengerjaan Lintasan Terpendek • Step 1: tetapkan node 1 dengan label permanen [0.)  Disain jaringan transportasi untuk meminimumkan biaya total dari penyediaan link (rail lines. . dij Cari lintasan total jarak minimum yang menghubungkan node to node n. maka starting node dilabeli dengan S. waktu. Jika seluruh node telah dilabeli secara permanen. cari lintasan jarak. Node k kemudian dilabeli secara permanen (menggunakan tanda kurung [ . • Step 2: hitung label-label sementara. leased-line telephone networks. cable television networks. etc. atau biaya minimum dari poin awal (the start node) sampai ke tujuan (the terminal node)  Definisi masalah    Terdapat n buah node. roads. GO TO STEP 5. Anggap node ini adalah node k. Angka pertama adalah jarak dari node 1. etc. n menunjukkan preceding node pada rute dari node 1 — ini disebut sebagai preceding node value. d = jarak langsung dari node 1 ke node in question — ini disebut sebagai distance value. angka kedua adalah preceding node. Bi-directional arcs menghubungkan connected node i dan j dengan jarak nonnegative.

Rute terpendek pada given node dapat dicari secara backwards dengan dimulai dari given node dan bergerak menuju preceding node. Setelah itu. dimana t = (arc distance dari node k menuju node i) + (Distance value pada node k). Jika t > distance value dari node yang terlabeli sementara.k). Jika node yang belum dilabeli secara permanen tidak memiliki label sementara. – Jika node yang belum dilabeli secara permanen memiliki label sementara. ganti label sementara yang dipertanyakan dengan (t. buat label sementara (t.• Step 4: untuk setiap node yang tidak memiliki label permanen yang dapat dicapai secara langsung dari node k pada langkah 3. pertahankan label sementara saat ini.k) untuk node yang dipertanyakan. hitung jumlah t. Contoh Kasus Shortest Path Find the shortest route from node 1 to all other nodes in the network: 2 4 1 5 4 7 3 3 1 6 8 6 5 5 6 2 3 7 2 . Dengan melanjutkan prosedur ini dari preceding node akan menghasilkan rute terpendek dari node 1 menuju node yang dipertanyakan. • • – Jika t < distance value dari node yang terlabeli sementara. GO TO STEP 3. bandingkan t dengan distance value saat ini dengan node yang dipertanyakan yang terlabeli sementara. • Step 5: – – – Label permanen mengidentifikasi jarak terpendek dari node 1 menuju setiap node seperti halnya preceding node pada rute terpendek.

dan 4 terhubung langsung dengan node 1.S] 1 5 5 6 2 3 7 2 6 3 7 3 (7.1) untuk node 3. jangan diubah.1) 6 8 5 (5.1) 2 4 [0.1) 6 8 5 (5. tetapkan label sementara (4. – Step 3: node 2 adalah node yang dilabeli sementara yang memiliki jarak terpendek (4). dan selanjunya menjadi node baru yang terlabeli permanen. Step 2: karena node 2. Label sementara: (4.S] 1 5 5 6 2 3 7 2 6 3 7 3 (7.) Hasil Iterasi 1 [4.) Node 5: 5 + 4 = 9 (tetapkan label sementara pada node 5 dengan (9.2) karena node 5 belum memiliki label. • • Node 3: 3 + 4 = 7 (tidak lebih kecil dari label saat ini. dan (5.• Iteration 1 – – Step 1: tetapkan node 1 dengan label permanen [0. (7.1] (9.1) untuk node 2. 3.1) 4 1 .1) 4 1 – Step 4: untuk setiap node yang berlabel sementara yang terhubung dengan node 2 hanya dengan satu arc.S]. hitung jumlah arc length dengan distance value node 2 (yaitu 4).1) untuk node 4.2) 2 4 [0.

4) 3 7 3 (6. hitung jumlah arc length dengan jarak ke node 3 (yaitu 6).3) karena 12 < jarak saat ini (13)) .4) karena node 6 belum dilabeli.4) 6 8 5 [5.1] (9. Step 4: untuk setiap node dengan label sementara yang terhubung dengan node 3 hanya dengan satu arc. Step 4: untuk setiap node dengan label sementara yang terhubung dengan node 4 menggunakan satu arc.• Iteration 2 – – Step 3: node 4 memiliki jarak label sementara terpendek (5). • • Node 5: 2 + 6 = 8 (ganti label sementara node 5 dengan (8. sehingga menjadi node baru yang terlabeli secara permanen. • • Node 3: 1 + 5 = 6 (ganti label sementara node 3 dengan (6. hitung jumlah arc length dengan distance value node 4 (yaitu 5).S] 1 5 5 6 2 3 7 2 6 (13.4) karena 6 < jarak saat ini (7)) Node 6: 8 + 5 = 13 (tetapkan label sementara node 6 dengan (13. Node 4 menjadi node baru yang terlabeli permanen.2) 2 4 [0.3) karena 8 < jarak saat ini (9)) Node 6: 6 + 6 = 12 (ganti label sementara node 6 dengan (12.1] 4 1 • Iteration 3 – – Step 3: node 3 memiliki jarak label sementara terpendek (6).) Hasil Iterasi 2 [4.

1] 4 1 .5) 3 7 3 [6.1] [8. • • Node 6: 3 + 8 = 11 (ganti label sementara node 6 dengan (11.1] 4 1 • Iteration 4 – – Step 3: node 5 memiliki jarak label sementara terkecil (8). hitung jumlah arc length dengan distance value dari node 5 (yaitu 8).4] 6 8 5 [5.5) karena node 7 belum dilabeli.) Hasil Iterasi 4 [4. sehingga menjadi node baru yang terlabeli permanen.3] 2 4 [0.1] (8.Hasil Iterasi 3 [4.4] 6 8 5 [5.S] 1 5 5 6 2 3 7 2 6 (12.5) karena 11 < jarak saat ini (12)) Node 7: 6 + 8 = 14 (tetapkan label sementara untuk node 7 dengan (14.5) (14.3) 2 4 [0.S] 1 5 5 6 2 3 7 2 6 (11.3) 3 7 3 [6. Step 4: untuk setiap node dengan label sementara yang terhubung dengan node 5 hanya dengan satu arc.

• Ringkasan solusi Node 2 3 4 5 6 7 minimum distance 4 6 5 8 11 13 shortest route 1-2 1-4-3 1-4 1-4-3-5 1-4-3-5-6 1-4-3-5-6-7 .6) 3 7 3 [6. dan karenanya seluruh node terlabeli permanen. Step 4: untuk setiap node dengan label sementara yang terhubung dengan node 6 hanya dengan satu arc.4] 6 8 5 [5.3] 2 4 [0.S] 1 5 5 6 2 3 7 2 6 [11.1] [8. • Node 7: 2 + 11 = 13 (ganti label sementara node 7 dengan (13.6) karena 13 < jarak saat ini (14)) Hasil Iterasi 5 [4. Lanjutkan pada ringkasan di langkah 5. Step 5: ringkas dengan pengusutan backwards rute terpendek melewati label permanen.5] (13.• Iteration 5 – – Step 3: node 6 memiliki jarak label sementara terkecil (11). sehingga menjadi node baru dengan label permanen.1] 4 1 • Iteration 6 – – Step 3: node 7 jadi terlabeli permanen. hitung jumlah arc length plus dengan distance value node 6 (yaitu 11).

Selanjutnya Go to step 1. • Step 2: cari arc capacity terkecil. dapat memiliki flow capacity yang berbeda antara dari i ke j dengan dari j ke i.j). Dimungkinkan bawah sebuah arc.2 4 1 5 4 7 3 3 1 5 5 6 2 3 7 2 6 6 8 Model Maximum Flow • • • Masalah maximal flow terkait dengan penentuan volume aliran maksimum dari satu node (disebut source) menuju node lainnya (disebu sink). • Step 3: pada lintasan yang terpilih di langkah 1. (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. pf. Pada masalah maximal flow. setiap arc memiliki arc flow capacity maksimum yang membatasi aliran menuju arc tersebut. kurangi seluruh arc flow capacities pada arah aliran dengan pf dan tambahkan seluruh arc flow pada arah aliran yang berlawanan dengan pf. artinya solusi optimal telah ditemukan. . pada lintasan yang terpilih di langkah 1. Tingkatkan aliran pada jaringan dengan mengirim sejumlah pf pada lintasan ini. Jila tidak ada lintasan yang tersedia.

yang memiliki flow capacities yang lebih besar dari nol pada seluruh arcs lintasan. Salah satu lintasannya adalah 1-2-5-7. 1.2 = 2 (2-5) 3 . – – Step 2: Arc flow capacity terkecil pada lintasan 1-2-5-7 adalah minimum dari {4.Contoh kasus Find the maximal flow from node 1 to node 7 in the following network: 2 0 4 1 3 2 3 3 3 4 5 2 0 3 1 1 5 6 4 3 0 3 0 5 3 6 4 0 0 7 0 • Iteration 1 – Step 1: cari lintasan dari source node. 2} = 2. 7. 3. menuju the sink node.2 = 1 (5-7) 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 = 0 Hasil Iterasi 1: 2 (2-1) 0 + 2 = 2 (5-2) 3 + 2 = 5 (7-5) 0 + 2 = 2 2 2 1 1 2 3 3 5 4 5 0 2 3 1 1 5 6 4 3 0 3 0 5 3 6 4 0 0 7 0 .

Step 2: Arc flow capacity terkecil pada 1-4-7 adalah 3.1 = 4 (3-1) 0 + 1 = 1 (4-3) 5 + 1 = 6 (6-4) 1 + 1 = 2 (7-6) 0 + 1 = 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 . Step 2: Arc capacity minimum pada 1-3-4-6-7 adalah 1.• Iteration 2 – – – Step 1: lintasan 1-4-7 memiliki flow capacity yang lebih kecil dari nol pada tiap arc. Step 3: kurangi arc flow capacities lintasan pada arah aliran dengan 3.1 = 0 (6-7) 5 .3 = 1 (4-7) 3 . dan tambahkan kapasitas ini pada arah yang berlawanan dengan 3: (1-4) 4 .1 = 2 (4-6) 1 .1 = 2 (3-4) 3 .3 = 0 Hasil Iterasi 2: 2 (4-1) 0 + 3 = 3 (7-4) 0 + 3 = 3 2 2 1 1 2 3 3 5 4 5 0 2 0 1 1 5 6 1 3 0 3 3 5 3 6 4 3 0 7 0 • Iteration 3 – – – Step 1: Lintasan 1-3-4-6-7 memiliki flow capacity lebih besar dari nol pada tiap arc.

2 = 0 (3-6) 6 .2 = 4 (6-7) 4 .2 = 2 (3-1) 1 + 2 = 3 (6-3) 0 + 2 = 2 (7-6) 1 + 2 = 3 Hasil Iterasi 4 2 2 2 1 1 2 3 3 5 4 5 0 2 0 0 2 2 6 1 0 3 3 3 6 2 4 4 3 3 7 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 .Hasil Iterasi 3 2 2 2 1 1 2 3 3 5 4 5 0 2 0 0 2 4 6 1 2 1 3 • Iteration 4 – – – 3 6 2 6 4 3 1 7 0 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.

Hasil iterasi 5: (2-1) 2 + 2 = 4 (4-2) 3 + 2 = 5 (3-4) 2 + 2 = 4 (6-3) 2 + 2 = 4 (7-6) 3 + 2 = 5 2 4 0 1 1 0 5 3 5 4 5 0 2 3 5 2 0 6 1 0 3 3 3 4 0 0 4 4 2 4 7 Sudah tidak terdapat flow menuju sink node 7 yang positif. Step 2: Arc capacity terkecil pada 1-2-4-3-6-7 adalah 2. .2 = 0 (2-4) 2 . Dengan demikian.2 = 2 (6-7) 2 . aliran 1 unit diarahkan dari node 3 menuju node 4. Pada iterasi 5 aliran 2 unit diarahkan dari node 4 menuju node 3. flow maksimal yang dari node 1 to node 7 telah didapat. rute terpendek dari node 1 menuju node 7 adalah 1-2-4-3-6-7.• Iteration 5 – – – Step 1: dengan menggunakan algoritma shortest route. 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.2 = 4 (3-6) 4 .2 = 0 Note: Arc 3-4 pada iterasi 3. 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 (4-3) 6 .

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:
2 2 3 4 1 1 3 3 4 6 1 3 7 1
5

5 2

4

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.

Travel Salesman Problem
   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

3

2
2

4 2 1 4

3
2

3

1
3

4
5

5
 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 1062.

Model Matematis TSP Inputs: n cij = jumlah pelanggan termasuk depot = ongkos perjalanan dari pelanggan i menuju j

Decision variables:

1 jika kendaraan berjalan dari pelanggan i ke j. xij   0 otherwise

min  cij xij
i 1 j 1 n

n

n

s.t.

x x
j 1 i 1 n

ij

1 1

for all j for all i for all i, j

(1) (2)

ij

xij  0,1

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

Contoh:

minimize s.t.

2x12+3x13+2x14+3x15+3x23+4x24+...+5x45 x12+x13+x14+x15 = 1 x21+x31+x41+x51 = 1 ... ... for node 1 for node 1

Apakah solusi ini fisibel untuk formulasi kita? Kita membutuhkan pembatas tambahan yang disebut subtour elimination constraints.

Subtour Elimination Constraints

 x
iS jS

ij

 1 for every subset S

 x
iS jS

ij

 S  1 for every subset S
2 3

1 5
Contoh solusi fisible
2

4

3

1 4

5

2 3

1 4

5

Contoh solusi tidak fisible
2
3

1

Terdapat 2 stuktur 4

5

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

Contoh kasus Data Cij untuk 5 pelanggan adalah sebagai berikut:

1
1 ∞

2
10

3
3

4
6

5
9

2
3

5
4


9

5

4
7

2
8

4
5
Pencarian solusi awal

7
3

1
2

3
6


5

4

Dengan metode Hungarian:

1 1 2 3 M 5 4

2 10 M 9

3 3 5 M

4 6 4 7

5 9 2 8

min

3 2 4

4 5

7 3

1 2

3 6

M 5

4 M

1 2

M-3 3 0

7 M-2 5

0 3 M-4

3 2 3

6 0 4

6 1

0 0

2 4

M-1 3

3 M-2

Nilai minimum diluar garis = 2

M-1 3 0

9 M-2 5

0 1 M-6

3 0 1

8 0 4

6 1

0 0

0 2

M-3 1

3 M-2

Nilai minimum diluar garis = 1
M-2 3 0 9 M-1 6 0 2 M-5 2 0 1 7 0 4

5 0

0 0

0 2

M-2 0

2 M-3

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

Pencarian Solusi Fisibel

1
X13 = 0

Z = 15 S = {(1-3-1), (2-5-4-2)} Status: Tidak Layak
X31 = 0

2

3

Pencarian solusi Masalah 2 Dengan metode Hungarian:
min

M 5 4

10 M 9

M 5 M

6 4 7

9 2 8

6 2 4

7 3

1 2

3 6

M 5

4 M

1 2

M-6 3 0

4 M-2 5

M-6 3 M-4

0 2 3

3 0 4

6 1

0 0

2 4

M-1 3

3 M-2

Nilai minimum diluar garis = 1

M-7 3 0

4 M-1 5

M-7 3 M-4

0 3 4

2 0 4

5 0

0 0

1 3

M-1 3

2 M-3

Nilai minimum diluar garis = 1

2-5 dengan z = 17. (2-5)} Status: Tidak Layak 3 Pencarian solusi Masalah 3 Dengan metode Hungarian: min M 5 M 10 M 9 3 5 M 6 4 7 9 2 8 3 2 7 7 3 1 2 3 6 M 5 4 M 1 2 M-3 3 M-7 6 1 7 M-2 2 0 0 0 3 M-7 2 4 3 2 0 M-1 3 6 0 1 3 M-2 Nilai minimum diluar garis = 1 . Solusi masalah 2 tidak fisibel 1 X13 = 0 Z = 15 S = {(1-3-1). (2-5-4-2)} Status: Tidak Layak X31 = 0 2 Z = 17 S = {(1-4-3-1).M-7 4 0 5 M 6 M-7 3 M-5 0 3 3 2 0 3 5 0 0 0 0 2 M-2 2 1 M-4 Solusi masalah 2: 1-4-3-1.

The State University campus has five computers. 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. (2-5)} Status: Tidak Layak 3 Z = 16 S = {(1-3-4-2-5-1)} Status: Layak EVALUASI Soal 1. Solusi masalah 3 fisibel 1 X13 = 0 Z = 15 S = {(1-3-1). The distances between computers are given in the figure below.M-4 3 M-7 7 M-1 3 0 4 M-6 2 2 0 5 0 1 5 0 0 0 2 4 M-2 2 2 M-3 Solusi masalah 3: 1-3-4-2-5-1 dengan z = 16. (2-5-4-2)} Status: Tidak Layak X31 = 0 2 Z = 17 S = {(1-4-3-1). 1 1 2 2 6 5 4 4 5 3 2 4 3 2 .

Sign up to vote on this title
UsefulNot useful