Excel Solver (Çözücü) , DoğruDoğrusal Programlama ve Algoritması Doğrusal Programlama ve Algoritması:Doğrusal Programlama Nedir ?Doğrusal programlama, en basit anlatımıyla belirli kısıtlar altında istenen optimum sonuca ulaşmak için uygulanan bir yöntemdir. Kısıtlı ekonomik kaynaklardan yola çıkarak maksimum ya da minimum amaç fonksiyonları tanımlanır. Örneğin işletmeler için kar amacı maksimumken, maliyet amacı da minimum olacaktır. Belirlenen amaç fonksiyonu arzulanan duruma göre maksimum ve minimum olarak oluşturulmalıdır.
Doğrusal programlama yardımıyla bir çok problem matematiksel olarak ifade edildikten sonra çözülebilir. Bunun için öncelikle problemi anlamak daha sonra da doğru modeli kurmak gereklidir. Modeli kurmak için de problemdeki temel amacın ne olduğunu belirledikten sonra kısıtları da doğru ifade etmek gerekmektedir.
Problemin Temel Amacını Belirlemek Her problemin temel bir amacı vardır. Örneğin en uygun çözüme en uygun maliyet ile ulaşmak bir problemin temel amacı olabilir. Ya da en kısa sürede en karlı işi seçmek diğer bir problemin temel amacı olabilir. Temel amaç belirlendikten sonra bu amaca yönelik fonksiyonu kurmak gerekir. Problemin temel amacına yönelik kurulan bu fonksiyona ya da denkleme amaç fonksiyonu denir.
Amaç fonksiyonları ençoklamak (maksimize etmek) ya da enazlamak (minimize etmek) olarak oluşturulurlar. Maliyet amaçlı bir fonksiyon her zaman en düşüğü bulmaya çalışır bunun tam tersi olarak da kar amaçlı bir fonksiyon her zaman en yükseği bulmaya çalışır.
Problemde Bulunan Kısıtlarının Belirlenmesi Amaç fonsiyonunun tanımlanmasından sonra problemin sınırlarını çizecek kısıtların belirlenmesi gerekmektedir. Kısıtlar her probleme özgü koşullar olup problemin optimum çözüm bölgesinin sınırlarını çizerler. Gerçek hayatta olduğu gibi hiçbir kaynak sınırsız ya da sonsuz değildir. Örneğin makinaların kapasiteleri, belirli zamanda tanımlanan işgücü miktarı, depoların hacimleri, araçların belirli bir zamanda katettikleri mesafeler bir problemin kısıtları olabilir. Kısıtlar bir rakamdan küçük olamayacakları gibi bir başka rakamdan da büyük olamayabilirler.
Örnek Bir Probleminin Amaç ve Kısıt fonksiyonlarının Belirlenmesi Bir fırın A ve B adlı 2 farklı çeşitte ekmek üretmektedir. A ürününden 3 birim lira kar ederken, B ürününden 2 birim lira kar etmektedir. Buna karşılık 1 adet A ekmeği üretmek için harcanan un miktarı 2 brim kg iken, işgücü 1 birim saattir. Aynı şekilde B ekmeği için harcanan un miktarı 1 brim kg iken, işgücü 1 brim saattir. İşletmenin 1 günlük üretim için ayırdığı toplam 100 brim kg unu vardır ve 1 gün için 80 brim saatlik işgücü ayırabilmektedir. Aynı zamanda A ekmeği çok talep edilen bir ürün olmadığı için en çok 40 adet üretilmesi öngörülmektedir. Buna göre işletmenin karını ençoklaması (maksimize) etmesi için A ve B ekmeklerinden kaçar adet üretmesi gerekmektedir ?
Problemin çözümü için öncelikle amaç fonksiyonunun tanımlanması gerekmektedir. Problemin temel amacı ençok kara ulaşmaktır. Ancak ilk önce temel değişkenleri belirlemek gerekmektedir. Problem A ve B ekmeklerinden kaçar adet üretilmesi gerektiğini bulmaktır. O halde ;
A ekmeğinden üretilecek adet için : a
B ekmeğinden üretilecek adet için : b
değişkenlerini kullanabiliriz.
1 adet A ekmek satıldığında 3 br kar edilirken, a adet A ekmeği satılırsa 3a br kar elde edilir
1 adet B ekmek satıldığında 2 br kar edilirken, b adet B ekmeği satılırsa 2b br kar elde edilir
Amaç fonksiyonu şu şekilde belirtilir :
Zmax = 3a + 2b
Problemin temel amacı denklemdeki a ve b yi bulmaktır. Ancak bu değerler rastgele belirlenemezler. Aşağıdaki kısıt fonksiyonlarına uygun değerler olmalıdırlar.
Kısıt fonksiyonları :1-)
A ekmeği a adette üretiliyor ve 1 adet için 2 br kg un tüketiliyor
B ekmeği b adette üretiliyor ve 1 adet için 1 br kg un tüketiliyor
Toplam un miktarı 100 br kg ile sınırlıdır. O halde aşağıda ilk kısıt fonksiyonu tanımlanmış olur :
2a+1b ≤ 100
2-)
A ekmeği a adette üretiliyor ve 1 adet için 1 br saat işgücü harcanması gerekiyor
B ekmeği b adette üretiliyor ve 1 adet için 1 br saat işgücü harcanması gerekiyor
Toplam işgücü saati 80 br saat ile sınırlıdır. O halde aşağıda ikinci kısıt fonksiyonu tanımlanmış olur :
1a+1b ≤ 80
3-)
A ekmeği a adette üretiliyor ve en çok 40 adet üretilebilir
a ≤ 40
4-)
a ve b değerleri negatif değerler olamayacakları için üçüncü kısıt da aşağıdaki şekilde belirlenmelidir :
a ≥ 0 , b≥ 0
Böylece hem amaç fonksiyonu hem de kısıt fonksiyonları belirlenmiş oldu. Bu şartları sağlayan a ve b değerleri
bulunarak Zmax yani en çok kar noktası bulunacaktır.
a ve b değerlerini bulmak için çeşitli yöntemler ve programlar kullanılmaktadır. Bunlar arasında en temel olanlar LINGO, LINDO ve EXCEL SOLVER dır. Kolaylığı, sadeliği ve herkes tarafından bilinmesi nedeniyle Excel in Solver Eklentisi çoğu doğrusal programlama probleminin çözümünde kullanılabilecek en uygun yöntem olacaktır.
Excel Solver Kurulumunun nasıl yapıldığını öğrenmek için
tıklayınız
Problemin Excel Solver ile Çözümü İçin
tıklayınız
http://www.firattoprak.com/06-dogrusal-lineer-programlama-amac-kisit-fonksiyonlari-nedir.asp
Fırat Toprak