OPTIMASI
( Pemrograman Non Linear)
3 SKS – PILIHAN
▸ Baca selengkapnya: trend linear dan non linear
(2)Silabus
I. Pendahuluan
1. Perkuliahan: Silabus, Referensi, Penilaian 2. Pengantar Optimasi
3. Riview Differential Calculus
II. Dasar-Dasar Pemrograman Non Linier III. Model-Model Pemrograman Non Linier
Silabus
IV. Pemrograman Non Linier Tanpa Kendala
V. Pemrograman Non Linier Berkendala
VI. Optimasi Kuadrat Terkecil
Referensi
1. A.L. Peressini, F.E. Sullivan, and J.J. Uhl, Jr, The Mathematics of Non Linear Programming, Springer- Verlag (1998)
2. Griva, I., Nash, S. G., Sofer, A., Linear and Non Linear Optimization, SIAM, Philadelphia, 2009
3. Winston, W.L., Operation Research : Applications and Algorithms, Brooks/Cole, USA, 2004.
Evaluasi Dan Penilaian
Penilaian:
UAS : 50%
TUGAS KELOMPOK : 40%
KEHADIRAN : 20%
Pengantar Optimisasi
Optimisasi – Definisi Umum
Optimisasi mencakup penentuan cara terbaik untuk melakukan sesuatu.
Optimisasi merupakan proses untuk menentukan himpunan kondisi yang diperlukan untuk mencapai hasil terbaik dengan situasi yang diberikan.
Penerapan Metode Optimisasi
• Sains, Engineering, Matematika, Ekonomi, Komersial.
• Contoh persoalan optimisasi : - Perancangan reaktor kimia.
- Perancangan enjin pesawat dan struktur pesawat.
- Perancangan struktur bangunan, jembatan.
- Alokasi sumber, penjadwalan, komposisi produksi, persediaan.
- Analisis numerik.
Elemen Model Optimisasi
• Fungsi tujuan (objective function)
- Merupakan pernyataan tujuan secara matematik yang akan dioptimisasi, dapat berupa :
* Kuantitas yang dihasilkan.
* Keuntungan dari suatu sistem operasi.
• Fungsi pembatas (constraint function) - Variabel yang memiliki daerah kerja.
- Hubungan berbagai hal yang dibatasi.
• Variabel keputusan (decision variables)
- Merupakan besaran yang dapat berubah pada sistem operasinya,
- Varibel dapat memiliki daerah kerja (batasan).
Klasifikasi Model Optimisasi
Karakteristik Properti Klasifikasi
Banyak variable keputusan Satu Univariat Lebih dari satu Multivariat Tipe variable keputusan Kontinu Kontinu
Beberapa integer Integer atau diskret
Tipe fungsi Linier Linier
Beberapa nonlinier Nonlinier
Banyak fungsi objektif Satu Single
Lebih dari satu Multiple Formulasi masalah Dengan kendala Berkendala
Tidak dengan kendala Tak berkendala Kondisi data input Diketahui Deterministik
Riview Differential Calculus
Dasar-Dasar Pemrograman NonLinier
Non-Linear Programming (NLP)
• Berkendala / Constrained NLP
• Tak berkendala / Unconstrained NLP
Dalam banyak kasus real baik ekonomi maupun
teknologi, fungsi tujuan / kendala adalah nonlinier, yang dapat berbentuk variabel berpangkat, logaritma, eksponensial dan bentuk lain yang bukan linier.
Contoh
Misalkan h(x) adalah harga pada tingkat penjualan x.
K adalah profit/ keuntungan, dihitung dari pendapatan dikali penjualan dikurangi dengan ongkos produksi dan distribusi, ditulis K(x) = x . h(x) – c(x) ; K nonlinier.
Permasalahan: memaksimumkan profit dengan batasan sumber-sumber yang diperlukan untuk menghasilkan suatu produk, dimana terdapat elastisitas harga, jumlah yang dapat dijual berbanding terbalik dengan harga
yang diberikan (lihat gambar).
Jika industri tersebut menghasilkan n jenis produk dan apabila xj unit produk dijual (j = 1,2, …, n), maka fungsi tujuan akan menjadi :
n
j
j j x K x
F
1
) (
dimana Kj adalah keuntungan (profit) produk ke-j dalam tingkat xj. Penjumlahan ini adalah suatu jumlah fungsi-fungsi nonlinier. Bentuk nonlinier juga muncul pada kendala-kendala.
Ilustrasi Grafik
Contoh 1 :
Jika KL unit produk dapat dihasilkan dengan K sumber pertama (modal) dan L orang pekerja dengan harga
sumber pertama Rp 4/unit dan pekerja di bayar
Rp 1/orang. Modal yang tersedia Rp 8, maka formulasi problem dengan memaksimumkan jumlah produk yang di buat adalah : Maks : Z = K . L
Kendala : 4K + L ≤ 8 K, L ≥ 0
L
Z = 4 Z = 2 Z = 1 Optimal : K = 1, L = 4, Z = 4
8
1 2 K 4
Contoh 2 :
Min : Z = (x – 3)2 + (y – 4)2 Kendala : x ≤ 3
y ≤ 2
y
4
3
2
Z=4 Z=1
Optimal, x=3, y=2; Z=4
Bentuk Umum NLP
Maks/Min : Z = f (x1, x2, …, xn)
Kendala : gj (x1, x2, …, xn) ≤ (atau ≥ atau = ) bj
; j = 1, 2, …, m
Dimana f, gj diantaranya adalah fungi nonlinier.
Jika NLP diatas dimana gj ≠ ø ; j = 1, 2, …, m , maka nilai NLP tersebut dinamakan NLP berkendala (constrained), dan jika gj = ø
; j = 1, 2, …, m , maka disebut NLP tak berkendala (unconstrained).
Daerah layak (feasible region) dari NLP sama saja dengan LP biasa.
Suatu titik di dalam suatu daerah layak, dimana
pada daerah layak adalah optimal untuk kasus maksimasi (dan “ ≤ ” untuk kasus minimasi).
x x f
x
f
,
Pemrograman Non Linier Berkendala
NLP n Variabel dengan Kendala = (Pengali Lagrange)
Problem : Max/Min : f (x1, x2, …, xn) ...(3) Kendala : gi(x1, x2, …, xn) = bi ; i = 1,2,…,m Jika terdapat sedemikian sehingga
L (x1, x2, …, xn, ) = f (x1, x2, …, xn) +
maka :
m
1, 2,...,
m
1, 2,..., , ,..., 0
1
2
1
n
i
n i
i b g x x x
0 ...
...
L L L
x L x
L x
L
Teorema :
1. Problem (3) max, f concav, semua kendala linear, (x1, x2, …, xn) solusi optimal
2. Problem (3) min, f covex, semua kendala linear, (x1, x2, …, xn) solusi optimal
Variabel sebagai harga bayangan dari
konstrain ke-i. Bila sisi kanan dari konstrain ke-i
dinaikkan dengan sejumlah kecil (pada masalah max atau masalah min), maka nilai fungsi objektif
optimal untuk (3) akan naik dengan pendekatan
i
Contoh :
Sebuah perusahaan berencana untuk mengeluarkan
biaya $10.000 untuk iklan, yaitu $3.000 / menit untuk iklan di televisi dan $1.000 / menit untuk iklan di
radio, pendapatannya dalam $1.000 diberikan oleh Bagaimana perusahaan dapat memaksimalkan
pendapatannya?
x y x y xy x y
f , 2
2
2 8 3
Max :
Kendala : 3x + y = 10
Kita set :
Menghasilkan :
y x
xy y
x
Z 2 2 2 8 3
x y z
x y xy x y
x y
L , , 2 2 2 8 3 103
0
L y
L x
L
0 3
8
4
x y
x L
0 3
2
y x
y L
0 3
10
L x y
Subsitusi persamaan-persamaan di atas, sehingga didapatkan : x = 69/28, y = 73/28
Hessian untuk f(x,y) adalah :
Karena semua principal minor pertama (yaitu: -4 dan -2) adalah negatif dan principal minor kedua (yaitu: 7) > 0, maka f(x,y)
adalah concav. Konstrain adalah linear, sehingga dari teorema memperlihatkan bahwa pengali Lagrange menghasilkan solusi optimal terhadap NLP.
Jadi perusahaan harus membeli 69/28 menit waktu televisi dan 73/28 menit waktu radio. λ = ¼ artinya bahwa perusahaan
Mengeluarkan ekstra (ribuan) untuk yang kecil, yang akan menaikkan pendapatan perusahaan sebesar $ 0,25
2 1
1 ) 4
, (x y H
Tugas :
Tentukan titik ekstrim dan jenisnya:
1. Min : f(x,y) = 2x
2+ y
2Kendala : x + y = 10
2. Min :
Kendala : x
1+ x
2+ x
3= 5
x
1, x
2, x
3 x
134 x
2216 x
3f
Pemrograman NonLinier Tanpa Kendala
NLP Satu Variabel
Bentuk Umum : Max/Min : Z = f(x) (1) Kendala : x є [a, b]
Jika b +∞, daerah yang layak untuk NLP pada persamaan (1) adalah x ≥ a.
Jika a -∞, daerah yang layak untuk NLP pada persamaan (1) adalah x ≤ b.
a
b
a. Max f(x)
Kendala x є (-∞, b]
b. Min f(x)
Kendala x є [a, +∞)
Terdapat tiga tipe titik-titik dimana bentuk umum NLP pada persamaan (1) dapat memiliki nilai maksimum / minimum lokal (titik ini disebut kandidat ekstrim), yaitu :
Kasus 1 : titik dimana a < x < b, dan f’(x) = 0 (disebut titik stationer dari f(x))
Kasus 2 : titik dimana f’(x) tidak ada
Kasus 3 : ujung selang dari interval [a, b]
Titik-titik ekstrim (max/min) sebagaimana dalam kalkulus : 1. f’(x) = 0
2. Titik-titik ujung x = a dan x = b 3. f’(x) tidak ada
Contoh :
1. Problem NLP : Max : f(x) = 5x – x2 Kendala : x є [0, 10]
Uji : 1. f’(x) = 5 – 2x = 0 , x = 2,5 є [0, 10]
f(x=2,5) = 6,25
2. f’(x) = 5 – 2x, f’(x) ada x є [0, 10]
Maka kasus f’(x) tidak ada, tidak ada 3. x = 0 f(0) = 0
x = 10 f(10) = -50
Jadi karena problem max, maka solusi x = 2,5 dengan nilai max = 6,25
2. Problem NLP : Max : f(x) = x2 + 2x Kendala : -3 ≤ x ≤ 5 Uji : 1. f’(x) = 2x + 2= 0 , x = 1 є [-3, 5]
f(x= -1) = -1
2. f’(x) tidak ada, tidak ada 3. x = -3 f(-3) = 3
x = 5 f(5) = 35
Jadi karena problem max, maka solusi x = 5 dengan nilai max = 35
3. Problem NLP : Max : Z = x - ex Kendala : -1 ≤ x ≤ 3
Uji : 1. f’(x) = 1 – ex = 0 , ex = 1 x = 0 є [-3, 5]
f(x= 0) = -1 є [-1, 3]
2. f’(x) tidak ada, tidak ada
3. x = -1 f(-1) = -1 – 1/e ≈ -1,333 x = 3 f(3) = 1 – e3 ≈ - 17
NLP n Variabel
Bentuk Umum : Max/Min : Z = f (x1, x2, …, xn) Kendala : (x1, x2, …, xn) …(2) Asumsi : turunan parsial pertama dan kedua
ada dan kontinu pada semua titik.
b
Teorema :
Jika adalah ekstrim local untuk problem (2), maka Kondisi keekstriman titik diuji dengan melibatkan
matrik Hessian untuk menentukan apakah ekstrim max local (cekung / concav) atau min local (cembung / convex).
Teorema :
1. Jika H ( ) ≥ 0 cembung
min local
2. Jika H( ), bertanda (-1)k cekung
max local
3. Jika H( ) tidak memenui (1) dan (2), maka ekstrim tidak max / min.
x
x i x f
i
0
x
x
x
x x
x
x x
Dasar-Dasar Pemrograman NonLinier
Convex Set (Himpunan Convex/Daerah Cembung
)
Definisi :
Suatu himpunan convex adalah suatu koleksi titik-titik
sedemikian sehingga untuk setiap pasangan titik-titik dalam koleksi itu, keseluruhan segmen garis yang menghubungkan setiap dua titik ini juga di dalam koleksi.
Cara menguji suatu kurva dikatakan convex set, yaitu :
• Ambil 2 titik (di dalam/di batas) kurva
• Semua titik pada garis yang menghubungkan 2 titik
A
a b
e d
c
B C D
Contoh :
A : convex set B : convex set C : convex set
D : bukan convex set
NLP daerah solusinya harus convex set ( supaya hasilnya optimal)
Fungsi Convex (Cembung) dan Fungsi Concave (Cekung)
Dalam kalkulus dikenal fungsi dimana nilai kritisnya diuji dengan turunan kedua, jika xo adalah titik kritis pada Df dan f”(xo) ≤ 0, maka xo adalah titik kritis maksimum pada Df dan bila f”(xo) ≥ 0, maka xo adalah titik kritis
minimum pada Df, dan apabila :
f” (x) = maka f dikatakan fungsi cekung (concave)
pada Df
f” (x) = maka f dikatakan fungsi cembung (convex)
Df
dx x f
d 2 0 ,
2
Df
dx x f
d 2 0 ,
2
Akibatnya, fungsi linier (f”(x) = 0 )
dikatakan cembung sekaligus cekung. Fungsi cembung biasa dinamakan juga cekung ke atas dan fungsi cekung sebagai cekung ke bawah.
x
Andaikan sebarang fungsi satu variabel f(x) yang memiliki
turunan kedua pada setiap nilai x pada daerah definisinya, maka f(x) pada Df adalah :
1. Cembung (convex) 2. Cembung sejati
3. Cekung (concave) 4. Cekung sejati
Df
dx x f
d
2 0
2
Df
dx x f
d
2 0
2
Df
dx x f
d
2 0
2
Df
dx x f
d
2 0
2
Contoh:
Fungsi cekung Fungsi cembung Fungsi cekung
sejati sejati
Fungsi cekung Fungsi bukan cekung sekaligus cembung dan bukan cembung
2
2 1
2 1 2
2 2
2 1 2
2 1
2 1
2 , ,
, .
x x
x x f x
x x f x
x x f
2 1
2 1
2 ,
x x x f
2 2
2 1
2 ,
x x x f
Uji kecembungan fungsi dua variabel
Kuantitas Cembung Cembung
Sejati Cekung Cekun g Sejati
≥ 0
≥ 0
≥ 0
> 0
> 0
> 0
≥ 0
≤ 0
≤ 0
> 0
< 0
< 0 Nilai-nilai (x1,x2) Semua nilai f yang mungkin
Untuk ilustrasi uji kecembungan fungsi dua variabel, misalkan :
Dengan demikian : (1)
(2)
(3)
maka ketiga kondisi memenuhi tanda ≥, jadi f(x1,x2) adalah cembung, dan bukan cembung sejati.
2 2 2
1 2
1 2
2 1
2
1, ) ( ) 2
(x x x x x x x x
f
0 )
2 ( ) 2 ( , 2
. ,
, 2 2
2 1
2 1 2
2 2
2 1 2
2 1
2 1
2
x x
x x f x
x x f x
x x f
0 , 2
2 1
2 1
2
x
x x f
0 , 2
2 2
2 1
2
x
x x f
Untuk memperumum ini, dan untuk fungsi yang memiliki lebih dari dua variabel, sebagai contoh dalam ungkapan matematika,
adalah cembung jika dan hanya jika matriks Hessian nxn adalah semi definit positif untuk semua nilai (x
1, x
2, …,x
n) yang mungkin, atau bisa dinyatakan bahwa : jika terdapat 2 variabel atau lebih gunakan Hessian Matriks dan ditulis : H (x
1, x
2, …, x
n)
) ,...,
,
( x
1x
2x
nf
n j
i j x i
x f
j nxn i
,..., 2 , 1 ,
; ,
2
Definisi :
Matriks Hessian dari f (x
1, x
2, …, x
n) adalah matriks nxn, dimana elemen ke-ij adalah
Contoh :
f (x
1, x
2, x
3) = 2x
12+ x
22+ 2x
3j
i x
x f
2
1 2 3
0 0 0
0 2 0
0 0 4 ,
, x x x
H
Teorema 1 :
Determinan minor utama (Leading Principle
Minor) yang ke-k adalah determinan matrik n x n dengan menghapus (n – k) baris dan kolom
terakhir.
Contoh :
0 0 0
0 2 0
0 0 4 ,
, 2 3
1 x x x
H
, determinan minor utama ke-1 = 4
Ket : bilangan yang digaris bawahi yaitu 2 (n – k = 3 – 1) baris dan kolom terakhir
dihapus sehingga yang tersisa adalah 4
0 0 0
0 2 0
0 0 4
Teorema 2 :
Principal Minor (minor utama) ke-k dari matrik n x n adalah determinan dari matrik k x k yang diperoleh dengan menghapus n – k baris dan n – k kolom yang sesuai dengan matrik.
Contoh :
Principal minor ke-1 adalah : -4 dan -2 (n=2, k=1, n – k = 1) Principal minor ke-2 adalah : 7 (n=2, k=2, n – k = 0)
4 1
1 ) 2
, (x1 x2 H
Teorema 3 :
Andaikan f (x
1, x
2, …, x
n) mempunyai turunan parsial kedua kontinu untuk setiap
x = (x
1, x
2,…, x
n) di S , maka f (x
1, x
2, …, x
n) adalah suatu fungsi cembung / cekung pada S jika dan hanya jika untuk setiap x є S semua
principal minor dari matrik H adalah non negatif
(convex) / matrik H yang ≠ 0 mempunyai tanda
(-1)
kuntuk principal minor ke-k (concave).
Contoh :
1.
Principal minor ke-1 adalah : 2 dan -2 (tanda (-1)1 : negatif)
Principal minor ke-2 adalah : -4 (tanda (-1)2 : positif)
Jadi : karena tidak ada yang sesuai dengan teorema 3, maka f tidak cembung dan tidak cekung.
2 0
0 ) 2
, (x1 x2 H
2.
Principal minor ke-1 adalah : 2 dan 6x1 Principal minor ke-2 adalah : 12x1 – 4
Karena sudah ada 2 yang positif (2 dan 6x1), maka yang dapat kita tentukan hanya selang untuk f
cembung / convex, yaitu : dan dan sehingga f cembung / convex.
2 2
2 ) 6
,
( 1 2 x1
x x H
0
6x1 12x1 4 0
x1 0 x1 1/3
x1 1/3 (x1,x2 x1 1/3)Soal-soal 1.
Karena semua principal minor (ke-1 adalah 2 dan 2, yang ke-2 adalah 0) merupakan non negatif,
maka f adalah fungsi cembung pada R2.
x
1, x
2 x
12 2 x
1x
2 x
22, x
1, x
2 di S
2f
2 2
2 ) 2
, (x1 x2 H
2.
Karena principal minor pertama, (-2 dan -4) keduanya negatif, dan principal minor kedua adalah -2(-4) – (-1)(-1) = 7 > 0, jadi f adalah suatu fungsi cekung pada R
2.
x1, x2
x12 x1x2 2x22 ,
x1, x2
di 2f
4 1
1 ) 2
, (x1 x2 H