Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
untuk Mencari
untuk Mencari
Solusi Optimal pada
Solusi Optimal pada
Pemrograman Non Linear
Pemrograman Non Linear
Tanpa Kendala
Tanpa Kendala
Eni Sumarminingsih Eni Sumarminingsih Jurusan Matematika Jurusan Matematika
Fakultas MIPA Fakultas MIPA
PENDAHULUAN
PENDAHULUAN
Secara umum masalah pemrograman Secara umum masalah pemrograman
nonlinear dapat dinyatakan sebagai berikut: nonlinear dapat dinyatakan sebagai berikut: Tentukan nilai variabel keputusan
Tentukan nilai variabel keputusan untuk permasalahan
untuk permasalahan max (atau min)
max (atau min)
dengan kendala dengan kendala
di mana f dan g adalah fungsi nonlinear di mana f dan g adalah fungsi nonlinear
x x xn
f
z 1, 2,...,
n x x
x1, 2,...,
1 2 1 1 x ,x ,...,x , , b
g n
1 2 2 2 x ,x ,..., x , , b
g n
n m
m x x x b
PENDAHULUAN
PENDAHULUAN
Pemrograman nonlinear tanpa kendala dengan satu Pemrograman nonlinear tanpa kendala dengan satu
peubah peubah : :
max (atau min) max (atau min)
1.Tentukan semua maksimum (minimum) lokal 1.Tentukan semua maksimum (minimum) lokal 2.Tentukan nilai f(
2.Tentukan nilai f(xx) untuk semua maksimum ) untuk semua maksimum (minimum) lokal.
(minimum) lokal. 3.Nilai f(
3.Nilai f(xx) terbesar (terkecil) merupakan solusi ) terbesar (terkecil) merupakan solusi optimal
optimal
x fMencari Ekstremum
Mencari Ekstremum
(Maksimum atau Minimum)
(Maksimum atau Minimum)
Lokal
Lokal
Terdapat tiga kasus di mana calon titik
Terdapat tiga kasus di mana calon titik
optimal dapat ditemukan, yaitu
optimal dapat ditemukan, yaitu
1.
1.
Titik Titik xx* yang terletak pada [a,b] bila * yang terletak pada [a,b] bila f’(f’(xx*) = 0*) = 0
2.
2.
Titik Titik x*x* ketika ketika f’f’((x*x*) tidak didefinisikan.) tidak didefinisikan.3.
3.
Titik batas a dan b.Titik batas a dan b.•
Masalah akan muncul bila f’(Masalah akan muncul bila f’(xx*) = 0 *) = 0 sulit dievaluasiAlgoritma
Algoritma
Golden Section
Golden Section
Search
Search
(kasus maksimisasi)
(kasus maksimisasi)
Syarat : f(x) harus bersifat unimodal
Syarat : f(x) harus bersifat unimodal
pada [a,b], artinya jika
pada [a,b], artinya jika xx* adalah titik * adalah titik optimal pada [a,b] maka
optimal pada [a,b] maka
•
f(f(xx) adalah fungsi monoton naik pada ) adalah fungsi monoton naik pada interval [a,interval [a,xx*]*]
•
f(f(xx) adalah fungsi monoton turun ) adalah fungsi monoton turun pada interval [Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
Konsep Dasar :
Konsep Dasar :
Penyempitan selang
Penyempitan selang
a x1 x3 x* x4 x2
a x1 x3 x* x4 x2
b
Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
Panduan mempersempit selang
Panduan mempersempit selang
• Jika ,persempit selang menjadi Jika ,persempit selang menjadi
• Jika ,persempit selang menjadi [ Jika ,persempit selang menjadi [ ]
]
• Jika ,persempit selang menjadi [ Jika ,persempit selang menjadi [ ]
]
Selang [ ] atau di mana
Selang [ ] atau di mana xx* mungkin * mungkin berada dinamakan selang ketidakpastian
berada dinamakan selang ketidakpastian (SK) (SK)
) (
)
(x1 f x2
f
]
,
[
x
1b
) (
)
(x1 f x2
f
2
, x a
) (
)
(x1 f x2
f
2
, x a
2
, x
Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
Algoritma :
Algoritma : 1.
1. Tetapkan = Interval (selang ketidakpastian) pada Tetapkan = Interval (selang ketidakpastian) pada iterasi k. selang ketidakpastian untuk iterasi 0 adalah
iterasi k. selang ketidakpastian untuk iterasi 0 adalah
[a,b]. Kemudian evaluasi dan di mana :
[a,b]. Kemudian evaluasi dan di mana :
Dengan = panjang selang ketidakpastian pada iterasi
Dengan = panjang selang ketidakpastian pada iterasi
k.
k.
Untuk iterasi 0 , = |a – b|. Untuk iterasi 0 , = |a – b|.
r adalah akar dari persamaan atau r adalah akar dari persamaan atau
r = 0.618. r = 0.618.
a = batas bawah selang ketidakpastian a = batas bawah selang ketidakpastian
b = batas atas selang ketidakpastian.b = batas atas selang ketidakpastian.
k
I
) (x1
f f (x2)
k rL b a b r b
x1 ( ) k rL a a b r a
x2 ( )
k L
0
L
1
2 r
Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
2. Tentukan Selang Ketidakpastian baru
2. Tentukan Selang Ketidakpastian baru
berdasar panduan yang telah dijelaskan
berdasar panduan yang telah dijelaskan
sebelumnya.
sebelumnya.
3. Kembali ke langkah 1 sampai didapat
3. Kembali ke langkah 1 sampai didapat
yang cukup kecil
yang cukup kecil
) (Ik1
k
Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
Alasan dipilihnya r yang merupakan akar dari
Alasan dipilihnya r yang merupakan akar dari
persamaan adalah masalah efisiensi.
persamaan adalah masalah efisiensi.
Bukti
Bukti
• Jika , selang dipersempit menjadi Jika , selang dipersempit menjadi
sehingga sehingga xx3 dan 3 dan xx4 dapat diperoleh 4 dapat diperoleh dari
darix3 b r(b x1)
) (
)] (
[r b a b r2 b a r
b ra rb a b b a b r
b
(1 )( )
2
)
(b a x r
a
) (
1
4 x r b a
x
1 2 r r ) ( )
(x1 f x2
f
]
,
Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
• Jika , selang dipersempit menjadi Jika , selang dipersempit menjadi sehingga
sehingga xx3 dan 3 dan xx4 dapat diperoleh dari4 dapat diperoleh dari
) ( )
(x1 f x2
f [a, x2]
x a
r x
x3 2 2
)] (
[ )
( 2
4 a r x a a r r b a x
) )(
1 ( )
(
2 b a a r b a
r
a
) (b a r
b ra
rb a
b
a
1
x
Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
•
keistimewaan lainnya adalah dapat keistimewaan lainnya adalah dapat diketahuinya banyak iterasi yangdiketahuinya banyak iterasi yang
akan dilakukan bila diketahui nilai
akan dilakukan bila diketahui nilai
yang dikehendaki
Algoritma
Algoritma
Golden Section
Golden Section
Search
Search
Iterasi akan berhenti bila
Iterasi akan berhenti bila
karena nilai ln r adalah negatif maka didapat
karena nilai ln r adalah negatif maka didapat
0
L r a
b r
Lk k k
r b a r L0
Lk k k
0 / L rk
0 / ln
ln rk L
0 / ln
lnr L
k
r
L
k
ln
)
/
ln(
0Contoh aplikasi
Contoh aplikasi
Max
Max
s.t -1
s.t -1 xx 3 3 Iterasi 0
Iterasi 0
= [-1,3]= [-1,3]
= |-1 – 3 | = 4= |-1 – 3 | = 4
= 3 – 0.618 (4) = = 3 – 0.618 (4) = 0.528
0.528
= -1 + 0.618(4) = 1.472= -1 + 0.618(4) = 1.472
x
e x
x
f ( )
0
I
0L
0 1 b r(b a) b rL
x
0 2 a r(b a) a rL
x
1675 . 1 528 . 0 )
(x1 x1 e 1 e0.528
f x 886 . 2 472 . 1 )
(x2 x2 e 2 e1.472
f x
) (
)
(x1 f x2
f
[ , ] = [-1, 1.472]2 x a
1
I1
Contoh aplikasi
Contoh aplikasi
Iterasi 1
Iterasi 1
= = [-1, 1.472][-1, 1.472]
==| -1 – 1.472 | = 2.472| -1 – 1.472 | = 2.472
= 1.472- 0.618(2.472) = = 1.472- 0.618(2.472) = -0.0557
-0.0557
=
= -1 + 0.618(2.472) = -1 + 0.618(2.472) = 0.5277 0.5277 1 I 1 L 1 1 b r(b a) b rL
x
1 2 a r(b a) a rL
x
00152 . 1 0557 . 0 )
(x1 x1 e 1 e0.0557
f x 1673 . 1 5277 . 0 )
(x2 x2 e 2 e0.5277
f x
) (
)
(x1 f x2
Penutup
Penutup
•
Algoritma Algoritma Golden Section SearchGolden Section Searchdapat digunakan untuk mencari
dapat digunakan untuk mencari
solusi optimal pada Pemrograman
solusi optimal pada Pemrograman
Nonlinear Tanpa Kendala dengan
Nonlinear Tanpa Kendala dengan
Satu Peubah.
Satu Peubah.
TERIMA KASIH