What is Simulation Continuous Simulation Discrete Simulation Object Oriented Simulation On Line Simulation References

Simulation

سیمولشیون

“Das ganze tschechische Volk ist eine Simulantenbande”

Jaroslav Hašek: The Good Soldier Švejk

What is Simulation Continuous Simulation Discrete Simulation Object Oriented Simulation On Line Simulation References

سیمولشیون کیا ہے  مسلسل سیمولشیون   ڈسکریٹ سیمولشیون  آبجیکٹ مہذب سیمولشیون   ان لائن سیمولشیون حوالہ جات

What is Simulation

سیمولشیون کیا ہے

At the most general level Simulation should be considered as a form of Cognition. (Cognition = action or process of acquiring knowledge.) There are three basic methods how to get an information (knowledge) of objective reality: Experiment, Analysis, Simulation. Let’s take one practical example to demonstrate the nature of these three methods. The system being investigated is a gas station with one attendant. The question is “what is the average time spent by a car in the gas station”. To get the answer we have three possibilities:

سب سے زیادہ عام طور پر سیمولشیون کو شناخت کے طور پر سمجھا جانا چاہئے. (شناحت = علم حاصل کرنے کے عمل.) بنیادی مقصد کے بارے میں معلومات (علم)  حاصل کرنے کے تین بنیادی طریقے ہیں: تجربہ، تجزیہ، سیمولشیون. چلو ان طریقوں کی نوعیت کا مظاہرہ کرنے کے لئے ایک عملی مثال ہے. ایک تحقیق کے ساتھ ایک گیس سٹیشن ہے. سوال یہ ہے کہ “گیس اسٹیشن میں ایک گاڑی کی طرف سے خرچ کردہ اوسط وقت کیا ہے”. جواب حاصل کرنے کے لئے ہمارے پ پاس تین امکانات ہیں:

Experiment: take stop watches and measure the time every car spends in the station. Count the cars, at the end sum all times and divide them by the number of cars.

تجربہ : سٹاپ واچ لیں اور ھر کار کا سٹیشن میں وقت مانپے۔ کار کی گنتی کریں آخر میں سب وقت کو کار کی مکمل تعداد سے تقسیم کریں۔

Analysis: use a formula of the Queueing Theory to compute the average time spent in the system directly. To use a formula, you will have to assume certain queueing model which means a considerable simplification of the real system and you will need some quantitative parameters (here arrival intensity – number of cars arriving per time unit and service intensity – number of cars served per time unit).

تجزیہ : براہ راست نظام میں خرچ کردہ اوسط وقت کا حساب کرنے کے لئے قطار بندی تھیوری کا ایک فارمولہ استعمال کریں . ایک فارمولہ استعمال کرنے کے لئے آپ کو کچھ قطع نظر ماڈل تصور کرنا پڑے گا جس کا مطلب یہ ہے کہ اصل نظام کو کافی آسان بنانا اور آپ کو کچھ کم سے کم پیرامیٹرز (یہاں آمد فی یونٹ اور سروس کی شدت میں آنے والے کاروں کی تعداد فی گھنٹہ کاروں کی تعدادکا یونٹ ہے ۔).

Simulation: write a simulation model that generates randomly arrivals of cars and duration of services. It must also sequence properly all activities to have a one-to-one correspondence with the real system. Also observation, collection of statistical data, and evaluation must be programmed (for each car compute the time spent, accumulate these times, count number of cars, at the end compute and display the average).

These three methods cannot be ranked because all of them have advantages and disadvantages. They can be compared only in the context of certain particular case taking into account various criteria. Nevertheless, some basic facts are obvious:

سیمولشیون : ایک سیمولشیون ماڈل لکھیں جس میں بے ترتیب طور پر کاروں اور خدمات کی مدت کی تفصیل ہوتی ہے. اصل نظام کے ساتھ ایک سے ایک خطوط کرنے کے لئے اس کے ساتھ ساتھ تمام سرگرمیاں کی مناسب طریقے سے ترتیب بھی لازمی ہیں. اس کے علاوہ مشاہدات، اعداد و شمار کا مجموعہ، اور تشخیص پروگرام کرنا ہوگا (ہر کار کے لئے وقت گزرتا ہے، ان وقت جمع، کاروں کی تعداد شمار، اختتام پر اوسط کے مطابق اور ظاہر).ان تین طریقوں کو درجہ بندی نہیں کیا جاسکتا ہے کیونکہ ان میں سے سب کے فوائد اور نقصانات ہیں. وہ صرف مخصوص اقدار کے تناظر میں مختلف معیارات کو پورا کرنے کے لۓانحصارکرسکتےہیں. تاہم کچھ بنیادی حقائق واضح ہیں:

Experiment  is always the most accurate method, that should be used whenever it is feasible. Unfortunately very often the experiment is: – Too dangerous (behavior of a nuclear reactor in critical situations, landing with a plane with one jet off, etc.) – Too expensive (all cases that cause a damage, long experiments studying throughput of a data network using leased phone lines, etc.) – Not possible at all if the system being investigated is not available (evaluation of more possible alternatives in the design stage.)

تجربہ    ہمیشہ سب سے صحیح طریقہ ہے، جب یہ ممکن ہو تو اسے استعمال کیا جانا چاہئے. اکذر اوقات یہ تجربہ :  بہت خطرناک ہوتا ہے (پریشان حالات میں ایک جوہری ریکٹر کا رویہ، ایک جیٹ کے ساتھ ساتھ جہاز کے ساتھ لینڈنگ، وغیرہ)  بہت مھنگا ہوتا ہے (تمام معاملات جو نقصان پہنچے ہیں، لیبارڈ فون لائنوں وغیرہ وغیرہ کا استعمال کرتے ہوئے ایک ڈیٹا نیٹ ورک کے ذریعہ مطالعہ کرنے والے طویل تجربات)  – نا ممکن ہے کہ اگر نظام کی تحقیقات کی جا رہی ہے تو دستیاب نہیں ہے (ڈیزائن کے مرحلے میں زیادہ ممکنہ متبادل کی تشخیص.) کی وجہ سے۔

Analysis  (mostly mathematical) is typically based on strong assumptions that are rarely true in practical life. Another possible drawback of analytical methods is too complicated apparatus used and/or too time consuming computation. An example of this is analysis of Queueing Networks. On the other hand, using formulae gives mostly fast results and it is possible to check a large number of alternatives by simply inserting different values of parameters to the formula(e). Experimental methods are mostly much more time consuming. Another problem of analysis is availability of necessary parameters. Their exact measuring is also not necessarily feasible or it is impossible in the design stage. Using estimated data or data taken from other similar systems decreases credibility of results.

تجزیہ    (زیادہ تر ریاضی) عام طور پر مضبوط مفادات پر مبنی ہے جو عملی زندگی میں بہت کم سچا ہے. تجزیاتی طریقوں کی ایک اور ممکنہ خرابی ہے کہ یہ پیچیدہ سازوسامان میں استعمال ہوتی ہے . اس کا ایک مثال قطار نیٹ ورکس کا تجزیہ ہے . فارمولوں کا استعمال کرتے ہوئے دوسری طرف زیادہ سے تیز رفتار نتائج دیتا ہے اور فارمولیٹرز کے مختلف اقدار کو صرف فارمولا ( ای) میں ڈالنے کے لۓبڑیتعدادمیںمتبادلچیککرنےکےلئےممکنہے . تجرباتی طریقوں کو زیادہ تر وقت لگ رہا ہے. تجزیہ کا ایک اور مسئلہ ضروری پیرامیٹرز کی دستیابی ہے. ان کو عین مطابق ماپنا بھی ضروری نہیں ہے اور ڈیزائن کے مرحلے میں یہ ناممکن ہے. دیگر اسی طرح کے نظام سے لے جانے والے تخمینہ کردہ اعداد و شمار یا ڈیٹا کا استعمال کرتے ہوئے نتائج کی ساکھ کم ہوتی ہے.

Simulation  is also an experimental method. Instead of experimenting with the real system the experiments are performed with the simulation model (whose design is thus the key point of simulation studies). Also simulation has many drawbacks. Here are the most important ones: – Too demanding creation of simulation models. Programming simulation models in general languages (like Pascal) is too difficult. There are efficient simulation languages but their mastering represents a big initial investment not always justified. There are simulation tools based typically on some graphical technique that simplify or even automate creation of simulation models of certain class of systems. If you want to learn more about one such tool, proceed to the page Petri Nets. – Limited knowledge of the system being simulated. First of all some quantitative parameters must be known. In the above example it is necessary to generate random intervals between arrivals and random service times. Here simulation is much more flexible than analysis – simulation languages support generation of random numbers with practically any distribution. In the above example both random figures can be based on any (e.g. experimentally obtained) distributions. Nevertheless any distribution needs either several parameters (if it is a theoretical one) or directly the Distribution Function (if the distribution is obtained by measuring). There can be also things in the system (typically in the design stage) that cannot be quantified and often it is necessary to accept the fact that there might be aspects we are not aware of at all.  – Too time consuming computation. An example is analysis of large scale systems with many components working in parallel. Because application of real parallelism is still not common, such systems are simulated by a program performed by a single processor. Parallel activities are then performed one at a time (even if the user has an impression of parallelism and during the design of the simulation model “thinks in parallel”). The result of this is the fact that simulation could be much slower than the real time (1 second of the model time takes 10 minutes of the CPU time). This of course disables application of simulation in real time control.

سیمولشیون ایک تجرباتی طریقہ بھی ہے. حقیقی نظام کے ساتھ استعمال کرنے کے بجائے تجربات کو سیملٹیشن ماڈل کے ساتھ انجام دیا جاتا ہے (جس کا ڈیزائن اس طرح سیمولشیون مطالعہ کا اہم نقطہ ہے). اس کے علاوہ سیمولشیون بہت خرابیاں ہیں. یہاں سب سے اہم ہیں :  بہت سے سیمولشیون ماڈلوں کی تخلیق کا مطالبہ کرتے ہیں. عام زبانوں میں پروگرامنگ سیمولشیون ماڈل (جیسے پیسل) بہت مشکل ہے. موثر سیمولشیون کی زبانیں موجود ہیں لیکن ان کی ماسٹرنگ ایک بڑی ابتدائی سرمایہ کاری کی نمائندگی کرتا ہے جو ہمیشہ مستحق نہیں ہے. عام طور پر کچھ گرافیکل تکنیک پر مبنی سیمولشیون اوزار موجود ہیں جو کچھ نظام کے نظام کے سیمولشیون ماڈل کی تخلیق کو آسان بنانے یا خود بخود خود بخود خود کار طریقے سے بنائے جاتے ہیں. اگر آپ اس طرح کے ایک آلے کے بارے میں مزید جاننا چاہتے ہیں تو، صفحے پر آگے بڑھیں   پیٹریا نیٹ .  نظام کا محدود علم سمیولیٹ کیا جا رہا ہے. سب سے پہلے کچھ مقدار کے پیرامیٹرز کو جانا جانا چاہئے. مندرجہ بالا پر آنے والے اور بے ترتیب خدمات کے درمیان بے ترتیب وقفے پیدا کرنے کے لئے ضروری ہے. یہاں سیمولشیون تجزیہ سے کہیں زیادہ لچکدار ہے – سیمولشیون زبان عملی طور پر کسی بھی تقسیم کے ساتھ بے ترتیب نمبروں کی حمایت کرتے ہیں. مندرجہ بالا مثال میں دونوں بے ترتیب اعداد و شمار کسی بھی بنیاد پر (مثال کے طور پر تجربہ کار وصول کردہ) تقسیم پر مبنی ہوسکتے ہیں. اس کے باوجود کسی بھی تقسیم کو کئی پیرامیٹرز کی ضرورت ہوتی ہے (اگر یہ ایک نظریاتی ہے) یا براہ راست ڈویژن فنکشن (اگر تقسیم کی پیمائش کی طرف سے حاصل کی جاتی ہے). اس نظام میں بھی محتلف چیزیں ہوسکتی ہیں (عام طور پر ڈیزائن مرحلے میں) جو مقدار میں نہیں جاسکتی ہے اور اکثر اس حقیقت کو قبول کرنے کے لئے لازمی ہے کہ اس پہلوؤں میں ہم سب سے واقف نہ ہوں.   بہت زیادہ ٹاٰم لگتا ہے اس میں مسال کے طور پر کام کرنے والے بہت سے اجزاء کے ساتھ بڑے پیمانے پر نظام کا تجزیہ ہے. کیونکہ حقیقی متوازی کی درخواست اب بھی عام نہیں ہے، اس طرح کے نظام ایک پروسیسر کی طرف سے کارکردگی کا مظاہرہ کیا جو کہ پروگرام کی طرف سے مصنوعی ہیں. اس کے بعد متوازی سرگرمیوں کو ایک وقت میں ایک ہی کارکردگی کا مظاہرہ کیا جاتا ہے (یہاں تک کہ اگر صارف متوازی کا تاثیر ہے اور سیمولشیون ماڈل کے ڈیزائن کے دوران “متوازی میں سوچتا ہے”). اس کا نتیجہ یہ ہے کہ سیمولشیون حقیقی وقت سے زیادہ سست ہوسکتی ہے (ماڈل وقت کے 1 سیکنڈ سی پی یو کے وقت کے 10 منٹ تک لیتا ہے). کورس کے اصل وقت کنٹرول میں سیمولشیون کی درخواست کو غیر فعال کرتا ہے.

A general rule of thumb could be like that: “If the experiment is feasible, use it. It is always the best method because all aspects are taken into account. Even if other methods were used during the design stage, experiment can serve as a final evaluation of the system. If the experiment is not feasible try to find an appropriate analytical method. If it is not available, use simulation.” Simulation is not only the last resort as it looks like in the above rule. Simulation can contribute very much to understanding of the system being analyzed not only by supplying answers to the questions that were originally given. Very often creation of the simulation model is the first occasion where certain things are taken into account. Specification of the simulated system can (and often it does) reveal errors or ambiguities in the system design. So, simulation can help very much by avoiding future very expensive updating of the ready system.

ایک عام    رول آف تھمب اس طرح ہو سکتا ہے:  “اگر تجربہ ممکن ہے، تو اس کا استعمال کریں. یہ ہمیشہ بہترین طریقہ ہے کیونکہ تمام پہلوؤں کو اکاؤنٹ میں لے جایا جاتا ہے. یہاں تک کہ اگر ڈیزائن کے مرحلے کے دوران دوسرے طریقوں کا استعمال کیا جاتا ہے، تو یہ تجربہ نظام کے حتمی تشخیص کے طور پر کام کرسکتا ہے. مناسب تجزیاتی طریقہ تلاش کرنے کی کوشش ممکن نہیں. اگر یہ دستیاب نہیں ہے تو سیمولشیون کا استعمال کریں. ”  سیمولشیون صرف آخری ریزورٹ نہیں ہے کیونکہ اس کی اوپر حکمران کی طرح لگتا ہے. سیمولشیون نظام کا تجزیہ کرنے کے لئے بہت زیادہ شراکت دے سکتا ہے نہ صرف ان سوالات کی فراہمی کے ذریعہ جو اصل میں دیا گیا تھا. اکثر سیمولشیون ماڈل کی تخلیق کا پہلا موقع ہے جہاں بعض چیزوں کو اکاؤنٹ میں لے جایا جاتا ہے. مصنوعی نظام کی تفصیلات (اور اکثر ایسا ہوتا ہے) نظام کے ڈیزائن میں غلطیاں یا ناقابل معلومات ظاہر کرسکتے ہیں.اس طرح سیمولشیون مستقبل کے نظام کو مہنگی اپ ڈیٹ کرنے کے لئے تیار نظام سے بچنے سے بہت زیادہ مدد کرسکتا ہے.

Go back to Heading Go back to Home page

واپس جاو   جاو   ہیڈ لیئن    واپس جاو   ہوم پیج

Continuous Simulation

مسلسل سیمولشیون

Continuous simulation languages developed in late fifties as simulators of Analogue computers. Simulation on analogue computers is based on creating an analogue electronic system whose behavior is described by the same mathematical model (set of differential equations) as the system being investigated. The electronic system is created by interconnecting standard blocks based mostly on operational amplifiers modified to act as integrators, adders, and other functional units. Then the user performs experiments with this electronic system by applying suitable inputs and recording the voltage at certain output points (oscilloscope, plotter). The changing voltage represents a time function, that is the same as the function that describes the changes in the original system whose physical nature may be totally different (mechanical displacement, temperature, etc.). The main problem of analogue computers is an analogue implementation of certain operations like multiplication, generation of some functions, generation of delays and others. Digital computers perform all these functions very easily and today continuous simulation is performed only on them. Nevertheless there is one operation where the analogue computers are better – integration. Digital computers use numerical integration that is generally slower and less accurate compared with the integration of an analogue integrator. Some special applications based on fast response use therefore the so-called Hybrid computers, that contain analogue and digital parts connected by A/D and D/A converters. The digital part does everything except integration. It computes inputs of integrators, that are then converted by D/A converters to analogue signals inputted to analogue integrators. Their outputs are treated in the opposite way. The digital part also controls the interconnection of the analogue part, that might thus change during computation.

اجنالایو کمپیوٹرز کے سمیلیٹروں کے طور پر دیر سے تفتیشوں میں مسلسل سیمولشیون زبانیں تیار ہیں. اینجالیو کمپیوٹرز پر سیمولشیون ایک اینجالیو الیکٹرانک نظام بناتا ہے جس کا رویہ اسی ریاضیاتی ماڈل (متفرق مساوات کا سیٹ) کی طرف سے بیان کیا گیا ہے جس کے طور پر نظام کی تحقیق کی جاتی ہے. الیکٹرانک نظام معیاری بلاکس سے منسلک ہوتا ہے جو زیادہ سے زیادہ عملی طور پر امپلیفائرز پر مشتمل ہے جو انضمام، اضافی اور دیگر فعال یونٹس کے طور پر کام کرنے کے لئے نظر ثانی کی جاتی ہے. پھر صارف اس الیکٹرانک نظام کے ساتھ مناسب آدانوں کو استعمال کرتے ہوئے اور کچھ آؤٹ پٹ پوائنٹس (اوزیلوسکوپ، پلاٹر) پر وولٹیج ریکارڈ کر کے تجربات انجام دیتا ہے. بدلتے ہوئے وولٹیج ایک وقت کی تقریب کی نمائندگی کرتا ہے، یہ وہی کام ہے جسے اصل نظام میں تبدیلیوں کی وضاحت کرتا ہے جن کی جسمانی فطرت پوری طرح سے مختلف ہوتی ہے (میکانی بے گھر، درجہ حرارت، وغیرہ). ینالاگیو کمپیوٹرز کا بنیادی مسئلہ کچھ آپریشنز جیسے ضرب، کچھ افعال کی نسل، تاخیر اور دیگر نسلوں کی ایک مثالی عمل ہے. ڈیجیٹل کمپیوٹرز ان تمام کاموں کو بہت آسانی سے انجام دیتے ہیں اور آج مسلسل سیمولشیون صرف ان پر انجام دیتے ہیں. اس کے باوجود ایک ایسا آپریشن ہے جہاں اجناسیو کمپیوٹرز بہتر ہیں – انضمام. ڈیجیٹل کمپیوٹرز عددی انضمام کا استعمال کرتے ہیں جو عام طور پر ایک ینالاگ اکاؤنٹر کے انضمام کے مقابلے میں سست اور کم درست ہے. کچھ مخصوص ایپلی کیشنز کو تیز رفتار ردعمل کے استعمال کے ذریعہ نام نہاد ہائبرڈ کمپیوٹرز، جو کہ A / Dاور D / A کنورٹرز سے منسلک انجکشن اور ڈیجیٹل حصوں پر مشتمل ہے . انضمام کے علاوہ ڈیجیٹل حصہ سب کچھ کرتا ہے . یہ  کو کا شمار کرتا ہے ، پھر اس کے بعد ڈی / اے کنورٹرز کے ذریعے انضمام کے لئے ان پٹ اینالاگسگنلوں میں تبدیل کر دیا جاتا ہے. ان کی پیداوار مخالف طور پر علاج کیا جاتا ہے. ڈیجیٹل حصہ بھی ینالاگیو حصہ کے انٹرکنکشن کو بھی کنٹرول کرتا ہے ، جو اس طرح کی سنجیدگی کے دوران بدل سکتا ہے.

Classification of Continuous Simulation Languages

مسلسل سیمولشیون زبانیں کی درجہ بندی

Block oriented simulation languages are based on the methodology of analogue computers. The system must be expressed as a block diagram that defines the interconnection of functional units and their quantitative parameters. “Programming” means entering the interconnection of the blocks and their description. Then the user adds statements and/or directives that control the simulation. If the system is described as a set of equations, they must be converted to a block diagram. This conversion is a simple straightforward process. The typical blocks available in most continuous block-oriented languages are integrators, limiters, delays, multipliers, hysteresis, constant values, adders, holders, gain (coefficient) and other.

مبنی سیمولشیون زبان کو بلاک اینجیٹل کمپیوٹر کے طریقہ کار پر مبنی ہیں. نظام کو ایک بلاک ڈایاگرام کے طور پر اظہار کیا جانا چاہئے جس میں فعال یونٹس اور ان کی مقدار کے پیرامیٹرز کے انٹرکنکشن کی وضاحت کی جاتی ہے. “پروگرامنگ” کا مطلب ہے کہ بلاکس اور ان کی تفصیلات کے انٹرکنکشن میں داخل ہوجائیں. اس کے بعد صارف نے بیانات اور / یا ہدایت کا اضافہ کیا ہے جو سیمولشیون کو کنٹرول کرتے ہیں. اگر نظام مساوات کی ایک سیٹ کے طور پر بیان کیا جاتا ہے تو، انہیں ایک بلاک ڈایاگرام میں تبدیل کیا جانا چاہئے. یہ تبادلوں کو سادہ سیدھا عمل ہے. سب سے زیادہ مسلسل بلاک پر مبنی زبانوں میں دستیاب عام بلاکس انٹگراترز ، لمیٹرز، تاخیر، ملٹی، ہیسٹریسس، مسلسل اقدار، اضافے، ہولڈرز، حاصل (گنجائش) اور دیگر ہیں.

Expression oriented continuous languages are based on writing expressions (equations) that represent the mathematical model. So the system simulated must be expressed by a set of equations. Then the user adds statements and/or directives that control the simulation. Some languages enable both block and expression based ways of system definition. Simulation control means selection of: the integration method (because some languages offer more), the integration step, the variables (outputs of blocks) that should be observed, the intervals for collecting data for printing and/or plotting, scaling of outputs (that may be also done automatically), duration of the simulation runs, number of repetitions and the way certain values are changed in them, etc.

اظہار پر مبنی مسلسل زبانیں :  ریاضیاتی ماڈل کی نمائندگی کرنے والے اظہارات (مساوات) لکھنے پر مبنی ہیں. لہذا نظام کو مساوات کی ایک سیٹ کی طرف سے اظہار کیا جانا چاہئے. اس کے بعد صارف نے بیانات اور / یا ہدایت کا اضافہ کیا ہے جو سیمولشیون کو کنٹرول کرتے ہیں. کچھ زبانیں نظام کی تعریف کے بلاک اور اظہار دونوں طریقوں پر مبنی ہیں. سیمولشیون کا کنٹرول کا مطلب ہے: انضمام کا طریقہ (کیونکہ کچھ زبانیں زیادہ پیش کی جاتی ہیں)، انضمام قدم، متغیرات (بلاکس کے نتائج) جو مشاہدہ کیا جانا چاہئے، انٹریوں کو پرنٹنگ اور / یا پلاٹ کرنے کے لئے ڈیٹا جمع کرنے، آؤٹ پٹ کے سکینل (خود کار طریقے سے بھی کیا جا سکتا ہے)، سیمولشیون رنز کی مدت، تکرار کی تعداد اور بعض اقدار ان میں تبدیل کر دیا جاتا ہے، وغیرہ غیرہ۔

Download the file models1.zip that contains several continuous simulation models written in the Turbo Pascal language. Models are created using a simple continuous simulation environment based on Expression oriented approach and can be easily modified to model any other systems described by differential equations.

فائل ڈاؤن لوڈ کریں   ماڈل 1.zip   اس میں ٹربو پااسل زبان میں لکھا گیا کئی مسلسل سیمولشیون ماڈل شامل ہیں. ماڈلز کو ایک مسلسل مسلسل سیمولشیون ماحول کا استعمال کرتے ہوئے اظہار پر مبنی نقطہ نظر کی بنیاد پر تخلیق کیا جاتا ہے اور ان میں متغیر مساوات کی طرف سے بیان کردہ کسی بھی دوسرے نظام کو بہتر بنانے کے لئے آسانی سے نظر ثانی کی جا سکتی ہے.

Go back to Heading Go back to Home page

واپس جاو   سرخی  واپس جاو   ہوم پیج

Discrete Simulation

ڈسکریٹ سیمولشیون

Discrete simulation deals with systems whose dynamics can be considered (due to the level of abstraction) as a sequence of events at discrete time points. The key point of a discrete simulation language is the way it controls the proper sequencing of activities in the model. This is also the way a user must “view the world” when using the language and a base for classification of discrete simulation languages.

ڈسکریٹ سیمولشیون وہ نظام ہے جن کی متحرک تصورات (تجزیہ کی سطح کی وجہ سے) تصور کی جاسکتی ہے. ڈسکریٹ سیمولشیون کی کلیدی نقطۂ نظر یہ ہے کہ یہ ماڈل میں سرگرمیوں کی مناسب ترتیب کو کنٹرول کرتی ہے. زمی سیمولشیون زبانوں کی درجہ بندی کے لئے زبان اور ایک بنیاد کا استعمال کرتے ہوئے. صارف کو “دنیا کو دیکھنے کے لئے”اس کی زرورت ہے۔

Classification of Discrete Simulation Languages

ڈسکریٹ سیمولشیون کی زبانوں کی درجہبندی

Flowchart oriented languages are represented by the language GPSS (General Purpose Simulation System), that exists in many versions on various computers. The user must view the dynamics of the system as a flow of the so called Transactions through a block diagram. Transactions are generated, follow a path through a network of blocks, and are destroyed on exit. In blocks transactions may be delayed, processed, and passed to other blocks. Blocks are in the program represented by statements that perform the Activities of the model.

فلوٹارٹ پر مبنی زبانوں   جی پی ایس ایس (جنرل مقصد سمول سسٹم) کی زبان کی نمائندگی کی جاتی ہے، جو مختلف کمپیوٹرز پر کئی ورژن میں موجود ہے. صارف کو نام نہاد کے بہاؤ کے طور پر نظام کی متحرک دیکھنا ضروری ہے   ٹرانسمیشن ایک بلاک ڈایاگرام کے ذریعے ٹرانسمیشن پیدا ہوتے ہیں، بلاکس کے ایک نیٹ ورک کے ذریعہ راستے کی پیروی کرتے ہیں، اور باہر نکلنے پر تباہ ہو جاتے ہیں. بلاکس ٹرانزیکشنز میں تاخیر، عملدرآمد، اور دیگر بلاکس کو منظور کیا جا سکتا ہے.  اس پروگرام میں بلاکس موجود ہیں جو ماڈل کی نشاندہی کرتے ہیں ۔

Activity oriented languages are not based on explicit scheduling of future activities. For each activity the user describes the condition under which the activity can take place (that also covers scheduling if the condition is reaching certain time). The algorithm of the simulation control repeatedly increments time and tests conditions of all activities. The disadvantage of this approach is obvious – it is necessary to evaluate all conditions in every step, that may be very time consuming. On the other hand it is conceptually very simple and the algorithm can be easily implemented in general high level languages (there are simulation languages based on this approach, but not widely used). Download the file models2.zip that contains two models of a simple queuing system (in Turbo Pascal) that demonstrate the activity oriented approach. These models are accompanied by several units that implement operations on two-way linked lists that are later used to implement stacks and queues.

سرگرمی پر مبنی زبانوں   مستقبل کی سرگرمیاں واضح شیڈولنگ پر مبنی نہیں ہیں. ہر سرگرمی کے لئے صارف اس شرط کی وضاحت کرتا ہے جس کے تحت سرگرمی ہوسکتا ہے (اس وقت شیڈولنگ کا احاطہ کرتا ہے جب حالت مخصوص وقت تک پہنچ جاتی ہے). سیمولشیون کنٹرول کے الگورتھم بار بار تمام سرگرمیوں کے وقت اور ٹیسٹ کے دھیرے بڑھاتا ہے . اس نقطہ نظر کا نقصان واضح ہے – ہر قدم میں تمام حالات کا اندازہ کرنا ضروری ہے اس میں بہت وقت درکار ہے۔. دوسری جانب یہ تصوراتی طور پر بہت آسان ہے اور الگورتھم آسانی سے عام اعلی درجے کی زبانوں میں لاگو کیا جا سکتا ہے (اس نقطہ نظر پر مبنی سیمولشیون زبانیں ہیں، لیکن بڑے پیمانے پر استعمال نہیں ہوئے). فائل ڈاؤن لوڈ کریں   ماڈل2.zip   اس میں سادہ قطار بندی کے دو ماڈل (ٹربو پااسل میں) شامل ہیں جو سرگرمی پر مبنی نقطہ نظر دکھاتےہیں . یہ ماڈل کئی یونٹس کے ساتھ ہیں جو دو طرح سے منسلک فہرستوں پر عمل درآمد کرتے ہیں بعد میں اسٹاک اور قطاروں کو لاگو کرنے کے لئے استعمال کیا جاتا ہے.

Event oriented languages are based on direct scheduling and canceling of future events. The approach is very general. The user must view the dynamics of the system simulated as a sequence of relatively independent events. Every event may schedule and/or cancel another event. The system routine must keep record of scheduled events. That’s why every event is represented by the so-called Event notice, that contains the time, the event type, and other user data. Event notices are kept in the so called Calendar, where the event notices are ordered by the scheduled time. After completion of an Event routine, the system removes the event notice with the lowest time from the calendar, updates the model time by its time, and starts the corresponding routine. This is repeated until the calendar becomes empty or the program stops because of other reason. Scheduling means inserting event notices to the calendar by the scheduled time, canceling removes them. The approach based on explicit expressing of events is called Discrete Event Simulation, that is sometimes generalized to discrete simulation as such. A typical representative of this group of languages is the language SIMSCRIPT (but its version II.5 supports also process oriented simulation).

واقعہ پر مبنی زبانیں   براہ راست شیڈولنگ اور مستقبل کے واقعات کو منسوخ کرنے پر مبنی ہیں. یہ نقطہ نظر بہت عام ہے. صارف کو نسبتا آزاد واقعات کے سلسلے کے طور پر نقل کردہ نظام کی متحرک دیکھنا ضروری ہے.ہر ایونٹ شیڈول کر سکتے ہیں اور / یا کسی دوسرے واقعے کو منسوخ کرسکتے ہیں . نظام کا معمول طے شدہ واقعات کا ریکارڈ رکھتا ہے. لہذا ہر ایونٹ نے نام نہاد ایونٹ نوٹس کی طرف سے نمائندگی کی ہے، جس میں وقت، ایونٹ کی قسم، اور دیگر صارف کے اعداد و شمار شامل ہیں. واقعہ نوٹس نام نہاد کیلنڈر میں رکھی جاتی ہیں، جہاں واقعہ نوٹس مقرر کردہ وقت کی طرف سے حکم دیا جاتا ہے. ایک واقعے کے معمول کی تکمیل کے بعد، نظام کیلنڈر سے کم سے کم وقت کے ساتھ ایونٹ نوٹس کو ہٹا دیا جاتا ہے۔ ، اس وقت کے ذریعہ ماڈل کا وقت اپ ڈیٹ کرتا ہے، اور اسی معمول کا آغاز ہوتا ہے. یہ تجزیہ کیا جاتا ہے جب تک کہ کیلنڈر خالی ہو یا پروگرام دوسری وجہ سے رک جائے. شیڈولنگ کا ذریعہ مقرر کردہ وقت کی طرف سے کیلنڈر میں ایونٹ نوٹسز ڈالنے کا مطلب ہے کہ منسوخ کرنے سے انکار کر دیا گیا ہے. واقعات کے واضح اظہار کی بنیاد پر نقطہ نظر ڈسکوک ایونٹ سیمولشیون کہا جاتا ہے ، جو کبھی کبھی اس طرح کے مضر سیمولشیون کے طور پر عام طور پر استعمال کیا جاتا ہے. زبانوں کے اس گروپ کا ایک عام نمائندہ زبان ہے سمپس(لیکن اس کے ورژن II.5 کی حمایت کرتا ہے پر مبنی سیمولشیون بھی عمل کرتا ہے).

Process oriented languages are based on the fact, that events are not independent. An event is typically a consequence of other previous events. In other words it is often possible to define sequences of events that may be viewed as entities of a simulation model at higher level of hierarchy. A sequence of events is called Process. Unlike events process has a dimension in time. Process based abstract systems are very close to reality, that is always made of various objects that exist and act in parallel interfering with each other. Process way of viewing system dynamics is thus very natural. Mostly a process models an activity of a real object. It is believed, that process oriented discrete simulation is the best way how to create discrete simulation models. Typical representatives of this group of languages are MODSIM, SIMSCRIPT II.5, and the system class SIMULATION of the Simula language.

مبنی زبانوں پر عمل کریں   اس حقیقت پر مبنی ہے کہ واقعات آزاد نہیں ہیں. ایک واقعہ عام طور پر د پچھلے واقعات کا نتیجہ ہے. دوسرے الفاظ میں اس واقعہ کے سلسلے کی وضاحت کرنے کے لئے اکثر ممکن ہوسکتا ہے جو اعلی درجہ بندی کے اعلی سطح پر سیمولشیون ماڈل کے اداروں کے طور پر دیکھا جا سکے. واقعات کا ایک سلسلہ بلایا جاتا ہے. واقعات کے عمل کے برعکس وقت میں ایک طول و عرض ہے. عمل کی بنیاد پر خلاصہ نظام حقائق کے بہت قریب ہیں، یہ ہمیشہ مختلف چیزوں سے بنا ہے جو ایک موجود ہ اور ایک دوسرے کے ساتھ متوازی مداخلت میں کام کرتے ہیں. نظام کی متحرک دیکھنے کے عمل کا طریقہ اس طرح بہت قدرتی ہے. زیادہ سے زیادہ ایک عمل کے ماڈل ایک حقیقی اعتراض کی ایک سرگرمی. یہ خیال کیا جاتا ہے، اس پروسیسنگ پر مبنی نقطہ نظر سیمولشیون کا طریقہ بہترین طریقہ ہے جس میں مضحکہ خیز سیمولشیون ماڈل بنانے کا طریقہ ہے. زبانوں کے اس گروپ کے عام نمائندوں میں MODSIM، سمپس II.5، اور نظام کے نظام کی سماعت سملا زبان شامل ہیں .

Go back to Heading Go back to Home page

واپس جاو ہیڈ لاین   واپس جاو   ہوم پیج

Object Oriented Simulation

آبجیکٹ مہذب سیمولشیون

Object Oriented Simulation (OOS) can be considered as a special case of Object-Oriented Programming (OOP). Some principles of OOP like existence of a varying number of instances of interfering objects have been in standard use in simulation environment for a long time, often using other terminology. The Simula language (used to be called Simula 67) is the first true object oriented language. Being more than 30 years old, it still has most (and all important) mechanisms and principles of OOP. Some things like classes, inheritance, virtual methods, etc. have been defined in Simula long time before they were rediscovered by the OOP boom in last years. To learn more about Simula, visit the page of ASU (Association of Simula Users). You can also browse the document Introduction to OOP in Simula based on a talk presented at the University of Malta on the occasion of the Simula’s 30th anniversary. MODSIM is another object-oriented simulation language.

آبجیکٹ مہذب سیمولشیون (OOS) آبجیکٹ مہذب پروگرامنگ (OOP) کے ایک خصوصی کیس کے طور پر سمجھا جا سکتا ہے. OOP کے کچھ اصول جیسا کہ مداخلت کرنے والے اشیاء کی ایک مختلف تعداد کی مثال کے طور پر وجود طویل عرصے سے، اکثر دوسرے اصطلاحات کا استعمال کرتے ہوئے سیمولشیون ماحول میں معیاری استعمال میں ایک زبان (کا ایک 67 کہا جاتا استعمال کیا جائے) پہلا سچ اعتراض پر زبان پر مبنی ہے ۔30 سال سے زائد عمر کے ہونے کے باوجود، اس کے پاس اب بھی زیادہ (اور تمام اہم) OOP کے اصول ہیں. کچھ چیزیں جیسے کلاس، میراث، مجازی طریقوں وغیرہ وغیرہ سملا طویل عرصے سے گزشتہ سالوں میں OOP بوم کی طرف سے ریورس کئے جانے سے قبل اس وقت بیان کیا گیا ہے . سملا کے بارے میں مزید جاننے کے لئے ، صفحے کا دورہ کریں   ASU   ( سملاصارفین کے ایسوسی ایشن ). آپ دستاویز براؤز بھی کرسکتے ہیں   کا ایک میں OOP کا تعارف سملا کی 30 ویں سالگرہ کے موقع پر مالٹا یونیورسٹی میں پیش کردہ ایک گفتگو پر مبنی ہے . موڈیمیم ایک اور اعتراض پر مبنی سیمولشیون زبان ہے.

These are the most commonly accepted features of OOS:

یہ OOS کے سب سے عام طور پر منظور شدہ خصوصیات ہیں:

1. The algorithm or system dynamics is expressed in terms of objects (actors) that exist in parallel and that interact with each other. Every object is represented by: – parameters (that may be assigned actual values when generating objects) – attributes (also called internal attributes or value attributes)  – methods (also called actions or procedure attributes) – life, that represents the activity started upon object creation.  Objects can interact in these ways: – direct access to parameters and attributes – mutual calling of methods – communication and synchronization of objects lives. Simply speaking: Object = Data + Procedures that is called Encapsulation. Very often the object’s data or a part of it is hidden and values can be accessed and modified only through (well defined) methods. This concept is called Information hiding.

2. Similar objects (actors) are grouped to the so-called classes also called prototypes. A class describes objects that have the same parameters, attributes, methods, and lives. A class declaration is interpreted as a pattern. It is possible to create any number of individual objects (actors) called object instances. Instances may differ in values of their parameters and/or attributes. It is necessary to make a clear difference between a class as such and object instances generated using the class declaration. A class can be also interpreted as a knowledge of certain type of objects. Such knowledge is represented by a data part and by operations that can be performed on the data. This is similar to abstract data types, but classes are much richer. An abstract data type can be in this context considered as a degenerate case of a class that makes no use of inheritance.

3. Objects can be classified hierarchically by the so called inheritance. Very often the term subclass is introduced. A subclass Y of a class X inherits all parameters, attributes, and methods from the class X. Its declaration can add any number of additional parameters, attributes, and methods. A subclass may also add some activity to the life of the parent class. A subclass can be used as a parent class of other subclasses, etc. Some OOP languages (not Simula) enable the so called multiple inheritance. In this case a subclass can inherit from more than one parent classes. A subclass may be interpreted as a more detailed knowledge than the one defined by the parent class. So, the parent class represents a general knowledge, that may be further specialized by declarations of subclasses in any number of steps. Inheritance acts in certain way against strong typing of languages like Pascal. Typically it is possible to declare reference variables that may refer to an instance of certain class and to instances of all its subclasses. It might be desirable, that certain methods then behave in different way according to the current object instance being referenced, that may change dynamically during program execution. This concept called polymorphism is supported by the mechanism called late binding and the methods involved are called virtual methods, that may change at every level of hierarchy.

4. Parallel existence of object instances needs facilities supporting cooperation and synchronization of their lives. Object’s life does not have necessarily a time dimension, but in case of OOS it has. Simula objects as such can interact without the notion of time. The Simula system class SIMULATION defines the class “Process” whose life exists in time. There are facilities for the processes to communicate and to synchronize their lives

1. الگورتھم یا نظام متحرک چیزوں (اداکاروں) کے لحاظ سے اظہار کیا جاتا ہے جو متوازی میں موجود ہیں اور ایک دوسرے سے بات چیت کرتے ہیں. ہر چیز کی طرف سے نمائندگی کی جاتی ہے :  – پیرامیٹرز (جو چیزیں تخلیق کرتے وقت حقیقی اقدار کو تفویض کرتے ہیں )  – صفات (اندرونی صفات یا قیمت صفات بھی کہا جاتا ہے)   – طریقوں (اعمال یا طریقہ کار کی صفات بھی کہا جاتا ہے)  – زندگی، جو مخلوق کی تخلیق پر مبنی سرگرمیوں کی نمائندگی کرتی ہے.   اشیاء ان طریقوں میں بات چیت کر سکتے ہیں :  پیرامیٹر اور صفات تک براہ راست رسائی  طریقوں کے باہمی کالنگ  مواصلات اور اشیاء کی مطابقت پذیری  آسان زبان میں : آبادی = ڈیٹا +کیپسول کی طرح بند کرنا کا طریقہ کار کہا جاتا ہے   . اکثر ا اعداد و شمار یا اس کا ایک حصہ اقدار (اچھی طرح سے مقرر کردہ) عمل سے کیا جا سکتا ہے اسے انفارمیشن ھایڈنگ کہتے ہیں ۔

2. اسی طرح کی چیزیں (اداکار) کو کلاسز میں تقسیم کیا گیا ہے جسے پروٹوٹائپز کہا جاتا ہے. ایک کلاس ایسی چیزوں کی وضاحت کرتا ہے جو اسی پیرامیٹرز، صفات، طریقوں اور زندگیوں میں ہے. کلاس کا اعلان ایک پیٹرن کے طور پر بیان کیا جاتا ہے. یہ ممکن ہے کہ انفرادی اشیاء (اداکاروں) کو کسی بھی تعداد میں بلایا جائے   اعتراض مثالیں. مثال کے مطابق ان کے پیرامیٹرز اور / یا صفتوں کی قیمتوں میں فرق ہوسکتا ہے. کلاس ڈکلیریشن کو استعمال کرتے ہویے کلاس اور آبجیکٹ میں فرق کرنا لازم ہے کچھ کلاس کی چیزوں کے بارے میں ایک کلاس کے طور پر بھی ایک تشریح کی جا سکتی ہے. اس طرح کی معلومات ڈیٹا بیس کے ذریعہ کی جاتی ہے اور اس آپریشن کے ذریعے اعداد و شمار پر پیش کی جا سکتی ہے. یہ خلاصہ ڈیٹا کی طرح ہے، لیکن کلاس زیادہ امیر ہیں. ایک ڈیٹا کی قسم کو سیاق و سباق کہا جا سلکتا ہے۔جو کسی طبقے کے ناقابل برداشت کیس کے طور پر سمجھا جاتا ہے جو وراثت استعمال نہیں کرتا.

3. آبادیوں کو نامیاتی طور پر نامزد کیا جا سکتا ہے   میراث. اکثر اصطلاح   ذیلی کلاس   متعارف کرایا ہے. ایک کلاس ایکس کے ذیلی کلاس Y کلاس کے تمام پیرامیٹرز، صفات، اور طریقوں سے وراثت رکھتا ہے. اس کی اعانت کسی اضافی پیرامیٹرز، صفات اور طریقوں میں شامل کرسکتا ہے. ایک ذیلی کلاس والدین کی زندگی کی زندگی میں کچھ سرگرمی بھی شامل کرسکتا ہے. ایک ذیلی کلاس دوسرے ذیلی کلاسیوں کے والدین کی کلاس کے طور پر استعمال کی جاسکتی ہے. وغیرہ کچھ OOP زبانوں ( سمولہ ) نام نہاد کو فعال کرتا ہے. (  ایک سے زیادہ میراث). اس صورت میں ایک ذیلی کلاس ایک سے زیادہ والدین کی کلاس سے وارث ہوسکتی ہے. ایک ذیلی کلاس کو والدین کی طرف سے بیان کردہ ایک سے زیادہ تفصیلی معلومات کے طور پر تشریح کیا جا سکتا ہے. لہذا والدین کا طبقہ ایک عام علم کی نمائندگی کرتا ہے، جو کسی بھی مرحلے میں ذیلی کلاس کے اعلامیے کی طرف سے مزید خاصی ہوسکتی ہے. پیسل جیسے زبانوں کی مضبوط ٹائپنگ کے خلاف کچھ خاص طور پر عمل درآمد کرتا ہے. عام طور پر یہ ممکن ہے کہ حوالہ وار متغیرات کا اعلان کریں جو بعض طبقات کی ایک مثال کے طور پر اور اس کے تمام ذیلی کلاس کے مثال کے طور پر پیش کرسکتے ہیں. یہ ممکنہ ہوسکتا ہے کہ اس وقت کچھ مخصوص طریقوں کو موجودہ اعتراض مثال کے مطابق حوالہ دیا جا یے ، جو اس پروگرام کے عمل کے دوران متحرک طور پر تبدیل کرسکتا ہے. یہ تصور کہا جاتا ہے   پولیمورفیم   دیر سے بائنڈنگ نامی میکانیزم کی طرف سے حمایت کرتا ہے اس میں ملوث ہونے والے طریقوں کو مجازی طریقے کہا جا سکتا ہے ، جو ہر درجہ بندی میں ہر سطح پر تبدیل ہوسکتا ہے.

4. وجود کے مواقع کو سہولت اور ان کی زندگیوں میں ہم آہنگی کی ضرورت ہے. آبجیکٹ کی زندگی ایک خاص وقت میں طول و عرض نہیں رکھتی ، لیکن OOS کے معاملے میں اس کے پاس ہے. اس طرح کے سملا کی چیزیں وقت کی پا بندی کے بغیر بات چیت کرسکتی ہیں۔ سیمولا سسٹم کلاس کو ان الفاظ میں بیان کرتا ہے ” عمل ” جس کی زندگی وقت میں موجود ہے۔یہ سہولتیں ہیں جو کہ روابط اور تناسب کو بھال کرتی ہیں ۔

Go back to Heading Go back to Home page

واپس جاو   ہیڈنگ  واپس جاو   ہوم پیج

On Line Simulation

ان لائن سیمولشیون

Internet together with Java and JavaScript offer incredible possibilities in problem solving. Instead of time consuming downloading and installation of software packages, it is possible to open directly various solvers, especially for problems that are not frequent and that do not require time consuming computation. As my first step in this direction, I wrote simple simulation models in JavaScript that solve and simulate single queue systems and queueing networks. Procede to the On-Line Solvers & Simulators page to try simulation now.

جاوا اور جاوا اسکرپٹ کے ساتھ مل کر انٹرنیٹ کو دشواری حل کرنے میں ناقابل یقین امکانات پیش کرتے ہیں. سافٹ ویئر پیکجوں کے استعمال اور وقت سازی کے بجائے، ممکنہ طور پر براہ راست مختلف سولورز کھولنے کے لئے ممکن ہے، خاص طور پر اس مسئلے کے لۓ،جواکثر ھل نہیں ہوتے ہیں اور اس میں وقت سازی کی ضرورت نہیں ہے. اس سمت میں میرا پہلا قدم، میں نے جاوا اسکرپٹ میں آسان سیملٹیشن ماڈل لکھا ہے جو ایک قطار کے نظام کو حل کرنے اور قطع نظر نیٹ ورکوں کو حل کرنے اور ان سے نمٹنے کا نیٹ ورک ہے   آن لائن سولورس اور سمیلیٹروں   ان صفحا ت کو دیکھا ہے

Go back to Heading Go back to Home page

واپس جاو   سرخی  واپس جاو   ہوم پیج

References

حوالہ جات

This page contains an extract from the text:  Sklenar, J.: Simulation  (University of Malta, 2000) that is used in several Operations Research related courses taught at the Maltese University. You can also find a lot of stuff on Internet because all search engines return many entries on “simulation”. You can start with the following places, that contain other links, references, information on institutions, conferences, etc.

اس صفحہ پر ایک متن ہے :   سکنار ، ج.  سیمولشیون (مالٹا یونیورسٹی، 2000) جو مالٹی یونیورسٹی میں پڑھا گیا کئی آپریشنوں سے متعلق تحقیقاتی نصاب میں استعمال ہوتا ہے .  آپ انٹرنیٹ پر بہت ساری چیزیں تلاش کرسکتے ہیں کیونکہ تمام تلاش کے انجن ” سیمولشیون” پر بہت سے اندراجات واپس آتے ہیں. آپ مندرجہ ذیل مقامات کے ساتھ شروع کر سکتے ہیں، جس میں دیگر لنکس، حوالہ جات، اداروں پر معلومات، کانفرنسوں وغیرہ شامل ہیں.

· AIS AI & Simulation Research Group

· Musings at OutSights

· Informs College on Simulation

· DIRO Simula home

· EUROSIS

· EUROSIM

· Society for Modelling and Simulation International

 

"PLACE THIS ORDER OR A SIMILAR ORDER WITH UNEMPLOYED NURSING TUTORS TODAY AND GET AN AMAZING DISCOUNT"

Leave a Reply

Your email address will not be published.