زبانهای شبیه سازیGpss III
Gpss را ابتدا در آغاز دهه 1960 فردی به نام جی.جردن برای شرکت آی.بی.ام ساخت . III Gpssسومین نسخه این زبان ، برنامه ای دو قسمتی است که نیازمند به کارگیری همگردان است . قسمت اوّل یکبرنامه مونتاژ است که توصیف کنندههای سیستم را به صورت دادة قسمت دوم تبدیل میکند . قسمت دومشبیه سازی را انجام میدهد . Gpss III به برنامه نویسی به مفهوم معمول آن نیاز ندارد . مدل سیستم بااستفاده از دستور العملهای مستطیلی ساخته میشود . استفاده از Gpss به هیچ گونه دانش قبلی در موردبرنامه نویسی کامپیوتری نیاز ندارد .
DYNAMO
دینامو در سال 1959 در دانشگاه ام.آی.تی توسط فیلیس فوکس و الکساندر رال پو تدوین شد. اینزبان به عنوان محصولی که به وسیله جی.دبیلو.فرستر برای تحلیل رفتار جامع سیستمهای صنعتی درمقیاس وسیع طراحی شده ، به وجود آمده است . دینامو یک برنامه کامپیوتری است که مدل به صورتمجموعه معادلات توصیف کنندة نشان داده میشود . سپس رفتار سیستم ، با ارزیابی مستمر معادلات در طولزمان ، شبیه سازی میشود . از این زبان به صورت مؤثر در مدلسازی و اقتصاد سنجی و شبیه سازیسیستمهای پیچیدة صنعتی و همچنین برنامه ریزی سیستمهای شهری ـ اجتماعی استفاده میشود . این زباننیز مانند Gpss به دانش برنامه نویسی نیاز ندارد .
GASP IV
این زبان را در سال 1973 ای.آلن.بی. پریتسکر و نیکولاس آر.هرست ساختند و به جای زبانGASP II ـ که کاملاً یک زبان شبیه سازی متغیرهای گسسته بود ـ جایگزین شده است . زبان GASP II نتیجهکار فیلیپ جی کیویات در شرکت فولاد آمریکا بود . تفاوت عمدة بین GASP II و GASP IV تواناییاضافی GASP IV در شبیه سازی متغیرهای پیوسته علاوه بر متغیرهای گسسته است . این زبان توانایی اجرایترکیبی از متغیرهای پیوسته و گسسته را داراست . این زبان کاملاً به زبان فورترن IV نوشته شده و در هرکامپیوتری با همگردان فورترن قابل استفاده و این یکی از ویژگیهای جذاب و بینظیر آن است . این زبان ازچندین برنامه فرعی فورترن تشکیل شده که هر یک وظیفة خاصی را در شبیه سازی انجام میدهند ، یکبرنامه نویس میتواند GASP IV را طوری تغییر داده و اصلاح کند که با خصوصیات مورد علاقه خود که دربرنامه لحاظ نشده است ، منطبق شود .
SIMSCRIPT
simscript را در اوایل دهة 1960 هری مارکویتز در شرکت راند به عنوان یک زبان برنامه نویسی به وجودآورد . گرچه در ابتدا برای تجزیه و تحلیلهای شبیه سازی طراحی شد ، ولی میتوان از آن به عنوان یک زبانبرای مقاصد کلی و عمومی استفاده کرد . این زبان ، یک زبان قدرتمند شبیه سازی است که در آن از واژههایانگلیسی استفاده نشده است و به هیچ گونه کد کردن خاصی نیاز ندارد و برای استفاده از آن هم به یک زبانواسطة همچون فورترن ، نیازی نیست .
Q-GERT
این زبان برای مدلسازی شبکه و خصوصاً تحلیل سیستمهای صف مناسب است . این زبان را پریتسکردر طی دهة 1965 ساخت . GERT علامت اختصاری برای تکنیک ارزیابی و بازنگری با استفاده از نموداراست . تفاوت عمدة بین Q-GERT و GERT در این است که Q-GERT توانایی وارد نمودن خدمت دهندگان وصفها را در مدل شبکه دارد . علاوه بر این به استفاده کننده (کاربر) امکان میدهد که مسیر نهادههای خاصی رادر طول جریان سیستم پیگیری کند . از زبانهای که در این قسمت معرفی شد، Q-GERT سادهترین زبان شبیهسازی برای کاربران است .
SLAM
SLAM برمبنای زبان فورترن بنا نهاده شده و آن را پریتسکر به وجود آورده است . امکان استفاده از این زبان درمدلهای شبکه ، مدلهای با حوادث گسسته ، مدلهای حوادث پیوسته و ترکیبی از این سه مدل، وجود دارد .
SLAM علامت اختصاری «زبان شبیه سازی برای مدلسازی جایگزین» است . SLAM به دلیل توان ترکیبمدلهای شبکه، حوادث گسسته و پیوسته به کاربر امکان میدهد تا مدلهای دیگری را توسعه دهد . این زبانمحصول زبانهای GERT و GASPIV است که به وسیله پریتسکر به وجود آمده است .
7 ـ تعیین اعتبار: این مرحله از مهمترین و معمولاً مشکلترین مراحل شبیه سازی است . تعیین اعتبار عبارت ازفرآیند اطمینان دادن به استفاده کنندة مدل، تا آن سطح که بپذیرد هر گونه استنباط حاصل از شبیه سازی دربارةسیستم ، صحیح است . به عبارتی دیگر تعیین اعتبار یعنی پاسخ دادن به این سؤال که «آیا مدل ساخته شدهرفتار سیستم واقعی را بدرستی شبیه سازی میکند یا خیر؟» بنابراین آنچه که به ما مربوط میشود قابل اعتباربودن مدل است ، نه حقیقت ساختار آن. تعیین اعتبار مدل بیش از حد مهم است ، زیرا شبیه سازی ها معمولاًواقعی جلوه کرده و مدلسازها و استفاده کنندگان به راحتی آنها را باور میکنند. مفروضاتی که در شبیه سازیهابه کار میرود اغلب از دید یک شخص عادی و حتی گاهی از دید مدلساز نیز پنهان میماند. در نتیجه ، اگرمراحل تعیین اعتبار و ارزیابی ، به دقت و به طور کامل انجام نگیرد ، ممکن است نتایج غلط با اثرات خطرناکپذیرفته شود . در تعیین اعتبار مدل یک سؤال مطرح میشود و آن این است که ضابطه اندازه گیری تطابق رفتارمدل با رفتار سیستم چیست و چگونه از آن استفاده میشود. معمولاً دو روش برای آزمایش رفتار مدلهایشبیه سازی بکار میرود :
الف ) در مواقعی که ارقام و نتایج رفتار سیستم واقعی در دست میباشد ، مقادیر و نتایج مشابه بدست آمده ازبررسی مدل را با آنها مقایسه میکنند .
ب ) دقت مدل را در پیش بینی و تعیین مقادیر پارامترها و متغیرهای سیستم در آینده مورد بررسی قرارمیدهند . برای تعیین اعتبار مطمئن و دقیق مدل بحث ها و بررسیهای زیادی صورت گرفته و نظریههایمتعددی بیان گردیده است. پرداختن به این نظریه ها خارج از محدوده این مجموعه است و لذا در اینجا فقط بهذکر مراحل یک روش تعیین اعتبار میپردازیم . این مراحل عبارتند از :
الف ـ در مرحله اول ، اساسی که مدل بر پایه آنها بنا شده است باید مشخص گردد . این اساس شامل یک سریواقعیات غیر قابل انکار و یک سری فرضیات است که در هنگام شناخت و تعریف سیستم تعیین شدهاند. برایاین تشخیص ، مدلساز از اطلاعات خود راجع به سیستم واقعی یا سیستمهای مشابهی که شبیه سازی شدهانداستفاده خواهد کرد . مدلساز فرضیات را از بدیهیات غیر قابل انکار بازشناخته و از بین آنها فرضیاتی را که قابلآزمایش هستند انتخاب میکند. دلیل این انتخاب این است که در شبیه سازی مواردی وجود دارد که آزمونیک فرض، گاه غیر ممکن و یا بسیار مشکل است . در این گونه موارد ، با این استدلال که فرضیه غیر قابلآزمایش بیمعنی است ، کنار گذاشته میشود و یا آنرا بصورت موقتی قبول کرده و در عین حال به جستجویفرضیه قابل آزمایشی پرداخته میشود .
ب ـ در مرحله دوم فرضیات منتخب مرحله اول مورد آزمون قرار میگیرند. این فرضیات که اغلب مربوط بهمتغیرهای تصادفی سیستم (بعنوان پارامترهای ورودی) میباشند باید با روشهای آماری آزمون فرض، موردآزمایش قرار گیرند.
ج ـ مرحله سوّم تست رفتار مدل یا تطابق نتایج است. برای انجام این مرحله دو روش وجود دارد که در صفحهقبل ذکر گردید. واضح است که مدل ساخته شده باید متناسب با هدف شبیه سازی رفتار و عملکرد سیستم رابه نمایش بگذارد . بعبارت دیگر باید کلیه وقایعی که در سیستم رخ میدهند، هر کدام بموقع خود، و تمامجزئیات اثر یا اثرات آنها در مدل گنجانیده شود . گاه اتفاق میافتد که بعضی جزئیات در مدل از قلم افتاده یااشتباهی برنامه نویسی شده و یا حتی بعضی از قسمتها بطور نادرست مدلسازی شدهاند. این اشتباهات گاهیآنقدر مخرب هستند که نتایج حاصل بجای عملی بودن اصولاً مسخره خواهند بود .
8 ـ برنامه ریزی استراتژیک و تاکتیکی : بطور کلی برنامه استراتژیک یعنی طرح آزمایشی که اطلاعات مطلوباز آن حاصل شود و برنامه ریزی تاکتیکی یعنی تعیین این موضوع که هر یک از آزمونهای مشخص شده درطرح آزمایش ، چگونه انجام گیرد.
استفاده از طرحهای آزمایش به دو دلیل است : 1 ـ کاهش تعداد دفعات آزمایش و 2 ) ساختاری برایفرایند یادگیری محققین . در طرح آزمایش روشی برای جمع آوری اطلاعات اساسی انتخاب میشود کهدربارة پدیده یا سیستم، آن قدر آگاهی به دست آید که بتوان استنباطهای معتبری راجع به رفتار آن کسب کرد .در آزمایش شبیه سازی عوامل متعددی وجود دارند که باید دارای طرح معینی باشند . بعضی از این عواملعبارتند از ، شرایط اولیه (یا شرایط شروع) شبیه سازی، شرایط پایانی و زمانهایی که مدل باید اطلاعاتی راتولید کند . هر یک از این عامل ها اثرات بسیار مهمی روی نتایج حاصل از شبیه سازی دارند که با تغییر آنها ،میزان تأثیرشان تغییر مییابد . آزمایش کننده میبایست قبل از به اجرا گذاشتن مدل، تصمیم خود را در موردچگونگی این عوامل ، البته براساس روشهای علمی و فنی ، بگیرد . نتیجه این تصمیم بخشی از طراحیآزمایش را تشکیل میدهد . دو نوع از اهداف آزمایش به سهولت قابل تشخیص اند : 1 ) یافتن ترکیبی از مقادیرپارامترها که جواب آزمایش را بهینه کند و یا 2 ) یافتن روابط بین جواب آزمایش و عوامل قابل کنترل سیستم.برای هر دوی این اهداف طرحهای آزمایشی زیادی به وجود آمده و در دسترساند .
عموماً در برنامه ریزی تاکتیکی مسئله بازدهی مطرح است و با تعیین چگونگی اجرای مدل که در طرحآزمایشی مشخص میشوند، سروکار دارد . برنامه ریزی تاکتیکی ، حل دو گروه از مسائل را در نظر دارد: 1 )شرایط شروع ، چون در رسیدن به تعادل مؤثرند و 2 ) نیاز به کاهش پراکندگی (واریانس) جواب تاحد ممکن ،در حالی که حجم نمونه های لازم مینیمم شوند.
اولین مشکل از ماهیت تصنعی عملکرد مدل ناشی میشود. بر خلاف جهان واقعی ، مدل شبیه سازی فقطدر فواصل معین عمل میکند . یعنی آزمایش کننده ، مدل را به کار انداخته ، اطلاعاتش را بدست آورده و سپستا اجرای بعدی آنرا از کار باز میدارد . هر بار که اجرای مدل آغاز میشود ممکن است مدت زمانی طولبکشد تا مدل به شرایط تعادل که نمایشگر عملکرد سیستم جهان واقعی است برسد . در نتیجه ، دورة ابتداییعملکرد مدل به علت دارا بودن شرایط ابتدایی شروع ، نمایشی غیر واقعی است . راه حل این مشکل عبارتاست از : 1 ) صرفنظر کردن از بعضی از دادههای دورة ابتدایی و 2) انتخاب شرایطی برای شروع که زمان لازمبرای رسیدن به تعادل را کاهش دهند . هر چه مدل شبیه سازی پیچیده تر شود اهمیت برنامه ریزی تاکتیکیخوب قبل از اجرای آزمایشها بیشتر میشود.
9 ـ آزمایش کردن و تفسیر (تحلیل حساسیت):
بالاخره بعد از آن همه برنامه ریزی و توسعه مدل بدست آوردن اطلاعات مطلوب، مدل اجرائی میشود . دراین مرحله است که اشتباهات و نقایص برنامه ریزی آشکار میشود و تا رسیدن به اهدافی که ابتدا مشخصشدهاند مراحل اجرا شده مورد بازرسی قرار میگیرد . تحلیل حساسیت یکی از مهمترین مفاهیم مدلسازی ازطریق شبیه سازی است . منظور از آن ، تعیین حساسیت جوابهای نهایی نسبت به مقادیر پارامترهای به کار رفتهاست . معمولاً در تحلیل حساسیت مقادیر پارامترها را روی محدودة مورد نظر به طور منظم تغییر میدهند واثر آن را روی پاسخ مدل مشاهده میکنند . تقریباً در هر مدل شبیه سازی، بسیاری از متغیرها براساسدادههایی قرار دارند که بسیار قابل بحثاند. در اکثر موارد ، ممکن است تنها براساس حدس افراد با تجربه و یاتحلیلی بسیار شتابزده از حداقل دادهها، مقادیر آنها تعیین شود . بنابراین تعیین درجة حساسیت نتایج نسبت بهمقادیر به کار رفته، بینهایت مهم است . اگر با تغییری مختصر در مقادیر بعضی از پارامترها، جواب به میزانزیادی تغییر کند ، این مطلب ممکن است انگیزه و توجیه لازم برای صرف کردن زمان و پول بیشتر جهت کسببرآوردهای دقیق تر را فراهم کند . از طرف دیگر ، اگر با وجود نوسانات زیاد در مقادیر پارامترها، نتایج بهدست آمده تغییر نکنند، تلاش بیشتری لازم نبوده و قابل توجیه هم نیست . به علت میزان کنترلی که آزمایشکننده از آن برخوردار است ، به طور ایدهال ، شبیه سازی برای تحلیل حساسیت مناسب است .
10 ـ پیاده سازی و مستند سازی : پیاده سازی و مستند سازی آخرین عناصری هستند که باید در هر پروژه شبیهسازی موجود باشند . نمیتوان پروژة شبیه سازی را با موفقیت پایان یافته تلقی کرد ، مگر آنکه پذیرفته شده ،تفهیم شود و مورد استفاده قرار بگیرد . بزرگترین شکست علمای مدیریت ، در به دست آوردن پذیرش واستفاده از کارهایشان بوده است . شانون در کتاب خود نتایج بررسی گرشفسکی را چنین ذکر میکند .گرشفسکی در بررسیهایشان دریافت که به طور متوسط از زمان کل ایجاد و توسعه یک مدل ، 25% برای تدوینمسئله ، 25% برای جمعآوری و تحلیل دادههای گذشته ، 40% برای ایجاد و توسعه یک مدل کامپیوتری و10% برای پیاده سای صرف شده است .» بنابراین تعجب آور نیست که یکی از بزرگترین علل شکستپروژههای شبیه سازی ، ناشی از آن باشد که استفاده کننده، از نتایج درک کافی نداشته ، در نتیجه مدل را پیادهنکرده است . مستند سازی رابطة نزدیکی با پیاده سازی دارد . مستند سازی دقیق و کاملی از چگونگی ایجاد وتوسعه و نحوه عمل مدل میتواند عمر مفید و شانس پیاده سازی موفق آن را ، بسیار افزایش دهد . مستندسازی خوب ، اصلاح مدل را آسانتر ساخته ، حتی در صورت نبودن ایجاد کنندههای اصلی آن ، تواناییاستفاده از آن را ، تأمین میکند .
خیلی خیلی خوب بود