Построение и реализация моделирующих алгоритмов q-схем. метод особых состояний
Лабораторная работа №1
Построение и реализация моделирующих алгоритмов
Q-схем. метод “ΔT”
Цель работы: выработка навыков алгоритмизации и программирования имитационных моделей систем массового обслуживания (СМО) методом «ΔT», фиксации и обработки данных в ходе статистических экспериментов с моделью.
Оборудование и программные средства: персональный компьютер, операционная система MS Windows XP/7, с системой программирования на языке высокого уровня (C++, С#) в среде MS Visual Studio.
Программа выполнения работы
1. Изучить обобщенные алгоритмы моделирования, использующие для продвижения модельного времени схему событийного типа и метод «дельта Т», примеры реализации моделирующего алгоритма для простейшей системы массового обслуживания.
2. Составить программу моделирования в соответствие с заданием на одном из алгоритмических языков по схеме «дельта Т». Ввести в компьютер и отладить программу моделирования.
3. Провести вычислительные эксперименты с моделью.
Краткая теория.
Имитационное статистическое моделирование заключается в том, что последовательно имитируется работа реального вероятностного процесса. В результате получается значение не одного параметра, а целый набор, т. е. выборка. Сам конечный результат получается в результате обработки полученной выборки в виде вероятности, математического ожидания, закона распределения и т. д.
Результатом статистического моделирования является достаточно большие объемы чисел. При моделировании желательно не запоминать все массивы чисел, так как кроме лишней используемой памяти, загромождается сама модель, поэтому фиксирование результатов желательно организовать таким образом, чтобы по мере возможности избежать запоминания всех массивов случайных чисел.
Принцип Δ t. Он заключается в том, что весь промежуток функционирования объекта разбивается на участки Δ t, в течении которых все параметры системы или объекта считаются постоянными и для них составляется модель, производятся вычисления, определяются параметры.
Достоинство этого принципа в возможности использования для непрерывных процессов. А недостаток в громоздкости решения задачи и получение большого количества избыточной информации, если подстраиваться под самый быстрый процесс или недополучение информации, если подстраиваться под самый медленный процесс.
Задание:
Составить алгоритм и программу имитационной модели для Q-схемы в соответствии с индивидуальным вариантом
Програмная реализация:
Код программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Threading;
namespace зуевлаб1_V2._0
{
public class Qsystem
{
public ListIOnTickable ObjsTick { get; private set; }
public ListEndNode ObjsEnd { get; private set; }
public int ClientsCount { get; set; }
public float dt { get; set; }
public float T { get; set; }
public bool IsEnd
{
get
{
int sum = 0;
foreach (var item in ObjsEnd)
{
sum += item.Count;
}
return sum == ClientsCount;
}
}
public Font font = new Font(FontFamily.GenericSansSerif,6,FontStyle.Regular);
public Qsystem()
{
this.ObjsTick = new ListIOnTickable();
this.ObjsEnd = new ListEndNode();
}
public void Add(IOnTickable o)
{
((DrawingObj)o).Owner = this;
this.ObjsTick.Add(o);
}
public void Add(EndNode o)
{
((DrawingObj)o).Owner = this;
this.ObjsEnd.Add(o);
}
public void StartTick()
{
CalculateClientCount();
while (!IsEnd)
{
StepTick();
}
}
public void CalculateClientCount()
{
foreach (var item in this.ObjsTick)
{
Source s = item as Source;
if (s != null)
{
this.ClientsCount += s.Count;
}
}
}
public void StepTick()
{
foreach (var item in this.ObjsTick)
{
item.OnTick(dt);
}
T += dt;
}
public IEnumerableobject GetEnumerator()
{
foreach (var item in this.ObjsTick)
{
yield return item;
}
foreach (var item in this.ObjsEnd)
{
yield return item;
}
}
public void Draw(Graphics g)
{
foreach (DrawingObj item in this.GetEnumerator())
{
item.Draw(g);
}
}
}
Лабораторная работа №2
Построение и реализация моделирующих алгоритмов q-схем. метод особых состояний
Цель работы: выработка навыков алгоритмизации и программирования имитационных моделей систем массового обслуживания (СМО) методом особых состояний, фиксации и обработки данных в ходе статистических экспериментов с моделью.
Оборудование и программные средства: персональный компьютер, операционная система MS Windows XP/7/8, с системой программирования на языке высокого уровня (C++, С#) в среде MS Visual Studio.
Продолжительность выполнения работы - 4 часа.