Top Banner
(Simulated Annealing) BMÜ-579 Benzetim ve Modelleme Yrd. Doç. Dr. İlhan AYDIN Tavlama Benzetimi Algoritması
19

Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

May 27, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

(Simulated Annealing)

BMÜ-579 Benzetim ve Modelleme

Yrd. Doç. Dr. İlhan AYDIN

Tavlama Benzetimi Algoritması

Page 2: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama Benzetimi

• Stokastik arama yöntemidir.

• Katıların fiziksel tavlanma süreci ile olan benzerlikten ileri gelmektedir.

– Katıların ısıtılması ve sonra yavaş yavaş soğutulması esasına dayanır.

• Kirkpatrick ve arkadaşları tarafından 1983 yılında önerilmiştir.

Page 3: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama• Malzemeyi belirli bir süre (tavlama sıcaklığına

kadar) ısıttıktan sonra, yavaş yavaş soğutmaktır.Tavlama malzemeyi rahatlatmak, yumuşatmakve iç yapıyı daha kullanılabilir hale getirmek içinyapılan ısıl işlemlerin geneline verilen addır.

Sıc

aklı

k (

T)

Zaman (t)Isıtma Bekleme Soğutma

ısıl İşlem

Page 4: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama• Isıl işlem, bir katının sıcaklığının belirli bir

maksimum dereceye kadar artırılarak tekrarazaltılması işlemidir.

• Maksimum sıcaklıkta kristalin tüm molekülleri,kendilerini rasgele olarak sıvı faza ayarlar.

• Sonra, erimiş kristalin sıcaklığı kristal yapısoğutuluncaya kadar düşürülür.

• Soğuma uygun şekilde yapılırsa kristal yapı çokdüzenli olur.

Page 5: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

• Tavlama Benzetimi, İniş Algoritmasının(Descent Algorithm) iyileştirilmiş halidir.

Page 6: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

İniş Algoritması• Rasgele seçilen bir çözüm ile aramaya başlanır.

• Komşu çözüm oluşturulur ve amaçfonksiyonundaki değişim hesaplanır.

• Eğer amaç fonksiyonunda azalma söz konusu ise(minimisazyon problemi için), komşu çözümmevcut çözüm olarak kabul edilir.

• Bu süreç, amaç fonksiyonunda mevcut çözümünhiçbir komşusu iyileşme sağlamayana kadardevam eder ve algoritma yerel bir eniyi (localminimum/maximum) ile sonlanır.

Page 7: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama Benzetimi

• Tavlama Benzetiminde, amaç fonksiyonundaartışa neden olabilecek komşu hareketlerbazen kabul edilerek yerel eniyi noktalarındankurtulmak mümkündür.

• Amaç fonksiyonunda artışa neden olabilecekbu komşu hareketin kabul edilip edilmemesi,rassal olarak belirlenmektedir.

Page 8: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama Benzetimi

• Amaç fonksiyonunda Δ kadar bir yükselmeyeyol açan hareketin kabul edilme olasılığınıveren fonksiyon kabul fonksiyonu olarakadlandırılır.

Boltzmann dağılımı( )komşu çözüm mevcut çözüm

Page 9: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama Benzetimi• Sıcaklık yüksek olduğunda, amaç

fonksiyonunda artışa neden olabilecekhareketlerin kabul edilme olasılığı çok yüksekolacak, sıcaklık düştükçe bu olasılık daazalacaktır. Bu sebeple, aramaya yeteri kadaryüksek bir sıcaklık değeri ile başlamakgereklidir.

• Algoritmada, sıcaklık yavaş yavaş azaltılırken,her sıcaklık değerinde belli sayıda hareketdeneyerek arama işlemi sürdürülür.

Page 10: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama Süreci Kombinatoryel Eniyileme

Sistemin durumları Uygun çözümler

Enerji Amaç fonksiyonu değeri

Durumun Değişimi Komşu çözüm

Page 11: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama Benzetimi Akış Şeması

Page 12: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Pseudo-code

Page 13: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Tavlama Benzetimi Uygulaması

• Probleme ait kararlar

• Algoritmaya ait kararlar

Page 14: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Probleme ait kararlar

• Çözümler için uygun bir gösterim

• Amaç fonksiyonunun tanımlanması

• Başlangıç çözümünün seçilmesi

• Komşu çözümleri üretmek için komşu üretme mekanizmasının belirlenmesi

Page 15: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Algoritmaya ait kararlar

• Başlangıç sıcaklığının belirlenmesi.

• Soğutma oranı ve sıcaklık değiştirme kuralınıntanımlanması.

• Her sıcaklıkta gerçekleştirilecek iterasyonsayısının tanımlanması.

• Aramanın durdurulması için durdurmakriterinin belirlenmesi.

Page 16: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Her sıcaklıkta gerçekleştirilecek iterasyonsayısının tanımlanması

Page 17: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Sıcaklık Azaltma Fonksiyonu

Page 18: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Algoritmanın durdurulması

• Belirlenen maksimum iterasyona ulaşılması.

• Belirlenmiş minimum sıcaklığa ulaşılması.

• İstenen kriterleri sağlayan çözüme ulaşılması.

Page 19: Tavlama Benzetimi Algoritması - Fırat Üniversitesiweb.firat.edu.tr/iaydin/bmu579/bmu_579_bolum7.pdf · Tavlama •Malzemeyi belirli bir süre(tavlama sıcaklığına kadar) ısıttıktansonra,

Örnek 12

2

( ) , 1

( ) ( 3) ,

f x x eğer x

f x x değilse

( ) 4 2j i i

0 ile 1 arasında rassal sayı.

Komşu seçme fonksiyonu

Soğuma fonksiyonu ( ) 0.8t t

Başlangıç sıcaklığı: T=80