P. 1
Buku Ajar OR1-Tahun2011

Buku Ajar OR1-Tahun2011

|Views: 1,170|Likes:
Published by Eki Fitra Sutifani

More info:

Published by: Eki Fitra Sutifani on Dec 04, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

06/13/2013

pdf

text

original

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

. serta kasus-kasus khusus seperti masalah Transportasi. pembelajaran difokuskan pada teknikteknik pencarian solusi optimal untuk kasus umum dengan metoda Linear Programming dan Integer Programming. 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. Sehingga masalah-masalah diselesaikan secara kuantitatif. Assignment.

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

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. Revolusi industri mengakibatkan terjadinya pertumbuhan ukuran dan kompleksitas organisasi. industri yang berkembang melakukan pembagian kerja dan . 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. Karena itu. Paham definisi & lingkup OR 2.I.

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

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

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

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.• Jika saat ini tim menang. Pohon Keputusan Alternatif Alternatif Keputusan Alternatif Alternatif .

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 . Annual Savings $20 million + $250 million less inventory $100 million Delta Airlines Yellow Freight System 1994 Integer Programming 1992 Network Models. Network Models. Simulation Linear Programming. tidak saja diperlukan ahli Penelitian Operasional namun dari bidang yang lain. 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.3 million Citgo Petroleum Proctor and Gamble Optimize refinery operations and the supply. o Contoh: kasus elevator    Penelitian operasional memiliki aspek ilmu dan seni. distribution. Forecasting. Forecasting Transportation and Assignment Problems $17. Nonlinear Programming. 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.

5 10 13.5 4 3 7 5 8.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 10 12 6 Forgionne (1982) 5 2 6 4 9 10 8 .5 2 1 Ledbetter and Cox (1975) 6 7 2 4 5 3 1 Thomas and DaCosta (1977) 9 13.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 7 5 Forgionne (1982) 3 1 7 - Modeling Process Elemen Utama Penelitian Operasional a.Thomas and Dacosta (1977) Production Planning and Scheduling Project Planning Quality Control Transportation 2. Model kuantitatif Komponen utama model OR: .

 Sifat proporsional dipenuhi jika kontribusi setiap variabel pada fungsi tujuan atau penggunaan sumber daya yang membatasi proporsional terhadap level nilai variabel. Secara teknis. linearitas ditunjukkan oleh adanya sifat proporsionalitas. divisibilitas dan kepastian fungsi tujuan dan pembatas. additivitas. Karakteristik Pemrograman Linier:  Sifat linearitas suatu kasus dapat ditentukan dengan menggunakan beberapa cara. PL banyak diterapkan dalam masalah ekonomi. Jika harga per unit produk misalnya adalah sama berapapun . PL berkaitan dengan penjelasan suatu kasus dalam dunia nyata sebagai suatu model matematik yang terdiri dari sebuah fungsi tujuan linier dengan beberapa kendala linier. militer.Model kuantitatif terdiri dari: b. industri. Secara statistik. social dan lain-lain. kita dapat memeriksa kelinearan menggunakan grafik (diagram pencar) ataupun menggunakan uji hipotesa. 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.

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

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: . Istilah lain: model pemrograman matematik (mathematical programming model) Perlu diingat. Mampu merumuskan permasalahan nyata ke dalam model matematis program linear 3.II. Memahami konsep fungsi tujuan. Jenis Variabel Keputusan dan Pembatas TUJUAN PEMBELAJARAN 1. POKOK PEMBAHASAN • • PERUMUSAN MODEL PROGRAMA LINEAR Model Matematis Programa Linear Fungsi Tujuan. variable keputusan dan pembatas 2.

linearitas ditunjukkan oleh adanya sifat proporsionalitas. sosial dan lain-lain. Secara teknis. penerapan-penerapan LP banyak dijumpai pada masalahmasalah militer seperti logistik.   Pada tahap awal. divisibilitas dan kepastian fungsi tujuan dan pembatas. Dapat diterapkan dalam masalah-masalah sektor pemerintah dan swasta. suatu kasus dapat ditentukan dengan menggunakan beberapa cara:   Secara statistik.  Posisi Linear Programming dalam Klasifikasi Model Optimisasi Matematik: 1. 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. dan perbekalan. Sifat linearitas. . industri. militer. LP berkaitan dengan penjelasan suatu dunia nyata sebagai suatu model matematik yang terdiri dari sebuah fungsi tujuan linier dan beberapa kendala linier. Hasilnya.  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.  Diterapkan dalam masalah ekonomi. additivitas. transportasi.

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

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

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

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. x2 ≥ 0 . Oleh karena itu pengrajin harus memproduksi kursi paling banyak empat kali jumlah meja.5 x2 ≤ 32 4x1≥ x2 atau 4x1 – x2 ≥ 0 x1 . Harga jual per unit meja adalah Rp 1.5 x2 Kendala: 2x1 + 0. keputusan & batasan sumber daya adalah sebagai berikut:    Tujuan yang ingin dicapai adalah memaksimumkan pendapatan. Sumber daya yang membatasi adalah waktu kerja karyawan dan perbandingan jumlah kursi dan meja yang harus diproduksi (pangsa pasar). identifikasi tujuan.2 x1 + 0.paling banyak 4 kursi untuk 1 meja. alternatif. Formulasikan kasus tersebut ke dalam model matematiknya ! Solusi: Berdasarkan informasi yang diberikan pada soal.2 juta dan per unit kursi adalah Rp 500 ribu.

Kedua tipe pinjaman itu dikembalikan bersama dengan bunganya satu tahun kemudian. Seorang peternak memiliki 200 kambing yang mengkonsumsi 90 kg pakan khusus setiap harinya. Formulasikan masalah di atas ke dalam bentuk model matematiknya ! . Pengalaman sebelumnya menunjukkan bahwa 1% pinjaman pribadi merupakan kredit macet. paling sedikit 30% protein dan paling banyak 5% serat.EVALUASI 1. Bank mengenakan biaya suku bunga per tahun 14% untuk pinjaman pribadi dan 12% untuk pinjaman pembelian mobil. 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. Pakan tersebut disiapkan menggunakan campuran jagung dan bungkil kedelai dengan komposisi sebagai berikut : Kebutuhan pakan kambing setiap harinya adalah paling banyak 1% kalsium. Formulasikan permasalahan di atas ke dalam model matematiknya ! 2.

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

  Harga jual produk cat adalah $3 untuk cat eksterior dan $2 untuk cat interior. Penelitian pasar menunjukkan bahwa o Jumlah permintaan cat interior dikurangi dengan jumlah permintaan cat eksterior tidak lebih dari satu ton. Ketersediaan bahan Bahan A : x1 + 2x2  6 Bahan B : 2x1 + x2  8 2. Pembatas tak negatif x1 ≥ 0. x2 ≥ 0 Fungsi Tujuan: Memaksimumkan pendapatan total Z = 3x1 + 2x2 Sehingga. 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. 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 . Permintaan Selisih permintaan Permintaan cat interior 3. o Permintaan maksimum cat interior adalah 2 ton per hari.

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 .

MOKLET? 2. 1566 jam kerja. : X1 + X2 ≤ 200 – 9 X1 + 6 X2 ≤ 1566 – 12 X1 + 16 X2 ≤ 2880 – X1 ≥ 0 dan X2 ≥ 0 . 1. dan 2880 persediaan pipa.T.CONTOH KASUS B PT. Bagaimana strategi produksi terbaik yang dapat dilakukan oleh PT. yaitu Aqua & Hydro. 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. Gunakan metode grafik untuk menyelesaikan masalah tersebut! SOLUSI CONTOH KASUS B Maksimisasi 350 X1 + 300 X2 S. MOKLET memproduksi 2 jenis pipa.

4. Solusi optimal unbounded/tak berbatas. 3. Terdapat satu solusi optimal/unique seperti pada kasus-kasus yang dibahas sebelumnya.Solusi Khusus Jenis-jenis Solusi : 1. 2. Tidak terdapat solusi yang layak. Solusi optimal infinite / alternatif/ multiple. 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 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 = .

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

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 .

Untuk produk B. 1. Satu unit produk A membutuhkan proses selama 2 jam di mesin 1 dan 1 jam di mesin 2. Tentukan nilai shadow price untuk mesin 1 dan 2 3.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. Tentukan range dari nilai shadow price untuk mesin 1 dan 2 . 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. Tentukan solusi optimum dengan metode grafis 2. Setiap mesin dapat digunakan selama 8 jam per hari.

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  .

Tidak semua masalah LP dalam bentuk standar – Pembatas pertidaksamaan (inequality constraint). pembatas pertidaksamaan harus diubah ke persamaan. – Variabel yang tak dibatasi tanda (unrestricted in sign of variables) Pembatas pertidaksamaan • Karena bentuk standar memerlukan semua pembatas harus dinyatakan dengan dalam persamaan. maka variabel yang tak dibatasi tanda diganti dengan selisih dua variabel tak negative • Contoh: x1 + x5 = 50 x1 ≥ 0 x5 tak dibatasi tanda/ unrestricted  . • • • Ini dilakukan dengan penambahan variabel baru untuk menunjukkan slack antara ruas kiri dan kanan pada tiap pertidaksamaan.Reduksi ke bentuk standar • • Metode simpleks untuk memecahkan masalah LP memerlukan setiap masalah dinyatakan dalam bentuk standar. 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.

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

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

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

x4 ≥ 0 . 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 . x2 ≥ 0 • Bentuk standard: x1 + x2 + x3 x2 =6 + x4 = 3 x1 . x3 . pemecahan lebih efisien karena hanya memeriksa sebagian solusi basis layak. x2 . maka solusinya adalah  XB  x  X N  dengan XB  B b 1 • • • • • • XN  0 Jika xB ≥ 0.• 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. BASIC FEASIBLE SOLUTION • Jika fungsi pembatas adalah Ax = B. maka x disebut BASIC FEASIBLE SOLUTION dari sistem dan tersebut. • Dengan metode simpleks (simplex method).

a3. a4] 1 1 1 0  A  0 1 0 1 • Basis yang mungkin • • Poin 1. dan 5 merupakan basic feasible solution. 3. .• Matriks Pembatas A = [a1. 2. Poin 4 merupakan solusi basis yang tidak feasible . a2.

A-1 diperoleh dengan rumus : Jika ad – bc = 0.5 = 1.A-1 = A-1. maka matrik A non-inverti 1. .MENCARI INVERSE MATRIKS Suatu bilangan jika dikalikan dengan kebalikannya. maka hasilnya adalah 1.5-1 atau 5-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. 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. Demikian juga halnya dengan matrik A. maka A disebut matrik tunggal (singular) Invers matrik 2 x 2 a b  A dapat di invers jika ad . Misalkan 5.bc  0 c d   Maka .

2. . maka EA = matrik baru yang terjadi bila OBE tersebut dilakukan pada matrik A. Matriks Elementer: (E) Matriks A(nxn) disebut elementer bila dengan sekali melakukan Operasi Baris Elementer (OBE) terhadap matriks identitas In. 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. Perkalian matrik dengan matrik inversnya menghasilkan matrik identitas  Dilakukan penyelesaian persamaan melalui eliminasi ataupun substitusi sehingga diperoleh nilai elemen-elemen matrik invers. E = matrik elementer.

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. 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.

Kofaktor ke ij dari matrik A adalah : Matrik kofaktor dari A adalah : . maka disebut minor ke ij dari matrik A.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.  Matrik invers diperoleh dengan mengkalikan matrik adjoint dengan seperdeterminan Matrik kofaktor dan matrik adjoint Jika baris ke i dan kolom j dibuang.

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.B.  Merupakan prosedur iteratif untuk memecahkan masalah LP dengan mengekspresikannya dalam bentuk standar. Memahami konsep pemecahan programa linear dengan metoda simplex 2. 2.V. Memahami solusi-solusi unik dan solusi alternatif RINGKASAN MATERI Pendahuluan Metode Simplex  Dikembangkan oleh G. Fungsi tujuan dari maksimum maupun minimum. Ciri-ciri dari bentuk baku model LP adalah : 1. POKOK PEMBAHASAN • • Dasar Tabel Simplex Solusi Unik dan Alternatif DASAR TABEL SIMPLEX TUJUAN PEMBELAJARAN 1. Dantzig. Semua kendala berupa persamaan dengan sisi kanan non negatif. . Semua variabel non negatif. 3.

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. x6 ≥ 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.

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

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. ) = 4 . x3 = 4. Karena Z untuk x1 > Z untuk x2 maka menaikkan x1 lebih baik. 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. x5 = 2. . x4. x6 akan turun dan nilainya harus tak negatif agar tetap layak. x4 = 6. Sampai seberapa jauh x1 dapat dinaikkan? Jika x1 dinaikkan maka nilai variabel basis : x3. x2 = 0. x6 = 2 x1 = 0. x2 = 1. x4 = 7. 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. 4. x3 = 5. x5 = 0. x5.

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. x3 = 2. maka x4 menjadi variabel non basis x1 = 4. x4 = 0. x5. Variabel non basis: x2.variabel masuk basis x1 dinaikkan 4 unit x1 2x1 –x1 0x1 x1 dinaikkan 4 unit. x6. x2 = 0. x4 . x5 = 5.

x3. x4 = 1. x5 = 9/2. x3 = 1/2. x5. 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. x2 = 0. x3 = /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 = 7/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 . 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. x4 = 0. x2 = 1.

x6. x2. x2 = 4/3. 10/3. x3 = 0.Maksimum peningkatan x2 x2 dinaikkan ke 4/3 = minimum (4/3. 2) = 4/3 maka x3 menjadi variabel non basis x1 = 10/3. x4 . x5. x4 = 0. 8. Variabel non basis: x3. x5 = 3. 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 = 2. Untuk masalah maksimasi: – Suatu solusi basis layak adalah optimal jika profit relatif (Z) dari variabel non basis adalah negatif atau nol. x5 = 4. x2 = 5/3. x3 = 1. x2 = 2/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. x4 = 1. 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.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. x6 = 4/3 = 4/3 = 10/3 =3 + x6 = 2/3 /3x4 x1= 8/3.

0. Representasi tabel untuk solusi basis layak awal Nilai fungsi tujuan Z  inner product dari vektor cB dan konstanta 6   8 Z  0. x4 ≥ 0. x5 ≥ 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.0. x6 ≥ 0. x2 ≥ 0. x3 ≥ 0.0    0 1    2   . 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.

yaitu variabel non basis yang mempunyai nilai fungsi tujuan relatif terbesar (paling positif untuk masalah maksimasi). Nilai fungsi tujuan relatif untuk variabel non basis 1   2 c1  3  0.0    3 1   0   Tabel 1 (awal)  2   1 c2  2  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..0.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.0.

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

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

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

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

Bentuk Standard Memaksimumkan Z = 3x1 + 9x2 dengan pembatas-pembatas: x1 + 4x2 + x3 x1 + 2x2 =8 + x4 = 4 x1 ≥ 0. x3 ≥ 0. x4 ≥ 0 Tabel 1 Tabel 2 . x2 ≥ 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.

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

9 2 4 Z= 0 cB 0 0 0 cj Basis Kons.x3 -x1 + x2 + x3 + x5 =2 + x6 = 4 =9 z = x1 + x2 – 4 x3 + 0x4 + 0x5 + 0x6 x1.5 2/-1= -2 2/1 = 4 . x4. ratios x4 x5 x6 Baris c 9 9/2 = 4. x2. x3. 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.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. 9 2 4 Z= 0 ratios 9/2 = 4. x5.

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.33 6/0= 4/-1= ∞ -4 Iterasi 3 . 1 6 4 Z = -16.0 cB cj Basis 0 x4 0 x5 -4 x3 Baris c Kons. 1 6 4 Z = -16 ratios 1/3 = 0.

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

. Variabel semu tidak mempunyai arti fisik pada permasalahan awal. Variabel semu ini berperan sebagai variabel sisipan (slack variable) untuk memberikan solusi basis awal. x6 ≥ 0 Variabel semu : x5. x2 ≥ 0. Prosedur memaksa variabel semu untuk bernilai nol jika kondisi optimal tercapai. x2 ≥ 0 Bentuk standar Meminimumkan Z = 4x1 + x2 dengan pembatas-pembatas: 3x1 + x2 =3 =6 + x4 = 4 4x1 + 3x2 – x3 x1 + 2x2 x1 ≥ 0. x4 ≥ 0 Penambahan variabel semu 3x1 + x2 + x4 + x5 =3 +x6 = 6 =4 4x1 + 3x2 – x3 x1 + 2x2 x1. x3 ≥ 0. x5.Contoh masalah LP Meminimumkan Z = 4x1 + x2 dengan pembatas-pembatas: 3x1 + x2 = 3 4x1 + 3x2 ≥ 6 x1 + 2x2  4 x1 ≥ 0. 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. x2. x3. x4.

x3. 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. x4.• • Cara yang logis adalah memberikan penalti pada variabel semu dalam fungsi tujuan. x5. x6 ≥ 0 . 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. x2.

Nilai fungsi tujuan relatif untuk variabel non basis  3   c1  4  M . M .0  1  M 0   Tabel 1 .0 4   4  7 M 1   1   c2  1  M . M . M .0 3   1  4M  2   0   c3  0  M . M .Nilai fungsi tujuan Z  inner product dari vektor cB dan konstanta  3   Z  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].

Tabel 2 Tabel 3 Tabel 4 (Optimal) .

Output Tabel Simpleks dengan Software (WinQSB) .

maka semua variabel semu bernilai nol dan solusi basis layak diperoleh bagi masalah original. 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. x2. x5. – Tabel akhir pada Fase I menjadi tabel awal pada Fase II dengan perubahan pada fungsi tujuan.METODE 2 FASA • Fasa I – Mendapatkan solusi basis layak awal pada masalah original. dan algoritma berhenti. – Fungsi tujuan semu merupakan jumlah dari variabel semu yang diminimasi. x4. – Penghilangan variabel semu. x3. Jika nilai minimum fungsi tujuan adalah positif. maka paling sedikit terdapat satu variabel yang positif dan ini berarti masalah original adalah tak layak. – Jika nilai fungsi tujuan sama dengan nol. • Fasa II – Solusi basis layak yang diperoleh pada Fase I dioptimasi terhadap fungsi tujuan original. x6 ≥ 0 .

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

nilai fungsi tujuannya adalah positif. dimana satu atau lebih variabel semu sebagai basis) .Tabel 1 [Fase II] Tabel 2 [Fase II] (Optimal) Solusi tak layak (infeasible solution) • 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.

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

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

Memahami hubungan antara persamaan primal dan dual 3. pada dasarnya diperoleh solusi untuk dua masalah pemrograman linier. POKOK PEMBAHASAN • • • Hubungan Primal-Dual Solusi Grafis Dual Simplex PRIMAL-DUAL TUJUAN PEMBELAJARAN 1. Solusi pada masalah pemrograman liniear originalnya juga memberikan solusi bagi dualnya. Jika suatu solusi masalah pemrograman linier dipecahkan dengan simplex method. Memahami perbedaan bentuk primal dan dual 2. 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. Suatu pemrograman linier dikatakan dalam bentuk simetris jika : • • semua variabel dibatasi tak negatif semua pembatas dalam bentuk pertidaksamaan: .VII.

x2≥0. ym≥0 Primal : Memaksimumkan dengan pembatas Z = cx Ax  b x≥0 Dual : Meminimumkan dengan pembatas W = yb yA ≥ c y≥0 .a. … … 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 . y2≥0..…. untuk masalah maksimasi. untuk masalah minimasi. bentuk pertidaksamaan adalah ―lebih kecil atau sama dengan‖ b.

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

Bukti Misalkan: x0 : vektor solusi layak untuk primal y0 : vektor solusi layak untuk dual Akan dibuktikan bahwa: y0b ≥ cx0 (1) (2) y0A ≥ c. maka Perkalian kedua sisi pertidaksamaan (1) dengan y0  y0Ax0  y0b Perkalian kedua sisi pertidaksamaan (2) dengan x0 : Implikasi : y0b ≥ y0Ax0 ≥ cx0 y0Ax0  cx0 . y0 ≥ 0 Karena x0 adalah layak untuk primal. 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).• • • • 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. x ≥ 0 D: min W = yb. yA ≥ c. maka Ax0  b.

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

0 0 0 y10  0. Berdasarkan Konsekuensi (2). y2  5. nilai minimum W untuk dual tidak dapat lebih kecil dari 12. x2 ≥ 0 Dual Meminimumkan W = 2y1 + 3y2 dengan pembatas-pembatas: y1 – 3y2 ≥ 4 . 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 . Berdasarkan Konsekuensi (1). nilai minimum Z untuk primal tidak dapat melebihi 40. Ilustrasi #2 Primal: Memaksimumkan Z = 4x1 + x2 dengan pembatas-pembatas: x1 – x2  2 -3x1 + x2  3 x1 ≥ 0.y1 + y2 ≥ 1 y1 ≥ 0.

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

. 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 . 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 A  v 0  c. v2 .Misalkan diberikan program linier primal-dual simetris: P: max Z = cx. u0  0 y 0 . vn  adalah vektor slack untuk dual Karena x0 dan y0 adalah solusi layak. maka Ax 0  u0  b. v0  0 (1) (2) (u0 dan v0 adalah nilai-nilai dari variabel slack yang berkaitan masing-masing dengan solusi layak x0 dan y0). x ≥ 0 D: min W = yb. x0 . Ax  b. yA ≥ c.

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

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. u2 y2  0 . x2  4 / 3 . x10  10 / 3  0  v10  0 . y2. x2. v1. u4 ≥ 0 Complementary slackness condition mengimplikasikan pada kondisi optimal: 0 0 0 0 0 0 0 0 u10 y10  0 . ui0 = 0) Jika suatu pembatas dual adalah strick inequality pada titik optimal (yaitu vi0 > 0). u1. y2. 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 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.• • Jika suatu variabel dual (yi0) adalah positif maka pembatas primal yang bersesuaian memenuhi persamaan pada titik optimalnya (yaitu. v2 ≥ 0 – v1 =3 – v2 = 2 Dengan metode simplex diperoleh solusi optimal untuk masalah primal sebagai berikut : 0 x10  10 / 3 . Z = 38/3 Dengan penerapan complementary slackness condition. v1. u3. solusi optimal bagi dual ditentukan sebagai berikut : 1. u3 y3  0 . x10v10  0 . u4 y4  0 . u2. 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.

(2). Digunakan untuk memverifikasi apakah suatu solusi layak adalah optimal untuk masalah primal. dan sebaliknya. Digunakan untuk menginvestigasi ciri-ciri umum dari solusi optimal pada masalah primal dan dual dengan menguji hipotesis-hipotesis yang berbeda. 2 x10  x2  210 / 3  4 / 3  8  u2  0. (5) dan (6) mengimplikasikan: Penerapan complementary slackness condition • • • • Digunakan untuk mencari solusi primal optimal dari suatu solusi dual optimal.  x10  x2  10 / 3  4 / 3  2  1  u3  0. 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 . y2  0 0 0 0 5. y3  0 0 0 0 6.0 0 2. y10  0 0 0 0 4. x2  4 / 3  0  v2  0 0 3. x10  2 x2  10 / 3  24 / 3  6  u10  0. y4  0 Kondisi (1). x2  4 / 3  2  u4  0. Kuhn-Tucker optimality condition untuk pemrograman non linier merupakan pengembangan lebih lanjut dari complementary slackness condition dan sangat berguna dalam pemrograman matematis lanjutan.

Berikut ini adalah tabel simplex untuk kasus primal. + 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. u4 ≥ 0 Solusi dari primal dan dual dapat dicari dengan metode simplex. v2 ≥ 0 ≥3 ≥2 .Misal terdapat masalah linear programming simetris seperti berikut (primal). v1. y2. Pada kasus primal. y2. terdapat 4 slack variable (u) dan pada kasus dual terdapat 2 slack variable (v). x2. 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. 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. u2. x2 ≥ 0 Bentuk primal dan dual diubah ke dalam bentuk standar. u3. 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.

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

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

y4 ≥ 0 Solusi optimal dual: y1 = 10/3  shadow price untuk pembatas bahan A. y4 = 0  shadow price untuk pembatas permintaan cat interior. y3. . shadow price untuk selisih permintaan cat interior dan exterior. yaitu perubahan dari nilai Z (profit total) per satu satuan peningkatan bahan A.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. y2. yaitu perubahan dari nilai Z (profit total) per satu satuan peningkatan selisih permintaan cat interior dan exterior. y2 = 4/3  y3 = 0  shadow price untuk pembatas Bahan B. 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. yaitu perubahan dari nilai Z (profit total) per satu satuan peningkatan permintaan cat interior.

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. w2. w4 ≥ 0 .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. x3. w3.

Complementary slackness condition juga berlaku untuk solusi optimal primal-dual tak simetris. (2). (3). dan (4) dari teori dualitas berlaku juga bagi 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 .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)..

• • Solusi dual optimal dapat ditentukan dengan complementary slackness condition Solusi dual optimal dapat juga diperoleh secara langsung dari tabel simplex optimal dari masalah primal. . Sehingga. pengali simplex optimal harus memenuhi pembatas dual. A ≥ 0 atau A  c yang merupakan pembatas pemrograman linier dual. 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. 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.

dan nilai fungsi tujuannya : W = 6(1/3) + 8(4/3) + 1(0) + 2(0) = 38/3. x5. y3 = 0. y1 = 1/3. pengali simplex optimal dari masalah primal merupakan nilai optimal dari variabel dual. x6) = (4/3.3. Oleh karena itu. y2. x3. Simplex multiplier yang bersesuaian dengan tabel (primal) optimal adalah solusi optimal bagi masalah dual. solusi optimal untuk primal: x = (x2.0. x2.Oleh karena itu.4 / 3.0  1 1   2 / 3 1 / 3 0 0 1 0  memenuhi pembatas dual. x5. y3. 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.0 0  1 Simplex multiplier optimal :  2 / 3 1/ 3  1/ 3 2 / 3 1 π  c B B  2. 2/3). berdasarkan optimality criterion theorem. 10/3. y4 tak dibatasi tanda Dengan metode revised simplex. . y4 = 0  optimal untuk dual. x1. y2 = 3/4. 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. yang bersesuaian dengan nilai optimal untuk masalah primal. x4. 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.0. 3.

j = 1. Pn   c1 ..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.. …. 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 . cn  yP j  c j . c2 . n  = cBB-1 : simplex multiplier Basis layak primal B adalah optimal  c j  0 . P2 . ….

…. n Jika basis layak primal B : basis optimal bagi masalah primal  simplex multiplier  = cBB-1 memenuhi c j  yP j  0 . 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 . n Implikasi   : layak bagi masalah dual Nilai fungsi tujuan dual W = b = cBB-1b sama dengan nilai fungsi tujuan primal  Berdasarkan optimality criterion theorem. Solusi optimal untuk dual cBB .c j  yP j  0 . xN = 0.   : 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. …. j = 1. j = 1.

Ketidaklayakan primal berkurang (atau paling sedikit. Algoritma mulai dengan membuat elemen ruas kanan menjadi tak negatif. • Algoritma berhenti jika semua konstanta ruas kanan telah tak negatif. (c j ) dipertahankan tak positif) • • Konstanta ruas kanan tidak perlu tak negatif. dengan pada saat yang sama menjaga koefisien (c j ) tak negatif. tidak bertambah jelek). Dalam semua tabel. 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. 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. Misal: br  min bi  0 . . Aturan  Pilih variabel basis yang nilai bi paling negatif . koefisien fungsi tujuan relatif (c j ) dipertahankan tak negatif Untuk maksimasi.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.

x4. x4 ≥ 0 Bentuk standar : Meminimumkan Z = x1 + 4x2 + 3x4 + Mx7 + Mx8 dengan pembatas x1 + 2x2 – x3 + x4 – x5 – 2x1 – x2 + 4x3 + x4 x1. 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). 2. x5.Atau. …. x3. Tabel berikutnya setelah operasi pivot harus tetap layak dual. x6 ≥ 0 – x6 + x7 = 3 + x8 = 2 . x3. x3. Ilustrasi penyelesaian dengan metode simplex : Meminimumkan Z = x1 + 4x2 + 3x4 dengan pembatas x1 + 2x2 – x3 + x4 ≥ 3 – 2x1 – x2 + 4x3 + x4 ≥ 2 x1. 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. Dapat dijamin jika variabel non basis yang masuk basis dipilih dengan aturan rasio sebagai berikut:  cj  max   . 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). j = m+1. x3.

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

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

Mengidentifikasi Ketidaklayakan Primal dalam Metode Simplex Dual • • Dalam metode simplex dual  selalu terdapat solusi layak bagi dual. Layak dual.Layak primal. Iterasi berhenti karena seluruh konstanta bernilai positif. 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. 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. 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. self-dual parametric algorithm .

EVALUASI .

pembatas. variabel keputusan. PRIMAL-DUAL POKOK PEMBAHASAN • Analisis Sensitivitas TUJUAN PEMBELAJARAN 1. 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. Memahami solusi optimal dengan perubahan pada fungsi tujuan.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.

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

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

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

x7 ≥ 0 x7  1 (Selisih permintaan cat interior dan eksterior)  2 (Permintaan cat interior) .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.

0.0  1 1   2 / 3 1 / 3 3 / 4 3 / 4   1/ 4 c7  c7  πP7  3 / 2  1 / 3.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.0.  6   c B B  2.  1 .4 / 3.3.  5 .0.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 .0 0  1 .

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.

menghasilkan: .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.

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

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

EVALUASI .

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.IX. 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. BILP) . POKOK PEMBAHASAN • • Konsep Bilangan Bulat Metoda Cutting Plane INTEGER PROGRAMMING TUJUAN PEMBELAJARAN 1. MILP) Pemrograman linier bilangan bulat biner (binary integer linear programming.

. 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 . x2 .Contoh Pemrograman Linier Bilangan Bulat Biner Fungsi dengan N Nilai yang Mungkin f x1 .

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.1. .2.Representasi biner: x   2i yi i 0 N yi  0. 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.

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

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. xj = 0 sebaliknya) .

Set Partitioning Problem Tiap jalan tepat dilayani oleh satu pos d. serta kembali ke titik asal agar diperoleh jarak total yang minimum Variabel keputusan Xij = keputusan untuk melintasi atau tidak busur (i. j) xij = 1 jika busur (i. j) dilintasi xij = 0 jika busur (i. j) tidak dilintas . 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. Traveling Salesman Problem Misalkan terdapat n titik.

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 .

metode pemecahan kasus pemrograman bilangan bulat yang akan dibahas adalah: • • Cutting method o Cutting Plane Search method o Branch and Bound a. 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.E. x2 ≥ 0 dan bilangan bulat Daerah layak Solusi Optimal Kontinyu (dengan mengabaikan kondisi integralitas) .Metode Pemecahan Model Pemrograman Bilangan Bulat Dalam kuliah ini. Metode Cutting Plane o Dikembangkan oleh R.

Penambahan pembatas sekunder – Fractional Algorithm • • Digunakan untuk memecahkan masalah pemrograman linier bilangan bulat murni (PILP). yaitu dengan mengabaikan kondisi integralitas. 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.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. . masalah PILP dipecahkan sebagai LP reguler.

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

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

Fractional cut 2: .

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

maka (3) dan (4) dapat digabungkan menjadi satu pembatas dalam bentuk.Dari (1) dan (2) diperoleh Karena (1) dan (2). n  n j  fk   S k     k wk   kj wk    f k . (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 . tidak dapat terjadi secara simultan.

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

• • • 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. 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. Oleh karena itu. solusi optimal bilangan bulat untuk ILP belum diperoleh dan Z1 menjadi batas atas (upper bound) dari nilai maksimum Z untuk ILP.

Setelah masalah LP dipilih untuk dicabangkan lebih lanjut. memilih variabel bilangan bulat dengan nilai pecahan yang akan dicabangkan untuk membentuk dua masalah LP baru (proses branching) b. 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. langkahnya selanjutnya adalah a. d. .• Misalkan dibuat dua masalah pemrograman linier baru. Proses branching dan bounding berlanjut hingga semua node dalam kondisi fathomed. 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.

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

x1. x2 ≥ 0 dan bilangan bulat .

Pencabangan dari LP-3 .

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

1} .b. x4 = {0. LIFO (Last-In First-Out). x3. x2. 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. yaitu masalah LP yang dipecahkan paling belakangan.

.

EVALUASI .

Contoh masalah transportasi: Berapa yang harus dikirim dari gudang 1 dan 2 ke masing-masing konsumen supaya biaya minimal? . Memahami konsep solusi optimal permasalahan transportasi 3.X. 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. POKOK PEMBAHASAN • • Northe West Corner Metoda Vogel’s METODA TRANSPORTASI TUJUAN PEMBELAJARAN 1. Memahami konsep metode transportasi dan penerapannya 2.

n m . m) Permintaan dari tujuan : bj (j = 1. 2. 2. …. 2. …. …. m j = 1. cij Tujuan 1 b1 b2 bj bn 2 . 2. n) Biaya pengiriman dari sumber i ke tujuan j : cij (i = 1. …. Jika suatu sumber i tidak dapat memasok suatu tujuan j. 2. 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. m. 2.. n)... …. …. 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. Terdapat n tujuan (misal: pasar) dimana produk dibutuhkan. j = 1. Ketersediaan pasokan dari sumber : ai (i = 1. j Model umum masalah transportasi dalam bentuk jaringan: Sumber a1 a2 ai am 1 2 .Rumusan pemrograman linier untuk kasus transportasi: • • • • • Terdapat m sumber (misal: gudang) dimana produk disimpan. n x ij xij  0 i. Sehingga. model matematis kasus transportasi secara umum adalah sebagai berikut..

. m j = 1. m j = 1.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.. 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. j m n j 1 i 1 j = n+1 adalah tujuan fiktif dengan permintaan bn 1   ai   b j dan ci . 2.n1  0.. n+1 x i 1 ij  bj xij  0 i. 2. …. n x i 1 m ij xij  0 Masalah Transportasi Tak Seimbang i. i  1. …. 2.. 2.2. m . …. ….

. j  0. 2.. 2.2. j n m dan cm1.. …. …. 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. n Tabel Transportasi . 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. m+1 j = 1.

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

Kasus II Shipping costs. 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.2. j= 1.3. Penentuan solusi basis yang baru dan ke langkah 2 .T. Supply.3.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. Jika solusi optimal maka berhenti.2.: 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.b.

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. n = jumlah kolom) . Jumlah solusi basis dalam masalah transportasi harus : m + n – 1 (m = jumlah baris.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 .

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.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. 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. cij  cij  ui  v j  untuk semua variabel non basis Kondisi optimalitas (masalah minimasi ) terjadi apabila cij  cij  ui  v j   0 . negatif atau nol).

Misalnya. suatu nilai variabel tertentu dapat ditetapkan sebarang. dan nilai yang lain dapat dipecahkan. 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 .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.

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.

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

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

Optimal: EVALUASI .

XI. Biaya pengerjaan untuk setiap job tergantung pada mesin yang ditugaskan. Jn) yang harus ditugaskan (dikerjakan) pada mesin. Mm). M2. . Jika suatu job i tidak dapat ditugaskan pada mesin j. …. J2. Terdapat m mesin (M1. Memahami metoda pencarian solusi optimal RINGKASAN MATERI Rumusan Masalah Penugasan 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. Memahami konsep assignment dan penerapannya 2. Karena itu. bentuk standard model penugasan ini adalah jumlah mesin (m) sama dengan jumlah job (n) yaitu sama dengan n. Terdapat n job (J1. POKOK PEMBAHASAN • Metoda Penugasan ASSIGMENT TUJUAN PEMBELAJARAN 1. Masalah Penugasan • Biaya pengerjaan job j pada mesin i dinyatakan dengan cij. • • • • Biasanya yang dimaksud dengan sumber ialah mesin-mesin. sedangkan yang dimaksud dengan tujuan ialah pekerjaan (atau job). …. 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. i = 1.• Permasalahannya adalah menentukan penugasan job pada mesin yang meminimumkan biaya total. 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 . n j = 1.  1. …. ….

Prinsip dasar: – Solusi optimal penugasan tidak terpengaruh jika suatu konstanta ditambahkan atau dikurangkan dari sebarang baris atau kolom dari matriks biaya. Metode Hungarian • • Asumsi adalah semua elemen biaya (cij) tak negatif.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. 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 . metode yang dibahas adalah Metode Hungarian.

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. . Jika diperoleh solusi layak maka berhenti dan diperoleh solusi optimal. 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. lanjutkan ke Langkah 3. 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. • Langkah 3 – Modifikasi matriks biaya. lanjutkan ke Langkah 2. Langkah 2: – Reduksi kolom.Struktur algoritma Metoda Hungarian: • • Langkah 0: – – • Matriks biaya Langkah 1: Reduksi baris. Algoritma berhenti apabila telah diperoleh solusi layak (dan optimal). Jika sebaliknya. Jika sebaliknya.

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. M1  J4 M2  J1 M3  J3 M4  J2 Biaya penugasan total Z = 7 + 3 + 1 + 3 = 14 . nilai nol memasangkan masing-masing 1 mesin terhadap 1 job. Karena pada kasus ini. maka solusi dikatakan optimal dengan kesimpulan sebagai berikut.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.

. maka solusi dikatakan belum layak. 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.Contoh 2: Penugasan empat job dan empat mesin dengan biaya penugasan seperti pada tabel berikut ini.

J1 M1 M2 M3 M4 mesin dan job. . Cari nilai minimum dari tiap-tiap kolom.Selanjutnya. lakukan modifikasi matriks seperti ilustrasi berikut ini. 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. lakukan reduksi 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. lalu lakukan pengurangan setiap nilai (ongkos) terhadap nilai minimum pada kolomnya.

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 . Buat garis seminimum mungkin (biasanya jumlah kolom .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.Tarik garis (horizontal/vertikal) yang menghubungkan nilai-nilai nol.

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. 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 .

karena sudah terdapat pasangan untuk tiap mesin dan tiap job. 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 .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.

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 . • Langkah 3 – Terapkan metode Hungarian. 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.Masalah Maksimasi Langkah pengerjaan: • Langkah 1 – • Konversikan ke masalah minimasi dengan mengalikan semua elemen (cij) dari matrix biaya penugasan dengan -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. langkah pengerjaan dilanjutkan dengan modifikasi matriks. 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 . pencarian solusi optimal diilustrasikan sebagai berikut. (Reduksi kolom tidak dilakukan karena nilai minimum tiap kolom adalah nol.Dengan langkah pengerjaan seperti yang telah dinyatakan di atas. lakukan kembali modifikasi matrisk. 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.

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 .

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

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

 Menentukan kemungkinan pertukaran antara waktu dan biaya. 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 .  Penjadwalan ulang untuk mengatasi hambatan dan keterlambatan. Permasalahan Jaringan 1. Masalah Spanning Tree minimal 2. Masalah Maximum Flow 4.  Pengadaan pengawasan dan pembagian kerja maupun 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. Masalah Lintasan Terpendek (Shortest Path) 3.  Penjadwalan pekerjaan dalam urutan yang praktis dan efisien.

Kriteria lainnya adalah seperti waktu dan biaya. Prosedur Penyelesaian Spanning Tree  Step 1: pilih salah satu node (bebas) dan hubungan pada node terdekat. 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 .1 iterasi dari langkah di atas. Tambahkan node baru ini pada kelompok connected nodes. dan sisa node lainnya menjadi unconnected nodes.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.  Step 2: identifikasi unconnected node yang terdekat dengan salah satu dari connected nodes (tidak perlu mempertimbangkan ikatan).  Note: Suatu kasus dengan n node yang akan dihubungkan akan memerlukan n .  Kriteria yang akan diminimisasi dalam kasus spanning tree minimal tidak terbatas pada jarak meskipun istilah ―terdekat‖ ("closest―) digunakan untuk menjelaskan suatu prosedur. Ulangi langkan ini sampai seluruh node terhubung. Kedua node ini menjadi connected nodes.

awalnya kita punya: Connected nodes: 1. Sehingga.2 Unconnected nodes: 3.9.7. Node 5 menjadi connected node.4.5. kita lihat bahwa node terdekat adalah node 2 (jarak = 30).6.5 Unconnected nodes: 3.10 Arcs terpilih: 1-2.Iterasi 1: Secara acak dipilih node 1.7.4.9.6. 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 . 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).8.2.8.

5.4.9.5.10 Unconnected nodes: 3. 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). 2-5.6.8. 5-7.6.2.4. Connected nodes: 1.9 Arcs terpilih: 1-2.2. Node 7 menjadi connected node. 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 .Iterasi 3: Unconnected node terdekat dari connected node adalah node 7 (distance = 15 to node 5).7.10 Arcs terpilih: 1-2. 2-5. Connected nodes: 1.8.7 Unconnected nodes: 3. Node 10 menjadi connected node.

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 . Node 8 menjadi connected node.10. Connected nodes: 1. 5-7. 7-10. 2-5.9 Arcs terpilih: 1-2.Iterasi 5: Unconnected node terdekat dari connected node adalah node 8 (distance = 25 to node 10).4.7.9 Arcs terpilih: 1-2.10.8 Unconnected nodes: 3.2. 5-7. Node 6 menjadi connected node.8.4.2.6. 7-10. Connected nodes: 1. 10-8. 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).7. 2-5.6 Unconnected nodes: 3.5.5.

10-6.2.9 Unconnected nodes: 4 Arcs terpilih: 1-2. 2-5. 5-7. 5-7. Connected nodes: 1.7.9 Arcs terpilih: 1-2. 6-3. 10-8.10. 7-10.3 Unconnected nodes: 4.8. 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 .5. 10-8.2. Connected nodes: 1.6. 7-10.Iterasi 7: Unconnected node terdekat dari connected node adalah node 3 (distance = 20 to node 6). Node 3 menjadi connected node.8.10. 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.6. Node 9 menjadi connected node.5. 10-6.

2-5. 6-3. 10-8. spanning tree minimal (lihat slide selanjutnya) terdiri dari: Arcs: 1-2. 7-10. Selanjutnya. 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 . 10-6.Iterasi 9: Unconnected node yang tersisa tinggal node 4. 5-7. 6-9. Node yang paling dekat dengan node 4 adalah node 6 (distance = 45).

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

Jika node yang belum dilabeli secara permanen tidak memiliki label sementara. – Jika node yang belum dilabeli secara permanen memiliki label sementara. 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. hitung jumlah t. • Step 5: – – – Label permanen mengidentifikasi jarak terpendek dari node 1 menuju setiap node seperti halnya preceding node pada rute terpendek. pertahankan label sementara saat ini. ganti label sementara yang dipertanyakan dengan (t. buat label sementara (t. Jika t > distance value dari node yang terlabeli sementara.k) untuk node yang dipertanyakan. bandingkan t dengan distance value saat ini dengan node yang dipertanyakan yang terlabeli sementara. • • – Jika t < distance value dari node yang terlabeli sementara. 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). GO TO STEP 3.• Step 4: untuk setiap node yang tidak memiliki label permanen yang dapat dicapai secara langsung dari node k pada langkah 3.k).

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

1] 4 1 • Iteration 3 – – Step 3: node 3 memiliki jarak label sementara terpendek (6). Step 4: untuk setiap node dengan label sementara yang terhubung dengan node 3 hanya dengan satu arc.) Hasil Iterasi 2 [4. • • Node 3: 1 + 5 = 6 (ganti label sementara node 3 dengan (6.1] (9. sehingga menjadi node baru yang terlabeli secara permanen.4) karena 6 < jarak saat ini (7)) Node 6: 8 + 5 = 13 (tetapkan label sementara node 6 dengan (13.4) 6 8 5 [5. hitung jumlah arc length dengan jarak ke node 3 (yaitu 6).3) karena 8 < jarak saat ini (9)) Node 6: 6 + 6 = 12 (ganti label sementara node 6 dengan (12.4) karena node 6 belum dilabeli. • • Node 5: 2 + 6 = 8 (ganti label sementara node 5 dengan (8. Node 4 menjadi node baru yang terlabeli permanen.• Iteration 2 – – Step 3: node 4 memiliki jarak label sementara terpendek (5).2) 2 4 [0.S] 1 5 5 6 2 3 7 2 6 (13.3) karena 12 < jarak saat ini (13)) . 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).4) 3 7 3 (6.

hitung jumlah arc length dengan distance value dari node 5 (yaitu 8).3) 2 4 [0.) Hasil Iterasi 4 [4.3) 3 7 3 [6.5) (14. sehingga menjadi node baru yang terlabeli permanen. Step 4: untuk setiap node dengan label sementara yang terhubung dengan node 5 hanya dengan satu arc.1] 4 1 .5) karena 11 < jarak saat ini (12)) Node 7: 6 + 8 = 14 (tetapkan label sementara untuk node 7 dengan (14.1] 4 1 • Iteration 4 – – Step 3: node 5 memiliki jarak label sementara terkecil (8).5) 3 7 3 [6.S] 1 5 5 6 2 3 7 2 6 (11.Hasil Iterasi 3 [4.1] (8.4] 6 8 5 [5.S] 1 5 5 6 2 3 7 2 6 (12.4] 6 8 5 [5. • • Node 6: 3 + 8 = 11 (ganti label sementara node 6 dengan (11.5) karena node 7 belum dilabeli.1] [8.3] 2 4 [0.

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

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

Salah satu lintasannya adalah 1-2-5-7. 2} = 2. 3. 1. 7. yang memiliki flow capacities yang lebih besar dari nol pada seluruh arcs lintasan.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 = 1 (5-7) 2 . – – Step 2: Arc flow capacity terkecil pada lintasan 1-2-5-7 adalah minimum dari {4. menuju the sink node.2 = 2 (2-5) 3 . 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 3: kurangi arc capacities lintasan pada arah aliran dengan 1 dan tambahkan arc capacities pada arah aliran berlawanan dengan 1: (1-3) 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 flow capacities lintasan pada arah aliran dengan 3. dan tambahkan kapasitas ini pada arah yang berlawanan dengan 3: (1-4) 4 .1 = 0 (6-7) 5 .1 = 2 (4-6) 1 . Step 2: Arc flow capacity terkecil pada 1-4-7 adalah 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.1 = 2 (3-4) 3 .3 = 1 (4-7) 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.

Step 2: Arc capacity minimum pada 1-3-6-7 adalah 2.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 .2 = 0 (3-6) 6 .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.

. kita telah mengetahui the net effect of the oppositely directed flow assignments. Pada iterasi 5 aliran 2 unit diarahkan dari node 4 menuju node 3. Step 2: Arc capacity terkecil pada 1-2-4-3-6-7 adalah 2.• Iteration 5 – – – Step 1: dengan menggunakan algoritma shortest route. rute terpendek dari node 1 menuju node 7 adalah 1-2-4-3-6-7. 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.2 = 0 (4-3) 6 . aliran 1 unit diarahkan dari node 3 menuju node 4.2 = 4 (3-6) 4 .2 = 0 (2-4) 2 .2 = 0 Note: Arc 3-4 pada iterasi 3. flow maksimal yang dari node 1 to node 7 telah didapat. Dengan mengurangkan aliran yang ditentukan dari the capacity of the "sending" end of the arc dan menambahkannya pada the "receiving" end of the arc. Dengan demikian. 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 = 2 (6-7) 2 .

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-4-2)} Status: Tidak Layak X31 = 0 2 Z = 17 S = {(1-4-3-1). (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 .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. 2-5 dengan z = 17. Solusi masalah 2 tidak fisibel 1 X13 = 0 Z = 15 S = {(1-3-1).

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

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->