48066 (588518), страница 2

Файл №588518 48066 (Подсистема визуального отображения процесса интерпретации сетевых моделей в системе имитационного моделирования МИКРОСИМ) 2 страница48066 (588518) страница 22016-07-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)


Рис. 2.1 Базисный набор типов элементарных сетей

Следует также отметить, что требование незанятости одной или нескольких выходных позиций, отраженное в условиях срабатывания переходов во всех типах элементарных сетей, должно соблюдаться лишь для простых позиций. Если простая позиция, к которой в условии срабатывания C предъявляется требование незанятости, заменяется позицией очередью, то это требование для соответствующей позиции должно быть исключено из условия C.

В логических выражениях, представляющих условия срабатывания C, используются символы &,! и ^ для обозначения логических операторов конъюнкции, дизъюнкции и отрицания соответственно.

Функции входного и выходного выбора R1 и R2 будут записываться в форме условных выражений МакКарти. При этом для записи оператора импликации используется символ стрелки –>. Слева от этого символа записывается некоторый предикат, а справа, в угловых скобках – множество входных (для функции R1) или выходных (для функции R2) позиций. Предикат T представляет собой тождественно истинное высказывание.

Необходимое и достаточное условие срабатывания перехода представляется следующим выражением:

C(T)=(B(X1)&B(X2)&…&B(Xm))&(^B(Y1)&^B(Y2)&…&^B(Yn))

Таким образом, для срабатывания перехода в элементарной сети данного типа необходимо и достаточно наличие хотя бы одной фишки в каждой из входных позиций и не занятость всех выходных позиций. Напомним, что если некоторая выходная позиция Y является позицией-очередью, то соответствующий ей член ^B(Y) должен быть исключен из выражения для C(T).

Если множество входных или выходных позиций пусто, то в выражении для C(T) будут лишь члены, соответствующие позициям непустого из двух множеств.

Одновременно оба множества входных и выходных позиций пустыми быть не могут.

Функции входного и выходного выбора для элементарной сети типа T являются константами со следующими значениями:

R1 (T) = [T–>{X1, X2,…, Xm}] = {X1, X2,…, Xm},

R2 (T) = [T–>{Y1, Y2,…, Yn}] = {Y1, Y2,…, Yn},

где символ T в квадратных скобках представляет собой тождественно истинный предикат.

Стандартная процедура преобразования FI(T) обеспечивает копирование значений атрибутов фишки из слотов памяти входной позиции X1 и присваивание этих значений соответствующим атрибутам каждой добавленной фишки во всех выходных позициях перехода.

Если пусто множество входных позиций, то в слоты памяти каждой из добавленных фишек стандартно засылаются нулевые значения атрибутов.

Если же пусто множество выходных позиций, то процедура преобразования не определена.

Необходимое условие срабатывания перехода задается следующим логическим выражением:

C(Y)=(B(X1)! B(X2)!…! B(Xm))&(^B(Y1)&^B(Y2)&…&^B(Yn))

Стандартная функция входного выбора R1 представляется выражением

R1 (Y) = [B(X1)–>X1; B(X2)–>X2;…; B(Xm)–>Xm],

т.е. эта функция «вычисляет» первую из входных позиций (при просмотре их в порядке X1, X2,…, Xm), содержащую хотя бы одну фишку.

Общая (нестандартная) функция входного выбора задается выражением

R1 (Y) = [B(X1)&P1–>X1;…; B(Xm)&Pm–>Xm],

где P1,…, Pm – некоторые предикаты.

Функция выходного выбора в сети данного типа является всегда константой:

R2 (Y)=[T–>] = {Y1, Y2,…, Yn}.

Пусть X – некоторая входная позиция, вычисленная функцией R1 (Y). Тогда стандартная процедура преобразования FI(Y) совпадает со стандартной процедурой преобразования FI(T), если в последней заменить позицию X1 позицией X.

При пустом множестве входных позиций элементарная сеть типа Y не отличается от сети типа T, у которой пусто множество входных позиций.

Необходимое условие срабатывания перехода имеет вид:

C(X)=(B(X1)&B(X2)&…&B(Xm))&(^B(Y1)!^B(Y2)!…!^B(Yn))

Функция входного выбора в сети данного типа всегда является константой:

R1 (X) = [T–>{X1, X2,…, Xm}] = {X1, X2,…, Xm}.

Стандартная функция выходного выбора представляется следующим выражением:

R2 (X)=[^B(Y1)–>Y1;^B(Y2)–>Y2;…;^B(Yn)–>Yn],

а общая (нестандартная) функция выходного выбора – выражением:

R2 (X) = [^B(Y1)&P1–>Y1;…;^B(Yn)&Pn–>Yn],

где P1,…, Pn – некоторые предикаты.

Пусть Y – некоторая выходная позиция, вычисленная функцией R2 (Y). Тогда стандартная процедура преобразования FI(Y) реализует перепись атрибутов фишки, извлекаемой из входной позиции X1, и присваивание значений этих атрибутов фишке, добавленной выходную позицию Y.

Если множество выходных позиций пусто, то элементарная сеть данного типа не отличается от сети типа T при пустом множестве ее выходных позиций.

Сеть данного типа сочетает в себе свойства элементарных сетей типов Y и X. Необходимое условие срабатывания перехода задается выражением:

C(G)=(B(X1)! B(X2)!…! B(Xm))&(^B(Y1)!^B(Y2)!…!^B(Yn)).

Стандартные функции входного и выходного выбора R1 (G) и R2 (G) совпадают соответственно со стандартными функциями выбора R1 (Y) и R2 (X) в элементарных сетях типов Y и X. Аналогично, общие (нестандартные) функции входного и выходного выбора R1 (G) и R2 (G) совпадают с общими функциями выбора R1 (Y) и R2 (X) соответственно, при различающихся в общем случае последовательностями предикатов:

R1 (G) = [B(X1)&P11–>X1;…; B(Xm)&P1m–>Xm],

R2 (G) = [^B(Y1)&P21–>Y1;…;^B(Yn)&P2n–>Yn].

Пусть X и Y – некоторые входная и выходная позиции, вычисленные функциями R1 (G) и R2 (G) соответственно. Тогда стандартная процедура преобразования FI(G) реализует перепись атрибутов фишки, извлекаемой из позиции X, и присваивание значений этих атрибутов фишке, добавляемой в позицию Y.

Если множество входных (или выходных) позиций пусто, то элементарная сеть типа G не отличается от элементарной сети типа X (или Y) при пустом множестве входных (или выходных) позиций.

Необходимое и достаточное условие срабатывания перехода имеет вид:

C(I)=(B(X1)&^B(Y1)&^B(X2))! (B(X2)&^B(X1)&^B(Y2)).

Функции входного и выходного выбора сети данного типа могут быть записаны следующими выражениями:

R1 (I)=(B(X1)&^B(Y1)&^B(X2))! (B(X1)&^B(Y1)&B(X2)&B(Y2))–>X1;

(B(X2)&^B(X1)&^B(Y2))! (B(X1)&B(X2)&B(Y1)&^B(Y2))–>X2;

(B(X1)&B(X2)&^B(Y1)&^B(Y2))–>{X1, X2}],

R2 (I)=[(B(X1)&^B(Y1)&^B(X2))! (B(X1)&^B(Y1)&^B(X2)&^B(Y2))–>Y1;

(B(X2)&^B(X1)&^B(Y2))! (B(X1)&B(X2)&B(Y1)&^B(Y2))–>Y2;

(B(X1)&B(X2)&^B(Y1)&^B(Y2))–>{Y1, Y2}].

Ситуация прерывания в сети данного типа возникает при том же условии, как и в сети типа I для обыкновенных Е-сетей. Эту ситуацию можно выразить условием:

B(X1)&B(X2)&^B(Y1)&^B(Y2),

которое в качестве одного из предикатов входит в обе функции R1 (I) и R2 (I).

Стандартная процедура преобразования FI(I) обеспечивает копирование атрибутов фишки из позиции X1 в позицию Y1, либо из позиции X2 в позицию Y2, либо, наконец, из позиции X1 в позицию Y1 и одновременно из позиции X2 в позицию Y2. Конкретное выполнение стандартной процедуры преобразования зависит от истинности конкретной пары предикатов в выражениях для R1 (I) и R2 (I).

    1. Структура системы МИКРОСИМ

МИКРОСИМ состоит из креативной и исполнительной подсистем, которые представлены на внешних носителях информации (дисках) совокупностью файлов. Обе подсистемы интегрированы в единую систему.

Структура каталогов МИКРОСИМ приведена на рисунке 2.2.

      1. Креативная подсистема

Креативная подсистема (от лат. creatio – созидание, порождение) представляет собой интегрированную среду со стандартным пользовательским интерфейсом, подобным пользовательскому интерфейсу системы программирования Турбо Паскаль. Креативная подсистема позволяет решать пользователю следующие основные задачи:

  1. Ввод и редактирование описаний сегментов Е-сетевых моделей на языке ЯОМ, с запоминанием файлов с расширением.JOM в каталоге JOM.

  2. Ввод и редактирование предложений задания параметров моделей на языке ЯЗП, с запоминанием файлов с расширением.JZP в каталоге EXE.

  3. Общая синтаксическая и, отчасти, семантическая проверка сегментов создаваемой модели в терминах языка ЯОМ, с выдачей диагностических сообщений пользователю.

  4. Компиляция описаний сегментов с языка ЯОМ, с получением пары файлов с расширениями.PAS и.NET для каждого компилированного сегмента и их запоминанием в каталоге PAS.

  5. Автоматическое формирование короткой главной Паскаль-процедуры для исполнительной подсистемы. Эта процедура содержит имя головного (или единственного) сегмента создаваемой Е-сетевой модели (файл с расширением.HDR).

  6. Создание загрузочного модуля исполнительной подсистемы для конкретной Е-сетевой модели путем Паскаль – компиляции.PAS‑файлов сегментов данной модели из каталога PAS (с запоминанием.TPU‑файлов в каталоге TPU) и компоновки полученных.TPU‑файлов сегментов вместе с системными.TPU‑файлами из каталога UNITS. Для решения этой задачи используется обычный Турбо Паскаль-компилятор, работающий (для экономии памяти) в режиме командной строки. Результирующий загрузочный модуль исполнительной подсистемы (т.е. Е-сетевая модель) запоминается в каталоге EXE.

  7. Применение всех других опций, характерных для пользовательского интерфейса среды Турбо Паскаль (опции File, Edit, Search и др.).

Таким образом, важнейшими специфическими задачами креативной подсистемы в МИКРОСИМ являются компиляция сегментов с языка ЯОМ (специально разработанным компилятором, загрузочный модуль COMMAIN.EXE в каталоге BIN) и общая синтаксическая проверка сегментов (специально разработанной программой, загрузочный модуль JOMCHECK.EXE в каталоге BIN).

Работа креативной и исполнительной подсистем организуется управляющей программой (загрузочный модуль MICROSIM.EXE в каталоге BIN), работающей в циклическом режиме. Упрощенный алгоритм этой программы приведен на рис. 2.3. Как видно из этого алгоритма, работа креативной подсистемы всегда начинается с запуска интегрированной среды. В этой среде пользователь выбирает необходимую операцию или серию операций (выбор выражается соответствующим кодом завершения среды), а выбранная операция реализуется после выхода из интегрированной среды путем активизации одного или нескольких загрузочных модулей управляющей программой. Если выбранная операция не является операцией окончания работы МИКРОСИМ, то после выполнения операции снова активизируется интегрированная среда, и т.д.

Следует подчеркнуть, что на всех этапах работы системы МИКРОСИМ в оперативной памяти компьютера постоянно находится лишь небольшая по объему управляющая программа (загрузочный модуль MICROSIM.EXE в каталоге BIN). Все остальные компоненты системы (интегрированная среда, программа синтаксической проверки, компиляторы ЯОМ и Турбо Паскаль, исполнительная подсистема) загружаются в память по мере необходимости, сменяя друг друга. Это значит, что МИКРОСИМ работает в режиме логического оверлея ее основных программных компонентов.

Е-сетевая модель может состоять из одного сегмента или из нескольких сегментов, один из которых является головным. После сборки модели исполнительная подсистема обеспечивает возможность установки параметров и исследования характеристик модели, реализуемую компилятором языка задания параметров (ЯЗП), интерпретатором и подпрограммами сбора и обработки статистики. Все эти компоненты реализуются системными модулями МИКРОСИМ из каталога UNITS.

Компилятор ЯЗП выполняет обработку предложений ЯЗП и устанавливает значения параметров готовой Е-сетевой модели, указанные в этих предложениях. Параметрами модели являются начальная разметка соответствующей Е-сети, признаки сбора статистики для позиций и переходов, признаки трассировки срабатывающих переходов в сегментах и др.

Интерпретатор реализует алгоритм функционирования Е-сетевой машины, и, таким образом, обеспечивает моделирование параллельных процессов, протекающих в Е-сети, состоящей из сегментов, входящих в модель. Интерпретатор использует подпрограммы сбора статистики для накопления статистической информации об исследуемых характеристиках модели (например, о длинах очередей, числе срабатываний переходов и т.д.). Диагностические сообщения интерпретатора о ходе моделирования помещены в отдельный файл.

По окончании моделирования подпрограммы обработки статистики обеспечивают выдачу результатов моделирования в виде гистограмм и таблиц, содержащих значения исследуемых характеристик модели (например, средние длины очередей, коэффициенты занятости позиций и т.д.).

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

Для контроля за правильностью сборки модели и корректностью работы интерпретатора исполнительная подсистема позволяет просматривать модель путем получения справочной информации о содержимом структур данных, составляющих сетевые компоненты сегментов.

Диалог пользователя с исполнительной подсистемой реализуется с помощью иерархической системы меню. О запуске подсистемы свидетельствует появление главного меню на экране дисплея. Это меню содержит следующие разделы (режимы): Assemble, Parameters, Modeling, Results, Quit, Inspect, Save, Load и Shell.

В настоящей версии реализованы лишь первые пять из перечисленных режимов.

Каталог UNITS:

CONNECT.TPU – Модуль связи процедур пользовательского интерфейса.

HELP.TPU – Процедуры поддержки справочных сообщений и сообщений об ошибках.

INSTAL.TPU – Инициализирующие операции при запуске исполнительной подсистемы.

ISPCOMP.TPU – Главная процедура компилятора предложений ЯЗП.

ISPGLOB.TPU – Глобальные описания для исполнительной подсистемы.

ISPINT.TPU – Интерпретатор моделей (Е-сетевая машина).

ISPPAUTO.TPU – Интерфейс с синтаксическим автоматом.

Характеристики

Список файлов ВКР

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7023
Авторов
на СтудИзбе
260
Средний доход
с одного платного файла
Обучение Подробнее