You are on page 1of 26

METASEZGSEL YNTEMLER

Ara snav - 30%


dev (Haftalk) - 20%
Final (Proje Sunumu) - 50%
- Dnem sonuna kadar bir optimizasyon tekniiyle uygulama gelitirilecek
(rn: Zaman izelgeleme, en ksa yol bulunmas, denetleyici tasarm, network
optimizasyonu vb.)
Gncel uygulamalar olmas gerekir.
- Hazrlanacak proje nerileri ara snav tarihine kadar bildirilecek
- E-posta : iaydin@firat.edu.tr
- Dersin web adresi : http://web.firat.edu.tr/iaydin/

Yrd. Do. Dr. lhan AYDIN Frat niversitesi, Bilgisayar Mhendislii Blm
Dersin erii
1- Giri, genel tanmlamalar
2- Genetik algoritmalar
3- Parack sr optimizasyonu
4- Yapay bak sistemler
5- Diferansiyel geliim algoritmas
6- Karnca koloni algoritmas
7- Yapay ar koloni algoritmas
8- Isl ilem algoritmas
9- Tabu arama algoritmas
Giri
Belirli snrlamalar salayacak ekilde bilinmeyen parametre deerlerinin bulunmasn
ieren herhangi bir problem, optimizasyon problemi olarak tanmlanr.
o Optimizasyon, verilen artlar altnda en iyi sonucun elde edilmesi iidir.
Bu problemde ilk adm karar deikenleri veya parametreleri olarak isimlendirilen
parametre setini tanmlamaktr.
Optimizasyon alanndaki en nemli gelimeler 18.yyda Newton ve Lagrange tarafndan
yaplmtr.
Bir sistemin planlanmasnda hedef, istenen kar maksimize ya da gerekli abay minimize
etmektir.
stenen kar veya gerekli aba, karar deikenlerinin bir fonksiyonu olarak ifade edilir.
Optimizasyon srecinde bu fonksiyonun minimum veya maksimum deerini oluturan
artlar bulunur.
GR
N deikenli x=(x1, x2, , xi, , xn) vektr iin maliyet fonksiyonu f(x)=f(x1,x2,,
xn) eklinde gsterilir.
Sistem p adet eitlik snrlamasna sahip ise hj(x)=hj(x1, x2,, xn)=0 1<=j<=p
eklinde gsterilir.
Eer sistem m tane eitsizlik snrlamalarna sahip ise gi(x)=gi(x1, x2, , xn)<=0
1<=i<=m eklinde gsterilir.
Baz problemlerde birden fazla maliyet fonksiyonu bulunabilir.
Yani problem birden fazla en kk yaplacak fonksiyon ieriyorsa ok amal (multi
objective) optimizasyon problemi olarak adlandrlr.
Problem iin snrlamalar salayan mmkn tm zmlerin oluturduu blge
aratrma yaplabilecek uygun (feasible) zm blgesi olarak adlandrlr.
f(x*)<=f(x) ile verilen art uygun blge iindeki tm muhtemel (x) iin salyor ise
f(x)fonksiyonu x*da kresel minimuma sahiptir.
Eer bu denklem dar bir blge iinde, x*in dar bir komuluunda tm muhtemel
zmler iin salanyorsa f(x) x*da blgesel minimuma sahiptir.
GR
Fonksiyonlar srekli ve trevlenebilir olmaldr.
ok kk pozitif ve negatif btn h deerleri iin f(x0) f(x0 +h) ise f(x) fonksiyonu x0
da yerel minimuma sahiptir.
f(x0) f(x0 +h) ise f(x) fonksiyonu x0 da yerel maksimuma sahiptir.
OPTMZASYON PROBLEMLERNN SINIFLANDIRILMASI
f(x) ama fonksiyonunun x ile ilgili herhangi bir snrlama yoksa snrlamasz
optimizasyon
x ile ilgili snrlamann bulunduu optimizasyon problemi ise snrlamal
optimizasyondur.
Dier bir snflandrma ise ama fonksiyonunun ve snrlamalar ile ilgili fonksiyonlarn
lineer olup olmamasna baldr.
o Lineer ama ve snrlama fonksiyonlar var ise lineer programlama problemi
o Nonlineer ama ve snrlama var ise nonlineer programlama problemi
Srekli ve ayrk optimizasyon problemleri dier optimizasyon eklidir.
o Ayrk niceliklerin optimal olarak dzenlenmesi, gruplanmas, sraya konulmas veya
seilmesi ayrk optimizasyon
o Tasarm deikenleri srekli deerler ise bu tr problemlere srekli optimizasyon
denir.
OPTMZASYON METOTLARININ SINIFLANDIRILMASI
Klasik optimizasyon metotlar ikiye ayrlr:
Dorudan metotlar
Optimalite kriterine dayal dolayl metotlar: Optimalliki artlar bir fonksiyonun
minimum noktalarnn salamas gereken artlardr.
Tahmini bir balang noktasndan balayarak optimallik artlarnn balang zmnn
gelitirilmesidir.
Optimizasyon problemlerinde fonksiyonlarn bir ksm veya tamam nonlineerdir.
Nonlineer programlama kavram, nonlineer problemleri zmek amacyla gelitirilen
nmerik metotlar iin kullanlr.
Neden nonlineer programlamaya ihtiya duyulur?
Tasarm deikenlerinin ve snrlama saylarnn ok olmas-ok sayda denklem
Tasarm probleminin fonksiyonlar yksek seviyede nonlineerlik ierebilir.
ou mhendislik uygulamalarnda fonksiyonlar tasarm deikenleri asndan
ak olmayabilir.
TERATF ARATIRMA LEM
Adm 1. Bir balang zm (x(0) al. terasyon sayacn sfrla)
Adm 2. Aratrma uzaynda bu nokta iin bir aratrma yn (d(t)) belirle.
Snrlamasz optimizasyonda maliyet fonksiyonu ile gradyentin hesab
Snrlamal optimizasyonda snrlama fonksiyonlarna ihtiya duyar.
Adm 3. Aratrmann yaknsamasn kontrol et. Eer bitmi ise bitir, yoksa devam
Adm 4. Pozitif bir adm bykl belirle ((t)) hesapla.
Adm 5. Yeni zm aadaki forml ile belirle.
x(t+1)=x(t)+td(t)
Adm 6. terasyon sayacn bir arttr (t=t+1) ve 2. Adma git.
EN DK N YNTEM
Yntem aaya doru en mmkn olan en dik ini ynnn aratrlmasna dayaldr.
Bunun iin mevcut noktada hesaplanan negatif gradiente dayaldr.
Dolaysyla birinci dereceden metot olarak ta isimlendirilir.
Pozitif gradyent vektr g(x), f(x)in x noktasnda en yksek art gsterdii yn belirtir
ve genlii ||g(x)|| de x noktasndaki eimdir.
Eer x(t) verilmi ise x(t+1) aadaki gibi hesaplanr.
x(t+1)=x(t)-tg(x(t))
Denklemde tadm bykl olup pozitiftir. Adm bykl g(x(t)) ynnde f(x(t+1)) i
kk yapacak ekilde hesaplanr.
d(t)
(t+1)
x
x(t) B C

A
x(t-1)
EN-DK N YNTEM
Adm 1. Bir balang zm (x(0) al. terasyon sayacn sfrla ve durdurma kriteri ini
bir tolerans se.)
Adm 2. x(t) noktasnda g(t) gradiyentini ve ||g(t)|| yi hesapla. ayet ||g(t)|| tolerans
eden kk ise aratrmay durdur. Yoksa devam et.
Adm 3. d(t)=-g(t) eklinde alarak aratrmann ynn belirle.
Adm 4. Yeni noktay x(t+1)=x(t)+td (t) ile belirle. Burada t f(x(t+1)) yi minimum
yapacak ekilde hesaplanan adm bykldr.
Adm 5. terasyon sayacn bir arttr (t=t+1) ve 2. Adma git.
rnek: Aada verilen iki deikenli fonksiyonu minimum yapacak deiken deerlerini
en-dik ini yntemi ile bulunuz.

kinci admdaki g(1) iin zlrse g(1)=(0,0) elde edilir ve bu da durdurma kriterini salar.
Elenik Gradient Algoritmas
Elenik gradient en-dik ini ynteminin performansn arttrmak iin gelitirilmitir.
Elenik gradient algoritmasnn temel admlar aadaki gibidir.
rnek: f(x1,x2,x3)=12 + 222 + 232 + 21 2 + 22 3 fonksiyonun minimum yapacak
deiken deerlerini bulmak iin elenik gradient yntemini kullannz.
x(0)=(2, 4, 10)
g(0)=(2x1+2x2, 4x2+2x1+2x3, 4x3+2x2)=(12,40,48) ||g(0)||=63.6 f(x(0))=332
1. iterasyon sonunda zm olarak x(1)=(0.0956, -2.348, 2.381) deerini bulunur.
g(1)=(-4.5, -4.438, 4.828) f(x(1))=10.75 ||g(1)||=7.952> olduundan aratrmaya devam et.
Newton Yntemi
Temel fikri mevcut nokta etrafnda fonksiyonun ikinci dereceden Taylor serisi almn
kullanmaktr.
Newton metodunda fonksiyonun birinci ve ikinci trevlerinin olduu varsaylr.
lk nce gradient (g) daha sonra Hessian (H) matrisi hesaplanr.
(+1) ( ) 1
= () + () ve (1) = [( )] ( () )
Burada H, Hessian matrisini gsterir ve matris tekil deildir.
Klasik Newton yntemleri gradient tabanl bilgi araclyla adm bykln 1 alr.
Bu yzden her problem iin yaknsamay garanti etmezler.
Bu dezavantaj ortadan kaldrmak iin deitirilmi Newton yntemi kullanlr.
Deitirilmi Newton Yntemi
rnek: Aada verilen deikenli fonksiyonun minimumunu deitirilmi
Newton yntemi ile bulunuz.
Sezgisel Algoritmalar
Sa el kuralna dayal algoritmalardr.
Herhangi bir amac gerekletirmek iin veya hedefe varmak iin eitli alternatif
hareketlerden etkili olanlara karar vermek amac ile tanmlanan kriterler veya bilgisayar
metotlardr.
Bu algoritmalar, zm uzaynda optimum zme yaknsamas ispat edilemeyen
algoritmalar olarak da adlandrlr.
Bu tr algoritmalar yaknsama zelliine sahiptir, ama kesin zm garanti etmezler,
sadece kesin zme yakn zm garanti ederler.
Sezgisel Algoritmalara Gerek Duyulmasnn Sebepleri
a) Optimizasyon problemi, kesin zm bulma ileminin tanmlanmad bir yapya
sahip olabilir.
b) Anlala bilirlik asndan sezgisel algoritmalar karar verici iin ok daha basit olabilir.
c) Sezgisel algoritmalar renme amal ve kesin zm bulma ileminin bir paras
olabilir.
d) Matematik formlleriyle yaplan tanmlamalarda genellikle gerek dnya
problemlerinin en zor taraflar ihmal edilir.
e) Model parametrelerini belirleme aamasnda kullanlan verinin hatal olmas
sezgisel yaklamn retebilecei alt optimal zmden daha byk hatalara sebep
olabilir.
Sezgisel Algoritmalarn Deerlendirilmesi iin Kriterler
zm Kalitesi ve Hesaplama zaman
Kod basitlii ve gereklenebilirlik
Esneklik
Salamlk
Basitlik ve analiz edilebilirlik
Etkileimli hesaplama ve teknoloji deiimleri
HILL CLIMBING
1. terasyon teknii kullanlr.
2. Arama alannda tek bir noktadan balar.
3. Her bir iterasyonda mevcut zme komu zmler arasndan bir tanesi seilir.
4. Eer seilen nokta mevcut zmden daha iyiyse yeni zm olarak alnr, deilse
baka bir komu zm aranr.
5. Algoritma daha iyi bir zm bulunamaynca veya daha nceden belirlenmi
iterasyon saysna ulanca sonlandrlr.
HILL CLIMBING
Lokal minimumu bulabilir.

- Genellikle farkl balama noktalarndan balanmak zorundadr.

Balama noktas seimi u ekilde yaplabilir;


o Rastgele seilebilir
o Daha nceden belirlenmi noktalara gre seilebilir

- Dier bilgilere gre (rn: nceki zmler, Uzman bilgileri, lmler, vb.)
HILL CLIMBING
rnek: 30 karakterlik bir binary karakter dizisi problemin zm uzayn oluturmaktadr.
f(bd) = | 20 * bir_sayisi(bd) 100 | fonksiyonunu maksimum yapan binary dizisini (bd)
bulunuz.
bir_sayisi(bd) fonksiyonu bd dizisindeki birlerin saysn vermektedir.
rn: bd1 = ( 110111101111011101101111010101 )
f(bd1) = | 10 * 22 100 | = 120
HILL CLIMBING
procedure HillClimbing
begin
iterasyon 0
repeat
lokal FALSE
rastgele bir bd dizisi se
bd dizisini deerlendir
repeat
bd dizisindeki bitlerin deerini deitirip yeni 30 komu zm ret
Yeni komu zm kmesinde f fonksiyonunu maks. yapan se

else lokal TRUE


until lokal
iterasyon iterasyon + 1
until iterasyon = MAXITERASYON
end
HILL CLIMBING
Zayf yanlar:

- Genellikle lokal optimum olan zmlerde sonlanmaktadr.

- Elde edilen optimum balama noktasna baldr.

- Genellikle istenen sonucu elde etmede hesaplama zaman iin bir st limit yoktur.

Avantajlar:

- Uygulamak ok kolaydr.

- Sadece problemin gsterimi, deerlendirme fonksiyonu ve komu zm retme


fonksiyonu yeterlidir.

You might also like