Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Bölüm10 İteratif İyileştirme Copyright © 2007 Pearson Addison-Wesley. All rights reserved.

Benzer bir sunumlar


... konulu sunumlar: "Bölüm10 İteratif İyileştirme Copyright © 2007 Pearson Addison-Wesley. All rights reserved."— Sunum transkripti:

1 Bölüm10 İteratif İyileştirme Copyright © 2007 Pearson Addison-Wesley. All rights reserved.

2 10-2 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Iterative Improvement Optimizasyon problemlerini çözmek için bir algoritma geliştirme yöntemi b Uygun bir çözüm ile başla b Aşağıdaki adımları iyileştirme bulunduğu sürece tekrar et: Mevcut uygun çözümü amaç fonksiyonun daha iyi değerine sahip olan başka bir uygun çözümle değiştirMevcut uygun çözümü amaç fonksiyonun daha iyi değerine sahip olan başka bir uygun çözümle değiştir b En son uygun çözümü optimal çözüm olarak geri gönder Eksik yönü: Yerel ekstremum değerine takılabilir

3 10-3 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Önemli örnekler b simplex algoritması b Maksimum akış problemi için Ford-Fulkerson algoritması maximum flow problem b Maximum eşleştirme problemi b Dayanıklı evlilik için Gale-Shapley algoritması

4 10-4 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Doğrusal Programlama problemi Doğrusal Programlama(Linear programming (LP) )problemi çok değişkenli doğrusal fonksiyonu doğrusala sınırlamalar koşuluyla optimize etme problemidir: maksimize (veya minimize) et c 1 x c n x n Bu koşullarda: a i 1 x a in x n ≤ (or ≥ or =) b i, i = 1,...,m x 1 ≥ 0,..., x n ≥ 0 z = c 1 x c n x n fonksiyonuna amaç fonksiyonu denir. x 1 ≥ 0,..., x n ≥ 0 sınırlamalarına negatif olmama koşulları denir.

5 10-5 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Örnek maksimize et 3x + 5y Sınırlamalar x + y ≤ 4 x + 3y ≤ 6 x + 3y ≤ 6 x ≥ 0, y ≥ 0 x ≥ 0, y ≥ 0 Uygun bölgesi sınırlamaların belirlediği noktalar kümesidir

6 10-6 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Geometric solution maximize3x + 5y subject to x + y ≤ 4 x + 3y ≤ 6 x + 3y ≤ 6 x ≥ 0, y ≥ 0 x ≥ 0, y ≥ 0 Optimal solution: x = 3, y = 1 Extreme Point Theorem Any LP problem with a nonempty bounded feasible region has an optimal solution; moreover, an optimal solution can always be found at an extreme point of the problem's feasible region.

7 10-7 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Doğrusal programlama problemlerinde 3 sorun b Sonsuz sayıda optimal çözüm vardır b Sınırsız uygun bölge: sınırlamalar sınırsız uygun bölge tanımlamaktadırlar b uygunsuzluk: sınırlamaları sağlayan nokta yoktur

8 10-8 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Simplex yöntem b George Dantzig tarafından 1947 de önerilmiştir. b İteratif iyileştirme yöntemi ile tasarlanmıştır: Bir uygun çözümden başlar, amaç fonksiyonun değerini iyileştirdiği sürece başka bir uygun çözüme bakar, iyileştirme bitince durur.

9 10-9 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Simplex yöntem için giriş biçimi b maksimize problemi olmalıdır b Negatif olmama sınırlamaları dışındaki tüm sınırlamalar eşitlik biçiminde verilmelidir b Tüm değişkenlerin negatif olmama sınırlaması olmalıdır: maksimize et c 1 x c n x n sınırlamalar a i 1 x a in x n = b i, i = 1,...,m, x 1 ≥ 0,..., x n ≥ 0 Her doğrusal programlama problemi yukarıdaki gibi yazılabilir Her doğrusal programlama problemi yukarıdaki gibi yazılabilir

10 10-10 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Örnek maksimize 3x + 5y maksimize 3x + 5y + 0u + 0v x + y ≤ 4 x + y + u = 4 x + y ≤ 4 x + y + u = 4 x + 3y ≤ 6 x + 3y + v = 6 x + 3y ≤ 6 x + 3y + v = 6 x ≥ 0, y ≥ 0 x ≥ 0, y ≥ 0, u ≥ 0, v ≥ 0 x ≥ 0, y ≥ 0 x ≥ 0, y ≥ 0, u ≥ 0, v ≥ 0 u ve v, eşitsizlik sınırlamalarını eşitlik biçimine dönüştürmek için kullanıldı, bu değişkenlere aylak değişkenler denir.

11 10-11 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Temel uygun çözüm Temel çözüm to m doğrusal denklem ve n değişkenden oluşan(n ≥ m) sistemde n – m sayıda değişkeni 0 a eşitlendiğinde ortaya çıkan sistemin bir çözümüdür. Sıfıra eşitlenen değişkenlere temel olmayan değişkenler denir. Temel çözümde tüm değişkenler sıfırdan büyük veya eşit ise bu çözüme uygun çözüm denir Örnek x + y + u = 4 x + 3y + v = 6 x + 3y + v = 6 (0, 0, 4, 6) temel uygun çözümdür. (0, 0, 4, 6) temel uygun çözümdür. (x, y temel olmayan; u, v temel değişkenlerdir) (x, y temel olmayan; u, v temel değişkenlerdir)

12 10-12 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Simplex Tablo maksimize et z = 3x + 5y + 0u + 0v Sınırlamalar x + y + u = 4 x + 3y + v = 6 x + 3y + v = 6 x ≥ 0, y ≥ 0, u ≥ 0, v ≥ 0 x ≥ 0, y ≥ 0, u ≥ 0, v ≥ 0 Temel değişkenl er Amaç fonksiyonu satırı Temel uygun çözüm (0, 0, 4, 6) z nin (0, 0, 4, 6) daki değeri

13 10-13 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Simplex Algoritma Step 0 [Başlangıç] Problemi giriş biçiminde yaz ve başlangıç simpleks tabloyu oluştur Step 1 [Optimal olma testi] En alt satırda negatif sayı yoksa dur: optimal çözüm bulunmuştur Step 2 [Giren değişkeni bulma] Amaç satırında en küçük negatif sayıyı bul, bu sayının sütununda (bu sütuna pivot sütun denir) en üstteki değişken giren değişkendir. Step 3 [Çıkan değişkeni bulma] En sağ sütundaki sayıları pivot sütunun uygun elemanlarına böl ve en küçük bölüme karşılık gelen satırı( bu satıra pivot satır denir). Pivot satırın en solundaki değişken çıkan değişkendir. Pivot sütunla pivot satırın kesişmesindeki eleman pivot elemandır. Step 4 [Bir sonraki tabloyu oluşturma] Pivot satırın tüm elemanlarını pivota böl ve yeni pivot satır oluştur. Gauss satır işlemlerinin yardımıyla pivot sütunun pivot eleman dışındaki tüm elemanlarını sıfır yap ve Adım1 e gir.

14 10-14 Copyright © 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin “ Introduction to the Design & Analysis of Algorithms, ” 2 nd ed., Ch. 10 Örnek maximize z = 3x + 5y + 0u + 0v subject to x + y + u = 4 x + 3y + v = 6 x + 3y + v = 6 x ≥ 0, y ≥ 0, u ≥ 0, v ≥ 0 x ≥ 0, y ≥ 0, u ≥ 0, v ≥ 0 maximize z = 3x + 5y + 0u + 0v subject to x + y + u = 4 x + 3y + v = 6 x + 3y + v = 6 x ≥ 0, y ≥ 0, u ≥ 0, v ≥ 0 x ≥ 0, y ≥ 0, u ≥ 0, v ≥ 0 basic feasible sol. (0, 0, 4, 6) z = 0 basic feasible sol. (0, 2, 2, 0) z = 10 basic feasible sol. (3, 1, 0, 0) z = 14


"Bölüm10 İteratif İyileştirme Copyright © 2007 Pearson Addison-Wesley. All rights reserved." indir ppt

Benzer bir sunumlar


Google Reklamları