Описание сложного поведения объектов в задачах
создания имитационных моделей

О. Ю. Яковенко (Москва)
 

Введение

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

В процессе создания моделей описывающих работу сложных организационно-технических систем возникает необходимость наличия инструментария, который бы позволял минимизировать затраты на описание сложного поведения объектов[1]

Инструментарий есть отображение некоторого подхода, формализма, методики, технологии.

Описываемый в настоящей статье подход к описанию сложных поведенческих моделей, который применяется нами в комплексе средств имитации «Фантомат» не претендует на методику в строгом смысле. На сегодняшний момент это можно рассматривать скорее, как некоторые рекомендации по описанию сложных моделей. Рекомендации, которые явились обобщением нашего опыта имитационного моделирования организационно технических систем, включающих сложные поведенческие модели, и нашли свое отражение в наборе инструментальных средств, разрабатываемых для решения вышеописанных задач.

Тем не менее, поскольку речь идет о некоторой технологии и инструменте, построенном над ней – важно сразу определить требования, которые мы предъявляем к ним. Озвучивание этих требований, как мне кажется – может заранее снять множество вопросов, касающихся того подхода, который мы используем.

На наш взгляд основные требования:

-     адекватность;

-     компактность описания;

-     интерпретируемость описания неспециалистом;

-     масштабируемость;

-     расширяемость.

Под адекватностью в данном случае понимается возможность используемой методики и инструмента, построенного над ней – адекватно описать предметную область, для которой он предназначен не привнося в описание – собственной системной ошибки.

Под компактным описанием мы понимаем такое описание, при котором минимизируется количество сущностей, и их экземпляров, участвующих в описании.

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

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

Масштабируемость – методика должна позволять описывать разные типы поведения. Методика должна позволять итерационно проводить процесс разработки поведенческой модели постоянно уточняя и дополняя поведенческую модель.

Расширяемость – под расширяемостью имеется ввиду возможность расширения функциональности инструментария.

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

Декомпозиция поведения

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

Если рассматривать модель поведения человека, то для решения прикладных задач можно выделить несколько важных элементов в этой модели:

-          создание и поддержание модели мира;

-          выработка и принятие решений;

-          исполнение решений.

Создание и поддержание модели мира

Элемент «создание и поддержание внутренней модели мира» – отражает то, что человек в процессе познания окружающего мира строит в своем сознании – модель окружающего мира, которая пополняется и детализируется весь период существования носителя этой модели. Внутренняя модель мира включает в себя информацию об объектах окружающего мира, их изменении во времени, их взаимодействии и т. д. В создание модели для простоты изложения включён и процесс ее постоянной актуализации по отношению к окружающему миру.

Выработка и принятие решений.

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

«Выработка и принятие решений» – слишком широкое понятие и для того, чтобы довести этот процесс до инструментального воплощения необходимо декомпозировать его на более мелкие составляющие.

Для решения прикладных задач мы декомпозируем процесс принятия решений на несколько этапов:

-          распознавание ситуации;

-          выработка цели;

-          построение плана достижения цели

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

Распознавание ситуации

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

Налицо некоторая рекурсия. Поэтому, чтобы отсечь ее – примем следующее:

Все, о чем говорилось выше, назовем – Мир. Мир – это все, что вокруг нас, и мы внутри него. И Мир – внутри нас!

Мир изменяется. Изменяясь – мир переходит от одного состояния к другому. Различные состояния мира – ситуации.

Некоторые из них для нас не имеют никакого значения (в обозримом интервале времени) или их влиянием – можно пренебречь. Некоторые – очень важны. Это те состояния, которые влияют на нас или связаны с возможностью такого влияния.

Важны также ситуации, в которых мы можем влиять на мир вокруг нас.

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

Множество состояний мира, которые нам известны, назовем стереотипные ситуации.

Подведем итог: из всего множества стереотипных ситуаций мира нас интересуют те, в которых необходимо и/или возможно изменение поведения объекта.

Для оценки состояния мира – необходимо научиться распознавать эти ситуации.

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

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

Выработка цели

Под целью далее понимается некоторое желаемое положение сущности, управляющей своим состоянием – в пространстве ее состояний.

В качестве примера можно привести:

Цель хорошего солдата: достичь такого состояния, когда он – генерал.

Цель бизнесмена – такое место в его пространстве возможных состояний, в котором все конкуренты повержены, а он – на Гавайях.

Цель стрелка – достичь такого состояния, когда мишень повержена.

Цели могут иметь несколько уровней. Цели могут быть главными и промежуточными.

Главная цель объекта – такое состояние мира, для достижения которого существует объект. Определение несколько рекурсивно, однако для решения прикладных задач – вполне приемлемое.

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

Выработка цели заключается в определении того, какие из целей в настоящее время актуальны. Одновременно у объекта может быть несколько целей. Эти цели могут иметь разный приоритет, могут быть противоречивы. Задача системы выработки целей, определить какие из множества целей могут быть поставлены на исполнение в текущий момент времени.

Планирование

Когда определены цели, необходимо ответить на вопрос: как их достигать?

То есть, через какую последовательность состояний должен пройти объект для того, что бы достичь заданного состояния. Множество согласованных последовательностей состояний, которые гарантированно переводят объект в целевое состояние – план.

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

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

Такой граф будем называть картой поведения.

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

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

Реализация

В настоящее время функциональности представленной схемы реализованы в комплексе средств имитационного моделирования «Фантомат», а именно, в подсистеме описания сложного поведения.

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

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

-     модель действий единичного бойца в условиях проведения специальной операции;

-     модель поведения танка (модель принятия решений командиром танка) в условиях боя;

-     модель поведения отдельного человека в местах скопления больших масс людей.

Выводы

Подход к описанию сложного поведения объектов, используемый в комплексе средств имитационного моделирования «Фантомат», позволяет описывать достаточно широкий спектр моделей поведения, включаемых в имитационные модели сложных организационно-технических систем.

Основное достоинство данного подхода – его индустриальность, которая позволяет использовать этот подход как основу для комплекса инструментальных средств описания сложного поведения.

[1] Под сложным поведением далее понимается поведение некоторой сущности для достижения некоторой цели, имеющей внутреннюю (собственную) модель мира и себя в этом мире, на основе которой она принимает решения.