Modeling and simulation of information systems

advertisement
steps in a simulation study
Tr.Hadeel@hotmail.com
Lec9
steps in a simulation study
Tr.Hadeel@hotmail.com
‫‪steps in a simulation study‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫خطوات دراسة المحاكاة ‪:steps in a simulation study‬‬
‫‪ )1‬صياغة المشكلة ‪: problem formulation‬‬
‫‪ ‬كل دراسة يجب أن تبدأ برؤية وصياغة المشكلة وإذا كانت هذه الصياغة تُعطى بواسطة‬
‫صانعي القرار أو الذين لديهم المشكلة يجب على محلل النظام أن يتأكد من أن المشكلة قد‬
‫وصفت بوضوح وفهم تام‪ ،‬وإذا كانت المشكلة قد وصفت بواسطة محلل النظام من الضروري‬
‫أن يفهم صانعي القرار ويوافقوا على هذه الصياغة‪.‬‬
‫‪ )2‬وضع األهداف وخطة المشروع ‪: setting of objective and overall project plan‬‬
‫‪ ‬األهداف تتضمن وتحتوي األسئلة التي يجب أن تجيب عليها المحاكاة‪ .‬وفي هذه المرحلة يكون‬
‫التحديد ما إذا كانت المحاكاة طريقة مناسبة لصياغة المشكلة وتحديد األهداف‪ .‬وإذا قررنا أن‬
‫المحاكاة مناسبة‪ ،‬يجب أن تحتوي خطة المشروع على بيانات بالنظم البديلة وطرق تقييم الكفاءة‬
‫لتلك البدائل ويجب أن تحتوي على خطط لدراسة عدد األشخاص المستلزمين لتنفيذ الخطة‬
‫والتحقق من كفاءة الدراسة والمدة الزمنية (عدد األيام) إلنجاز كل خطوة في العمل مع النتائج‬
‫المتوقعة في نهاية كل مرحلة‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪steps in a simulation study‬‬
‫‪‬‬
‫‪‬‬
‫‪ )3‬مفهوم النموذج ‪: Model Conceptualization‬‬
‫‪ ‬بناء نموذج للنظام هو فن أكثر من أي شئ آخر‪ .‬بالرغم من أنه ليس باإلمكان أن نُجهز‬
‫مجموعة من األوامر تقود لبناء نماذج مناسبة في كل الحاالت‪ .‬ولكن هنالك بعض اإلرشادات‬
‫التي يجب أن تُتبع‪ .‬وفن النمذجة هو المقدرة على تجريد االفتراضات األساسية التي توظف‬
‫النظام ومن ثم توسيع وتطوير وزخرفة النموذج حتى نحصل على النتائج التقديرية المناسبة‪.‬‬
‫ولذلك من األفضل البداية بنموذج بسيط ومن ثم إضافة بعض التعقيدات تدريجيا‪.‬‬
‫‪ )4‬جمع البيانات ‪: data collection‬‬
‫‪ ‬هنالك عالقة بين بناء النموذج وجمع بيانات المدخالت التي نحتاج إليها و إضافة أي تعقيدات‬
‫في صفات النموذج يمكن أن يؤدي إلي تغيير عناصر بيانات المدخالت‪.‬‬
‫‪ ‬من األفضل أن نبدأ بجمع البيانات مع الخطوات األولى لبناء النموذج ألن جمع البيانات يحتاج‬
‫إلى وقت كبير‪.‬‬
‫‪ ‬في كثير من األحيان تُحدد األهداف من الدراسة نوعية البيانات التي تُجمع‪ .‬مثال في حالة دراسة‬
‫نظام البنك ‪ ،‬إذا كان الهدف من الدراسة دراسة مدة اإلنتظار في صف الخدمة لماكينات‬
‫الصرف اآللي ‪،‬نوعية البيانات تكون زمن وصول العمالء وزمن خدمة آلة الصرف وزمن‬
‫اإلنتظار تحت شروط متغيرة‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪steps in a simulation study‬‬
‫‪‬‬
‫‪‬‬
‫‪ )5‬ترجمة النموذج ‪: model translation‬‬
‫‪ ‬ألن عملية تحويل النظم الحقيقة إلي نماذج تحتاج إلى تخزين معلومات لذلك يجب أن يُترجم‬
‫النموذج ويدخل في شكل حاسوبي ونستخدم التسمية (برنامج ‪ )program‬حتى نحصل على‬
‫صيغة مناسبة للترجمة‪.‬‬
‫‪ ‬الشخص المسئول عن النمذجة )‪ (modeler‬يجب أن يقرر ما إذا كانت برمجة النموذج تتم‬
‫بلغات النمذجة العامة مثل ‪ ( general purpose simulation software )GPSS‬أو‬
‫استخدام برامج نمذجة خاصة ‪. special purpose software‬‬
‫‪ )6‬التحقق من الصحة ?‪: Verified‬‬
‫‪ ‬التحقق من الصحة يُقصد بها التحقق من صحة برامج الحاسب المجهز لمحاكاة النموذج‬
‫واإلجابة على السؤال هل البرنامج يعمل بكفاءة ؟‪.‬‬
‫‪ ‬مع النماذج المعقدة يكون من الصعب أو المستحيل ترجمة النموذج إلى برامج بنجاح من غير‬
‫خبرة جيدة في العثور على األخطاء ‪. debugging‬‬
‫‪ ‬إذا كانت عناصر المدخالت والتمثيل المنطقي للنموذج صحيحين في الحاسوب فبالتالي التحقق‬
‫من الصحة يكون قد اكتمل‪ .‬وفي معظم األحيان يُستخدم اإلحساس العام (‪)common sense‬‬
‫إلنجاز هذه الخطوة‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪steps in a simulation study‬‬
‫‪‬‬
‫‪‬‬
‫‪ )7‬التصديق الرسمي ?‪: validated‬‬
‫‪ ‬الشرعية أو اإلثبات هي تحديد ما إذا كان هذا النموذج تمثيل دقيق للنظام الحقيقي‬
‫‪ ‬والشرعية يُتوصل إليها دائما من خالل ‪:‬‬
‫‪ .1‬فحص النموذج‬
‫‪ .2‬المعالجة البديلة لمقارنة النموذج مع النظام الحقيقي‪.‬‬
‫‪ .3‬استخدام التعارض بين البدائل لتطوير النموذج‪.‬‬
‫‪ ‬ونكرر هذه المعالجة حتى نحصل على دقة مقبولة للنموذج‪.‬‬
‫‪ )8‬التصميم التجريبي ‪: experimental Design‬‬
‫‪ ‬وفي هذه الخطوة يتم تحديد البدائل التي يجب أن تُحول باستخدام المحاكاة (تحاكي)‪ .‬وهذا‬
‫التحديد يتعلق بما إذا كانت هذه البدائل يمكن أن تحقق التشغيل وقد اكتملت وتم تحليلها ‪.‬‬
‫‪ ‬ولكل تصميم نظام محاكي القرارات التي نحتاجها وهي‪ :‬لتحديد مدة اإلنشاء ومدة تنفيذ المحاكاة‬
‫وعدد النسخ ‪ replication‬إلنجاز التنفيذ‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪steps in a simulation study‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪ )9‬نتائج التنفيذ والتحليل ‪: Production runs and analysis‬‬
‫صمم له نموذج‬
‫‪ ‬تستخدم نتائج التنفيذ والتحليل لتحديد وتعيين مقياس كفاءة وتقييم النظام الذي ُ‬
‫المحاكاة‪.‬‬
‫‪ )10‬تشغيل أكثر ?‪:More Runs‬‬
‫‪ ‬وهذه الخطوة ُمؤسسة على تحليل التشغيل الذي اكتمل ومحلل النظام يحدد إذا كان هنالك احتياج‬
‫إلى تنفيذ أكثر للوصول لكفاءة تشغيل أكثر‪.‬‬
‫‪ )11‬التوثيق والتقرير ‪: documentation and reporting‬‬
‫‪ ‬هنالك نوعان من التوثيق هما توثيق البرنامج وتوثيق التطور في البرنامج ‪ .‬ويكون التوثيق‬
‫بوصف دقيق للنظام وكيفية استخدامه حتى يستطيع كل المتعاملين معه التعمامل معه بسهولة‪.‬‬
‫‪ ‬وتتضمن هذه الخطوة كتابة تقرير عن النظام ككل‪.‬‬
‫‪ )12‬التطبيق ‪: implementation‬‬
‫‪ ‬نجاح خطوة التطبيق تعتمد على نجاح الخطوات السابقة‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪General Principle to Concept in‬‬
‫‪Discrete-Event Simulation‬‬
‫‪‬‬
‫‪Concepts in discrete-event simulation‬‬
‫‪‬‬
‫مفاهیم في محاكاة النظم المتقطعة ‪:‬‬
‫‪ system )1‬النظالم ‪ :‬مجموعة من الكائنات ترتبط مع بعضها البعض بصورة ما لتحقيق عدد من‬
‫األهداف‪.‬‬
‫‪ model )2‬النموذج ‪ :‬هو وصف مبسط للنظام ‪.‬‬
‫‪ system state )3‬حالة النظام ‪ :‬هي مجموعة من المتغيرات الضرورية لوصف النظام في أي‬
‫وقت بالنسبة ألهداف النظام‪.‬‬
‫‪ Entity )4‬الكيان ‪ :‬أهم كائن في النظام‪.‬‬
‫‪ Attribute )5‬الصفات ‪ :‬خصائص الكيان ومكوناته‪.‬‬
‫‪ List )6‬القائمة ‪ :‬مجموعة من الكيانات مرتبة بطريقة منطقية‪.‬‬
‫‪ Event )7‬الحدث ‪ :‬حالة تُحدث تغيير فوري يغير حالة النظام‪.‬‬
‫‪ Event Notice )8‬مالحظة الحدث ‪ :‬سجل للحدث ويحتوي عادة على اسم الحدث وفترته الزمنية‬
‫(‪.)event type, event time‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪General Principle to Concept in‬‬
‫‪Discrete-Event Simulation‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪ Event List )9‬قائمة األحداث ‪ :‬وهي قائمة باألحداث المستقبلية واألحداث الوشيكة الحدوث‬
‫وترتب على حسب وقوعها وتكتب في شكل قائمة تسمى قائمة األحداث المستقبلية ‪Future‬‬
‫)‪. Event List (FEL‬‬
‫‪ Activity )10‬النشاط ‪ :‬الفترة الزمنية النجاز عمل معين‪ .‬وهي مدة من الزمن محددة الطول‬
‫وتعرف منذ البداية مثل زمن الوصول وزمن الخدمة‪.‬‬
‫‪ Delay )11‬التأخير ‪ :‬فترة غير محددة الطول‪.‬‬
‫‪ Clock )12‬الساعة ‪ :‬متغير يمثل زمن المحاكاة‪.‬‬
‫‪ : Note‬تستخدم بعض حزم المحاكاة مصطلحات مختلفة لنفس المفاهيم السابقة‪ .‬مثال القائمة ‪List‬‬
‫تسمى في بعض الحزم مجموعة ‪ Set‬أو صف ‪ Queue‬أو سلسلة ‪. chain‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪General Principle to Concept in‬‬
‫‪Discrete-Event Simulation‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫ترتيب الكيانات في قائمة يُرتب دائما بواسطة قاعدة مثل )‪ First In First Out (FIFO‬أو ‪Last‬‬
‫)‪ ، In First Out (LIFO‬أو ترتب بصفة من الكيان مثل األولوية أو التاريخ‪.‬‬
‫قائمة األحداث المستقبلية ‪ FEL‬تُرتب دائما على حسب زمن الحدث ‪ event time‬المسجل في‬
‫مالحظة الحدث ‪. Event Notice‬‬
‫النشاط ‪ Activity‬يمثل زمن الخدمة ‪ ،‬زمن الوصول أو أي معالجة زمنية أخرى لها مده زمنية‬
‫معرفة بواسطة واضع النموذج ‪ . modeler‬ومدة النشاط يمكن أن تحدد بعدة طرق‪:‬‬
‫‪.1‬‬
‫‪.2‬‬
‫‪.3‬‬
‫يمكن أن تكون محددة ‪ : deterministic‬مثال تكون دائما ‪ ٥‬دقائق‪.‬‬
‫احصائية ‪ : statistical‬مثال رقم عشوائي من ‪ chain‬باحتمالية متساوية‪.‬‬
‫يكون دالة تعتمد على متغيرات النظام (أو‪/‬و) صفات الكيان ‪،‬مثال‪ :‬زمن التحميل لسفينة كدالة لحمولة‬
‫السفينة ومعدل التحميل كطن في الساعة‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪General Principle to Concept in‬‬
‫‪Discrete-Event Simulation‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫التأخير ‪ delay‬يسمى في بعض األحيان باالنتظار الشرطي ‪، conditional wait‬والنشاط يسمى‬
‫االنتظار غير الشرطي ‪. unconditional wait‬‬
‫اكتمال النشاط ‪ activity‬هو حدث ‪ event‬وغالبا ً يسمى الحدث اإلبتدائي ‪. primary event‬‬
‫األنظمة التي تُعالج هنا هي أنظمة متحركة وهذا يعني أنها تتغير خالل فترة زمنية لذلك حالة‬
‫النظام‪ ،‬وصفات الكيان وعدد من الكيانات النشطة والنشاطات والتأخير تتغير جميعها خالل فترة‬
‫من الزمن والزمن نفسه يمثل بواسطة متغير يسمى ‪. clock‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪Lec10‬‬
‫‪Computer Implementation Of Simulation‬‬
‫‪‬‬
‫‪Computer Implementation Of Simulation‬‬
‫‪‬‬
‫تنفیذ المحاكاة بالحاسوب ‪:‬‬
‫الصعوبة المصاحبة لتنفيذ نماذج المحاكاة بالحاسوب باستخدام لغات برمجة ذات أغراض عامة‬
‫مثل البيسك والباسكال أدت إلى إعداد العديد من لغات محاكاة ذات أغراض خاصة وتكون هذه‬
‫اللغات في بعض األحيان ذات غرض خاص بدرجة ال تكون مناسبة لمحاكاة نظم أخرى مثل ‪:‬‬
‫‪ dynamo‬لمحاكاة النظم المستمرة ‪ GPSS‬لمحاكاة النظم المتقطعة ‪.‬‬
‫‪‬‬
‫الغرض األساسي لكل لغات البرمجة المتخصصة هو جعل عمل النماذج والبرمجة لنوع معين من‬
‫المشاكل أبسط ما يكون وأقل تعقيدا في التنفيذ طبقا لذلك يجب أن توفر لغة المحاكاة لألغراض‬
‫الخاصة التالية ‪:‬‬
‫هياكل لعمل نماذج لمفردات النظام مثل صرافي البنك‪.‬‬
‫خواص تلك المفردات مثل أوقات االنتظار‪.‬‬
‫دالة لوصف تطور النظام مع الزمن‪.‬‬
‫ويجب أن يكون المستفيد قادر على التحكم في تطور المحاكاة عبر الزمن‪.‬‬
‫‪‬‬
‫‪.1‬‬
‫‪.2‬‬
‫‪.3‬‬
‫‪‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪Computer Implementation Of Simulation‬‬
‫‪‬‬
‫برامج المحاكاة ‪: Simulation Software‬‬
‫‪‬‬
‫يمكن تقسيم البرامج المستخدمة في تطور المحاكاة إلى ثالث مجموعات ‪:‬‬
‫‪ General Purpose Programming Languages‬لغات البرمجة ذات االستخدام العام ‪:‬‬
‫تمتاز بالمرونة والبساطة وهي مناسبة لدراسة أساسيات وتقنيات محاكاة األنظمة المتقطعة مثل ‪:‬‬
‫‪ Fortran‬و ‪ C‬و ‪ C++‬و ‪. Java‬‬
‫لغات برمجة المحاكاة مثل ‪ GPSS/II‬و ‪. SIMAN‬‬
‫‪ Simulation Environment‬بيئات المحاكاة أو مايعرف بلغات المحاكاة ‪simulation‬‬
‫‪ languages‬وتمتاز بأنها جيدة في سرعة بناء النماذج كما أنها تحوي ميزات مبنية داخلها عالوة‬
‫على ذلك تزودنا بالرسومات والصور المتحركة وكمثال لها ‪. Arena, Automod :‬‬
‫‪(1‬‬
‫‪(2‬‬
‫‪(3‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
Computer Implementation Of Simulation
: History of Simulation Software ‫تاریخ برامج المحاكاة‬

: ‫نجد أن تطور برامج المحاكاة مرت بست فترات‬
The Period of search (1955-60) ‫( فترة البحث‬1
The Advent (1961-65) ‫( فترة الميالد‬2
The Formative Period (1966-70) ‫( فترة التكوين‬3
The Expansion Period (1971-78) ‫( فترة التوسع‬4
The Period of Consolidation and Regeneration ‫( فترة التعزيز وإعادة البناء‬5
(1979-86)
The Period of Integrated Environment (1987) ‫( فترة البيئات المتكاملة‬6

Tr.Hadeel@hotmail.com
Computer Implementation Of Simulation
: selection simulation software ‫اختیار برامج المحاكاة‬

: ‫تختار برامج المحاكاة على حسب‬
: Model building feature ‫مميزات بناء نموذج المحاكاة‬
. input data analysis capability ‫ قابلية تحليل البيانات المدخلة‬.1
. graphical model building ‫ بناء النموذج التخطيطي‬.2
. conditional routing ‫ التوجيه الشرطي‬.3
. simulation programming ‫ برمجة المحاكاة‬.4
. syntax ‫ التعبير‬.5
. input flexibility ‫ مرونة المدخالت‬.6
. modeling conciseness ‫ تبسيط النموذج‬.7
. specialized components and templates ‫ المكونات والقوالب المتخصصة‬.8
. user-built objects ‫ الكائنات المبنية بواسطة المستخدم‬.9
interface with general programming language ‫ التداخل مع لغات البرمجة العامة‬.10
.

Tr.Hadeel@hotmail.com

Computer Implementation Of Simulation
: Runtime environment ‫بيئة وزمن التشغيل‬
. execution speed ‫ سرعة التنفيذ‬.1
. )‫ (عدد المتغيرات والعوامل‬model size ‫ حجم النموذج‬.2
. interactive debugger ‫ المصحح التفاعلي‬.3
. model status and statistic ‫ حالة وإحصائية النموذج‬.4
: Output features ‫مميزات ناتج المحاكاة‬
. optimization ‫ تحقيق األفضلية‬.1
. standardized report ‫ التقرير القياسي‬.2
. statistical report ‫ التحليل اإلحصائي‬.3
. business graphic ‫ العمل التخطيطي‬.4
. ‫ مثال من قاعدة بيانات‬file export ‫ استيراد الملف‬.5
Tr.Hadeel@hotmail.com


Computer Implementation Of Simulation
: Vendor support and product documentation ‫دعم البائع وتوثيق المنتج‬
. training ‫ التدريب‬.1
. documentation ‫ التوثيق‬.2
. help system ‫ نظام المساعدة‬.3
. tutorials ‫ الدروس والبحوث‬.4
. support ‫ الدعم‬.5
. upgrades, maintenance ‫ الترقية والصيانة‬.6
Tr.Hadeel@hotmail.com

Computer Implementation Of Simulation
: Animation features ‫مميزات الصور المتحركة‬
. type of animation ‫ أنواع الصور المتحركة‬.1
. import drawing and objects file ‫ استيراد ملفات الرسم والكائنات‬.2
. dimension ‫ األبعاد‬.3
. quality of motion ‫ نوعية الحركة‬.4
. libraries of common objects ‫ مكتبات الكائنات العامة‬.5
. display step ‫ خطوات العرض‬.6
. movement ‫ الحركة‬.7
. views ‫ المناظر‬.8
. selectable objects ‫ قابلية اختيار األجسام‬.9
Tr.Hadeel@hotmail.com

‫‪Lec11‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪Simulation Example‬‬
‫تتم دراسة هذه األمثلة الستنباط جدول محاكاة ‪ simulation table‬ويمكن تكوين هذا الجدول يدويا‬
‫أو باستخدام الحاسوب‪.‬‬
‫وجدول المحاكاة ‪: simulation table‬‬
‫هو طريقة منظمة لتعقب حالة النظام خالل فترة زمنية محددة‪.‬‬
‫توفر هذه األمثلة نظرة كافية لمنهج محاكاة النظم المتقطعة وتستخدم االحصاء الوصفي‬
‫‪ descriptive Statistics‬لتأكيد أداء النظام‪.‬‬
‫‪ ‬وهناك ثالث خطوات نتبعها مع كل نظم المحاكاة ‪:‬‬
‫‪ )1‬تحديد شكل وومواصفات كل مدخالت المحاكاة ويمكن أحيانا لتلك المدخالت أن تنتج باستخدام‬
‫التوزيعات االحتمالية إذا كان النظام مستمر أو متقطع‪.‬‬
‫‪ )2‬بناء جدول المحاكاة ويختلف جدول المحاكاة من نظام آلخر ويتطور حسب نوع المشكلة‪.‬‬
‫‪‬‬
‫الجدول التالي (‪ )Tablel1‬يوضح جدول محاكاة ‪:‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪Simulation Example‬‬
‫(‪)Tablel1:Simulation Table‬‬
‫‪‬‬
‫في هذا المثال نجد عدد المدخالت هو ‪ P‬مدخل ‪ 𝑋𝑖𝑗 , j =1,2,...,p‬واستجابة واحدة هي 𝑖𝑌 لكل‬
‫‪ i=1,2,...,N‬وننشيء الجدول بعينة بيانات لتكرار ‪. i‬‬
‫‪ )3‬لكل تكرار ‪ i‬يجب انتاج قيمة لكل مدخل ‪ P‬وحساب الدالة وحساب قيمة االستجابة 𝑖𝑌‬
‫ويمكن استخدام التوزيعات االحتمالية لحساب قيم المدخالت لكل خطوة وتعتمد االستجابة الحالية‬
‫على المدخالت مع واحدة أو أكثر من االستجابات السابقة‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪Simulation Example‬‬
‫‪‬‬
‫محاكاة أنظمة الصفوف ‪: Simulation of Queuing Systems‬‬
‫‪‬‬
‫يوصف نظام الصفوف بعدد العناصر المكونه للنظام وطبيعة وصول تلك العناصر وميكانيكية‬
‫الخدمة وسعة النظام وكيفية ضبط الصف‪.‬‬
‫والشكل التالي يوضح صف بسيط مكون من قناة خدمة واحدة ‪:‬‬
‫‪‬‬
‫‪Server‬‬
‫‪Waiting line‬‬
‫‪Queuing system‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪Calling population‬‬
‫‪Simulation Example‬‬
‫‪‬‬
‫مميزات الصف السابق ‪:‬‬
‫‪.1‬‬
‫‪.2‬‬
‫‪.3‬‬
‫‪.4‬‬
‫‪.5‬‬
‫‪‬‬
‫‪‬‬
‫عدد العناصر غير محدد‪ ،‬وهذا يعني إذا غادر عنصر وانضم إلى صف االنتظار أو انجاز الخدمة فهذا ال‬
‫يغير وال يؤثر في معدل الوصول للعناصر األخرى التي تحتاج للخدمة‪.‬‬
‫الوصول للخدمة يتكرر مرة واحدة خالل فترة زمنية محددة في شكل عشوائي‪ ،‬ألن العناصر في صف‬
‫االنتظار وفي آخر األمر سوف تنجز لهم الخدمة‪.‬‬
‫أوقات الوصول لبعض العناصر لها طول عشوائي حسب التوزيع االحتمالي الذي ال يتغير خالل فترة زمنية‪.‬‬
‫سعة النظام ليس لها مدى محدد وهذا يعني أن أي عدد من العناصر لها المقدرة على أن تنتظر في الصف‪.‬‬
‫العناصر التي أدت الخدمة مرتبة على حسب وصول ‪ FIFO‬باستخدام صف خدمة ذو قناة واحدة للخدمة‬
‫‪. single server‬‬
‫نعرف أوقات الوصول والخدمات بواسطة توزيع الزمن بين أوقات الوصول وأوقات الخدمة‬
‫بالتوالي‪.‬‬
‫لكل صف بسيط ذو قناة خدمة واحدة معدل زمن الوصول يجب أن يكون أقل من معدل زمن‬
‫الخدمة في حالة نمو خط االنتظار من غير حد‪ .‬ففي مثل هذه الحالة نسمي الصف صف انفجاري‬
‫او غير مستقر‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
Simulation Example
‫الشكل التالي يوضح إذا كان العنصر قد أكمل الخدمة أم ال مع مالحظة أن هنالك حالتان فقط لمقدم‬
: idle ‫ أو عاطل‬busy ‫الخدمة إما مشغول‬
Departure
event
Begin server
idle time
No
Another
unit waiting
?
Yes
Remove the waiting unit
from the queue
Begin servicing
the unit
Service-just-completed flow diagram
Tr.Hadeel@hotmail.com

Simulation Example
: ‫يتكرر حدث الوصول عند دخول عنصر للنظام والشكل التالي يوضح حدث الوصول‬
Arrival
event
No
Server
busy ?
Yes
Unit enters
queue for
service
Unit enters
service
Unit-entering-system flow diagram
Tr.Hadeel@hotmail.com

‫‪Simulation Example‬‬
‫‪‬‬
‫العنصر قد يجد مقدم الخدمة ‪ Server‬إما مشغول أو عاطل لذلك فإن العنصر قد يبدأ بالخدمة‬
‫مباشرة إذا كان مقدم الخدمة عاطل ‪ idle‬أو قد يدخل إلى صف الخدمة (اإلنتظار) إذا كان مقدم‬
‫الخدمة مشغول ‪ . busy‬حسب حالة مقدم الخدمة ومن المستحيل أن يكون مقدم الخدمة عاطل‬
‫وصف الخدمة غير فارغ (يوجد عنصر واحد على األقل في صف الخدمة) كما في الشكل التالي‪:‬‬
‫‪-Server Status-‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
‫‪Simulation Example‬‬
‫‪‬‬
‫بعد انتهاء الخدمة يمكن لمقدم الخدمة أن يكون عاطل أو يبقى مشغول مع العنصر التالي ومن‬
‫المستحيل أن يصبح مقدم الخدمة مشغول إذا كان صف الخدمة خالي‪ ،‬ومن المستحيل أن يكون مقدم‬
‫الخدمة عاطل بعد انتهاء الخدمة عندما يكون الصف غير خالي كما في الشكل التالي ‪:‬‬
‫‪-Server Outcomes-‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
Simulation Example





Lec12
Example 1: Single-Channel Queue:
If we have a small Super Market that has one counter, customers can arrive
at a random time between 1 to 8 minutes with equal probability as shown
in table 1. The change of service time ranges between 1 to 6 minutes with
a different probability as shown in table 2.
The start and end of service are given as shown in table 3.
Required:
Make a simulation for the system using 20 customers as a sample.
:‫ صف خدمة ذو قناة واحدة‬: 1‫مثال‬
‫ يصل الزبائن لهذه المحطة في‬، ‫إذا كان لدينا محل سوبر ماركت صغير ولدية محطة حساب واحدة‬
‫ دقائق مع تساوي االحتمالية ألي زمن حدوث كما في‬8 ‫ إلى‬1 ‫زمن عشوائي يترواح ما بين‬
‫ دقائق مع احتمالية حدوث‬6-1 ‫ وكان تغير زمن اداء الخدمة يترواح ما بين‬. 1 ‫جدول رقم‬
. 3 ‫ مع العلم أن زمن بداية ونهاية الخدمة معطاة في جدول‬. 2 ‫موضحة كما في جدول‬
.‫ زبون كعينه‬٢٠ ‫ دراسة وفهم النظام بالمحاكاة باستخدام‬: ‫المطلوب‬
Tr.Hadeel@hotmail.com



Simulation Example
Time between
Arrivals
(Minutes)
Probability
1
0.125
2
0.125
3
0.125
4
0.125
5
0.125
6
0.125
7
0.125
8
0.125
Service Time
(Minutes)
Probability
1
0.10
2
0. 20
3
0.30
4
0. 25
5
0.10
6
0.05
Table (2)
Table (1)
Tr.Hadeel@hotmail.com
Simulation Example
Customer
Start of
service
End of
service
Customer
Start of
service
End of
service
1
8
13
11
52
57
2
13
18
12
57
61
3
18
22
13
61
62
4
22
24
14
65
69
5
28
29
15
71
74
6
29
34
16
75
78
7
35
38
17
82
86
8
40
43
18
86
89
9
43
48
19
91
96
10
48
52
20
97
99
Table (3)
Tr.Hadeel@hotmail.com
Simulation Example

Solution-Ex1:
Time between
Arrivals
(Minutes)
Probability
Cumulative
Probability
Random Numbers
Assignment
1
0.125
0.125
0.0000 __ 0.1250
2
0.125
0.250
0.1251 __ 0.2500
3
0.125
0.375
0.2501 __ 0.3750
4
0.125
0.500
0.3751 __ 0.5000
5
0.125
0.625
0.5001 __ 0.6250
6
0.125
0.750
0.6251 __ 0.7500
7
0.125
0.875
0.7501 __ 0.8750
8
0.125
1.000
0.8751 __ 1.0000
Tr.Hadeel@hotmail.com


Table (1):
Distribution of Time Between Arrivals
.‫) من التوزيع االحتمالي نكون التوزيع التراكمي‬1
.‫) من التوزيع التراكمي نوجد فترات األرقام العشوائية التابعة لكل قيمة يأخذها المتغير العشوائي‬2
Simulation Example
Service Time
(Minutes)
Probability
Cumulative
Probability
Random Numbers
Assignment
1
0.10
0.10
0.000 __ 0.100
2
0. 20
0.30
0.101 __ 0.300
3
0.30
0.60
0.301 __ 0.600
4
0. 25
0.85
0.601 __ 0.850
5
0.10
0.95
0.851 __ 0.950
6
0.05
1.00
0.951 __ 1.000
Table (2)
Distribution of Service Time
Tr.Hadeel@hotmail.com
‫‪Simulation Example‬‬
‫‪‬‬
‫‪‬‬
‫‪ )3‬نولد رقم عشوائي‪.‬‬
‫‪ )4‬ننظر إلى الفترة التي يقع فيها الرقم العشوائي لتحديد زمن الوصول وزمن الخدمة لكل زبون‬
‫حسب الرقم العشوائي المختار ‪.‬‬
‫‪Tr.Hadeel@hotmail.com‬‬
Simulation Example
Random Time between
Customer Number
Arrivals
Generated
(Minutes)
Random Time between
Customer Number
Arrivals
Generated
(Minutes)
1
0.8879
8
11
0.4027
4
2
0. 4065
4
12
0. 2708
3
3
0.0799
1
13
0.9065
8
4
0. 8029
7
14
0. 6057
5
5
0.9915
8
15
0.7184
6
6
0.0381
1
16
0.4033
4
7
0.7456
6
17
0.8510
7
8
0.5014
5
18
0.3966
4
9
0.1786
2
19
0.6224
5
10
0.2481
2
20
0.7386
6
Table (3): Time between Arrivals determination
Tr.Hadeel@hotmail.com
Simulation Example
Random
Customer Number
Generated
Service Time
(Minutes)
Random
Customer Number
Generated
Service Time
(Minutes)
1
0.869
5
11
0.950
5
2
0. 878
5
12
0. 627
4
3
0.623
4
13
0.087
1
4
0. 251
2
14
0. 628
4
5
0.074
1
15
0.354
3
6
0.879
5
16
0.366
3
7
0.440
3
17
0.763
4
8
0.496
3
18
0.598
3
9
0.878
5
19
0.902
5
10
0.665
4
20
0.300
2
Table (4): Service Time Generated
Tr.Hadeel@hotmail.com
Simulation Example
: ‫) بناء جدول المحاكاة‬5
Tr.Hadeel@hotmail.com

Simulation Example
Tr.Hadeel@hotmail.com
Simulation Example
: ‫) الحسابات واستخالص النتائج‬6
1) The average waiting time for a customer
average waiting time(minutes)=total time customers wait in queue
(minutes)/total numbers of customers
23/20=1.15 minutes
‫عدد الزبائن‬/‫متوسط زمن االنتظار=زمن االنتظار‬
2) The probability that a customer has to wait in the queue
Probability (wait)=number of customers who wait/total numbers of
customers
8/20=0.4
‫عدد الزبائن‬/‫احتمال االنتظار في الطابور=عدد الزبائن الذين انتظروا‬
Tr.Hadeel@hotmail.com

Simulation Example
3) The fraction of idle time of the server
Probability of idle Server(minutes)= 1-(total idle time of server/total run
time of simulation)
1-(20/91)=0.78 = 78%
)‫الزمن الكلي‬/‫(زمن الفراغ‬-1=‫فعالية الخادم‬
91=20+71=‫زمن الفراغ‬+‫*الزمن الكلي=زمن الخدمة‬
4) The average service time
Average service time (minutes)=total service time (minutes)/total number
of customers
71/20=3.55 minutes
‫عدد الزبائن‬/‫متوسط زمن الخدمة=مجموع أزمنة الخدمة‬
Tr.Hadeel@hotmail.com
Simulation Example
5) The average time between arrivals
average time between arrivals=total Interarrival time/total numbers of
customers
96/20=4.8 minutes
‫عدد الزبائن‬/‫متوسط أزمنة مابين الوصول=مجموع أزمنة مابين الوصول‬
6) The average waiting time of those who wait
average waiting time of those who wait=total time customers wait in queue
(minutes)/total numbers of customers
23/8=2.875 minutes
‫عدد الزبائن الذين انتظروا‬/‫متوسط زمن االنتظار لمن انتظروا=زمن االنتظار‬
Tr.Hadeel@hotmail.com
Simulation Example
7) The average time a customer spends in the system
average time a customer spends in the system=total time customers spend
in the system(minutes)/total number of customers
94/20=4.7 minutes
‫عدد الزبائن‬/‫متوسط زمن المكوث في النظام=زمن المكوث في النظام‬
Tr.Hadeel@hotmail.com
Simulation Example
Lec13

Example 2: Double-Channel Queue:

If we have a quick service restaurant for cars , requests are received by two waiters.
Cars arrive to the restaurant through the distribution of the time between arrivals
on Table 1.

The distribution of service times for waiter1 and waiter2 as shown in Table 2,3.

The start and end of service for waiter1 and waiter2 are given as shown in Table
4,5.

Required:

Make a simulation for the system to know their performance.
:‫ صف خدمة ألكثر من قناة‬: 2‫مثال‬

‫مطعم خدمة سريعة للسيارات يقوم على تلبية الطلبات نادلين ألخذ وتوصيل الطلب للسيارات الواصلة للمطعم‬
. 1 ‫تصل السيارات إلى المطعم حسب توزيع أزمنة مابين الوصول الموضحة في جدول‬،

. 2،3 ‫توزيع أزمنة الخدمة لكل من النادل األول والثاني كما هي موضحة في جدول‬

. 4،5 ‫زمن بداية ونهاية الخدمة للنادل األول والثاني معطاة في جدول‬

.‫ إجراء محاكاة النظام لمعرفة أدائه‬: ‫المطلوب‬

Tr.Hadeel@hotmail.com
Simulation Example
Time between
Arrivals
(Minutes)
Probability
Cumulative
Probability
Random Numbers
Assignment
1
0.25
0.25
0.000 __ 0.250
2
0.40
0.65
0.251 __ 0.650
3
0.20
0.85
0.651 __ 0.850
4
0.15
1.00
0.851 __ 1.000
Table (1):
Distribution of Time Between Arrivals
Tr.Hadeel@hotmail.com
Simulation Example
Service Time
(Minutes)
Probability
Cumulative
Probability
Random Numbers
Assignment
2
0.30
0.30
0.000 __ 0.300
3
0. 28
0.58
0.301 __ 0.580
4
0.25
0.83
0.581 __ 0.830
5
1.00
0.831 __ 1.000
0. 17
Table (2) : Distribution of Service Time for waiter1
Service Time
(Minutes)
Probability
Cumulative
Probability
Random Numbers
Assignment
3
0.35
0.35
0.000 __ 0.350
4
0. 25
0.60
0.351 __ 0.600
5
0.20
0.80
0.601 __ 0.800
6
1.00
0.801 __ 1.000
0. 20
Table (3) : Distribution of Service Time for waiter2
Tr.Hadeel@hotmail.com
Tr.Hadeel@hotmail.com
Table (5): start and end of service for waiter2
Table (4): start and end of service for waiter1
Simulation Example
Simulation Example

Solution-Ex2:
waiter 1
waiter 2
Tr.Hadeel@hotmail.com
Simulation Example

Solution-Ex2:
Tr.Hadeel@hotmail.com
Simulation Example

Solution-Ex2:

Time in system = 72 minutes.
waiter 1
waiter 2
• The effectiveness of waiter1=61/72=0.847 • The effectiveness of waiter2=56/72=0.777
or 85%
or 78%
• Number waiter1 who served them=18 of
• Number waiter2 who served them=12 of
30 or 60% of customers.
30 or 40% of customers.
• Average service time=61/18=3.39 minutes • Average service time=56/12=4.67 minutes

Average waiting time of those who wait = 16/10 = 1.6 minutes.

Average time between arrivals = 69/30 = 2.3 minutes.

Probability (wait) = 10/30 = 0.33 minutes.

Average time a customer spends in the system = 72/30 = 2.4 minutes.
Tr.Hadeel@hotmail.com
‫‪Simulation Example‬‬
‫‪Solution-Ex2:‬‬
‫‪‬‬
‫‪‬‬
‫مدة المحاكاة ‪ 72‬دقيقة‪.‬‬
‫‪waiter 2‬‬
‫• فعاليته = ‪ 0.777 = 56/72‬أو ‪%78‬‬
‫• عدد الذين خدمهم = ‪ 12‬من ‪ 30‬أو ‪ %40‬من الزبائن‬
‫• متوسط زمن الخدمة = ‪ 4.67 = 56/12‬دقيقة‬
‫‪waiter 1‬‬
‫• فعاليته = ‪ 0.847 = 61/72‬أو ‪%85‬‬
‫• عدد الذين خدمهم = ‪ 18‬من ‪ 30‬أي ‪ %60‬من الزبائن‬
‫• متوسط زمن الخدمة = ‪ 3.39 = 61/18‬دقيقة‬
‫‪‬‬
‫متوسط زمن اإلنتظار لمن انتظروا فعال = ‪ 1.6 = 16/10‬دقيقة‬
‫‪‬‬
‫متوسط زمن مابين الوصول = ‪ 2.3 = 69/30‬دقيقة‬
‫‪‬‬
‫إحتمال أن الزبون ينتظر = ‪0.33 = 10/30‬‬
‫‪‬‬
‫متوسط زمن المكوث في النظام = ‪ 2.4 = 72/30‬دقيقة‬
‫‪Tr.Hadeel@hotmail.com‬‬
Download
Study collections