İçeriğe atla

Kesikli olay simülasyonu

Kesikli olay simülasyonu[1]

Sistem değişkenlerinin zaman içindeki değişimine göre simülasyonun kesikli ya da sürekli olduğu belirlenir[2].

Sistem durumunu belirleyen değişkenlerinin değerleri zaman içinde sürekli değişim gösteriyorsa (sıvının borudan akması ya da nüfus değişimi gibi) simülasyon sürekli olarak tanımlanır.[2]

Sistem durumunu belirleyen değişkenlerin değerleri zamanın belirli noktalarında değişiyorsa (kuyruğun uzunluğu ya da müşterilerin bekleme zamanı istatistikleri yeni bir müşterinin varışı ya da ayrılışıyla değişir) simülasyon kesikli olarak tanımlanır.[2] Kesikli sistem, durum değişkenlerinin zamanın farklı noktalarında değiştiği sistemdir.[3]

Kesikli olay simülasyonu fiziksel bir sistemin matematiksel/mantıksal bir modelini kullanır ve simülasyonu yapılan zamanın belirli noktalarındaki durumsal değişimleri gösterir. Değişikliğin doğası ve oluştuğu an doğru tanımlamayı zorunlu kılar. Hizmet bekleyen müşteriler, malzeme envanter yönetimi ve askeri savaşlar kesikli olay simülasyonun tipik etki alanlarıdır.[4]

Kesikli olay simülasyonu, bir sistemin çalışmasını zamanla gerçekleşen kesikli olaylar sıralaması olarak modeller. Her bir olay belirli bir anda meydana gelir ve sistem durumunda değişiklik yapar.[5] Ardışık olaylar arasında sistem durumunda bir değişiklik olmayacağı varsayılır ki böylece simülasyon belirli bir zamanda doğrudan bir olaydan takip eden olaya atlayabilir.

Kesikli olay simülasyonunda, sistem operasyonu kronolojik olay basamakları olarak tanımlanır. Her olay bir anda gerçekleşir ve sistemde bir durum değişimini gösterir.[6]

Kesikli olay simülasyonları her bir zaman dilimini simüle etmek zorunda değildir. Kesikli olay simülasyonunda simülasyonun durumu kesin bir anda meydana gelen olaya göre değişir ve bir sonraki olaya kadar aynı durumda kalır. Postanede bulunan müşterilerin durumu postaneye yeni bir müşteri girdiğinde ya da müşteri işini bitirip ayrıldığında değişir. Bu yönüyle kesikli olay simülasyonu, simülasyon süresinin zaman dilimlerine ayrılarak sistem durumunun her bir zaman diliminde meydana gelen aktivite setlerine göre güncellendiği, simülasyonun sürekli olarak sistem dinamiğini izlediği sürekli simülasyondan farklılık gösterir[7]

Kesikli olay simülasyonunu sürdürmek için birçok mekanizma ortaya atılmıştır. Olay tabanlı, etkinlik tabanlı, süreç tabanlı ve üç evreli yaklaşım da bunların arasındadır. Yaklaşımlarından biri üç fazlı yaklaşım metodudur.[8] Bu yaklaşıma göre, birinci faz bir sonraki kronolojik olaya atlamaktır. İkinci faz, ilgili zamanda meydana gelen koşulsuz tüm olayları yönetmektir (bunlar B-olayları olarak adlandırılır). Üçüncü faz ise ilgili zamanda meydana gelen tüm koşullu olayları yönetmektir (bunlar C-olayları olarak adlandırılır). Üç fazlı yaklaşım, olay tabanlı yaklaşımın bilgisayar kaynaklarının daha etkili kullanılabilmesini sağlamak için aynı anda meydana gelen olayların sıralandırıldığı bir ayrıştırmadır. Üç fazlı yaklaşım pek çok ticari simülasyon yazılım paketlerinde kullanılmaktadır ancak genellikle kullanıcının bakış açısından simülasyon yönteminin altında yatan özellikler gözükmez.[5][9]

Örnek

Kesikli olay simülasyonun nasıl yapılacağını öğreten yaygın bir alıştırma bankada gişe hizmeti bekleyen müşteri kuyruğu modellemektir. Bu örnekte sistem öğeleri müşteri kuyruğu ve gişe görevlileridir. Sistem olayı müşterinin bankaya varışı ve ayrılışıdır (Gişe görevlisinin hizmet vermeye başlaması müşterinin varış-ayrılışının bir parçası olabilir). Olaylarla değişen sistem durumu; kuyrukta bekleyen müşteri sayısı (“0” dan “n”e bir tam sayı) ve gişe görevlisinin durumudur (meşgul ya da müsait). Modeli stokastik olarak karakterize eden değişkenler ise müşteriler arasındaki bankaya varış zamanları ve gişe görevlisinin hizmet süresidir.[10][11]

Kesikli olay simülasyonunun bileşenleri

Sistem olayı meydana geldiğinde, sistem değişkenlerini ve sistem olayları meydana gelirken ne olup bittiğinin mantığını tanımlamaya ilave olarak kesikli olay simülasyonu aşağıdaki bileşenleri içerir:[9][12]

Sistem Durumu: Çalışılan sistemin dikkat çeken özelliklerini yakalayan değişkenler setidir.

Saat: Simülasyon o andaki zamanın izlediği yolu kayıt altında tutmalıdır. Ölçü birimi tasarlanan sistem için hangisi uygunsa o seçilir. Kesikli olay simülasyonlarında -gerçek zamanlı simülasyonların aksine- olaylar anlık olduğundan bir anda birinden diğerine atlanır. Saat, simülasyon ilerledikçe bir sonraki olayın başlangıç zamanına geçer.

Olay listesi: Simülasyon en az bir olay listesi sağlamalıdır. Olay listesi bazen yaklaşan olay listesi olarak da adlandırılır. Çünkü simüle edilen önceki olayın  sonucu olarak yaklaşan olayları listeler. Bir olay; başlangıç zamanına, olayın kendi performansını oluşturan bir tür koda ve –her zaman olmasa da- bir bitiş zamanına sahip olmalıdır. Kimi yaklaşımlarda, o andaki ve gelecekteki olaylar için ayrı listeler vardır. Olay listeleri olay başlangıç zamanına göre sıralanır. Genelde olaylar "bootstrapped"tir. Yani olaylar simülasyon ilerlerken dinamik olarak çizelgelenir. Örneğin; üstteki banka örneğinde, müşterinin varışı olayı t zamanında ve eğer müşteri kuyruğu boş ve veznedar boşta ise, sonraki olay olan müşterinin ayrılışı t+s zamanında gerçekleşecektir. Buradaki s hizmet süresidir.

Anlık olarak olaylar oluştuğunda, zaman içinde meydana gelen olaylar olay sıralaması olarak modellenir. Bazı simülasyonlarda her bir olayın başlangıç ve bitişi bir aralık olarak tanımlanabilir.

Yaklaşan olay seti tipik bir öncelik sırası olarak organize edilir ve olay zamanına göre ayrılır.[13] Olay setine, olayların eklendiği sıra dikkate alınmaksızın kronolojik sıraya göre çıkarılır. Başta “binary tree” olmak üzere kesikli olay simülasyonu için birkaç genel maksat öncelik sırası algoritmasının etkili olduğu ispatlanmıştır.[14] “Skip list”, "calendar queues"[15] ve "ladder queues"[16] diğer alternatifler olarak öne çıkmaktadır.

Rastsal sayı üreteçleri: Simülasyon sistem tasarımına da bağlı olarak çeşitli rastsal değişkenlerin atanmasına gerek duyar. Bu ise bir ya da daha çok sözderastsal sayı üreteci tarafından sağlanır.

İstatistikler: Simülasyon, genel olarak ilgilenilen durumu sayılara döken sistem istatistiklerini tutar. Banka örneğinde ilgilenilen, ortalama hizmet süresidir.

Koşullu sonlandırma: Olaylar "bootstrapped" olduğundan teorik olarak kesikli olay simülasyonu sonsuza dek çalışabilir. Bu yüzden tasarımcısı simülasyonun ne zaman sonlanacağına karar vermelidir. Bu seçenekler “t anında”, “n adet olay işlendikten sonra” ya da “X istatistiksel ölçüsü x değerine ulaştığında” gibi olabilir.

Simülasyon motorunun mantığı

Kesikli olay simülasyonu ana döngüsü aşağıdaki gibi olacaktır :

Başlangıç

  • Sonlandırma koşulunu FALSE olarak tanımla.
  • Sistem durum değişkenlerini tanımla.
  • Saati tanımla (çoğunlukla sıfır değerinde başlar).
  • Başlangıç olayı planla (örn: olay listesine birkaç başlangıç olayı koy).

Do-While döngüsü

Sonlandırma koşulu FALSE iken aşağıdakileri yap:

  • Saati bir sonraki olay zamanına getir.
  • Bir sonraki olayı yap ve olay listesinden çıkar.
  • İstatistikleri güncelle.

Bitiş

  • İstatistik raporunu oluştur.

Kaynakça

  1. ^ Banks, Jerry. "Discrete event simulation" (İngilizce). 27 Kasım 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 29 Kasım 2016. 
  2. ^ a b c "Arşivlenmiş kopya" (PDF). 25 Kasım 2016 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 24 Kasım 2016. 
  3. ^ "Arşivlenmiş kopya" (PDF). 25 Kasım 2016 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 24 Kasım 2016. 
  4. ^ "Arşivlenmiş kopya" (PDF). 17 Mayıs 2017 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 24 Kasım 2016. 
  5. ^ a b Stewart Robinson (2004). Simulation-The practice of model development and use. Wiley. 25 Kasım 2016 tarihinde Wayback Machine sitesinde arşivlendi.
  6. ^ "Arşivlenmiş kopya". 27 Kasım 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 26 Kasım 2016. 
  7. ^ Matloff, Norm. "Introduction to Discrete - Event Simulation and the SimPY Language" 25 Kasım 2016 tarihinde Wayback Machine sitesinde arşivlendi.. Retrieved 24 January 2013
  8. ^ Michael Pidd (1998). Computer simulation in management science – fourth edition. Wiley.
  9. ^ a b "Arşivlenmiş kopya" (PDF). 15 Aralık 2017 tarihinde kaynağından arşivlendi (PDF). Erişim tarihi: 27 Kasım 2016. 
  10. ^ Aditya Kurve; Khashayar Kotobi; George Kesidis. "An agent-based framework for performance modeling of an optimistic parallel discrete event simulator". Complex Adaptive System Modeling. 1:12. doi:10.1186/2194-3206-1-12.
  11. ^ "Arşivlenmiş kopya". 27 Kasım 2016 tarihinde kaynağından arşivlendi. Erişim tarihi: 26 Kasım 2016. 
  12. ^ Simulation, Modeling & Analysis (3/e) by Law and Klt 2000 Kelton, 2000 27 Kasım 2016 tarihinde Wayback Machine sitesinde arşivlendi.
  13. ^ Douglas W. Jones, ed. Implementations of Time, Proceedings of the 18th Winter Simulation Conference, 1986.
  14. ^ Douglas W. Jones, Empirical Comparison of Priority Queue and Event Set Implementations 9 Mart 2017 tarihinde Wayback Machine sitesinde arşivlendi., Communications of the ACM, 29, April 1986, pages 300–311.
  15. ^ Kah Leong Tan and Li-Jin Thng, SNOOPy Calendar Queue, Proceedings of the 32nd Winter Simulation Conference, 2000
  16. ^ Tom Dickman, Sounak Gupta and Philip A. Wilsey, [1], Proceedings of the 2013 ACM SIGSIM conference on Principles of advanced discrete simulation

Dış bağlantılar

İlgili Araştırma Makaleleri

Gerçek Zamanlı İşletim Sistemi (RTOS), verileri ve önemli zaman kısıtlamalı olayları işleyen gerçek zamanlı uygulamalar için işletim sistemi'dir.

<span class="mw-page-title-main">Kuyruk teorisi</span>

Kuyruk teorisi, bekleme sıraları ve kuyrukların matematiksel çalışmasıdır. Kuyruk teorisinde, model inşa ederek kuyruğun uzunluğu ve bekleme zamanı tahmin edilebilir. Kuyruk teorisi genellikle yöneylem araştırmasının bir branşı olarak kabul edilebilir. Çünkü sonuçlar genellikle bir hizmet sunmak için gerekli kaynaklar hakkında karar verirken kullanılır.

<span class="mw-page-title-main">Simülasyon</span> gerçek bir dünya süreci veya sisteminin işletilmesinin zaman üzerinden taklit edilmesi

Simülasyon veya benzetim, teknik olmayan anlamda bir şeyin benzeri veya sahtesi anlamında kullanılır. Teknik anlamda gerçek bir dünya süreci veya sisteminin işletilmesinin zaman üzerinden taklit edilmesidir. Sistem nesneleri arasında tanımlanmış ilişkileri içeren sistem veya süreçlerin bir modelidir.

<span class="mw-page-title-main">Rockwell Arena</span>

Arena, Systems Modeling tarafından geliştirilen ve 2000 yılında Rockwell Automation tarafından satın alınan bir ayrık olay simülasyonu ve otomasyon yazılımıdır. SIMAN işlemcisini ve simülasyon dilini kullanır. 2020 itibarıyla 16. sürümdedir. Arena'nın "FactoryTalk" markası altında diğer Rockwell yazılım paketlerine katılabileceği öne sürülmüştür.

<span class="mw-page-title-main">Yapısal işlevselcilik</span>

Yapısal-işlevselcilik : Öncelikle yapısal işlevselcilik ontolojik olarak Holistik paradigma içerisinde değerlendirilebilir. Esas itibarıyla metodolojik bir araç olarak sosyoloji disiplini içerisinde kullanılmakta olan bu yaklaşım; siyaset bilimi, antropoloji, psikoloji, sosyobiyoloji, sosyal psikoloji gibi disiplinler ve alt disiplinler bünyesinde sosyal bilimler alanında önemli bir hareket noktası konumundadır. 19. yy.da Herbert Spencer'ın organizmacı toplum yapısı yaklaşımı ile bağlantılı olarak gelişen, ama asıl olarak işlevselci yaklaşımın devamı niteliğindeki bu metodolojik yaklaşım, özellikle 20. yüzyılda Talcott Parsons ile şekillenmiştir. Kuramsal çerçeve açısından antropoloji disiplinindeki en önemli kuramcıları Bronislaw Malinowski ve Alfred Radcliffe-Brown'dır. Sosyolojik gelişim çizgisinde bu yaklaşımın en önemli kuramcıları Herbert Spencer, Auguste Comte, Emile Durkheim, Talcott Parsons, Robert K. Merton ve David Keen'dir.

<span class="mw-page-title-main">İslami bankacılık</span>

İslami bankacılık olarak adlandırılan sistem, aktivitelerini şeriatı esas alarak belirlemektedir. Şeriat, ödünç verilen paradan para kazanmayı yasaklamaktadır.

Matematiksel model, bir sistemin matematiksel kavramlar ve dil kullanılarak tanımlanmasıdır. Matematiksel model geliştirme süreci, matematiksel modelleme olarak adlandırılır. Matematiksel modeller, doğa bilimlerinde ve mühendislik disiplinlerinde bunun yanı sıra sosyal bilimlerde kullanılır. Matematiksel modelleri daha çok fizikçiler, mühendisler, istatistikçiler, operasyon araştırma analistleri ve ekonomistler kullanır. Model, bir sistemi açıklamaya, farklı bileşenlerin etkilerini incelemeye ve bir davranış hakkında öngörüde bulunmak için yardımcı olabilir.

<span class="mw-page-title-main">Simülasyon argümanı</span> gerçekliğin bir simülasyon olduğunu ve bu simülasyonun içinde olanların bunun bir simülasyon olduğunun farkında olmadığını ileri süren kuram

Simülasyon argümanı ya da bilinen adıyla simülasyon teorisi, gerçekliğin bir simülasyon olduğunu ve bu simülasyonun içinde olanların bunun bir simülasyon olduğunun farkında olmadığını ileri sürer. Bu konsept René Descartes'in Uğursuz Şeytan'ını anımsatır ama daha fütürist bir simüle gerçeklik önerir. Aynı kurgusal teknoloji tek veya bütün halinde Uzay Yolu, Karanlık Şehir, The Thirteenth Floor, Matrix, Aç Gözünü, Vanilla Sky, Gerçeğe Çağrı, Başlangıç ve Tron gibi bilimkurgu filmlerinde işlenmiştir.

<span class="mw-page-title-main">Moleküler dinamik</span>

Moleküler dinamik (MD), atomların ve moleküllerin fiziksel hareketlerini incelemek için bir bilgisayar simülasyon yöntemidir. Atomların ve moleküllerin sabit bir süre boyunca etkileşime girmesine izin verilir ve bu da sistemin dinamik evrimi hakkında bilgi verir. En yaygın versiyonda, atomların ve moleküllerin yörüngeleri, parçacıklar ve bunların potansiyel enerjileri arasındaki kuvvetlerin çoğu zaman atomlararası potansiyeller veya moleküler mekanik kuvvet alanları kullanılarak hesaplandığı, etkileşen parçacıkların bir sistemi için Newton'un hareket denklemlerinin sayısal olarak çözülmesiyle belirlenir. Metot ilk olarak 1950'lerin sonunda teorik fizik alanında geliştirildi, ancak günümüzde çoğunlukla kimyasal fizik, malzeme bilimi ve biyomoleküllerin modellenmesinde uygulanmaktadır.

<span class="mw-page-title-main">Termodinamik durum</span>

Termodinamikte, sistemin termodinamik durumu, durum fonksiyonları olarak bilinen uygun değişken değerleriyle tam olarak tanımlanabilir. Termodinamik değişkenlerinin değerleri bir sistem için bir kere belirlendiğinde, termodinamiğin bütün özelliklerinin değerleri eşsiz bir şekilde belirlenmiş olur. Genellikle, termodinamik durum termodinamik dengenin biri olarak varsayılır. Yani, bu durum bir sistemin sadece belli bir süredeki durumu değil, durum süresiz uzunlukta aynı ve değişmezdir.

Kavramsal model bir sistemin temsilidir ve modelin temsil ettiği sistemin insanların daha rahat bir şekilde anlamalarına yardımcı olur. Örneğin, montajı yapılarak oluşturulan bir oyuncak model temsil ettiği objenin çalışmasını modelini oluşturacak bir şekilde çalışabilir.

Simülasyon yazılımı, matematik formülleri kullanılarak gerçek olayların modellendiği bir süreçtir. Simülasyon ile kullanıcılar gerçeğe en yakın olacak şekilde ürünlerin tasarlanmasını sağlayabilir ve çıktının nasıl olacağını anlayabilirler. Simülasyon yazılımı daha çok oyunlarda kullanılan gerçek zamanlı uygulamalardır. Oyunlar dışında birçok endüstriyel alanda da uygulanmaktadır. Endüstriyel alanlarda sorun yaratacak durumlarda; benzetim sayesinde olağan tehlikelerin önceden anlaşılması ve ne tip sonuçlara yol açabileceği anlaşılır. Örneğin; pilotlar, nükleer güç santralinde çalışan operatörler, kimya santrallerinde çalışan operatörler, kontrol panellerin modelleri gibi insan ve araç gereçlerin süreçte neler yaşayacağına ve ne sorunlarla karşılaşılacağına yönelik fiziksel tehlikeler benzetim sayesinde gerçek zamanlı gibi önceden fark edilebilir.

Simülasyon kelimesi latince kökenli bir kelime olup, sözlük anlamı olarak “benzeme, benzeşme, taklit, sahte tavır, yalandan yapma, benzer şartları yaratma” anlamlarına gelmektedir. Bu tanımdan yola çıkarak; Sistem simülasyonu ise benzetim yöntemi ile gerçek sistemin tüm özelliklerini taşıyan aynı girdilere karşılık aynı çıktıları verebilen ve kullanıcılara sistemi daha kolay, ucuz ve hızlı tanıma imkânı sunan teorik, fiziksel veya bilgisayar ortamında modellenmiş yapay sistemlerdir.

Sosyal simülasyon oyunları, çoklu yapay yaşamlar arasındaki sosyal etkileşimleri araştıran bir alt tür yaşam simülasyonu oyunudur. Bu türün en ünlü örnekleri The Sims and the Animal Crossing serisidir.

Bir hibrit sistem, hem sürekli hem de ayrık dinamik davranış sergileyen dinamik bir sistemdir. Başka bir değişle hem akabilen hem de zıplayabilen bir sistemtir. Genellikle, "hibrit dinamik sistem" terimi, sinir ağlarını ve bulanık mantığı veya elektrikli ve mekanik aktarma organlarını birleştirenler gibi hibrit sistemleri ayırt etmek için kullanılmaktadır. Bir hibrit sistem, yapısı içinde daha geniş bir sistem sınıfını kapsama avantajına sahiptir. Ayrıca dinamik olduların modellenmesinde daha fazla esneklik sağlamaktadır.

<span class="mw-page-title-main">Ağ simülasyonu</span>

Bilgisayar ağı araştırmalarında, ağ simülasyonu bir yazılım programının gerçek bir ağın davranışını kopyaladığı bir tekniktir. Bu, yönlendiriciler, anahtarlar, düğümler, erişim noktaları, bağlantılar vb. gibi farklı ağ varlıkları arasındaki etkileşimlerin hesaplanmasıyla elde edilir. Çoğu simülatör, durum değişkenlerinin zaman içinde ayrık noktalarda değiştiği sistemlerin modellendiği ayrık olay simülasyonunu kullanır. Ağın ve desteklediği çeşitli uygulama ve hizmetlerin davranışı daha sonra bir test laboratuvarında gözlemlenebilir; ağın/protokollerin farklı koşullar altında nasıl davranacağını değerlendirmek için ortamın çeşitli özellikleri de kontrollü bir şekilde değiştirilebilir.

Ağ trafiği simülasyonu, telekomünikasyon mühendisliğinde bir iletişim ağının verimliliğini ölçmek için kullanılan bir süreçtir.

Global Mobile Information System Simulator, kablosuz ve kablolu ağ sistemlerini simüle eden bir ağ protokolü simülasyonu yazılımıdır.

<span class="mw-page-title-main">Simulink</span>

Simulink çok alanlı dinamik sistemlerin modellenmesi, simülasyonu ve analizi için MATLAB tabanlı bir grafik programlama ortamıdır. Birincil arayüzü bir grafiksel blok diyagram aracı ve özelleştirilebilir bir blok kütüphaneler kümesidir. MATLAB ortamının geri kalanıyla sıkı bir entegrasyon sunar ve MATLAB'ı çalıştırabilir ya da ondan komut dosyası yazılabilir. Simulink, otomatik kontrol ve dijital sinyal işleme alanlarında çok alanlı simülasyon ve model tabanlı tasarım için yaygın olarak kullanılmaktadır.

Web tabanlı simülasyon, bilgisayar simülasyonu hizmetlerinin World Wide Web üzerinden, özellikle de bir web tarayıcısı aracılığıyla sunulması ve kullanılmasıdır. Web, giderek artan bir şekilde modelleme ve simülasyon uygulamaları sağlamak için elverişli bir ortam olarak görülmekte ve bu nedenle simülasyon topluluğu içinde gelişmekte olan bir araştırma alanıdır.