Simulation932_Assignment1_rev02.pdf

‫به نام هستیبخش مهربان‬
‫‪ - ۴۳۶۰۴‬شبیهسازی کامپیوتری‬
‫ترم دوم ‪۳۴-۳۰‬‬
‫تمرین شماره ‪۱‬‬
‫دانشکده مهندسی کامپیوتر‬
‫موعد تحویل‪ ۱۱ :‬اسفند ‪۳۰‬‬
‫تذکرات!‬
‫‪ o‬برگه پاسختان را دقیقاً در روز مشخص شده در کالس درس به استاد تحویل دهید‪.‬‬
‫‪ o‬قبل و پس از موعد‪ ،‬تمرین تحویل گرفته نخواهد شد‪.‬‬
‫‪ o‬پاسخ باید به صورت کاغذی به استاد تحویل داده شود و ارسال دیجیتالی از طریق ایمیل و روشهای دیگر تحویل مورد قبول‬
‫نیست‪.‬‬
‫‪ o‬خوانایی برگه پاسخ بخشی از نمره شما را تشکیل میدهد‪.‬‬
‫سؤال ‪)۱‬‬
‫به سؤاالت زیر به صورت مختصر جواب دهید‪:‬‬
‫‪ .۱‬در چه شرایطی برای تحلیل یا طراحی یک سیستم میتوان از شبیهسازی استفاده کرد؟ تحت چه شرایطی استفاده از آن‬
‫درست نیست؟‬
‫‪ .2‬تفاوت سیستم پیوسته و گسسته در چیست؟‬
‫‪ .۰‬مثالی از یک شبیهسازی پیوسته بزنید که نمیتوان آن را به صورت گسسته شبیهسازی کرد و دلیل آن را بیان کنید‪.‬‬
‫‪( .۴‬بدون نیاز به نوشتن جواب) به سایت ‪ http://informs-sim.org‬مراجعه کنید و نمونههایی از کارهای انجام شده با‬
‫استفاده از شبیهسازی را ببینید‪ .‬چند مورد از کارهایی جالب را پیدا کنید!‬
‫سوال ‪)2‬‬
‫نمودار زیر تعداد مشتریها در سیستم را بر حسب زمان نشان میدهد‪ .‬با فرض این که نظام صف ‪ LIFO‬است بر اساس آن یک جدول‬
‫(مانند جدول ‪ 2.۴‬کتاب درسی) با ستون های شماره مشتری‪ ،‬زمان رسیدن‪ ،‬زمان آغاز سرویس‪ ،‬زمان سرویس و زمان پایان سرویس‬
‫ایجاد کنید و سپس میانگین زمان انتظار در صف و میانگین زمان انتظار در سیستم را محاسبه کنید‪.‬‬
‫سوال ‪)۰‬‬
‫جدول زیر تابع توزیع زمان بین آمدن دو مشتری متوالی در یک بانک فرضی را نشان میدهد‪ .‬در این بانک فقط یک کارمند پاسخگوی‬
‫مشتریان است و نظام صف ‪ FIFO‬است با استفاده از ارقام تصادفی از توزیع یکنواخت داده شده ‪ 8‬زمان بین آمدن تولید کنید‪ .‬و‬
‫مراحل انجام آن را تو ضیح دهید‪ .‬با استفاده از این اعداد و با استفاده از روش کتاب در شبیه سازی مبتنی بر رخداد‪ ،‬جدولی مانند‬
‫جدول ‪ ۰.2‬کتاب ایجاد کنید‪ .‬برای ایجاد این جدول از مراحل پیشنهادی در شکل های ‪ ۰.3‬و ‪ ۰.۶‬استفاده کنید‪ .‬این مراحل را به‬
‫همراه کارهای دیگر مورد نیاز در شبیه سازی توضیح دهید‪ .‬شبیه سازی را تا زمانی که همه مشتری ها از سیستم خارج شوند ادامه‬
‫دهید و فرض کنید اولین مشتری در زمان ‪ ۳‬وارد شده است‪ .‬همچنین زمان سرویس به هر مشتری برابر مقدار ثابت )‪(b mode 3‬‬
‫‪ +3‬می باشد که در آن ‪ b‬رقم سمت راست شماره دانشجویی شماست‪ .‬به صورت تجمعی مجموع زمان حضور در صف و حداکثر طول‬
‫صف را محاسبه کنید‪ .‬میانگین زمانی که یک مشتری در صف قرار دارد را گزارش کنید‪.‬‬
‫‪: 7- 2 – 8 – 6 – 8 – 9 – 4 - 3‬اعداد تصادفی‬
‫احتمال‬
‫زمان بین آمدن‬
‫‪۳.۰‬‬
‫‪۱‬‬
‫‪۳.۴‬‬
‫‪۰‬‬
‫‪۳.2‬‬
‫‪3‬‬
‫‪۳.۱‬‬
‫‪۷‬‬
‫سوال ‪)4‬‬
‫توضیح تکمیلی‪ :‬در دنیای امروز‪ ،‬رقابتهای روزمره و تعامالت به سمتی پیش رفته که به یک سیستمی رسیدهایم که در آن‪ ،‬افراد و‬
‫بازیگرها (‪ )party‬عمالً یک سری استراتژی در پیش می گیرند و نهایتا در قبال هر حالت از محیط‪ ،‬یک سودی نصیبشان میشود‪.‬‬
‫شاخهی نظریهی بازیها به این برخوردها اشاره میکند که در آن استراتژیها با سودهایشان را در نظر گرفته و سود (‪ )payoff‬برای‬
‫هر بازیگر به ازای هر انتخاب مشخص میشود‪.‬‬
‫در اینجا ما برای اینکه بسیار ساده بتوانیم یک مسالهای که در آن بازیگران به ازای استراتژیهایشان ‪ payoff‬خاصی دارند را‬
‫میآوریم که گرچه بسیار پیش پا افتاده است اما شبیهسازی آن خالی از لطف نیست‪.‬‬
‫فرض کنید در یک رقابت در بازار سرمایه‪ ۰ ،‬شرکت ‪ A‬و ‪ B‬و ‪ C‬حضور داشته باشند‪ A .‬و ‪ B‬دو استراتژی برای اِعمال سیاستهایشان‬
‫و ‪ ۰ C‬استراتژی دارند‪ ،‬فرض کنید جدول ‪ payoff‬برای آنها بهصورت زیر است‪.‬‬
‫سودها‬
‫استراتژی‬
‫‪A1-B1-C1‬‬
‫‪A1-B1-C2‬‬
‫‪A1-B1-C3‬‬
‫‪A1-B2-C1‬‬
‫‪A1-B2-C2‬‬
‫‪A1-B2-C3‬‬
‫‪A2-B1-C1‬‬
‫‪A2-B1-C2‬‬
‫‪A2-B1-C3‬‬
‫‪A2-B2-C1‬‬
‫‪A2-B2-C2‬‬
‫‪A2-B2-C3‬‬
‫‪A‬‬
‫‪B‬‬
‫‪C‬‬
‫‪13‬‬
‫‪4‬‬
‫‪8‬‬
‫‪0‬‬
‫‪3‬‬
‫‪12‬‬
‫‪-4‬‬
‫‪-2‬‬
‫‪3‬‬
‫‪1‬‬
‫‪5‬‬
‫‪7‬‬
‫‪1‬‬
‫‪2‬‬
‫‪5‬‬
‫‪-2‬‬
‫‪-1‬‬
‫‪3‬‬
‫‪2‬‬
‫‪0‬‬
‫‪-2‬‬
‫‪-1‬‬
‫‪6‬‬
‫‪2‬‬
‫‪-3‬‬
‫‪-6‬‬
‫‪-2‬‬
‫‪1‬‬
‫‪4‬‬
‫‪9‬‬
‫‪0‬‬
‫‪-3‬‬
‫‪12‬‬
‫‪2‬‬
‫‪6‬‬
‫‪1‬‬
‫فرض کنید ‪ 8‬بار این ‪ ۰‬شرکت در اینمورد تصمیم گرفتهاند‪ payoff ،‬را برای آنها شبیهسازی کنید‪ .‬شرکتها در هر بار به صورت‬
‫تصادفی از یک توزیع مشخص استراتژی بعدی خود را انتخاب میکنند‪ .‬توزیع احتمال برای انتخاب استراتژیهای مختلف بدین شرح‬
‫است‪:‬‬
‫‪2‬‬
‫‪3‬‬
‫= )‪𝑃(𝐴2‬‬
‫‪,‬‬
‫‪1‬‬
‫‪3‬‬
‫= )‪𝑃(𝐴1‬‬
‫‪1‬‬
‫‪2‬‬
‫= )‪𝑃(𝐵2‬‬
‫‪,‬‬
‫‪1‬‬
‫‪2‬‬
‫= )‪𝑃(𝐵1‬‬
‫‪1‬‬
‫‪3‬‬
‫توجه داشته باشید که استراتژیها نیز مستقلاند‪.‬‬
‫= )‪𝑃(𝐶1) = 𝑃(𝐶2) = 𝑃(𝐶3‬‬
‫سوال ‪)5‬‬
‫از آدرس [‪ ]۱‬فایل فشردهای حاوی فایلهای پیادهسازی مثالهای فصل ‪ 2‬در ‪ Excel‬را دانلود کنید‪ .‬مثال ‪ 2.3‬با نام‬
‫«‪ »SingleServer‬در صفحه ‪ One Trial‬یک صف تک سروری را شبیهسازی میکند که در آن زمان سرویس و زمان بین آمدنها‬
‫قابل تنظیم است‪ .‬خروجی این شبیهسازی یک جدول به شکل زیر است که مثالً بیان میکند ‪ ۶2‬مشتری زمانی را در صف نبودهاند‬
‫و ‪ 2۱‬مشتری بین ‪ ۱‬تا ‪ 2‬واحد زمانی در صف بودهاند و همین طور الی آخر‪.‬‬
‫‪ .۱‬سعی کنید شبیهسازی سؤال ‪ ۰‬را در این محیط انجام دهید ‪ .‬بیان کنید مقادیر جدول سرویس و بین آمدن را برابر چه‬
‫مقداری تعیین میکنید؟ جدولی مانند جدول زیر را برای سؤال ‪ ۰‬تولید کنید و خروجیهای خود را با خروجیهای فایل‬
‫اکسل مقایسه کنید‪ .‬جدول تولید شده به وسیله فایل اکسل را در برگه پاسخ خود بنویسید‪.‬‬
‫‪( .2‬بدون نیاز به ارسال جواب) قطعه کدی بنویسید و شبیهسازی چنین سیستمی را به صورت مبتنی بر رخداد تکرار کنید‪.‬‬
‫خروجیهای خود را با خروجیهای فایل اکسل مقایسه کنید تا از صحت پیادهسازی خود اطمینان حاصل کنید‪ .‬پیادهسازی‬
‫این سؤال در انجام پروژههای بعدی به شما کمک خواهد کرد‪.‬‬
‫‪Resources:‬‬
‫‪[1] http://bcnn.net/source/Chap2Excel5ed.zip‬‬
‫موفق باشید ‪‬‬