• Sonuç bulunamadı

1.1.4. Optimizasyon Metotlarının Sınıflandırılması

1.1.4.2. Sayısal Optimizasyon Teknikleri

1.1.4.2.1. Doğrusal Programlama

1.1.4.2.1.1.Doğrusal Programlama Kavramı ve Unsurları

II.Dünya Savaşı’nda büyük askeri ve sivil harekat her şeyden daha çok bu faaliyetlerin sistematik planlamasını ve koordinasyonunu gerektiriyordu. Bunun sonucu olarak “ihtiyaçlar keşfin anasıdır” değer yargısı burada bir defa daha doğrulanmış oldu. Nitekim Leontief’in temelde sektörler arası ekonomik ilişkileri açıklayan fakat optimizasyon gibi bir amacı olmayan girdi-çıktı modelinin rehberliğinde doğrusal programlama konusu araştırılmaya başlandı. Söz konusu

araştırmalar A.B.D. Hava Kuvvetleri’nde yapılan planlama çalışmaları içinde yürütülmüş ise de 1947 yılına kadar programlama problemlerinin genel formülasyonunu yapmak mümkün olmamıştır (Serper ve Gürsakal, 1982: 5).

A.B.D. Hava Kuvvetleri’nde matematikçi olarak Dantzig, 1947 yılında planlamakta olduğu lojistik faaliyet ve problemlerin, bugün bizim Doğrusal Programlama dediğimiz şekli aldığına dikkat etmiş ve bu özelliği, henüz saptanmamış matematiksel bir yapı olarak yorumlamıştır(Karakoyunlu, 1973: 51- 52).

Doğrusal Programlama, sınırlı kaynakların kullanımını optimum kılmak için tasarlanmış bir matematiksel modelleme yöntemidir (Taha, 2000: 11). Bugün endüstriyel ve ekonomik analizlerde yaygınca kullanılan doğrusal programlama, tüm nicel teknikler arasında en geniş etki alanı olanıdır. Doğrusal programlama firmanın, ulaşım, üretim, finansman, dağıtım ve reklamcılık gibi pek çok faaliyetlerinde kullanılabilir (Öztürk, 2004: 23).

DP problemleri, bilinmeyenler içinde herhangi birinin eşitlik veya eşitsizlik olabileceği doğrusal kısıtlara bağlı bir şekilde amaç fonksiyonu olarak adlandırılan doğrusal bir fonksiyonun optimizasyonunu içermektedir (Goldfarb ve Todd, 1989: 73). Doğrusal programlama probleminin üç önemli unsuru vardır (Esin, 1981: 26- 28):

-Amaç fonksiyonu,

-Kısıtlayıcı fonksiyonlar,

-Pozitif kısıtlama.

Doğrusal Programlama modelinden beklenen sonucun alınabilmesi için amacın açık olarak bilinmesi ve nicel olarak yazılımı gereklidir. Genellikle amaç, karların en büyüklenmesi veya maliyetlerin en küçüklenmesi yönündedir (Öztürk, 2004: 25).

Doğrusal Programlama problemini denklemler halinde gösterecek olursak(Sezginman, 2001: 1): a11x1 + a12x2 + … + a1mxm + … + a1nxn = b1 a21x1 + a22x2 + … + a2mxm + … + a2nxn = b2 (1.7) am1x1 + am2x2 + … + ammxm + … + amnxn = bm x1 ≥ 0, x2 ≥ 0, … , xm ≥ 0, … , xn ≥ 0 (1.8) kısıtları altında z = c1x1 + c2x2 + … + cmxm + … + cnxn (1.9)

amaç fonksiyonunu minimum (ya da maksimum) yapan x1, x2, …,xm, … xn bilinmeyenlerini (değişkenlerini) belirtmek doğrusal programlama problemidir.

1.1.4.2.1.2.Doğrusal Programlamanın Dayandığı Varsayımlar

Bir modelin Doğrusal Programlama yaklaşımı ile çözülebilmesi için aşağıdaki şartlara sahip olması gerekir ( Tekin, 2004: 51):

a. Modeldeki değişkenlerin rakamlarla gösterilmesi ve bölünebilir özellikte olması gerekir. Doğrusal Programlama rakamlarla gösterilemeyen modellerin çözümünde kullanılmaz.

b. Değişkenler arasında alternatif seçim olanağı olmalıdır. Örneğin; yalnızca bir makineye veya insan emeğine ihtiyaç gösteren üretime, Doğrusal Programlama uygulanmaz.

c. Değişkenler arasındaki ilişkilerin doğrusal olması gerekir. Doğrusallık modelde kullanılan bütün eşitlik veya eşitsizliklerin birinci dereceden olması anlamına gelmektedir.

d. Doğrusal Programlamanın uygulanacağı işletme problemleri kısa dönemlidir. Çünkü; Doğrusal Programlamanın en önemli koşulu olan doğrusallık, ancak kısa dönemde gerçekleşebilir.

1.1.4.2.1.3.Doğrusal Programlama Probleminin Özellikleri

Özellik 1: Doğrusal karar modelinin uygun çözüm alanı dışbükey kümedir(Kara, 2000: 38).

Şekil 6: Dışbükey ve Dışbükey Olmayan Şekiller

-a ve b dışbükey, c ve d dışbükey olmayan şekillerdir.

Kaynak: Wismer ve Chattergy, 1978: 5

Özellik 2: Amaç fonksiyonu f(x) = c(x) olan bir doğrusal programlama modelinde (Kara, 2000: 40);

a. Eğer modelin en iyi çözümü varsa, bu nokta uygun çözüm alanının bir uç noktasıdır.

b. Amaç fonksiyonu en iyi değerini birden fazla uç noktada alıyorsa bu noktaların her dışbükey bileşimi de en iyi çözümdür.

1.1.4.2.1.4.Doğrusal Programlama Probleminin Çözümüne İlişkin Tanımlar Doğrusal programlama probleminin çözümünde kullanılan tanımları şöyle sıralayabiliriz(Öztürk, 2004: 24-25):

a. Uygun Çözüm: Çözüm doğrusal programlama probleminin tüm kısıtlayıcılarını doyurursa uygun çözüm olur.

b. Optimal Çözüm: Doğrusal programlama probleminin çözümünde birkaç uygun çözüm olabilir. Oysa tüm uygun çözümler arasından en iyi olanı optimal çözümdür.

c. Temel Çözüm: Amaç fonksiyonu ve negatif olmama koşulu dışında, problem m sayıda sınırlayıcılı ve n değişkenli ise tek bir temel çözüm vardır.

d. Bozulan Çözüm: Cari temel çözümün bir veya birkaç temel değişkenin değeri sıfırsa bozulan çözüm vardır.

1.1.4.2.1.5.Doğrusal Programlama Çözüm Metotları

Doğrusal Programlama değişik şekillerde çözümlenebilir. Bu çözüm yollarının en basit şekli, kayıtlayıcı ilişkilerinin ikili eksenler üzerinde doğrular olarak çizilmesi ve uygun çözüm alanının saptanmasıdır. Doğrusal Programlama çözümlerinin en mükemmel şekli olan Simpleks metot her tip Doğrusal Programlama çözümlerinde kullanılabilir(Karakoyunlu, 1973: 56).

1.1.4.2.1.5.1.Grafik Çözüm Metodu

Doğrusal programlama problemlerinin çözümünde grafik yönteminden yararlanabilmek için, söz konusu problemlerin en fazla üç değişken ihtiva etmesi gerekir. Çünkü üç boyuttan daha fazlası için grafik çizimi yapılamamaktadır(Serper ve Gürsakal, 1982: 7). Grafik yöntemde iki temel adım vardır (Taha, 2000:15):

1.Modelin tüm kısıtlarının sağlandığı uygun çözümleri içeren çözüm uzayının belirlenmesi,

2.Belirlenen bu uygun çözüm uzayındaki bütün noktalar arasından optimum çözümün belirlenmesi.

Grafik çözüme ilişkin bir örnek ile konuya açıklık getirmeye çalışalım(Sezginman, 2001:8): x1 + 4x2 – 4 ≥ 0 -x1 + x2 + 4 ≥ 0 (1.10) x1 – 6 ≤ 0 x1 – 2x2 + 20 ≥ 0 x1 ≥ 0 (1.11) x2 ≥ 0 Maks z = x1 + 2x2 (1.12)

Şekil 7: Grafik Çözüm Metodu

Kaynak: Sezginman, 2001: 8 Grafik çözümde:

1.(1.10) ve (1.11) koşullarının sağlandığı ABCDE bölgesi saptanır.

2.z bir parametre olarak düşünülürse z = x1 + 2x2 paralel doğru parametredir.

z nin bir değerine bu demetin bir tek doğrusu ve bu demetin bir doğrusuna da z nin bit tek değeri karşı gelir. En önemli husus z = x1 + 2x2 doğrusu hangi yönde ötelenirse z nin artacağının saptanmasıdır.

z = x1 + 2x2 de x2 nin katsayısı pozitif olduğundan (ya da x2 – ekseni kestiği noktaların koordinatlarından) z = x1 + 2x2 doğruları x2 – ekseni yönünde ötelediği zaman z nin artacağı görülür. Tabii x1 in katsayısının pozitif olması nedeniyle, x1 ekseni yönündeki öteleme de z yi artırır. Bunlara dayanarak (1.10) ve (1.11) koşullarının sağlandığı A(6,13) noktasından geçen z = x1 + 2x2 doğrusunda z nin maksimum değeri alacağı söylenebilir.

Şu halde optimum çözüm:

x1 = 6 x2 =13 X =(6,13); Maks z = 6 + 2.(13) = 32 dir.

1.1.4.2.1.5.2.Simpleks Metodu

Simpleks yöntemi tekrarlı bir hesaplama yöntemdir. Diğer bir ifade ile, bu yöntemde temel hesaplama işlemleri sürekli olarak tekrarlanmaktadır. Bu işlemlere en iyi çözüm bulununcaya kadar devam edilir. Tekrarlama sayısı sabit değildir. Tecrübeler göstermiştir ki, tekrarlama sayısı ile modeldeki eşitsizliklerin sayısı hemen hemen eşittir. Bu kural tam anlamıyla doğru olmamasına rağmen, tekrarlamaların sayısı hakkında bir bilgi verir(Serper ve Gürsakal, 1982: 15).

Problemlerin Doğrusal Programlama şeklinde formüle edilerek Simpleks Metoduna göre çözümlenebilmesi için aşağıdaki işlemlerin sırasıyla izlenmesi gerekir(Tekin, 2004:57):

1.Sınırlayıcı şartlara ve amaç fonksiyonuna göre Simpleks tablosu düzenlenir. Sınırlayıcı şartların sağ taraf değerleri, pozitif değerler olarak çözüme girmelidir.

2.≤ Şeklindeki sınırlayıcı şartlar için pozitif değişkenler ilk çözüm tablosunda yer alır. ≥ Şeklindeki sınırlayıcı koşullar için negatif boş değişkenler ilk çözüm tablosunda yer alırlar. ≥ ve = şeklindeki sınırlayıcı şartlar için yapay değişkenler ilk çözüm tablosunda yer alır.

3.Bu metodun ilk safhası amaç fonksiyonuna bakılmaksızın yapay değişkenleri elimine etmektir (çözümden çıkarmaktır). Yapay değişkenler ilk çözüm tablosunda yer alırlar.

4.Çözümün optimal olup olmadığı belirlenir. Temel olmayan değişkenlerin her birinin katsayısı bulunarak amaç fonksiyonundan temel değişkenler çıkarılır.

5.Z deki artışa neden olan temel değişkenlerin seçimine göre, temel olmayan değişkenler çözüme girer. Amaç fonksiyonunda en büyük artışı sağlayan temel olmayan değişken katsayısı seçilir. K çözüme giren temel değişken sayısını gösterir.

6.Çözüme giren temel değişkenlerden sıfır değerini alan ilk temel değişken çözümden çıkarılır, bj/cj oranı sıfırdan büyük olanı alınır. Çözümden çıkan temel değişkenlerden bj/cj oranı sıfırdan büyük olanı alınır. Çözümden çıkan temel değişkenlerden bj/cj oranı en küçük olanı seçilir.

7.Yeni temel uygun çözüm bulunur. Satır işlemlerinde temel olmayan değişkenler temel değişkenler için çözülür. Tamamlanan tabloda amaç satırı oluşturur.

Bu işlemler yapıldıktan sonra; optimal, sınırlı ya da temel uygun bir çözümün olup olmadığı tespit edilir.

Bir doğrusal programlama problemini tablo halinde de gösterebiliriz ve bu tabloya Simpleks Tablo denir (Okka, 2006: 805):

n max j j j =1 n ij j i 1 j = 1 j i Z = C X (1.13) K.S. a X + S =b i = 1,2,...,m (1.14) X 0 j = 1,2,...,n S 0  

Tablo 2: Simpleks Tablo

Kaynakça: Okka, 2006: 806

Burada Zj değeri temel olmayan değişkenler satırında bir değişiklik yapıldığında birim başına K.S.’deki kaybı gösterir.

Cj - Zj değeriyse; bu satırdaki elemanın ilişkili bulunduğu değişkenden bir birim daha üretildiğinde sağlayacağı kazanç artışını (minimizasyon problemlerindeyse maliyet azalışını) gösterir(Okka, 2006: 806).

1.1.4.2.1.5.3.Dualite

Daha önceki bölümlerde incelenen Doğrusal Programlama problemlerinin çözümünde kullanılan model primal model olarak isimlendirilmektedir. Primal modelin değişik bir şekilde oluşturulması ile dual model meydana gelmektedir. Primal ve dual modelde değişken ve sınırlayıcı koşul sayılarının farklı olması, birinin çözümünün, diğerinden kolay olmasını sağlar. Primal modelde amaç fonksiyonu maksimizasyon ise, dual modelde amaç fonksiyonu minimizasyon biçiminde

olmaktadır. Primal modelde amaç fonksiyonu minimizasyon ise dual modelde amaç fonksiyonu maksimizasyon olmaktadır(Tekin, 2004: 79).

Kanonik şekilde verilen bir doğrusal programlama problemi şöyle yazılabilir(Okka, 2006: 822): n max j j j =1 n ij j i j = 1 j Z = C X , (1.15) S.S. a X b , j = 1,2,3...,n (1.16) X 0 i = 1,2,3,...,m  

Böyle bir problemin duali şöyle yazılabilir:

m min i i i=1 m ij i j i = 1 i Y = b Y , (1.17) S.S. a Y C , j = 1,2,3...,n (1.18) Y 0 i = 1,2,3,...,m  

Benzer Belgeler