Anda di halaman 1dari 7

11/22/2016

Simplex Method For Multivriable


Optimization
Angga Akbar Fanani, ST., MT.

Method to solve multivariable problem


1. Direct-search methods, which use only
function values.
2. Gradient methods, require estimate of the first
derivative of f(x)
3. Secont-order methods, which require estimate
of the first and second derivatives of f(x)

1
11/22/2016

Direct search
Simplex search, or S method
Hooke-jeeves patern search method
Powel conjugate direction method

Simplex method
Pada awal pengembangan Direct search method
digunakan untuk menyelesaikan permasalahan
single variable unconstraint.
Ide dari metode ini diinspirasi oleh metode
pencarian solusi berbasis ruang pencarian, dimana
pada masing-masing iterasi ruang pencarian akan
semakin kecil dibandingkan sebelumnya.
Simplex search method diinspirasi oleh penelitian
Mr Box in 1957.
Secara formal Simplex search method
diperkenalkan oleh spendley, hext and himsworth in
1962.

2
11/22/2016

Metode pencarian simplex


algoritma pencarian untuk fungsi multi variabel (n variabel).
Algoritma ini menggunakan n+1 titik awal untuk memulai
pencarian.
Sebagai contoh, jika permasalahanya dalam 2 dimensi maka
ada (2+1) titik segitiga atau titik simplex.
Tiga titik ini bisa diberi nama xh, xg, xl dan nilai fungsi yang
bersangkutan adalah f(xh),f(xg) dan f(xl).
Jika diberikan satu titik awal x1, maka n titik yang lain
dihitung dengan cara

Algoritma penyelesaian
1. Menentukan vertex awal pencarian solusi

3
11/22/2016

Menentukan vertex awal

4
11/22/2016

Algoritma penyelesaian
1. Menentukan vertex awal pencarian solusi
2. Menentukan kriteria pemberhentian
3. Menentukan Xc

Algoritma

5
11/22/2016

Algoritma
1. Tentukan 3 vertex awal pencarian solusi (jika yang diketahui 1
maka hitung 2 yang lainya)
2. Hitung nilai F(x) untuk masing-masing vertex
3. Iterasi = iterasi + 1
4. Tentukan Xh (vertex dengan nilai Fx terbesar), Xg (vertex dengan
nilai Fx terbesar no 2), Xl (vertex dengan nilai Fx terkecil).
5. Hitung Xc = (Xl + Xg)/2
6. Hitung Xnew = 2 Xc Xh, hitung F(Xnew)
7. Jika F(Xl) < F(Xnew) < F(Xg), set Xh = Xnew (a)
8. Jika F(Xnew) < F(Xl), expansi Xe = 3Xc - 2Xh, hitung F(Xe), jika
F(Xe)< F(Xnew) set Xh=Xe, else Xh=Xnew (b)
9. Jika F(Xnew)>F(Xg) and F(Xnew)>F(Xh), in contraction
Xic=(Xh+Xc)/2, set Xh=Xic (c)
10. Jika F(Xg)<F(Xnew)<F(Xh), out contraction Xoc=Xc+(Xc-Xh)/2,
set Xh = Xoc
11. Apakah kriteria pemberhentian terpenuhi
12. Jika belum kembali kelangkah, jika sudah stop

6
11/22/2016

Anda mungkin juga menyukai