انی‌لاجیک

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

نرم‌افزار شبیه‌سازی AnyLogic ساخت شرکت The AnyLogic Company

تاریخچه نرم‌افزار AnyLogic[ویرایش]

در اویل دهه ۹۰ تمایل بسیار زیادی به رویکرد مدل‌های ریاضی و شبیه سازی فرایندهای موازی به وجود آمد. این رویکرد می‌توانست برای تحلیل درستی فرایندهای موازی و یا توزیع به کار برده شود. تیم تحقیق و توسعه در دانشگاه سنت پترزبورگ برای تحلیل چنین شرایطی و برای کاربرد ابزار شبیه سازی یک نرم‌افزار جدید به نام COVERS را توسعه داد. این نرم‌افزار امکان ساخت مدل گرافیکی شبیه سازی از ساختار و رفتار سامانه را فراهم می‌نمود. این نرم‌افزار در یک تحقیق در شرکت HP نیز مورد استفاده قرار گرفت. در سال ۱۹۹۸ موفقیت در پروژه توسعه نرم‌افزار COVERS باعث شد تا عضو تیم سازنده نرم‌افزار تصمیم به ثبت یک شرکت تجاری بکیرند. هدف این شرکت توسعه یک نرم‌افزار شبیه سازی نسل جدید بود. تاکید برای توسعه نرم‌افزار بر روی موارد زیر بود: شبیه سازی، تحلیل کارایی، رفتار سامانه‌های احتمالی، بهینه سازی و متصور ساختن (Visualization) بود. نرم‌افزار در سال ۲۰۰۰ بر پایه آخرین دستاوردهای تکنولوژی اطلاعات منتشر شد. یک نرم‌افزار شئی گرا (Object Oriented)، اجزای استاندارد UML، زبان پیشرفته جاوا، GUI پیشرفته و... این نرم‌افزار AnyLogic نام گذاری شد. دلیل این نام گذاری این بود که این نرم‌افزار هر سه رویکرد مشهور در زمینه مدلسازی را

Three business simulation approaches

پیشتیبانی می‌کرد که عبارت بودند از:

همچنین ترکیب تمامی رویکردهای فوق در یک مدل نرم‌افزاری نیز فراهم شده بود. اولین نسخه AnyLogic 4.0 نامگذاری شد چرا که آخرین نسخه نرم‌افزار COVERS 3.0 بود. پیشرفت بسیار بزرگی در سال ۲۰۰۳ وقتی AnyLogic 5.0 منتشر شد اتفاق افتاد. این نسخه از نرم‌افزار AnyLogic بر شبیه سازی در حوزه‌های زیر متمرکز شده بود:

آخرین ورژن اصلی نرم‌افزار به نام AnyLogic 7.0 در سال 2014 منتشر شد. این ورژن از نرم‌افزار AnyLogic دارای پلاتفرم چند منظوره بود که این نرم‌افزار را قادر می‌سازد تا بر روی سامانه عامل‌های Linux، Mac OS، Windows نصب شده و مورد استفاده قرار گیرد.

نرم‌افزار شبیه سازی AnyLogic و زبان برنامه نویسی Java[ویرایش]

نرم‌افزار AnyLogic هم دارای زبان مدلسازی به صورت گرافیکی است و هم می‌توان با استفاده از زبان Java مدل شبیه سازی را توسعه داد. استفاده از جاوا این امکان را به کاربران می‌دهد تا بدون حد و مرز با استفاده از کدهای جاوا مدل شبیه سازی سامانه مورد نظر خود را به صورت کاملاً منعطف بسازند.
همچنین با استفاده از نرم‌افزار AnyLogic می‌توان مدل را به صورت Java Applet ایجاد کرد که بر روی هر مرورگر (Browser) استانداردی مانند IE، FireFox و... اجرا شود. این قابلیت این امکان را به مدلساز می‌دهد تا مدل ساخته شده از سامانه مورد نظر را به راحتی بر روی اینترنت به اشتراک بگذارد. همچنین در ارائه مدل در مکان‌هایی که نرم‌افزار نصب نیست نیز کاربرد بسیار زیادی داشته و مدلسازی به راحتی می‌تواند مدل شبیه سازی که به صورت Java Applet درآمده‌است را توسط مرورگرهای استاندارد نمایش دهد.

مدلسازی با استفاده از شبیه سازی چندروشه (Multi-method simulation modeling)[ویرایش]

How simulation approaches correspond to the level of abstraction

مدلهای شبیه سازی در نرم‌افزار AnyLogic می‌تواند برپایه سه رویکرد شبیه سازی اصلی یعنی شبیه سازی گسسته پیشامد (DES)، سامانه‌های پویا (SD)و عامل بنیان (AB) ساخته شود.
شبیه سازی گسسته پیشامد و مدلسازی سامانه‌های پویا رویکردهای سنتی در زمینه شبیه سازی هستند. ولی رویکرد شبیه سازی عامل بنیان (AB) یک رویکرد جدید است. از لحاظ تکنیکی، سامانه‌های پویا برای فرایندهای پیوسته مورد استفاده قرار می‌گیرد. شبیه سازی گسسته پیشامد نیز همانطور که از نامش نیز مشخص است برای شبیه سازی سامانه‌های گسسته کاربرد دارد. شبیه سازی عامل بنیان نیز در سامانه‌های گسسته مورد استفاده قرار می‌گیرد.
شبیه سازی گسسته پیشامد و سامانه‌های پویا از گذشته در دانشگاه‌ها تدریس می‌شود. دانشجویان رشته‌های صنایع، مدیریت، اقتصاد، تحقیق در عملیات و... از جمله گروه‌هایی هستند که شبیه سازی به آنها در دانشگاه‌ها تدریس می‌شود. ولی در عالم واقعیت هیچ تعاملی بین گروه‌های شبیه سازی گسسته پیشامد و گروه‌های سامانه‌های پویا وجود نداشته و این دوگروه به صورت دو گروه کاملاً مستقل فعالیت‌های علمی انجام می‌دادند. مدلسازی عامل بنیان به صورت یک مبحث کاملاً آکادمیک مطرح است. اگرچه افزایش تقاضا برای بهینه سازی فرایندهای تجاری به صورت جامع باعث شده‌است تا مدلسازان حرفه‌ای به سمت استفاده از روش‌های ترکیبی برای مدلسازی سامانه‌های پیچیده روی بیاورند که روش مدلسازی عامل بنیان را نیز شامل می‌شود. حال به بررسی هر یک از رویکردهای شبیه سازی و ارتباط آن با میزان خلاصه سازی سامانه (Abstraction) در فرایند مدلسازی پرداخته می‌شود.
مدلسازی سامانه‌های پویا معمولاً در سطوح کلان مورد استفاده قرار می‌گیرد که در آن به جزئیات کمتر پرداخته می‌شود. شبیه سازی گسسته پیشامد بر عکس سامانه‌های پویا، با سطوح جزئیات بسیار بالا و متوسط سرکار دارد و خلاصه سازی در آن در اکثر مواقع بسیار کم است. در این میان شبیه سازی عامل تنها رویکردی در شبیه سازی است که در همه سطوح جزئیات می‌توان از آن استفاده کرد. در واقع محدودیتی برای استفاده آن در سامانه‌ها وجود ندارد و از جرئیات بسیار پایین تا سطوح کلان می‌توان از آن استفاده کرد. به عنوان مثال عامل‌ها (Agents) می‌توانند از یک عابر پیاده، ماشین‌ها یا ربات‌ها باشند تا سطح کلان تر مثلاً مشتریان یا رقابت بین شرکت‌ها.
نرم‌افزار AnyLogic به مدلسازان این امکان را می‌دهد تا سه رویکرد ذکر شده را با هم در یک مدل شبیه سازی ترکیب کنند. نکته قابل توجه آن است که برای ترکیب آنها هیچ چهارچوبی وجود نداشته و بسته به نوع مساله امکان ترکیب هر رویکردی با دیگری وجود دارد. به عنوان مثال، یک مدلساز تمایل دارد که برای مدلسازی مساله حمل و نقل، وسایل حمل و نقل را با استفاده از مدلسازی عامل بنیان استفاده کند و برای شبیه سازی سامانه داخلی از شبیه سازی گسسته پیشامد استفاده کند. ممکن است مدلساز دیگری برای مدلسازی این سامانه از ترکیب عامل بنیان با سامانه‌ها پویا استفاده کند.

زبان شبیه سازی[ویرایش]

Simulation language constructions provided by AnyLogic

در نرم‌افزار شبیه سازی AnyLogic، زبان برنامه نویسی بر پایه آیتم‌های زیر است:
۱. استوک (Stock) و دیاگرام‌های جریان (Flow Diagrams): که برای مدلسازی سامانه‌های پویا مورد استفاده قرار می‌گیرند.
۲.StateCharts: که معمولاً در مدلسازی عامل بنیان مورد استفاده قرار می‌گیرند. ولی در شبیه سازی گسسته پیشامد نیز مثلاً برای تعریف خرابی در ماشین‌ها مورد استفاده قرار می‌گیرد.
۳.Action Charts: برای تعریف الگوریتم‌هایی که در شبیه سازی گسسته پیشامد (مانند الگوریتم موجود در مراکز تماس) و یا عامل بنیان (مثلاً برای تعریف منطق تصمیم گیری عامل‌ها) مورد نیاز است، کاربرد دارد.
۴.Process Flowcharts: به عنوان ساختار اولیه‌ای برای تعریف فرایند در شبیه سازی گسسته پیشامد مورد استفاده قرار می‌گیرد. با نگاه کردن به این نمودار جریان می‌توان به این مطلب پی برد که چرا در بعضی از مواقع به شبیه سازی گسسته پیشامد، شبیه سازی فرایند محور (Process Centric) نیز گفته می‌شود. همچنین زبان برنامه نویسی شامل موارد زیر نیز می‌شود:

  • ساختن سطوح پایینی مدل (متغیرها، روابط، پارامترها، پیشامدها و...)
  • شکل‌های نمایشی (خط، دایره و...)
  • ابزارهای تحلیلی (پایگاه داده، هیستوگرام، نمودارها و...)
  • ابزارهای ارتباطی به پایگاه‌های داده
  • شکل‌های استاندارد
  • چهارچوب‌های طراحی آزمایش‌ها

Libraryهای موجود در نرم‌افزار AnyLogic[ویرایش]

نرم‌افزار AnyLogic دارای Libraryهای زیر است:

  • The Process Modeling Library: برای ساختن مدل‌های گسسته پیشامد از سامانه‌ها تولیدی، زنجیره عرضه، لجستیکی، درمانی و... مورد استفاده قرار می‌گیرد. با استفاده از این Library می‌توان مدل‌های واقعی را بر حسب اجزای موجود در سامانه (مشتریان، وسایل، قطعات و...)، فرایندها، صف‌ها و منابع ایجاد کرد.
  • Pedestrain Library: برای شبیه سازی جریان عابرین پیاده مورد استفاده قرار می‌گیرد. این قسمت این امکان را ایجاد می‌کند که جریان افراد را در ایستگاه‌های مترو، ایستکاه‌های تست بازرسی، خیابان‌ها، مراکز خرید و... شبیه سازی نمود. مدل ساخته شده امکان جمع آوری اطلاعات و میزان تجمع افراد در مناطق مختلف را دارا است. با استفاده از Pedestrain Library می‌توان نقاط گلوگاهی، طول صف‌ها، شناسایی نقاط مشکل احتمالی مانند شکل نامناسب راهروها، جایگاه نامناسب موانع و... را شناسایی نمود. افراد در مدل به صورت پیوسته در مسافت‌ها حرکت می‌کنند و این حرکت با در نظر گرفتن تمامی موارد فاصله افراد از یکدیگر، موانع، دیوارها و... انجام می‌گیرد.
  • The Rail Yard Library: با استفاده از این قسمت می‌توان تمامی فرایندهای موجود در سامانه‌های ریلی را شبیه سازی نمود. مدل شبیه سازی سامانه‌های ریلی را می‌توان با شبیه سازی گسسته پیشامد یا عامل بنیان ترکیب نمود.

همچنین کاربران می‌توانند Library مختص سامانه خودشان را نیز ایجاد و به نرم‌افزار اضافه کنند.

جستارهای وابسته[ویرایش]

منابع[ویرایش]

پیوند به بیرون[ویرایش]