ПОИСК Статьи Чертежи Таблицы Параллельно-временные порождающие грамматики из "Компьютерная поддержка принятия решений " В предыдущем разделе было показано, как, используя знаковые графы или таблицы типа 2.9 и 2.10, построить формальную грамматику и порожденный ей язык, описывающий последовательность операций в допустимых сценариях. [c.122] ЛПР может использовать когнитивную карту, а может и заново указать возможную последовательность выполнения операций. Это можно сделать с помощью курсора, отмечая пары операций, которые могут выполняться одна после другой. При этом если после некоторой операции могут выполняться сразу несколько других операций, это значит, что существует альтернатива выполнения одной из них. [c.122] Наконец, ДПР должен отметить, какие операции должны выполняться параллельно (одновременно). Это так же можно сделать курсором и генерацией какого либо специального признака. Эта информация может храниться и в базе данных вместе со списком операций. [c.122] На основании этих отметок система поддержки принятия рещений создает порождающую грамматику. Назначение грамматики - порождение строк, описывающих последовательности операций. Поэтому грамматика должна использовать временные характеристики выполнения операций и возможность их одновременной (параллельной) реализации. [c.122] Временные характеристики чрезвычайно важны во многих приложениях при выработке решений по ликвидации чрезвычайных ситуаций, оценке решений по сложившейся финансовой обстановке, поиска путей реорганизации промышленных фирм и т.д. Временные характеристики очень часто выступают в виде ограничений. Поэтому варианты решений, не отвечающие временным требованиям, просто отбрасываются. [c.122] Множество Т состоит их элементов 1 еТ, характеризующих время выполнения операций х в моделируемом процессе. [c.122] Как обычно в формальных грамматиках, под символом понимается минимальная по числу знаков строка, используемая в данной грамматике или в описываемом ей языке, которая имеет самостоятельное значение. [c.123] Таким образом, это правило моделирует циклическое выполнение последовательности операций. [c.124] В тех случаях, когда символ В может порождать несколько параллельных процессов, а в цикле необходимо повторять только некоторые из них, можно ввести фиктивный символ, порождающий только повторяющуюся в цикле группу параллельных процессов. [c.124] Пример В. Ликвидация последствий аварийного разлива нефти. Вернемся к нашему примеру из раздела 2.2 и построим для него параллельно-временную порождающую грамматику. Заметим, что для построения грамматики по табл. 2.9 нам не нужно знать степень влияния переменных друг на друга, но потребуется информация о параллельности выполнения операций и организации циклов (если они есть). [c.124] Исходя из этих требований ЛПР может легко преобразовать матрицу, показанную в табл. 2.9 в матрицу, показанную в табл. 2.12 (средства поддержки такого преобразования здесь не рассматриваются. Их можно сделать эффективными для ЛПР). [c.124] Штрих у символа А означает начало выполнения параллельного процесса, значки показывают, что параллельно могут выполняться операции В,С и О. Заметим, что возможность параллелизма вовсе не означает его обязательность, операции В.С н В могут быть выполнены и последовательно друг за другом. Значок / означает, что после операции, указанной в строке матрицы, выполняется операция, указанная в столбце. Цифра 4 на пересечении строки О и столбца I указывает на необходимость организации цикла, то есть повторения последовательности операций 01 в данном случае 4 раза. [c.124] Если в клетке табл. 2.12 на пересечении строки X и столбца У стоит символ , это означает порождение правила типа Х - (1у). [c.125] Если в клетке табл. 2.12 на пересечении строки X и столбца У стоит символ /, то это означает порождение правила типа Х- (1у). [c.125] Если в клетке табл. 2.12 на пересечении строки X и столбца У стоит цифра - это означает порождение правила т]лшХ(1 (1у). [c.125] Времена выполнения операций могут быть взяты из базы данных (см. табл. 2.13) или указаны ЛПР. При оценке временных характеристик 1х выполнения операций X необхо-димо учесть влияние операции X, на время выполнения операции Xj Времена выполнения операций могут быть показаны в таблицах, аналогичных табл. 2.13. В столбце табл. 2.13 указаны времена автономного выполнения операций, когда выполнение этой операции не совмещается с другой, дополняющей ее. Например, распыление химических веществ не дополняется использованием биологических веществ. [c.126] Дробь в клетке табл. 2.13 показывает, как сокращается время выполнения операции x , указанной в строке, если она выполняется совместно с операцией л ), указанной в столбце. Черта в таблице показывает, что время выполнения операции х, не зависит от выполнения операции XJ. Наконец, времена выполнения операции, зависящие от объема работ, например, распыление химических веществ, использование биологических и горючих веществ и т.п., указаны для единицы объема работы 1 км загрязненной территории, 1 тонны пролитого вещества и т.д. на единицу оборудования. Такие характеристики как время активизации командного пункта, сбор и приведение в готовность оборудования и т.п. указаны в абсолютных цифрах. В табл. 2.13 это строки А-О. Возможно введение и других условий. [c.126] Алгоритм автоматического порождения системой последователь-ности строк (т.е. порождения сценариев) уже был рассмотрен выше. [c.126] Для выполнения первых двух особенностей можно модифицировать известный алгоритм Ьасг1гаск1п [2.34]. [c.126] Идея алгоритма проста если можно, то идем вперед, порождая цепочки символов, если цепочка порождена - возвращаемся назад до полного перебора всех грамматических правил. [c.126] Вернуться к основной статье