• Sonuç bulunamadı

Doğrusal olmayan programlama. Suat ATAN

N/A
N/A
Protected

Academic year: 2022

Share "Doğrusal olmayan programlama. Suat ATAN"

Copied!
20
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Do˘ grusal olmayan programlama

Suat ATAN

(2)

˙I¸cindekiler

1 Giri¸s 2

2 Optimizasyon 2

3 Do˘grusal olmayan programlama 4

3.1 Tek de˘gi¸skenli fonksiyonun optimumluk ¸sartları . . . 6

3.2 C¸ ok De˘gi¸skenli Fonksiyonlarda Gerek ve Yeter S¸art . . . 7

4 Do˘grusal olmayan programlama problemlerinin ¸c¨oz¨um¨u 8 4.1 Tek de˘gi¸skenli kısıtsız optimizasyon problemlerinde yakla¸sık ¸c¨oz¨um teknikleri . . 8

4.1.1 Aralı˘gı ikiye b¨olme y¨ontemi . . . 8

4.1.2 Altın oran y¨ontemi . . . 8

4.1.3 Yarı aralık (bisection) y¨ontemi . . . 9

4.2 C¸ ok de˘gi¸skenli fonksiyonlarda yakla¸sık ¸c¨oz¨um teknikleri . . . 9

4.2.1 Gradyant y¨ontemi . . . 9

4.2.2 Newton y¨ontemi . . . 10

4.3 Kısıtlı optimizasyon . . . 10

4.3.1 Lagrange ¸carpanları . . . 10

4.3.2 Do˘grudan arama y¨ontemi . . . 14

4.3.3 Yerine koyma metodu . . . 15

4.4 Kuhn-Tucker ko¸sulları . . . 16

(3)

1 Giri¸ s

Lineer programlama bir dizi sınırlamalar dahilinde ¸cıktıların lineer matematiksel y¨ontemler kullanılarak optimize edilmesi demektir.Anonim (2013d) Do˘grusal (lineer) programlamadaki do˘grusal (lineer) s¨ozc¨u˘g¨u, modeldeki t¨um matematiksel fonksiyonların do˘grusal (lineer) ol- ması gerekti˘gini belirtir. Programlama kelimesi ise bilgisayar programlamaya i¸saret etmez; daha

¸

cok planlama ile e¸s anlamlıdır. Dolayısıyla do˘grusal (lineer) programlama, bir¸cok uygun alter- natif arasından belirlenmi¸s bir hedefe uyan optimal ¸c¨oz¨um¨u bulacak aktivitelerin planlanmasını ifade eder. (Anonim, 2013c)

Matematikte matematiksel programlama ya da optimizasyon terimi; bir ger¸cel fonksiyonu mi- nimize ya da maksimize etmek amacı ile ger¸cek ya da tamsayı de˘gerlerini tanımlı bir aralıkta se¸cip fonksiyona yerle¸stirerek sistematik olarak bir problemi incelemek ya da ¸c¨ozmek i¸slemlerini ifade eder.Pek ¸cok ger¸cek ve teorik problemler bu genel ¸cer¸cevede modellenebilir.Bu teknik kullanılarak form¨ule edilen problemlere fizik bilminin ilgi alanından bir ¨ornek verilecek olursa, bilgisayar mo- nit¨orlerinin enerji minimizasyonundan s¨oz edilebilir.(Anonim, 2013b). Do˘grusal programlama ve do˘grusal olmayan programlama bu optimizasyonun bir alanıdır.

Genel olarak do˘grusal olmayan programlama, ¸c¨oz¨um fonksiyonunun do˘grusal(lineer) olma- masını ifade eder. Elbette ger¸cek hayatta do˘grusal olmayan fonksiyona sahip ¸c¨oz¨umler de mev- cuttur. Do˘grusal olmayan programlamada kullanılacak matematiksel y¨ontem ve s¨ure¸cler do˘grusal programlamaya g¨ore daha karma¸sıktır.

2 Optimizasyon

Matematik, bilgisayar bilimi, ya da y¨onetim bilimi, matematiksel optimizasyon (alternatif, op- timizasyonu veya matematiksel programlama) mevcut alternatiflerin bazı dizi (bazı kriterler a¸cısından) en iyi elemanın se¸cimidir. (Dantzig, 1965)

Basit durumda, bir optimizasyon problemi sistematik bir izin k¨umesi i¸cerisinden giri¸s de˘gerlerini se¸cme ve fonksiyonunun de˘gerini hesaplayarak ger¸cek i¸slevini maksimize veya minimize olu¸sur.

Di˘ger form¨ulasyonlar i¸cin optimizasyon teorisi ve teknikleri genelleme uygulamalı matematik geni¸s bir alanı kapsar. Daha genel olarak, optimizasyon ama¸c fonksiyonları ve etki farklı farklı

¸

ce¸sitli dahil olmak ¨uzere tanımlanmı¸s bir etki alanı (veya kısıtlamaları k¨umesi) verilen bazı ob- jektif fonksiyonu ”mevcut en iyi” de˘gerler bulma i¸cerir.

Optimizasyon s¨ure¸cleri, matematik gerektiren ¸calı¸smalardır. Modern optimizasyon y¨ontemle-

(4)

rinin ba¸slangıcı de˘gi¸simler hesabına (calculus of variations) kadar dayanır. De˘gi¸simler hesabı ile ilgili genel ¸cer¸ceveyi 18. y¨uzyılda ortaya koyan Lagrange’ın “Lagrange ¸carpanlar y¨ontemi” (Lag- rangian multipler rule) olarak bilinen me¸shur metodu da g¨un¨um¨uzde optimizasyon teorisinin ana konularından birini olu¸sturmaktadır (Dutta) . ˙Ilk ve en basit optimizasyon y¨ontemlerinden olan “En Dik ˙Ini¸s, (ED˙I)” (steepest descent) metoduna ait uygulamanın Cauchy tarafından ilk kez g¨osterildi˘gi 19.y¨uzyıl ortalarından yirminci y¨uzyılın ortalarına kadar bu sahada ¸cok az iler- leme kaydedilmi¸stir. Bu d¨onemden itibaren bilgisayar teknolojisindeki geli¸smelere paralel olarak

¸

cok hızlı i¸slemcilerin kullanılmaya ba¸slanmasıyla optimizasyon konusundaki ¸calı¸smaların ve yeni uygulamaların miktarı da hızla artmı¸stır (Rao, 2009)

Sayısal optimizasyon y¨ontemlerini ¨u¸c grupta toplamak m¨umk¨und¨ur. Bunlar; belirleyici (deter- ministic), olasılıksal (stochastic) ve melez (hybrid) metotlardır. Belirleyici metotlar genel olarak Fermat teoreminden hareketle olu¸sturulan ED˙I ve Newton metotları gibi gradyan i¸slemlerine dayalı y¨ontemlerdir. Bununla birlikte uygulama yapılacak problemin ¨ozelliklerine ba˘glı olarak kullanılabilecek simpleks metotları, do˘grusal programlama gibi de˘gi¸sik y¨ontemler de ge¸cti˘gimiz y¨uzyıl i¸cerisinde ortaya ¸cıkmı¸stır. Olasılıksal metotlar ise, Genetik Algoritmalar, Karınca Kolonisi ve Tavlama Benzetimi gibi t¨urev bilgisi gerektirmeyen, genellikle do˘gadan esinlenen y¨ontemler- dir. Melez optimizasyon teknikleri ise belirleyici ve olasılıksal y¨ontemlerin bir arada kullanıldı˘gı metotlardır. Her y¨ontemin farklı ¨ust¨unl¨ukleri ve eksiklikleri olabilmekle birlikte, genel olarak be- lirleyici y¨ontemler genel optimumu daha hassas bir ¸sekilde bulabildi˘gi, olasılıksal y¨ontemler ise uygulama kolaylıkları nedeniyle tercih edilirler. Melez y¨ontemler ise bir araya getirdi˘gi farklı me- totların ¨ust¨unl¨uklerinden istifade etmeyi ama¸clar. Dinamik sistemlerin kararlı denge noktalarının bulunması yakla¸sımı ile do˘grusal olmayan optimizasyon (do˘grusal olmayan programlama) prob- lemlerinin ¸c¨oz¨um¨u konusundaki teknikler de belirleyici y¨ontemlerden sayılmaktadır. Bu alandaki ilk ¸calı¸smalardan olan, do˘grusal olmayan otonom sistemlerin kritik noktaları ile yerel optimumları ili¸skilendiren Yamashita (Yamashita, 1980) dan sonra konu ile ilgili ara¸stırmalar giderek artmı¸s ve son on yılda yo˘gunla¸sarak ¨ozellikle gradyan sistem yakla¸sımları ile dinamik sistemin takip edece˘gi y¨or¨ungeler yoluyla dinamik sistemin denge noktalarına (yerel optimumlara) ula¸sılması ¨uzerinde durulmu¸stur . S¨oz konusu ¸calı¸smalarda, optimizasyonu yapılacak do˘grusal olmayan fonksiyonun gradyanı kullanılarak birinci mertebeden adi diferansiyel denklem yardımıyla bir dinamik sis- tem tanımlanmakta ve bu dinamik sistemin denge noktaları, do˘grusal olmayan fonksiyonun yerel optimumları olarak bulunmaktadır. Di˘ger taraftan ikinci mertebeden adi diferansiyel denklem

¨

uzerine kurulmu¸s dinamik sistem yakla¸sımı ¨uzerine de ara¸stırmalar yapılmı¸stır. Hacıo˘glu (2011)

(5)

3 Do˘ grusal olmayan programlama

Do˘grusal olmayan Programlama konusundaki ilk ¨onemli ı95ı yılında Karush-Kuhn ve Tucker tarafından optimal ¸c¨oz¨um i¸cin gerek ve yeter ¸sartlar teorisi adı altmda sunulmu¸stur.

Genel bir optimizasyon problemi x1, x2, x3, ..., xn n adet karar de˘gi¸skenini ama¸c fonksiyo- nunu optimize(minimize veya maksimize) etmek suretiyle uygun alan i¸cerisinden se¸cmektir.

f (x1, x2, ..., xn)

Bu problem E˘ger ama¸c fonksiyonu do˘grusal de˘gilse veya ¸c¨oz¨um k¨umesinin yer aldı˘gı uygun alan do˘grusal olmayan sınırlarla belirlenmi¸s ise do˘grusal olmayan programlama problemi olarak adlandırılır. Bu durumda do˘grusal olmayan programlama problemi ¸s¨oyle g¨osterilir:

A¸sa˘gıdaki sınırlama fonksiyonları ko¸sulu ile

g1(x1, x2, ..., xn) ≤ b1

..

..

..

gm(x1, x2, ..., xn) ≤ bm

M ax.f (x1, x2, ..., xn)

Do˘grusal olmayan programlama problemleri m¨uhendislik, matematik, i¸sletme, fizi˘ge dayalı bilimler ve matematilk ile kararın (geni¸s anlamda) girdi˘gi t¨um alanlarda yaygın bir bi¸cimde kullanılmaktadır. (Avriel, 2012) . (Cornuejols and Tutuncu, 2007)

Gerek ve Yeter S¸art Kavramı:

Optimizasyon tekniklerinin uygulamalarında ve aynı zamanda elde edilen sonucun ger¸cek optimum de˘ger olup olmadı˘gını belirlemede gerek ve yeter ¸sartlar dikkate alındı˘gından bu ¸sartları kavramak ¨onemlidir.

Gerek ¸sart: Optimum noktada ¸sartları sa˘glaması gereken durumlar olarak adlandırılır. Di˘ger bir tanımla e˘ger herhangi bir nokta gerek ¸sartları sa˘glamıyorsa optimum nokta olamaz. Bununla birlikte gerek ¸sartları sa˘glayan nokta optimum olmayabilir veya tek bir nokta olmayabilir. Gerek

¸sartları sa˘glayan noktalar aday nokta (candidate points) olarak adlandırılır. Dolayısıyla optimum

(6)

nokta ile optimum olmayan noktaları ayırmak i¸cin ba¸ska ¸sartlara ihtiya¸c duyulur ve bu ¸sartlar yeter ¸sart olarak adlandırılır.

Yeter ¸sart: E˘ger aday optimum noktalar yeter ¸sartları sa˘glıyorsa bu nokta optimum noktadır ve daha ileri testler yapmaya gerek yoktur. Ancak bu ¸sartların sa˘glanamadı˘gı veya kullanılmadı˘gı durumlarda aday noktalarından herhangi birisinin optimum olmadı˘gı s¨oylenemeyebilir. ¨Ozetle:

(Anonim, 2013a)

• 1. Optimum noktalar gerek ¸sartları sa˘glamalıdır. Bu ¸sartları sa˘glamayan noktalar optimum nokta olamaz.

• 2. Gerek ¸sartları sa˘glayan bir noktanın optimum olması gerekmez; yani optimum olmayan noktalarda gerek ¸sartları sa˘glayabilir.

• 3. Yeter ¸sartı sa˘glayan bir aday nokta ger¸cekten optimumdur.

• 4. E˘ger yeter ¸sartlar kullanılamıyor veya hesaplanamıyorsa aday noktaların optimum oldu˘guna dair herhangi bir sonu¸c ¸cıkartamayız.

B¨ut¨un bu ¸sartlara optimality conditions (optimumluk ¸sartları) denir ve a¸sa˘gıda belirtilen iki durum i¸cin kullanılır:

• 1. Bir tasarım noktası verildi˘ginde, optimumluk ¸sartları kullanılarak bu noktanın aday nokta olup olmadı˘gı tespit edilir.

• 2. Aday noktayı tespit etmek i¸cin bu ¸sartlar kullanılır.

Tek de˘gi¸skenli optimizasyon Tek de˘gi¸skenli fonksiyonlarda dikkat edilecek husus elde edilen minimum de˘gerin lokal minimum mu yoksa global minimum mu oldu˘gunun tespit edilmesidir.

Lokal minimum Bir de˘gi¸skenli bir f (x)fonksiyonun h’ın k¨u¸c¨uk pozitif ve negatif de˘gerinde a¸sa˘gıdaki ifadeyi veriyorsa bu fonksiyonun x = x da relatif veya lokal minimumdur.

f (x) ≤ f (x+ h)

Benzer olarak x∗ noktasında e˘ger a¸sa˘gıdaki ifade sa˘glanıyorsa bu de˘gerde f (x) fonksiyonu mak- simumdur.

f (x) ≥ f (x+ h)

Global minimum veya maksimum de˘ger i¸cin optimumluk ¸sartlarının sa˘glanması gerekmektedir ki bir de˘gi¸skenli bir fonksiyon i¸cin a¸sa˘gıda verilmi¸stir. Grafiksel g¨osterim ¸sekil 1 ile g¨osterimek- tedir.

(7)

S¸ekil 1: Lokal ve global maksimum ve minimum

3.1 Tek de˘ gi¸ skenli fonksiyonun optimumluk ¸ sartları

Optimumluk ¸sartları, bir f (x)nun aday noktalarını belirlemede kullanılır. Optimumluk ¸sartlarını elde etmek i¸cin ¨oncelikle a¸sa˘gıda verilen kabul yapılır: “x minimumnoktadır ve bunun civarındaki bir noktada fonksiyonun de˘geri ve t¨urevidi kkate alınacaktır.” noktası fonksiyonun lokal minimum noktası olsun. x ise x0noktasına yakın herhangi bir nokta olarak dikkate alalım. Dolayısıyla artım miktarı d a¸sa˘gıdaki gibi tanımlanır:

d = x − x

ve bu noktalara kar¸sılık f (x) fonksiyonun farkı a¸sa˘gıdaki gibi verilir:

∆(x) = f (x) − f (x∗)

m noktası f (x) fonksiyonun lokal minimum oldu˘gu nokta oldu˘gundan k¨u¸c¨uk bir ilerlemede ( x de˘gerine varıldı˘gında) f (x)’in de˘geri de˘gi¸smez veya mutlaka artar. Dolayısıyla ∆f (x) negatif olmayan bir de˘ger alır. Dolayısıyla,

∆f (x) = f (x) − f (x) ≥ 0

. olmalıdır. Buradan f (x) fonksiyonu Taylor serisi ile a¸cılıdktan sonra sonu¸c olarak d nin her de˘gerinde ¸sartı sa˘glayan de˘geri:

f0(x) = 0

(8)

S¸ekil 2: Hessian Matrisi

olacaktır. (Meyer, 1979)

Bu ¸sarta birinci-derece optimumluk ¸sartı (first order optimality condition) veya birinci- de- rece gerek ¸sart (first-order necessary condition) olarak adlandırılır zira fonksiyonun sadece bi- rinci t¨urevini i¸cerir. Bu ¸sartları sa˘glayan noktalar lokal minimum veya maksimum veya hi¸cbir olmayabilir (b¨uk¨um noktası olabilir). Bu noktalar stationary noktaları olarak adlandırılır.Aday noktaları belirledikten sonra bu noktalardan hangisinin fonksiyonu minimum veya maksimum yaptı˘gını belirlemek i¸cin yeter ¸sartlar dikkate alınır.

Buna g¨ore

f0(x) ≥ 0 ise yeter ¸sart olarak adlandırılır.

3.2 C ¸ ok De˘ gi¸ skenli Fonksiyonlarda Gerek ve Yeter S ¸art

E˘ger fonksiyon ¸cok de˘gi¸skenli ise bu durumda her bir eleman i¸cin ayrı ayrı kısmi t¨urev alınan Hessian Matrisi tanımlamak gerekir. C¸ ¨oz¨um buna g¨ore yapılır. S¸ekil 2 ile Hessian matrisi g¨oste- rilmektedir. (Bartholomew-Biggs, 2005)

Uygulamada Hessian Matrisi ile ¸c¨oz¨um¨un hesaplanması zaman alıcı olmaktadır bu bakımdan bilgisayarlı ¸c¨oz¨um de yapılabilir.

(9)

4 Do˘ grusal olmayan programlama problemlerinin ¸ c¨ oz¨ um¨ u

Do˘grusal olmayan programlama problemlerinin hepsini ¸c¨ozen genel bir y¨ontem bulunmamakla birlikte, de˘gi¸sik tipteki do˘grusal olmayan programlama problemlerinin ¸c¨oz¨um¨u i¸cin farklı y¨ontem- ler bulunmaktadır . Optimizasyon problemlerinin analitik y¨ontemlerle ¸c¨oz¨ulemedi˘gi durumlarda yakla¸sık ¸c¨oz¨um tekniklerine ba¸svurulur. Lineer olmayan programlama problemlerinin ¸c¨oz¨um¨u i¸cin geli¸stirilen algoritmaların temeli, tek de˘gi¸skenli fonksiyonların ¸c¨oz¨um¨undeki algoritmalara da- yanır. Bu nedenle ¨once tek de˘gi¸skenli fonksiyonlarda aralı˘gı ikiye b¨olme, altın-oran ve yarı-aralık algoritmaları, daha sonra da ¸cok de˘gi¸skenli fonksiyonlar i¸cin gradyant algoritmasından s¨oz edi- lecektir

Bir ¸cok lineer olmayan programlama algoritmasının temel prensibi ¸su ¸sekildedir: uygun bir Xk noktası ile ba¸slanır ve uygun bir λk adım b¨uy¨ukl¨u˘g¨u bulunarak yeni bir Xk+1 noktası elde edilir. Bu i¸sleme ardı¸sık olarak devam edilerek optimal ¸c¨oz¨ume ula¸sılmaya ¸calı¸sılır.

4.1 Tek de˘ gi¸ skenli kısıtsız optimizasyon problemlerinde yakla¸ sık ¸ c¨ oz¨ um teknikleri

Bir f (x) fonksiyonu [a, b] kapalı aralı˘gında tanımlı ve bu aralıkta f (x) minimum veya maksi- mum de˘gerini alsın. Verilen aralıkta fonksiyonun yakla¸sık ¸c¨oz¨um¨un¨u bulmak i¸cin aralı˘gı ikiye b¨olme, altın oran ile yarı-aralık y¨ontemleri kullanılabilir. Bunlardan aralı˘gı ikiye b¨olme ve altın oran t¨urev kullanmayan, yarı-aralık t¨urev kullanan algoritmalardır. Bu y¨ontemlerle ilgili kısa a¸cıklamalara yer verilmi¸stir (Erdo˘gan ve Alptekin, 2006).

4.1.1 Aralı˘gı ikiye b¨olme y¨ontemi

Bir f(x) fonksiyonu [a,b] kapalı aralı˘gında tanımlı ve bu aralıkta f (x) minimum veya maksimum de˘gerini alsın. [a,b] aralı˘gının orta noktasından  > 0 uzaklıkta iki λ = (a + b)/2 −  ve µ = (a + b)/2 +  noktaları alınarak bu noktaların fonksiyon altındaki g¨or¨unt¨uleri bakılarak yeni bir aralık bulunur. Bu i¸sleme aralık belli bir l > 0sayısından k¨u¸c¨uk olana kadar devam edilirse aranan

¸

c¨oz¨ume ula¸sılır.

4.1.2 Altın oran y¨ontemi

Bir f (x)fonksiyonu [a, b] kapalı aralı˘gında tanımlı ve bu aralıkta f (x) minimum veya maksimum de˘gerini alsın. r2 + r − 1 = 0 denkleminin pozitif k¨ok¨u olan ve yakla¸sık de˘geri r ' 0, 618 olan sayıya altın oran denir. Her iterasyonda sabit bir oranla aralı˘gın uzunlu˘gu indirgenerek yeni

(10)

nokta ¸ciftleri bulunur. Bu i¸sleme aralık belli bir l > 0 sayısından k¨u¸c¨uk olana kadar devam edilirse aranan ¸c¨oz¨ume ula¸sılır.

4.1.3 Yarı aralık (bisection) y¨ontemi

Bir f(x) fonksiyonu [a,b] kapalı aralı˘gında tanımlı ve bu aralıkta f(x) t¨urevlenebilir bir fonksiyon olmak ¨uzere minimum veya maksimum de˘gerini alsın. Bu durumda aralı˘gın orta noktasındaki t¨urev de˘gerine bakılarak yeni aralık tespit edilir. Bu i¸sleme aralık l > 0 sayısından olana kadar devam edilirse aranan ¸c¨oz¨ume ula¸sılır.

4.2 C ¸ ok de˘ gi¸ skenli fonksiyonlarda yakla¸ sık ¸ c¨ oz¨ um teknikleri

Bu ba¸slık altında gradyant ve Newton y¨ontemlerine yer verilmi¸stir. Uygulamada yakla¸sık ¸c¨oz¨um y¨ontemleri i¸cin bilgisayar programlarından yararlanılmaktadır. ¨Orne˘gin aralı˘gı ikiye b¨olme ve altın oran algoritması i¸cin C++ ve Newton ile gradyant y¨ontemleri i¸cin de Maple matematiksel programlama dilinde yazılan programlar kullanılabilmektedir.

4.2.1 Gradyant y¨ontemi

Bu y¨ontem en hızlı artan veya en hızlı azalan y¨on olarak isimlendirilir. ¨Oncelikle bir ba¸slangı¸c noktası alınır, daha sonra ama¸c fonksiyonunu en hızlı geli¸stiren y¨onde hareket edilir. Bu y¨on ama¸c fonksiyonunun gradyantı ile (e˘ger ama¸c fonksiyonu maksimum ise) aynı y¨onde veya ama¸c fonksiyonunun gradyantının (e˘ger ama¸c fonksiyonu minimum ise) ters y¨onde olacaktır. Daha sonra gradyant belli bir katı kadar adım atılarak ba¸slangı¸c noktasına ilave edilir. Fonksiyonun gradyantının normu  > 0 olana kadar iterasyona devam edilerek ¸c¨oz¨um bulunur. ¨Ozetle gradyant algoritması;

1. Rastgele bir X0 noktasıyla ba¸sla, 2. X0’da fonksiyon gradyantını hesapla,

3. Gradyan do˘grultusunda bir adım atarak yeni bir X1noktasına git,

4. (2) ve (3) adımlarını, fonksiyonun gradyantının sıfır oldu˘gu Xnoktasına kadar tekrarla,

¸seklindedir.

(11)

4.2.2 Newton y¨ontemi

Gradyan y¨onteminde ama¸c fonksiyonunun en hızlı iyile¸sti˘gi y¨on olan gradyant y¨on¨unde adım atılarak yeni bir nokta bulunurken, Newton y¨onteminde ise ikinci mertebe ko¸sulları kullanılması suretiyle Newton adımı atılarak yeni bir nokta bulunur. Newton adımı bir lineer denklem siste- minin ¸c¨oz¨ulmesi ile bulunur.

4.3 Kısıtlı optimizasyon

Kısıtlı do˘grusal olmayan (nonlinear) optimizasyon problemleri, kısıtları e¸sitlik veya e¸sitsizlik

¸seklinde olan problemlerden olu¸sur. Y¨ontemler kısıtlılık ve kısıtsızlık hallerine g¨ore geli¸stirilmi¸stir.

Kısıtlı olanlar i¸cin analitik ¸c¨oz¨um; kısıtlar e¸sitlik ¸seklinde ise lagrange ¸carpanları y¨ontemiyle yapılır. Kısıtlar e¸sitsizlik ¸seklinde ise Kuhn-Tucker (K-T) ko¸sullarını sa˘glayacak ¸sekilde ¸c¨oz¨umler ara¸stırılır.

4.3.1 Lagrange ¸carpanları

Zmin,max= f (x1, x2, ..., xn) (1)

gi(x) = bi (2)

¸seklinde verilen kısıtları e¸sitlik halinde ve de˘gi¸skenleri serbest olan modelin ¸c¨oz¨um¨unde Lang- range ¸carpanları y¨ontemi kullanılır. Kaya (2012)

Y¨ontemin iki temel varsayımı vardır.(Markland ve Sweigart, 1987, s.719 aktaran Kaya (2012))

• Kısıtlayıcı fonksiyon sayısı (m), bilinmeyen de˘gi¸sken sayısı (n) sayısından az olmalıdır.

• Ama¸c fonksiyonu ve kısıtlar s¨urekli ve t¨urevleri alınabilen fonksiyonlar olmalıdır.

Modelin ama¸c fonksiyonu ve kısıtlarından olu¸san Langrange fonksiyonu a¸sa˘gıdaki bi¸cimde g¨osterilir:

L(x, λ) = f (x) +X

λi[bi− gi(x)] (3)

λi de˘gerlerine Langrange ¸carpanları adı verilir. Langrange fonksiyonun kullanılmasıyla; m kısıtlı problem, m Langrange ¸carpanlı kısıtsız bir problem haline gelir. Langrange fonksiyonunun optimumu veren sonu¸c, kısıtları sa˘glamak zorunda oldu˘gunda orjinal problemin de optimum

¸

c¨oz¨um¨u olacaktır. Kaya (2012)

(12)

Ornek: Maksimizasyon problemimiz a¸sa˘¨ gıdaki gibi olsun.1

M ax : Z = 4x1− 0.121+ 52− 0.2x22 (4) kısıt ise:

x1+ 2x2= 40 (5)

˙Ilk adımda do˘grusal olmayan ama¸c fonksiyonumuzu Langrange fonksiyonuna ¸cevirelim. Bunun i¸cin kısıtlama fonksiyonunu da a¸sa˘gıdaki gibi sıfıra e¸sit hale getirmek suretiyle d¨on¨u¸st¨urelim:

x1+ 2x2− 40 = 0 (6)

Sonraki adım; Langrange ¸carpanı λ ile bir ¨onceki sıfıra e¸sit e¸sitli˘gimizi ¸carpıp ama¸c fonksiyonuna etkileyelim (bu durumda ama¸c fonksiyonu de˘gi¸smemi¸s olur).

L = 4x1− 0.1x21+ 5x2− 0.2x22− λ(x1+ 2x2− 40) (7) S¸imdi ise 3 de˘gi¸skenimiz ile ilgili Langrange fonksiyonunun kısmi t¨urevini alalım:

∂L

∂x1

= 4 − 0.2x1− λ (8)

∂L

∂x2

= 5 − 0.4x2− 2λ (9)

∂L

∂λ = −x1− 2x2+ 40 (10)

Bu denklemleri sıfıra e¸sitleyelim:

4 − 0.2x1− λ = 0 (11)

5 − 0.4x2− 2λ = 0 (12)

−x1− 2x2+ 40 = 0 (13)

Denklemler ¸c¨oz¨uld¨u˘g¨unde a¸sa˘gıdaki sonu¸clar elde edilir:

x1= 18.3

1Orne˘¨ gin tamamı ”Nonlinear Programming Solution Techniques” adlı kitaptan alınmı¸stır. Anonim

(13)

S¸ekil 3: Problemin WolframAlpha ile ¸c¨oz¨ulm¨u¸s hali ve 3 boyutlu g¨or¨un¨um¨u.

¸si¸se ¨uretmeli,

x2= 10.8 kupa ¨uretmeli

λ = 0.33 olur

Bu de˘gerleri Langrange fonksiyonunda ilgili yerlere yazdı˘gımızda L de˘geri $70.42 olacaktır.

Yukarıda elle yapılan ¸c¨oz¨um¨un bilgisayarda ¸c¨oz¨ulm¨u¸s hali: Yukarıdaki optimizasyon problemini bilgisayar yardımı ile manuel ¸c¨oz¨ume g¨ore daha hızlı ve hatasız ¸c¨ozebiliriz. C¸ ¨oz¨um¨un grafiksel g¨osterimi S¸ekil 3’de g¨osterilmi¸stir.

Ornek : Hickory S¨ ¸irketi sandalye ¨uretmektedir. Her ay sabit maliyetler 7500 $ ayrıca her bir sandalye ba¸sına ¨uretim maliyeti 40 $ olmaktadır. Fiyat ise taleple ba˘glantılı olup a¸sa˘gıdaki do˘grusal denkleme g¨ore ortaya ¸cıkmaktadır. (v ¨uretilecek adet olmak ¨uzere): Anonim

v = 400 − 1.2p (14)

(14)

S¸ekil 4: Hickory S¸irketi i¸cin optimal ¨uretim

Buna g¨ore do˘grusal olmayan kar fonksiyonunu yazın ve maksimum karı sa˘glayacak fiyat ve optimum ¨uretim adedini ve buna g¨ore ¸cıkacak maksimum karı da hesaplayın:

C¸ ¨oz¨um: p fiyat olmak ¨uzere kar fonksiyonu hasılat- toplam maliyet olacaktır. Buna g¨ore

¨

oncelikle maliyet fonksiyonumuz:

c = 7500 + 40v (15)

olur, hasılat pv de˘gerinden maliyeti ¸cıkaracak olursak:

M ax.pv − (7500 + 40 ∗ v) (16)

S¸imdi bu propbelmde v de˘gerleri yerine v = 400 − 1.2p denkleminin sa˘g taraftaki ifadesini koyarak bilinmeyen adedini bire indirelim:

M aksimize400p − 1.2p2− 7500 − 16000 − 48p (17) ayrıca kar sıfır olmayaca˘gından kısıt fonksiyonumuz: p > 0 olacaktır.

Bu denklemi bilgisayar yardımı ile ¸c¨ozd¨u˘g¨um¨uzde:

p = 146, 66 optimum ¨uretim adedi v = 224 adet ve maksimum kar 2180 $ olacaktır. C¸ ¨oz¨um¨un 3 boyutlu grafiksel g¨osterimi ¸sekil 4 ile g¨osterilmi¸stir.

(15)

S¸ekil 5: Belirsizlik aralı˘gı

4.3.2 Do˘grudan arama y¨ontemi

Bu y¨ontemin d¨u¸s¨uncesi tanımlanmı¸s optimumu i¸cerdi˘gi bilinen bir belirsizlik aralı˘gını tanımlamak ve optimum bulununcaya kadar aralı˘gı daraltmaktır. Bu aralık ba¸sta istenildi˘gi kadar k¨u¸c¨uk tu- tulabilir.Bu y¨ontem ¸sekil 5 ile grafiksel olarak g¨osterilmi¸stir.

Ornek: A¸sa˘¨ gıdaki do˘grusal olmayan problemi do˘grudan arama y¨ontemi ile ¸c¨ozelim:

M ax.f (x) =

3x 0 ≤ x ≤ 2

x3 +203 2 ≤ x ≤ 3

(18)

C¸ ¨oz¨um: xL= 0, xR= 3 olsun:

xL≤ x ≤ x2ve x1≥ x ≤ xRolmalıdır.

Burada: x1− xL= xR− x2ve ∆ = x2− x1’dir. Bu da:

x1= xL+xR− xL− ∆

2 (19)

ve

x2= xL+xR− xL+ ∆

2 (20)

oldu˘gu anlamına gelir. ∆ = 0.01 olarak hesap yapılacak olursa sonu¸clar 6 ile g¨osterilmektedir.

(16)

S¸ekil 6: Do˘grudan arama y¨ontemi ile ¸c¨oz¨um

4.3.3 Yerine koyma metodu

Do˘grusal olmayan programlama ¸c¨oz¨um metotları i¸cerisinde en kolay metot yerine koyma metodu

2 olarak bilinen metottur. Bu metot ancak tek kısıtlılık e¸si˘gi olan durumlarda kullanılır. Bu metodun mantı˘gı de˘gi¸slenleri birbiri yerine koymak suretiyle ¸c¨ozmektir. Bu kısıtlı optimizasyon modelinin bir nevi kısıtsız optimizasyon modeline d¨on¨u¸smesi olarak kabul edilebilir.Anonim

Ornek: Problem: Anonim¨

maksimizeZ = vp − cf− vcv (21)

kısıt ise:

v = 1500 − 24.6p (22)

Sabit de˘gerler cf = 10000$vecv= 8$oslun

Dikkat edilecek olursa ama¸c fonksiyonu do˘grusal de˘gildir ¸c¨unk¨u v (satı¸s adedi) ve p (fiyat) de˘gi¸skenlerinin ¸carpanları vardır bu nedenle denklem do˘grusal de˘gildir. S¸imdi yukarıdaki ilk fonksiyonda v yerine ikinci fonksiyondaki 1500 − 24.6p de˘gerini yazarsak:

2˙Ingilizce kar¸sılı˘gı substition method

(17)

Z = 1500p − 24.6p2− cf− 1500cv+ 24.6pcv (23) cf ve cv sabit de˘gi¸skenlerini de yerine koydu˘gumuzda:

Z = 16696p − 24.6p2− 22000 (24)

Bu problemi Z’nin diferansiyelini alıp sıfıra e¸sitleyerek ¸c¨ozece˘giz:

∂Z

∂p = 1669.8 − 49.2p (25)

0 = 1669.8 − 49.2p (26)

49.2p = 1669.8 (27)

p = 34.49$ (28)

Aynı problemin bilgisayar destekli ¸c¨oz¨um¨u ¸sekil 7 ile g¨osterilmi¸stir.

4.4 Kuhn-Tucker ko¸ sulları

Bir do˘grusal olmayan programlama probleminde, problemin kısıtları e¸sitsizlik formunda ise bu t¨urden problemlerin ¸c¨oz¨um¨u Kuhn-Tucker ko¸sullarını sa˘glamalıdır. Kısıtları e¸sitsizlik formunda olan bir do˘grusal olmayan programlama problemi a¸sa˘gıdaki ¸sekilde verilsin: m kısıt ve n de˘gi¸skenden olu¸san bir problemde; Maksimum veya minimum ama¸c fonksiyonu: z = f (x1, x2, . . . , xn) Kısıtlar:

g1(x1, x2, . . . , xn) ≤ b1g2(x1, x2, . . . , xn) ≤ b2....gm(x1, x2, . . . , xn) ≤ bm

¸seklinde verilsin. Problemin Lagrange fonksiyonu yazılır ve buna g¨ore Kuhn-Tucker ko¸sulları incelenir. Lagrange fonksiyonu a¸sa˘gıdaki gibi yazılır: L(xj, λi) = f (xj)λ(xj)(j = 1, 2, .., n)ve(i = 1, 2, ..., m) Kuhn-Tucker ko¸sullarının uygulanabilmesi i¸cin verilen do˘grusal olmayan programlama probleminin kısıtlarının ≤ ¸seklinde olması gerekmektedir Winston, (2004).

Kuhn-Tucker gerek ¸sartları iki ama¸c i¸cin kullanılır:

• verilen bir noktanın muhtemel optimum olup olmadı˘gını kontrol etmede aday minimum noktaların tespitinde kullanılır Kuhn-Tucker 1. derece gerek ¸sartları ile ilgili ¨onemli bazı

¨

ozellikler a¸sa˘gıda verilmi¸stir:

(18)

S¸ekil 7: Problemin bilgisayar destekli ¸c¨oz¨um¨u-Optimal de˘ger i¸saretlenmi¸stir

(19)

• K-T ¸sartları ancak regular (d¨uzenli) noktada uygulanır.

• K-T ¸sartlarını sa˘glamayan noktalar, e˘ger irregular (d¨uzensiz) noktalar de˘gilse lokal mini- mum olamazlar. K-T ¸sartlarını sa˘glayan noktalar Kuhn-Tucker noktaları olara adlandırılır.

• K-T ¸sartlarını sa˘glayan noktalar kısıtlı veya kısıtsız olabilir.

• E˘ger e¸sitlik kısıtlayıcı varsa ve e¸sitliksiz kısıtlayıcıların hi¸cbiri aktif de˘gilse K-T ¸sartlarını sa˘glayan bu noktalar stationary noktalardır. Yani bu noktalar minimum maksimum veya d¨on¨um noktaları olabilir.

Kaynaklar

Anonim. Nonlinear Programming Solution Techniques.

Anonim. pages 1–8, 2013a.

Anonim. Optimizasyon-vikipedia, 3 2013b. URL http://tr.wikipedia.org/wiki/Optimizasyon.

Anonim. Dogrusal programlama-vikipedia, 3 2013c. URL http://j.mp/suatdp1.

Anonim. Linear programming-wolfram mathworld, 3 2013d. URL

http://mathworld.wolfram.com/LinearProgramming.html.

Mordecai Avriel. Nonlinear programming: analysis and methods. Courier Dover Publications, 2012.

MC Bartholomew-Biggs. Nonlinear optimization with financial applications, volume 1. 2005.

Gerard Cornuejols and R Tutuncu. Optimization methods in finance. Number January. 2007.

George Bernard Dantzig. Linear programming and extensions. Princeton university press, 1965.

J. Dutta. Optimization Theory - A Modern face of Applied Mathematics.

Havacılık M¨uhendisli˘gi B¨ol¨um¨u ˙Istanbul T¨urkiye Hacıo˘glu, Abdurahman; Hava Harp Okulu.

Do˘grusal olmayan optimizasyon problemleri i¸cin ta¸sınır algoritmik fonksiyonlar y¨ontemi. Ha- vacılık ve Uzay Teknolojileri Dergisi, 5(1):1, 2011. ISSN 13040448.

Cansın Kaya. Do˘grtusal olmayan programlama ile portf¨oy analizi, Ocak 2012. Yuksek Lisans Tezi.

(20)

RM Meyer. Max-Min Problems. Essential Mathematics for Applied Fields, pages 1–8, 1979.

URL http://j.mp/suatdop2.

S. S. Rao. Engineering Optimization: Theory and Practice, Fourth Edition. John Wiley and Sons, Inc., 2009.

H. Yamashita. A Differential Equation Approach to Nonlinear Programming. Mathematical Programming, cilt 18, s, 1980.

Referanslar

Benzer Belgeler

I¸ · sletme problemlerinin matematiksel modeller yard¬m¬yla analizinde lineer program- lama teknikleri önemli bir yer kaplar. · I¸ sletme problemleri aç¬s¬ndan lineer program-

Doğrusal bir programlama problemi, doğrusal kısıtlamalara tabi yine doğrusal olan amaç fonksiyonun maksimize edilmesi veya minimize edilmesi problemi

a) Bir öğrenciye üç grup soru verilmektedir. gruptaki soruların herbiri 5 puan, II. gruptaki soruların herbiri 4 puan, III. gruptaki bir sorunun da ortalama 4

-Lojik değişkenler için Boolean bağıntıları örn: x∧ y ∨ - z; -Küme kısıtlar öğe ve altküme bağıntılarını uygulamak için Tamsayı ve bağıntılı

2 Çoklu Do ˘grusal Regresyon Katsayıların tahmini ve yorumu Katsayıların ve modelin kesinli ˘gi Nitel de ˘gi¸skenler. Çoklu

(2014) çok seferli zaman pencereli araç rotalama problemi için rota havuzuna dayalı bir sezgisel yöntem geliştirmişlerdir.. Söz konusu çalışmada araçlar

Bu kablonun kulenin ayaklarını birle¸stiren hatta en yakın noktası 150 m olarak ¨ ol¸ c¨ ul¨ uyor. ˙Iki kule arasındaki kablonun uzunlu˘

(b) Bu e˘ grinin x−ekseni etrafında d¨ ond¨ ur¨ ulmesiyle elde edilen d¨ onel cismin y¨ uzey alanını ifade eden belirli integrali yazınız. (c) Bu e˘ grinin y−ekseni