>
Розбіжність результатів аналітичних розрахунків і машинного моделювання пояснюється тим, що в для розрахунку аналітичним методом дана система була спрощена і приведена до виду одноканальної СМО з відмовами, що не враховує всіх особливостей функціонування вихідної системи.
Висновок.
Результаті даної роботи стала побудова програми, моделює процес функціонування заданої сітсеми. Були розраховані (Аналітично і за допомогою побудованого моделює алгоритму) показники ефективності даної системи: коефіцієнт завантаження і ймовірність простою проектувальника через зайнятість ЕОМ. Виявлено основні закономірності та способи взаємодії елементів Q-схем, а також причини неспівпадання розрахункових показників з результатами прогону моделює алгоритму на ЕОМ.
Література.
1. Кремер В«Дослідження операцій в економіціВ»-М.: В«ЕкономікаВ» 1997
2. Рад Б.Я., Яковлєв С. А. Моделювання систем. - М.: ВШ, 1995. p> 3. Рад Б.Я., Яковлєв С.А. Моделювання систем. Практикум. - М.: ВШ, 1999. p> 4. Вентцель Є.С. Теорія ймовірностей. -М.: Наука, 1969. p> 5. Вентцель Є.С. Дослідження операцій. - М.: Сов. Радіо, 1972. br/>
Додатка.
Текст програми.
unit QSheme;
interface
uses Classes, SysUtils, Forms, QSObjs, QSTypes, Utils, ExtCtrls;
const
MaxElementCount = 10000;
type
TQSheme = class
private
FParcelsClass: TParcelsClass;
FStepCount: integer;
FSysPeriod: TCustTime;
FStepPeriod: TCustTime;
FSysTime: TCustTime;
FElements: TList;
FFinishElements: TList;
FLastElements: TList;
FSourceElements: TList;
FParcels: TList;
FOrderElementCount: integer;
FEventQueue: TList;
FOrder: array [0 .. MaxElementCount-1] of integer;
FDiagram: TPaintBox;
protected
function GetElement (Index: integer): TElement;
function GetElementCount: integer;
procedure InitAnalize;
procedure FreeAnalize;
procedure InitEmulation;
procedure FreeEmulation;
procedure FindFinishElements;
procedure GetRecipientsOrder;
procedure Step;
procedure TakeParcelsFromFinishElements;
function IsFinishElement (Element: TElement): Boolean;
function FastestStepPeriod: TCustTime;
procedure ClearParcelList;
procedure ClearEventQueue;
function GetCounts (Index: integer): integer;
function GetParcelCount: integer;
procedure DrawElementLines;
procedure DisplayEvents;
public
function NewParcel: Pointer;
procedure NewEvent (AEvent: integer; ASender, ASource: TObject; AInfo: TInfo);
procedure RedrawDiagram;
procedure Emulation;
procedure Analize;
constructor Create;
destructor Destroy; o...