Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методички по лабораторным работам / Лабораторная работа 1

.doc
Скачиваний:
30
Добавлен:
02.05.2014
Размер:
656.9 Кб
Скачать

А

Лабораторная работа

Построение и реализация моделирующих алгоритмов Q - схем

Цель работы - изучение способов формализации процессов функционирования систем с использованием Q-схем.

Особенности формализации систем с помощью Q-схем рассмотрим на примере тления задачи исследования вероятностно-временных характеристик процесса Функционирования вычислительного центра (ВЦ).

В ВЦ приходят пользователи через интервалы времени 10±2 мин. Если все 3 устройства подготовки данных (УПД) заняты, пользователю отказывают в обслуживании. Устройства имеют разную производительность и могут обеспечить обслуживание средней программы пользователя за 20±5, 40+10 и 40±20 мин. Пользователи стремятся занять свободное УПД с максимальной производительностью. Полученные программы сдаются в приемный накопитель, откуда выбираются для обработки на первую ЭВМ - программы с первого и второго устройства, на вторую ЭВМ - программы с третьего УПД. Времена обработки программ на первой и второй ЭВМ равны 15 и 30 мин. соответственно.

Смоделировать процесс обработки 300 заданий. Определить вероятность отказа в обслуживании пользователя ВЦ.

На первом этапе составляется структурная схема процесса функционирования системы (рисунок 1).

необслуженные пользователи

Рисунок 1 - Структурная схема процесса функционирования ВЦ На втором этапе составляется структурная схема модели в символике Q- схем (рисунок 2).

Потерянные заявки Рисунок 2 - Структурная схема модели

Здесь И - источник заявок. HI и Н2 - накопители, К1-К5 - каналы обслуживания заявок. Система клапанов 1-6 регулирует процесс занятия пользователями каналов KL К2 и КЗ соответствующих устройств подготовки данных. Если канал К1 занят, то клапан 1 закрыт, а клапан 2 открыт и т.д. Если все каналы К1,К2, КЗ заняты, т.е. клапаны 2, 4, 6 открыты, то заявка теряется.

В исходной постановке задачи воспользуемся методом имитационного мо-деликования. Запишем переменные и уравнения имитационной модели в следующем виде.

Независимые, переменные:

а) tni, i=1,3 - время обработки задания на УПД;

б) tpj j=l,2-время решения задачи на ЭВМ. Зависимые переменные:

а) n0 - число обслуженных пользователей;

б) n1 - число пользователей, получивших отказ. Уравнение модели

где рстк - вероятность отказа пользователю в обслуживании.

При разработке схемы алгоритма использован " принцип t ". На рисунке 3 приведена обобщенная схема детерминированного моделирующего алгоритма.

Рисунок 3 - Обобщенная схема моделирующего алгоритма

Для составления детальной схемы алгоритма используем следующие идентификаторы переменных:

-массив состояния УПД nz(3);

  • время занятия УПД tz(3); -массив состояния ЭВМ пр(2); -время занятия ЭВМ tp(2);

  • массив состояния накопителей n(2);

  • число отказов not;

  • число обслуженных заявок nend;

  • интервал At dt;

  • массивы задания параметров времени обслуживания на УПД а(3), b(3); -массив задания параметров времени обслуживания на ЭВМ to(2);

  • :вероятность отказа в обслуживании pot;

  • переменные для задания параметров времени поступления заявок ta, tb.

Детальная схема алгоритма, записанная на псевдокоде, имеет следующий вид

алгоритм моделирования работы ВЦ

скаляр i, il, ifl, not, nend: целая

ta, tb, dt, t, pot: вещественная:

массив а[ 3 ], b[ 3 ], to[ 2 ], tz[ 3 ]. tp[ 2 ]: вещественный

nz[ 3 ], np[,2 ], n[ 2 ]: целый;

для i = 1, 3, 1

повторять

ввод (a[i],b[i]);

ввод (ta, tb, dt);

для i = 1, 3, 1

начало

nz[i ]= 0;

если i < 3 то

начало

n[i] = 0;

np[i] = 0

конец

все

конец;

для i1= 1, 5, 1 начало

nend = 0;

not = 0;

t = 0;

для i= 1,3,j начало

tz[ i ] = 0;

если i < 3 то tp[i ] = 0

все

конец;

пока nend < 300 г

повторять

начало

для i=l,2,1

еcли np[ i ] = 1 то

если tp[ i ] < О то

начало

np[ i ] = 0:

nend = nend + 1

конец

все

все

if1=0

для i = 1. 3. 1 начало

если nz[ i ] = 1 то

если tz[ i ] < 0 то

начало

if1=0

nz[i] = 0;

если i = 3 то п[ 2 ] = п[ 2 ] + 1

иначе п[ 1 ] =п[ 1 ] + 1

все:

конец.

все:

все

конец;

для i = 1. 2. 1

если n[ i ] > 0 то

если np[ i ] = 0 то

начало

n[i] = n[i]-l:

np[i]-l:

tp[i]=to[i]

конец

все;

все;

если t <= 0 то

начало

if1 = 0;

для i = 1, 3.1

если ifl = 0 то

если nz[i]= 0 то

начало

nz[i] = 1;

DAT (a[i],b[i],tz[i]);

ifl = l

конец

все;

все;

если if1 = 0 то not = not + 1

все;

DAT(ta,tb,t)

конец

t=t+1

для i=1,3,1

начало

если i<3 to tp[i] = tp[i]+dt

все

tz[i]=tz+dt

конец

конец

pot=not/(nend+not)

вывод (nend, not, pot)

конец

конец

алгоритм DAT генерации псевдослучайных чисел равномерно распределенных в интервале [a, (a+b)]

начало

скаляр a,b,c : вещественная;

randomize;

c=a+random (round (b))

конец

Отчет по лабораторной работе должен содержать:

  • исходные данные для моделирования;

  • таблицу идентификаторов переменных;

  • листинг программы;

  • результаты моделирования;

  • вывод.