210 likes | 559 Views
END 503 Doğrusal Programlama. YAPAY DEĞİŞKEN KULLANIMI. Büyük M Yöntemi. Ax = b x ≥ 0 k.a. ENK x 0 =Cx. Ax+x a = b x, x a ≥ 0 k.a. ENK x 0 =Cx+M Σ x ai. P:. P(M):. BÜYÜK M YÖNTEMİ SONUCU. P(M) Çözümü. A. B. Eniyi Çözüm Var. Sınırsız Çözüm Var. A 2. A 1. B 1. B 2.
E N D
END 503 Doğrusal Programlama YAPAY DEĞİŞKEN KULLANIMI İ.Kara,2007
Büyük M Yöntemi Ax = b x ≥ 0 k.a. ENK x0=Cx Ax+xa = b x, xa ≥ 0 k.a. ENK x0=Cx+MΣxai P: P(M): İ.Kara,2007
BÜYÜK M YÖNTEMİ SONUCU P(M) Çözümü A B Eniyi Çözüm Var Sınırsız Çözüm Var A2 A1 B1 B2 Xa=0 P nin Sınırsız Çözümü Var Xa≠0 P Tutarsız Xa=0 P nin Eniyi Çözümüne Erişilmiştir Xa≠0 P nin Uygun Çözüm Alanı Boştur İ.Kara,2007
A1: P(M)’nin Eniyi Çözümü (X,0) x0 = Cx + MΣxai, Enk x0 Cx ≤ Cx + MΣxai Xai = 0 Cx ≤ Cx P’nin eniyi çözümü İ.Kara,2007
A2: P(M)’nin Eniyi Çözümü (x,xa),xa≠0 P’nin en az bir uygun çözümü olsun ve x# ile gösterilsin. (x#,0) P(M) uygun çözümü olur ki, (x,xa) eniyi çözüm olduğundan, Cx + Mxa ≤ C x# yazılır. İ.Kara,2007
A2: Devam x, xa ve x# ≥ 0 iken M>0 ve çok büyük olduğundan bu eşitsizlik mümkün değildir. O halde, P’nin bir uygun çözümü olamaz ki, P’nin uygun çözüm alanı boş demektir. İ.Kara,2007
B1: P(M) Sınırsız xa=0 P(M) sınırsız Э d=(d1,d2) ≥ 0 Cd1 + Md2 < 0 M>0 ve çok büyük olduğundan, d2=0 demektir ki Cd1<0, d1 ≥ 0 elde edilir. P sınırsızdır. İ.Kara,2007
B2: xa≠0, xk temele girebilir, Yk≤0 Tüm yapay değişkenler için Σyij ≤0 dır. zj-Cj = Σciyij + M(Σyij) – Cj Enb{zj-cj} = zk-ck Simpleks tablosunun yapay değişkenlere karşı gelen ana blok satırları toplanırsa Σxi + Σxj(Σyij) = Σbi bulunur. İ.Kara,2007
B2: Devam P’nin en az bir uygun çözümü varsa, xi=0, xj≥0 olacağından, Σyij≤0 iken, Σbi≥0 olamaz. P tutarsız olup, uygun çözüm alanı boş demektir. İ.Kara,2007
ÖRNEK: Büyük M İ.Kara,2007
ÖRNEK Devam İ.Kara,2007
Örnek Devam İ.Kara,2007
İki Evreli Simpleks Algoritması Ax + Y = b x ≥ 0 Y ≥ 0 k.a. ENK(ENB) Y0=? P: İ.Kara,2007
1. Evre Ax + Y = b x ≥ 0, Y ≥ 0 k.a. ENB Y0=Σ-yi veya ENK Y0=Σyi • Eniyi y0 = 0 • Temelde yi yok. • Temelde yi var ama sıfır değerini almış. • Eniyi y0 ≠ 0 UÇA boş. DUR İ.Kara,2007
2. Evre (x0 satırı x0=Cx’e göre) • Tüm yapay değişkenler temel dışı • B-1 gerekiyorsa yi lere (0) katkı ver. SA uygula. • B-1 gerekmiyorsa, yi lere karşı gelen sütunu çıkart SA uygula. • Temelde sıfır değeriyle yapay değişken var • SA’nı yapay değişkenler temele girmeyecek şekilde uygula. İ.Kara,2007
Temelde sıfır değeriyle yer alan yapay değişkenler var xk temele girecek değişken iken buna karşı gelen sütun yk olsun. xk STS zk-ckx0 y1kb1 y2kb2 yik 0 ymkbm yi + yik = 0 İ.Kara,2007
yik ≥ 0 tüm yapay değişkenler için enküçük oran testi xk girer, karşı gelen yapay değişken çıkar. xk=0 ve x0=0 olur. • Bazı i’ler için yik<0. xk↑ yik<0 olduğundan yi↑ (uygunluk bozulur) xk girer, yi çıkar, xk=0 ve x0=0 olur. İ.Kara,2007
Tek Yapay Değişken Tekniği Model Ax=b haline getirildiğinde, A’da I matris var fakat en az bir bi<0 ise başvurulan bir tekniktir. Modelin tüm kısıtlarına, xy≥0 bir yapay değişken iken, -xy’yi ekleyelim. İ.Kara,2007
TEK YAPAY DEĞİŞKEN TEKNİĞİ İ.Kara,2007
TEK YAPAY DEĞİŞKEN ENK{bi}=br olsun (br<0) br‘a karşı gelen xr temelden çıkartılır, yerine xy temele alınırsa; İ.Kara,2007
TEK YAPAY DEĞİŞKEN xi + yiyxy = bi xi – xy = bi xr – xy = br, xr=0 xy=-br>0 xi = bi + xy xi = bi – br ≥ 0 i (br<0 ve br≤0) olup, izleyen ardıştırma ile modele bir temle uygun çözüm bulunmuş olur. Bundan sonra, xy bir yapay değişken olarak işlemlere tabi tutulur (Büyük M veya İki Evreli Simpleks Algoritması). A İ.Kara,2007