Моделирование процессов принятия решений на основе системы интеллектуального имитационного моделирования РДО (Еремеев А., Шутова П.), страница 7
Описание файла
Документ из архива "Моделирование процессов принятия решений на основе системы интеллектуального имитационного моделирования РДО (Еремеев А., Шутова П.)", который расположен в категории "". Всё это находится в предмете "теория игр и исследование операций" из 8 семестр, которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "теория игр и исследование операций" в общих файлах.
Онлайн просмотр документа "Моделирование процессов принятия решений на основе системы интеллектуального имитационного моделирования РДО (Еремеев А., Шутова П.)"
Текст 7 страницы из документа "Моделирование процессов принятия решений на основе системы интеллектуального имитационного моделирования РДО (Еремеев А., Шутова П.)"
text [497, 76, 250, 15, <255 255 255>, <204 153 153>,
'Количество студентов в очереди:']
text [650,76, 100, 15, transparent, <255 0 0>,
> Зачет_1.Количество_студентов_в_очереди]
Битовая карта (bitmap) имеет формат:
bitmap "[" <X_координата>, <Y_координата>, <имя_объекта_битовой_карты>, <имя_объекта_маски> "]"
Для создания элемента отображения в виде битового образа произвольной формы необходимы два объекта: объект изображения и объект маски. Оба этих объекта должны иметь формат аппаратно-независимой битовой карты (BMP-формат). Они могут быть созданы с помощью графического редактора. Имена этих объектов без типа указывают в описании свойств элемента. Тип объектов должен быть .bmp.
Объект изображения содержит рисунок элемента (спрайта), изображенный на черном фоне. Маска содержит силуэт спрайта. Она черная на белом фоне. Такое сочетание изображения и маски приводит к тому, что в тех областях, где маска черная, будет изображаться рисунок спрайта, а там, где маска белая, будет виден фон, на котором изображается элемент.
Пример на описание элемента типа битовая карта:
bitmap [Дверь.Координата_X, Дверь.Координата_Y,
door1, door1msk]
С
одержимое объектов door1 и door1msk приведено ниже (маска справа).
При использовании таких изображения и маски на экране будет видна приоткрытая дверь на фоновой картинке кадра. При изменении параметров Дверь.Координата_X и Дверь.Координата_Y дверь будет перемещаться.
Маштабируемая битовая карта (s_bmp) имеет формат:
s_bmp "[" <Х_координата>, <Y_координата>, <ширина>, <высота>, <имя_объекта_битовой_карты>, <имя_объекта_маски> "]"
Элементы этого типа описываются аналогично битовым картам за исключением того, что после координат записывают арифметические выражения для вычисления размеров элемента. Исходный битовый образ, находящийся в объектах изображения и маски, растягивается или сжимается независимо по двум осям так, чтобы его размеры стали равны размерам элемента.
Пример на описание элемента типа масштабируемая битовая карта, в котором исходный битовый образ перемещается по осям и масштабируется по оси X:
s_bmp [ Рис.Координата_X, Рис.Координата_Y,
Рис.Координата_X / 50, 40, ring, ringmsk]
Прямоугольник (rect) имеет формат:
rect "[" <Х_координата>, <Y_координата>, <ширина>, <высота>, <цвет_фона>, <цвет> "]"
Этот элемент изображает в заданных координатах прямоугольник заданного размера с указанным цветом границы и заполнения. Стороны прямоугольника параллельны координатным осям. Если координаты или размеры любого графического элемента описаны в виде арифметических выражений, то при изменении их значений элемент будет перемещаться и изменятся в размерах. Граница изображается линией толщиной в один пиксель.
Пример описания прямоугольника:
rect [ 486, 80, 264, 440, transparent, <0 0 0>]
В этом примере изображается прозрачный прямоугольник, верхний левый угол которого расположен в точке (486, 80), длина стороны по оси X равна 264, а по оси Y 440. Граница прямоугольника имеет черный цвет.
Прямоугольник со скругленными углами (r_rect) имеет формат:
r_rect "[" <X_координата>, <Y_координата>, <ширина>, <высота>, <цвет_фона>, <цвет> "]"
Этот элемент описывается так же, как и прямоугольник. Различие в изображении состоит в округлении углов прямоугольника, которое производится дугой окружности с радиусом, равным минимальному из двух размеров прямоугольника, деленному на два.
Отрезок прямой (line) имеет формат:
line "[" <Х_координата_1>, <Y_координата_1>,
<Х_координата_2>, <Y_координата_2>, <цвет> "]"
Этот элемент изображает отрезок прямой заданного цвета между двумя точками с указанными координатами. Толщина линии равна одному пикселю.
Эллипс (ellipse) описывается в формате:
ellipse "[" <Х_координата>, <Y_координата>, <ширина>, <высота>,
<цвет_фона>, <цвет> "]"
Этот элемент изображает в заданных координатах эллипс с заданными длинами осей с указанным цветом границы и заполнения. Оси эллипса параллельны координатным осям. Координаты задают положение левого верхнего угла описанного прямоугольника со сторонами, параллельными координатным осям. Ширина определяет длину оси эллипса, параллельной оси X, высота длину оси эллипса, параллельной оси Y. Граница изображается линией толщиной в один пиксель.
Треугольник (triang) имеет формат:
triang "[" <Х_координата_1>, <Y_координата_1>,
<Х_координата_2>, <Y_координата_2>,
<X_координата_3>, <Y_координата_3>, <цвет_фона>, <цвет> "]"
Треугольник задается координатами трех его вершин. Как и у прямоугольников и эллипсов, внутренняя область треугольника может быть прозрачной либо иметь какой-либо цвет. Граница треугольника изображается линией указанного цвета толщиной в один пиксель.
Пример задания множеств отображения:
Show
text [175, 80, 50, 20, <255 255 0>, <0 0 255>,
< Экзамен.Очередь1 ]
text [417, 80, 50, 20, <255 255 0>, <0 0 255>,
< Экзамен.Очередь2 ]
{Очередь за дверью из примера Examen:}
Show_if Экзамен.Очередь1 => 1
bitmap [40, 360, say, saymask]
Show_if Экзамен.Очередь1 => 2
bitmap [41, 370, say, saymask]
Show_if Экзамен.Очередь1 => 3
bitmap [42, 380, say, saymask]
. . . . . .
4. ОБЪЕКТЫ ТРАССИРОВКИ И СБОРА СТАТИСТИКИ
4.1. Объект трассировки
Этот объект создается РДО-имитатором, если в объекте прогона присутствует дескриптор, задающий имя объекта трассировки. Объект имеет расширение .trc и следующий формат:
Results_file = <имя_объекта_результатов>.pmv <дата_создания>
Run_file = <имя_прогона>.smr
Model_name = <имя_модели>
Resource_file = <имя_объекта_ресурсов>.rss
OprIev_file = <имя_объекта_операция>.opr
$Changes
<список_изменений>
$Watching
{ <описание_трассируемого_показателя> }
$Тrасing
<трассировка>
$Status = <статус_окончания_моделирования> <модельное_время_окончания>
{ <статистика_по_поиску_на_графе> }
DPS_MM <объем_использованной_памяти>
Имена модели, объекта ресурсов и объекта операций это имена, заданные в объекте прогона. Список изменений содержит имена и новые значения символьных констант, параметров ресурсов и баз генераторов последовательностей, заданные в объекте прогона. Описание трассируемого показателя приводится только для тех показателей, для которых в объекте описания показателей задан признак трассировки trace. Описание трассируемого показателя имеет формат:
<имя_показателя> <номер_показателя> <вид_показателя>
Имя показателя это одно из имен, заданных в объекте описания показателей. Номер показателя определяется порядком описания показателей в этом объекте, вид показателя также описан в этом объекте.
Трассировка содержит информацию четырех видов: трассировку событий, трассировку состояния ресурсов, трассировку показателей и трассировку точек принятия решений; и выдается при условии, что текущее модельное время больше или равно времени начала трассировки и меньше или равно времени окончания трассировки, а также если в соответствующем объекте (ресурсе, образце, показателе или точке принятия решений) явно указан признак трассировки trace.
Информация о событии располагается на отдельной строке, которая имеет следующий формат:
Е<тип_события> <время> <информация_о_событии>
Строка трассировки события начинается символом "Е". Второй символ строки определяет тип события. Возможны следующие типы и соответствующие им символы:
S служебное событие;
В начало действия;
Е окончание действия;
I нерегулярное событие;
R продукционное правило.
Поле <время> содержит время наступления события в формате вещественного числа. Далее следует информация о событии, которая зависит от типа события. Для служебных событий эта информация включает в себя только номер служебного события. В данной версии системы имеется только четыре служебных события:
1 начало трассировки;
2 конец трассировки;
3 начало моделирования;
4 завершение процесса поиска на графе состояний в точке принятия решений.
Для событий начала и окончания действий информация о событии имеет следующий формат:
<номер_действия> <номер_операции> <номер_образца> <число_релевантных_ресурсов> <список_номеров>
Номер действия это внутренний номер, который имеет место в имитаторе. Этот номер необходим, чтобы связать события начала и окончания одного и того же действия, другой полезной информации он не несет. Следующие два поля содержат номер операции, которая выполнялась в действии, и номер образца этой операции. Эти номера считаются по порядку описания в объектах операций и образцов операций. Далее следует число релевантных ресурсов действия и список их номеров.
Для нерегулярных событий информация о событии имеет следующий формат:
<номер_нерегулярного_события> <номер_образца> <число_релевантных_ресурсов> <список_номеров>
Для продукционных правил информация о событии имеет следующий формат:
<номер_действия> <номер_правила> <номер_образца> <число_релевантных_ресурсов> <список_номеров>
Трассировка состояния ресурсов включает в себя информацию обо всех изменениях состояния ресурсов. В момент изменения состояния трассируемого ресурса в объект трассировки выдается отдельная строка следующего формата:
R<символ_статуса> <время> <номер_типа> <номер_ресурса> <новые_значения_параметров>
Символ статуса показывает, что произошло с ресурсом в целом:
С ресурс создан;
Е ресурс уничтожен;
К значения параметров ресурса изменились.
Номер типа и номер ресурса определяются порядком следования типов и ресурсов в объекте описания типов и объекте ресурсов соответственно. Новые значения параметров выводятся в объект в порядке следования параметров при описании типов ресурсов. Для перечислимых параметров выводятся не имена значений, а их номера. При этом первому имени значения присваивается номер 0, второму 1 и так далее.
Трассировка состояния ресурсов производится только в том случае, если текущее модельное время больше или равно времени начала трассировки и меньше или равно времени окончания трассировки, и если для ресурса в объекте ресурсов указан признак трассировки trace. Для ресурсов, которые уничтожаются (символ статуса "Е"), новые значения параметров не выводятся.
Строка трассировки показателя имеет следующий формат:
V <время> <номер_показателя> <значение>
Номер показателя это номер, указанный для трассируемых показателей в секции $Watching объекта трассировки. Трассировка показателей производится в момент изменения значения параметра, числа временных ресурсов, значения логического выражения (для показателя вида watch_state) или в момент уничтожения ресурса (для показателя вида watch_value). Значение зависит от вида показателя. Ниже приведены значения для всех видов показателей:
watch_par – новое значение параметра постоянного ресурса;
watch_state – новое значение логического выражения;
watch_quant – новое значение количества временных ресурсов;
watch_value –значение арифметического выражения в момент уничтожения временного ресурса.
Трассировка показателя вида get_value не производится.
Пример трассировки показателей:
V 0.0000 1 FALSE
V 0.4300 22 6
V 0.5530 24 2.0000
Трассировка процесса поиска на графе в точке принятия решений типа search позволяет полностью восстановить картину поиска и полученный граф. Формат трассировки имеет вид:
<начало_поиска>
[ <информация_о_поиске> ]
[<решение>]
<окончание_поиска>