Professional Documents
Culture Documents
ÖRNEKLERİ
BMÜ-422 BENZETİM VE MODELLEME
GİRİŞ
• Bu bö lü mde benzetim için excel ö rnekleri ö nerilmektedir.
• Ö rnekler excel ile yapılabileceğ i gibi el ile de yapılabilir.
=S_SAYI_URET()
fonksiyonu kullanılır.
• Eğ er 0 veya 1 ü retilmek isteniyorsa
=S_SAYI_Ü RET()
=EĞ ER(C15<=$C$7;"H";"T")
ÖRNEK-2: RASTGELE SERVİS ZAMANLARININ BENZETİMİ
• Bu ö rnekte rastgele servis zamanının benzetimi için bir model ö nerilmektedir.
• Temel prensip belirlenen olasılıklara gö re servis zamanlarını ayarlamaktır.
• Otomatikleştirilmiş bir telefon bilgi servisi her bir çağrıya 3, 6 veya 10 dakika harcamaktadır.
• Her bir servisin çağ rı oranı %30, %45 ve %25’tir. Amacımız bu servis zamanlarını excel’de simule
etmektir.
• Bu ö rnek aynı zamanda monte Carlo benzetimi olarak da bilinir. Çö zü m şö yle olmalıdır.
Kü mü latif
Olasılıklar
0 0.3 0.75 1
Servis zamanları 3 6 10
=EĞ ERSAY($C$16:$C$40;3)
=DiscreteEmp($D$7:$D$9;$B$7:$B$9)
ÖRNEK-2: RASTGELE SERVİS ZAMANLARININ BENZETİMİ
• =DiscreteEmp($D$7:$D$9;$B$7:$B$9)
fonksiyonunda $D$7:$D$9 kü mü latif olasılıkları içeren hü crelerin aralığını, $B$7:$B$9 ise servis
zamanları için istenen değ erleri içeren hü crelerin aralığıdır.
• Ayrık sadece listelenen değ erlerin ü retileceğ i anlamına gelir. İki worksheet aralığ ının her biri aynı
uzunluk, aynı hü cre sayısına sahip bir sü tü n vektö rü olacaktır.
• Her adreste her satır ve sü tunun ö nü nde bulunan $ işareti gö reli adresten ziyade mutlak adresi
gö sterir.
• DicreteEmp() bir visual basic fonksiyonu olup worksheet’teki iki adresi destekler. Biri kü mü latif
olasılıklar diğ eri ise arzu edilen değerlerdir.
RASTGELE VARIŞ ZAMANLARININ BENZETİMİ
• Bu bö lü mde amacımız rastgele varışlar arası zamanının( iki ardışık varış zamanı
arasındaki zaman) nasıl ü retileceğ ini ve mü şterilerin varış zamanı ile sisteme girişleri
hesaplamaktır.
• Benzetim saati her dinamik ayrık zaman benzetimi için anahtar bileşendir.
• Bu ö rnek varış olayı gibi sadece bir olaya sahiptir. Dolayısıyla bu ö rnek aynı zamanda ilk dinamik olay
tabanlı ö rneğimizdir.
• Dinamik basit şekilde zaman tabanlı anlamına gelir. Sistem durumu zaman ü zerinde değişir. Olay
tabanlı ise zaman ü zerinde olay oluşlarının ilerlemesini takip eder.
• Ayrık bir uniform dağ ılım ile zamanlar ü retilir.
• Uniformdan kasıt eşit olasılık değ erlerine sahip olmaktır.
• Bu amaçla ö zel bir VBA fonksiyonu DiscreteUniform() fonksiyonu kullanılır.
• =DicreteUniform($G$55,$G$6)
• Veya =DiscreteUniform(1,4) fonksiyonu kullanılır.
ÖRNEK: RASTGELE VARIŞ ZAMANLARININ BENZETİMİ
• DicreteUniform(low, high) fonksiyonu VBA’da tek bir satırlık kod ile yazılabilir.
• DicreteUniform=low+Int((high-low)+1)*Rnd())
• Bu ö rnek için
• DiscreteUniform=1+Int(4*Rnd())
Komutu kullanılır.
ÖRNEK: RASTGELE VARIŞ ZAMANLARININ BENZETİMİ
• DicreteUniform(low, high) fonksiyonu VBA’da tek bir satırlık kod ile yazılabilir.
• DicreteUniform=low+Int((high-low)+1)*Rnd())
• Bu ö rnek için
• DiscreteUniform=1+Int(4*Rnd())
Komutu kullanılır.
ÖRNEK: RASTGELE VARIŞ ZAMANLARININ BENZETİMİ
=DiscreteUniform($C$6;$C$7)
EXCELDE BENZETİMİN TEMEL ÇATISI
• İlk olarak model geliştiriciler model girişlerini, sistem durumlarını ve model çıkışlarını
belirlemelidir.
• Girişler diğ er sistem karakteristiklerinden bağ ımsız olarak tanımlanan dış
değ işkenlerdir.
• Yazı turada tura olasılığ ı, servis zamanı ve bir kuyruk sistemindeki varışlararası zaman dağ ılımı
giriş ö rnekleridir.
• Bu giriş aktiviteleri rastgele aktivite zamanları ve diğ er değ işkenleri ü retmek için kullanılır.
• Çıkışlar model cevabı olarak bilinen sistem performans ö lçü mlerini hesaplamak için kullanılır.
• Ö rneğ in, bir kuyrukta bir mü şterinin bekleme zamanı çıkış olabilir.
• İlgili cevaplar ise bir kuyruktaki ortalama bekleme zamanı veya bir envanter sisteminde birim
zaman başına ortalama maliyet olabilir.
EXCELDE BENZETİMİN TEMEL ÇATISI
• Her benzetim tablosu eldeki problem için ö zel tasarlanır. Tablodaki her bir sü tun aşağ ıdaki
tiplerden biri olabilir
• Model girişi ile ilgili bir aktivite zamanı
• Model girişi ile tanımlanan rastgele bir değ işken
• Sistem durumu
• Olay veya bir olayın oluş zamanı
• Model çıkışı
• Bazen model cevabı
• Genelde model cevapları sistem performans ö lçü leri olarak da bilinirler ve benzetim
tamamlandıktan sonra benzetim tablosunun dışında hesaplanırlar.
• Ö rneğ in, bir bekleme hattı modelinde her bir bireyin kuyruktaki gecikmesi model çıkışı bü tü n
mü şterilerin ortalama bekleme zamanı ise model cevabıdır.
• Sistem durumuna; server durumu (boş veya meşgul) ö rnek verilebilir.
EXCELDE BENZETİMİN TEMEL ÇATISI
• Model geliştiriciler el ile veya benzetim
aracıyla model geliştirirken aşağ ıdaki Adım Sistem durumları ve aktiviteler Çıkışlar
maddelere dikkat ederler: 1 Xi1 Xi2 Xij Xip Yi
• Benzetime her girişin ö zelliğ ini belirle. 2
• Problem ile ilgili aktiviteleri, olayları ve sistem 3
durumlarını belirle
• Hedeflere veya bu hedefleri karşılayan spesifik 4
sorulara bağlı olarak model cevaplarını ve
performans ö lçü mlerini belirle
• Model cevaplarını elde etmek için çıkışları
belirle n
• Benzetim tablosu oluştur.
• Her i adımı için aktiviteleri, sistem
durumlarını
ve çıkışı belirle
• Benzetim bittiğinde model cevaplarını ve
performans ö lçü mlerini hesaplamak için
çıkışları kullan.
ÖRNEK-1: MADENİ PARA ATMA OYUNU
• Charlize arkadaşları Tom ve Harry için bir madeni parayı 100 kez atıyor. Eğ er tura gelirse Harry
1$ kazanır ve Tom 1$ kaybeder. Yazı gelirse Tom kazanır ve Harry 1$ kazanır.
=EĞ ER(Rnd01()<=$C$7;"H";"T")
=EĞ ERSAY($D$14:$D$113;">0"
=D14+EĞ ER($C15="H";1;(-1)) )
ÖRNEK-2: KUYRUK BENZETİM MODELİ
• Kuyruk modellerini veya bekleme hat modellerini tanımlayacağ ız. Tek servis ve iki servisli kuyruk
modellerini anlatacağ ız.
• Her ikisi de dinamik ve olay tabanlı modellerdir.
Hizmet
Bekleme hattı
Çağ ırma populasyonu
ÖRNEK-2: KUYRUK BENZETİM MODELİ
• Bir kuyruk sistemi çağ ırma popü lasyonu, varışlar, servis mekanizması ve kuyruk disiplini ile
tanımlanır.
• Ö nceki şekilde tek kanallı bir kuyruk sistemi verilmiştir.
• Çağ ırma popü lasyonunun ü yeleri mü şteriler, telefon çağ rıları, tamir dü kkanındaki işler olarak ifade
edilir. Bunlara birim olarak başvuracağız.
• Bu ö rnekte sabit varış oranı ve sınırsız potansiyelli çağ rı popü lasyonu olduğ u varsayılacaktır.
• Sistem kapasitesi bir limite sahip değildir.
• İlk gelen ilk çıkar mantığ ı ile çalışır.
ÖRNEK-2: KUYRUK BENZETİM MODELİ
• Bir ayrılma olduğ unda benzetim aşağ ıdaki akış diyagramı ile ilerletilir.
• Ayrılış olayı sistem durumunu değiştirir. Eğ er kuyrukta bekleyen yoksa sistem durumu boş olur.
• Bekleyen var ise sonraki birim servise alınır. Her iki durumda da sistemdeki birimlerin sayısı bir
azalır.
Ayrılma
olayı
Servise başla
ÖRNEK-2: KUYRUK BENZETİM MODELİ
• Aşağ ıdaki tabloda tek kanallı bir kuyruk sistemi modellenmiştir. İlk giren ilk çıkar mantığ ı ile çalışır.
• Her olayın oluştuğ u zamanı tutar. Bu benzetim tablosu varışlar arası zamanların varsayılan serisinden
varış zamanlarını hesaplar. 2 4 1 2 6
• B, C ve E sü tunları clock zamanlarını gö sterir. B varış zamanını, E ayrılış zamanını gö sterir ve D’den
kolayca hesaplanabilir.
A B C D E
Mü şteri No Varış zamanı Servis başlama zamanı Servis zamanı Servis bitiş zamanı
1 0 0 2 2
2 2 2 1 3
3 6 6 3 9
4 7 9 2 11
5 9 11 1 12
6 15 15 4 19
ÖRNEK-2: KUYRUK BENZETİM MODELİ
• Yandaki tabloda mü şteri numarasına gö re Olay Tipi Müşteri No Clock time
dü zenlenmiştir. Varış 1 0
Ayrılış 1 2
• Aşağ ıdaki şekilde ise sistemde bulunan mü şteri
sayıları verilmiştir. Varış 2 2
Ayrılış 2 3
Varış 3 6
Varış 4 7
Ayrılış 3 9
Varış 5 9
Ayrılış 4 11
Ayrılış 5 12
Varış 6 15
Ayrılış 6 19
ÖRNEK-2: KUYRUK BENZETİM MODELİ
• Basit bir bakkaliye bir kontrol sayıcısına sahiptir.
• Mü şteriler 1 ile 8 dakika arasında değ işen rastgele bir kontrol sayıcı ile varır.
• Her birinin olasılığ ı eşittir.
• Servis zamanları 1 ile 6 arasında değişir.
• Servis zamanlarının olasılıkları aşağ ıdaki tabloda verilmiştir.
• Amacımız 100 mü şteri ü zerinde varış ve servis zamanlarını simule ederek sistem performansını
ö lçmektir.
ÖRNEK-2: KUYRUK BENZETİM MODELİ