فصل اول

Download Report

Transcript فصل اول

‫ی‬
‫شبيه‌سازي کامپیوتر ‌‬
‫فصل اول‬
‫مقدمه ای بر شبیه سازی‬
‫‪a‬‬
‫منبع‬
 Discrete Event System Simulation, Jerry Banks et all, Fourth Edition, 2005,
Prentice-Hall
‫ انتشارات دانشگاه صنعتی شریف‬،‫ هاشم محلوجی‬،‫شبیهسازی سیستمهای گسسته پیشامد‬
a
‫فهرست موضوعی‬
‫•‬
‫آشنایی با مفاهیم و مراحل شبیهسازی‬
‫•‬
‫مثال هایی از شبیه سازی و مفاهیم مدل سازی سیستم ها‬
‫•‬
‫آمار در شبیه سازی (مفاهیم آمار‪ ،‬توزیع ها و ساخت مقادیر تصادفی‪ ،‬اعداد تصادفی‪ ،‬تحلیل داده های ورودی به مدل)‬
‫•‬
‫مدلهای صف‬
‫•‬
‫سیستمهای موجودی‬
‫•‬
‫تولید اعداد تصادفی‬
‫•‬
‫تصدیق و اعتبارسنجی مدل های شبیهسازی کامپیوتری‬
‫•‬
‫تحلیل داده های خروجی و مقایسه و انتخاب آلترناتیو برتر‬
‫•‬
‫بهینه سازی در مدل های شبیه سازی‬
‫•‬
‫آموزش صورت کلی نرمافزارهای آماری و شبیه سازی (‪)ED, Arena, Showflow, Minitab‬‬
‫‪a‬‬
a
‫پیشگفتار‬
‫شبیهسازی چه به صورت دستی چه به صورت کامپیوتری‪ ،‬تقلیدی از عملکرد سیستم واقعی با‬
‫گذشت زمان است که به ایجاد ساختگی تاریخچه سیستم و بررس ی آن به منظور دستیابی به‬
‫نتیجهگیری در مورد ویژگیهای عملکرد واقعی آن می پردازد‪ .‬شبیه سازی اصول به شکل‬
‫مجموعهای از فرضهای مربوط به عملکرد سیستم در چارچوب رابطههای ریاض ی و منطقی‬
‫میباشد‪ .‬شبیهسازی یکی از پرکاربردترین ابزار موجود علم تحقیق در عملیات است که‪:‬‬
‫‪ o‬اجازه ارزیابی عملکرد سیستم را پیش از پدید آمدن میدهد‪.‬‬
‫‪ o‬مقایسه گزینههای گوناگون را بدون ایجاد اختالل در سیستم واقعی مسیر میکند‪.‬‬
‫‪ o‬فشردهسازی زمان را به منظور اتخاذ تصمیمهای به موقع انجام می دهد‪.‬‬
‫‪ o‬ساختار ساده و استفاده از نرمافزارها‪ ،‬امکان استفاده بسیاری را فراهم میکند‪.‬‬
‫‪a‬‬
‫چرا شبیه سازی مفید است؟‬
‫‪ ‬با شبیه سازی بررس ی و آزمایش رابطه های متقابل هر سیستم و زیر‬
‫سیستم پیچیده میسر است‪.‬‬
‫‪ ‬تغییرات اطالعاتی‪ ،‬سازمانی و محیطی را می توان شبیه سازی کرد‪ ،‬و‬
‫تاثیر این تغییرات را مشاهده نمود‪.‬‬
‫‪ ‬با تغییر در ورودیهای شبیه سازی و بررس ی خروجیهای بدست آمده‪ ،‬می‬
‫توان شناخت ارزشمندی درباره مهمترین متغیرها و چگونگی رابطه‬
‫متقابل آنها به دست آورد‪.‬‬
‫‪ ‬شبیه سازی را می توان مانند ابزاری آموزش ی به منظور تقویت‬
‫روشهای تحلیلی به کار گرفت‪.‬‬
‫‪ ‬از شبیه سازی می توان به منظور آزمایش طرحها یا تصمیمات جدید‪،‬‬
‫پیش از اجرا استفاده کرد‪.‬‬
‫‪a‬‬
‫مزایا و معایب شبیه سازی‬
‫مزایا‬
‫• استفاده مکرر‬
‫• تحلیل سیستم های پیشنهادی‬
‫• کم هزینه بودن دستیابی به داده های شبیه سازی‬
‫• سادگی در کاربرد نسبت به روشهای تحلیلی‬
‫• توانایی بالتر نسبت به روشهای تحلیلی‬
‫معایب‬
‫• مدلهای شبیه سازی معمول از لحاظ زمانی پر هزینه اند‬
‫• نیاز به اجرای فراوان در هر مورد شبیه سازی‬
‫‪a‬‬
‫ی‬
‫شبیه‌ساز ‌‬
‫‪ ‬شبیهسازی‪ ،‬بیان رفتار پویای یک سیستم در حالت پایدار به واسطه حرکت آن‬
‫از یک وضعیت به وضعیت دیگر بر اساس قواعد عملیاتی تعریف شده است‪.‬‬
‫اصول در شبیهسازی‪ ،‬از کامپیوتر برای ارزیابی عددی یک مدل استفاده شده و‬
‫در آن دادهها به جهت تخمین ویژگیهای موردنظر مدل جمعآوری میشوند‪.‬‬
‫‪ ‬شبیهسازی کامپیوتری در عامترین معنایش‪ ،‬فرایند طراحی مدلی ریاض ی‪ -‬منطقی‬
‫از سیستم واقعی و آزمایش این مدل با کامپیوتر است‪ .‬فرایند مدلسازی با‬
‫استفاده از روابط ریاض ی‪ -‬منطقی و همچنین اجرای مدل به وسیله کامپیوتر را‬
‫شبیهسازی کامپیوتر میگویند‪.‬‬
‫‪a‬‬
‫سیستم و محدودۀ عمل‬
‫در چارچوب‬
‫در راستای تحقق مقصودی معین ‌‬
‫یک سیستم گروهی است ‌از اشیا که ‌‬
‫یکدیگر پیوسته هستند‪.‬‬
‫‌‬
‫روابط یا وابستگی‌های متقابل‪ ،‬به‬
‫محیط سیستم‪:‬‬
‫عواملی خارج از سیستم که تحت کنترل نیستند‪ ،‬ولی میتوانند بر عملکرد سیستم اثر‬
‫بگذارند محیط سیستم خوانده میشود‪ .‬یک سیستم معمول تحت تأثیر تغییراتی است‬
‫که در خارج سیستم اتفاق میافتد‪ .‬این تغییرات اصطالحا در محیط یا پیرامون‬
‫سیستم اتفاق میافتند‪ .‬در مدل سازی یک سیستم‪ ،‬تصمیمگیری نسبت به مرز بین‬
‫سیستم و محیط سیستم از نکات ضروری و مهم است‪.‬‬
‫‪a‬‬
‫نکتهای در تعریف سیستم‬
‫اگر عوامل بیرونی به طور جزئی سیستم را تحت تأثیر قرار دهند میتوان‪:‬‬
‫– تعریف سیستم را گسترش داد تا عوامل بیرونی را در برگیرد‪.‬‬
‫– عوامل بیرونی را نادیده گرفت‪.‬‬
‫– میتوان عوامل بیرونی را به عنوان ورودیهای سیستم در نظر گرفت‪.‬‬
‫‪a‬‬
‫ارکان سیستم‬
INPUT
PROCESS
FEEDBACK
a
OUTPUT
‫اجزاء سیستم‬
‫• نهاد یا موجودیت (‪)Entity‬‬
‫عنصری مورد توجه در سیستم است‪ .‬عناصر موقتی که در سیستم جاری شده و دارای دیمانسیون‬
‫مشخص هستند‪.‬‬
‫• مشخصه یا خصیصه (‪)Attribute‬‬
‫ویژگی موجودیت است و آنرا توصیف میکند‪.‬‬
‫• فعالیت )‪(activity‬‬
‫هر فعالیت بیانگر یک پریود زمانی با طول مشخص است‪.‬‬
‫• وضعیت یا حالت سیستم‪)State( :‬‬
‫مجموعه متغیرهای لزم برای توصیف سیستم در هر لحظه از زمان با توجه به هدف مطالعه سیستم و‬
‫معمول با مقادیر عددی تخصیص ی به مشخصههای موجودیتها تعریف میشود‪.‬‬
‫• واقعه یا پیشامد )‪(Event‬‬
‫رویدادی لحظهای است که میتواند وضعیت سیستم را تغییر دهد‪.‬‬
‫‪a‬‬
‫مثال‬
‫سیستم‬
‫نهاد‬
‫خصیصه ها‬
‫فعالیت‬
‫پیشامد‬
‫متغیرهای حالت‬
‫بانک‬
‫مشتری‬
‫مانده حساب جاری‬
‫سپرده گذاری‬
‫ورود‪ ،‬ترک‬
‫تعداد خدمت‬
‫دهنده های‬
‫مشغول‬
‫تعداد مشتریان‬
‫منتظر‬
‫قطارسریع‬
‫اسیر‬
‫مسافر‬
‫مبدا‪ ،‬مقصد‬
‫سفر‬
‫ورود به ایستگاه‬
‫رسیدن به مقصد‬
‫تعداد مسافران‬
‫منتظر در هر‬
‫ایستگاه‬
‫تعداد مسافران در‬
‫سفر‬
‫تولید‬
‫ماشین‬
‫ها‬
‫سرعت‬
‫ظرفیت‬
‫آهنگ از کار ماندگی‬
‫جوشکاری‪ ،‬برش‬
‫از کارماندگی‬
‫وضعیت ماشین ها‬
‫(مشغول‪ ،‬بیکار‪ ،‬از‬
‫کار افتاده)‬
‫ارتباطات‬
‫پیام ها‬
‫طول‪ ،‬مقصد‬
‫مخابره‬
‫ورود به مقصد‬
‫تعداد پیام های در‬
‫انتظار مخابره‬
‫…‬
‫…‬
‫…‬
‫‪a‬‬
‫…‬
‫…‬
‫…‬
‫مشخصه‌های ثابت و متغیر‬
‫مشخصهها توصیف کننده موجودیتها هستند‪ .‬مقدار یک مشخصه میتواند در طول زمان تغییر کند (مشخصه‬
‫متغیر) و یا تغییر نکند (مشخصه ثابت)‪ .‬معمول بیشتر عالقمند به مدل کردن مشخصههای متغیر هستیم‪.‬‬
‫مثال هایی از مشخصههای متغیر‪:‬‬
‫• تعداد قطعات در خط مونتاژ‪.‬‬
‫• وضعیت یک ماشین ( که منجر به درصد استفاده از ماشین میشود)‪.‬‬
‫• زمان تکمیل مونتاژ‬
‫• اینکه دکتر مشغول و یا بیکار است‪.‬‬
‫مثال هایی از مشخصههای ثابت‪:‬‬
‫• مسیر تولید یک محصول‬
‫• توالی مواردی که میبایست روی یک مریض با نوع خاص ی از درمان صورت گیرد‪.‬‬
‫‪a‬‬
‫مشخصه در خط مونتاژ‬
‫مشخصهها‬
‫موجودیتها‬
‫‪ )a‬وضعیت کاری (بیکار(‪ )0‬یا مشغول(‪))1‬‬
‫کارگران‬
‫‪ )b‬ایستگاههای کاری تخصیص یافته (‪1‬و ‪2‬و ‪3‬و ‪)...‬‬
‫ماشینآلت‬
‫‪ )a‬وضعیت (بیکار(‪ ، )0‬مشغول(‪ ،)1‬منتظر تعمیر (‪ )2‬تحت تعمیر (‪ ،)3‬در حال راهاندازی(‪))4‬‬
‫‪ )b‬عمر‬
‫‪ )c‬زمان عملیات‬
‫ایستگاههای کاری‬
‫‪ )a‬تعداد قطعات منتظر در صف (‪).....،2 ،1 ،0‬‬
‫محصولت مونتاژی‬
‫‪ )a‬موعد تحویل‬
‫‪a‬‬
‫ی‬
‫انواع سیستم شبیه ساز ‌‬
‫• سیستم های گسسته(‪)Discrete Event System‬‬
‫سیستمی که متغیرهای حالت آن فقط و فقط در مجموعه ای از نقاط گسسته‬
‫زمان تغییر می کند‪(.‬مثل مشتریان بانک)‬
‫• سیستم های پیوسته(‪)Continuous System‬‬
‫سیستمی که متغیر های حالت آن به صورت پیوسته طی زمان تغییر می کند‬
‫‪a‬‬
‫ی‬
‫مدل‌ساز ‌‬
‫در زمانی که تجربه خود سیستم امکان پذیر نیست معمول از مدل سازی استفاده می شود‪.‬‬
‫مدلسازی یک اقدام مهم در جهت ایجاد یک نمونه ساده شده از یک سیستم کامل با هدف پیش بینی‬
‫معیارهای قابل اندازه گیری عملکرد سیستم می باشد‪ .‬اصول یک مدل به منظور گرفتن جنبه های‬
‫رفتاری خاص از یک سیستم و کسب آگاهی و بینش از رفتار سیستم طراحی می شود‪.‬‬
‫› مدل دقیقا همانند سیستم واقعی نیست‪ .‬بلکه تنها شامل تعدادی از جنبههای اساس ی و کلیدی سیستم‬
‫است که برای هدف مطالعه سیستم تأثیرگذار هستند‪ .‬از این رو مدل خالصهای از سیستم مورد بررس ی‬
‫است‪ .‬فرایند ساختن مدل برای افراد متخصص و تصمیم گیرندگان مختلف‪ ،‬روش ی اصولی‪ ،‬صریح و موثر را‬
‫فراهم میسازد تا بتوانند قضاوت و ادراک خود را درباره موضوع متمرکز سازند‪ .‬همچنین با معرفی چارچوبی‬
‫دقیق‪ ،‬مدل را میتوان به عنوان ابزاری موثر در برقرار کردن ارتباط به عنوان کمک در کار تفکر روی موضوع‬
‫به کار برد‪.‬‬
‫‪a‬‬
‫ی‬
‫روش صحیح مدل‌ساز ‌‬
‫مسائل واقعی بسیار پیچیده تر از آن است که کامال آن را در ک و توصیف کنیم‪ .‬روش صحیح مدل سازی از دو گام تشکیل‬
‫شده‪:‬‬
‫‪ ‬شروع با مدلی بسیار ساده‬
‫‪ ‬تکمیل تدریجی مدل‬
‫به منظور ایجاد مدلی مفید از یک فرایند دو مرحلهای استفاده میشود‪.‬‬
‫›‬
‫تجزیه‪ :‬ساده کردن سیستم از طریق حذف جزئیات یا از طریق پذیرش فرضهایی است که روابط حاکم بر عوامل را مهارپذیر میکند‪ .‬عمل‬
‫ساده کردن عموما به یکی از طرق زیر انجام می شود‪:‬‬
‫›‬
‫‪‬‬
‫تبدیل متغیرها به مقادیر ثابت‬
‫‪‬‬
‫حذف یا ادغام متغیرها در یکدیگر‬
‫‪‬‬
‫فرض خطی بودن روابط‬
‫‪‬‬
‫افزودن محدودیتهای بیشتر‬
‫‪‬‬
‫تحدید حدود سیستم‬
‫ترکیب‬
‫‪a‬‬
‫انواع مدل‌ها‬
‫مدل ریاض ی یا فیزیکی‬
‫مدل ایستا (مونت کارلو) یا پویا‬
‫رده بندی انواع مدل‬
‫مدل قطعی یا تصادفی‬
‫(معرف سیستم در لحظه ای خاص از زمان یا در یک بازه زمانی)‬
‫(ورودی ها مشخص یا نامشخص و تصادفی)‬
‫مدل گسسته یا پیوسته‬
‫مدل فیزیکی‬
‫–‬
‫یک ش ئ فیزیکی ساده شده با مقیاس کوچک شده می باشد‪( .‬مانند مدل هواپیما)‬
‫مدل تحلیلی یا ریاض ی‬
‫–‬
‫مجموعه ای ‌از معادالت ‌و ارتباطات میان متغیرهای ریاضیاتی می‌باشد‪( .‬مانند مجموعه ای ‌از معاد ‌الت‬
‫در کارخانه می‌باشد)‪.‬‬
‫در خط تولید ‌‬
‫که توصیف کننده جریان کاری‌ ‌‬
‫‪a‬‬
‫ی‬
‫کامپیوتر در شبیه ساز ‌‬
‫کامپیوتر دادههای موردنظر در ارتباط با موجودیتهای شبیهسازی شده را‬
‫ثبت کرده و یک نمونه ترکیبی از دادههای عملکردی سیستم را ایجاد میکند‪.‬‬
‫سپس مفاهیم آماری برای تحلیل این نمونه دادهها در ارتباط با کمیتهای‬
‫مختلفی چون موارد زیر مورد استفاده قرار میگیرد‪:‬‬
‫› زمانهای انتظار‬
‫› توان عملیاتی‬
‫› طول صف‬
‫› زمانهای پردازش‬
‫› میزان استفاده از منابع ‪....‬‬
‫‪a‬‬
‫جاذبه های شبیه سازی کامپیوتری‬
‫‪ o‬فشرده سازی زمان‬
‫‪ o‬به هنگام ثبت نتایج یک آزمایش واقعی خطا اجتناب ناپذیر است‪.‬‬
‫‪ o‬در جریان یک آزمایش‪ ،‬گاهی نیاز است با حفظ شرایط آزمایش‬
‫متوقف شود‪.‬‬
‫‪ o‬قابلیت اجرای مدل به طور مکرر و تحت شرایط اولیه یکسان‪.‬‬
‫‪ o‬دوباره سازی یک آزمایش با در نظر گرفتن پارامترهای مربوط به‬
‫شرایط عملکرد‬
‫‪a‬‬
‫مراحل ساخت مدل شبیه‌سازی‌‬
‫‪.1‬‬
‫فرمولهبندی و تعریف مساله‬
‫‪.2‬‬
‫تعیین اهداف و طرح کلی پروژه‬
‫‪.3‬‬
‫تحلیل مسئله (مدلسازی)‬
‫‪.4‬‬
‫جمع آوری داده اطالعات‬
‫‪.5‬‬
‫ساخت مدل (برنامه نویس ی)‬
‫‪.6‬‬
‫ممیزی مدل‬
‫‪.7‬‬
‫معتبرسازی مدل‬
‫‪.8‬‬
‫طراحی و اجرای آزمایش های شبیه سازی‪.‬‬
‫‪.9‬‬
‫تحلیل خروجی‬
‫‪ .10‬تفسیر و مستندسازی‬
‫‪ .11‬اجراء‬
‫‪a‬‬
‫شبیه‌سازی سیستم‌هایی با خصوصیت تصادفی‬
‫میتوان چنین گفت که اکثر سیستم های موجود معرفی شده خاصیت تصادفی بودن را با خود‬
‫به همراه دارند‪ .‬منظور از این جمله این است که؛ سیستمها همواره عملکرد یکسانی ندارند‪.‬‬
‫همین امر باعث می شود با توجه به نظریه های آماری خصوصیت تصادفی بودن را برای‬
‫سیستمها فرض صحیحی دانست‪ .‬در این درس با شناسایی خصوصیت تصادفی آماری جامعه‬
‫مورد بررس ی‪ ،‬با استفاده از تکنیکهای آماری‪ ،‬به شبیهسازی سیستم ها برای مطالعه وضعیت‬
‫در حالت پایدار سیستم میپردازیم‪.‬‬
‫‪a‬‬
‫مونت کارلو‬
‫•روش ی است که در آن به منظور حل مسایل غیر تصادفی یا برخی مسایل تصادفی که گذشت زمان هیچ نقش اساس ی در آنها ندارد از‬
‫اعداد تصادفی (اعداد تصادفی یکنواخت در بازه صفر تا یک) استفاده میشود‪.‬‬
‫•روش مونت کارلو در مقابل شبیه سازی قرار دارد‪ ،‬چرا که عامل زمان در شبیه سازی دخالت دارد‪.‬‬
‫در خالل جنگ جهانی دوم از رمز مونت کارلو که تعریفی مطابق بال دارد برای حل مسائلی در ساخت بمب اتمی استفاده شده است‪.‬‬
‫‪.1‬‬
‫حل مسائل غیر تصادفی با استفاده از اعداد تصادفی‬
‫‪.2‬‬
‫نمونه گیری از توزیعهای آماری مجهول‬
‫‪a‬‬
‫مثالی برای روش مونت کارلو‬
.‫ روش حلی با استفاده از مونت کارلو ارائه کنید‬،‫فرض کنید انتگرال زیر با روش های متداول حل نمی شود‬
b
I 
 g  x dx
a
‫فرض‬
:‫حل‬
: X ~  a, b , f ( x ) 
1
ba
b
‫فرض‬
: Y  b  a  g  x   E Y   b  a  E  g  x   E Y   b  a  g  x  f ( x ) dx
a
 E Y  
B
 g  x dx
 I
a
We khew
 Solving
n
g Xi 
i 1
n
that : E Y   b  a  E  g  x   ( b  a ) 
procsess : we can produce
n random
n
and then
calculate
the
a
( X 1 , X 2 ,..., X n ~  0 ,1 )
number
b  a 
1
g X i 
n
‫ی‬
‫نرم افزارهای شبیه‌ساز ‌‬
‫پیچیده بودن شبیهسازی سیستمهای واقعی‪ ،‬استفاده از نرمافزارهای کامپیوتری را باعث‬
‫میشود‪ .‬در اصل نرمافزار کامپیوتری چارچوبی را برای ساخت مدل فراهم میکنند که کار‬
‫مدلساز را نسبت به موارد زیر راحت میکنند‪:‬‬
‫› چگونگی پردازش ورودیها‬
‫› عملیات ثبت دادهها‬
‫› گزارشهای خروجی‬
‫› تسهیل در تولید دادههای تصادفی‬
‫› جمع کردن دادهها در متغیرهای خروجی‬
‫‪a‬‬
‫ی‬
‫نرم‌افزارهای شبیه‌ساز ‌‬
‫‪a‬‬