Сайт Информационных Технологий

СИСТЕМА СЕТЕВОГО МОДЕЛИРОВАНИЯ С ИНТЕРФЕЙСОМ НА ЕСТЕСТВЕННОМ ЯЗЫКЕ

Ю.А.Фураева, О.Ю.Сабинин

Санкт-Петербургский государственный электротехнический университет “ЛЭТИ”

Abstract — In the modern system of simulation modelling discrete-unceasing processes are broadly used network Petry. Such system Defect - a difficulty of entering a big amount information, describing structure and speaker to network. New approach is offered in article to building of simulation modelling systems, based on use natural language.

Имитационное моделирование – один из основных инструментов исследования и проектирования сложных динамических систем. Современная система имитационного моделирования основана на различных математических схемах. Однако для проектирования дискретно – непрерывных процессов наибольшее распространение получили сети Петри. Теория сетей Петри делает возможным моделирование системы математическим представлением ее в виде сети Петри. Анализ сетей Петри помогает получить важную информацию о структуре и динамическом поведении моделируемой системы. Эта информация необходима для оценки системы и выработки предложений по ее усовершенствованию и модификации [1].

В качестве инструмента исследования систем предполагается использовать расцвеченные сети Петри [4].

Расцвеченная сеть Петри состоит из четырех составляющих: Множества позиций Р, Множества переходов Т, Входной функции I, Выходной функции О [1].

Структура расцвеченной сети Петри представляет собой совокупность позиций и переходов, соединенных ориентированными дугами А. Дуга, направленная от позиции к переходу, определяет позицию, которая является входом перехода. Выходная позиция указывается дугой от перехода к позиции [1].

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

Важными характеристиками сетей является время задержки перехода и приоритет цветов [1].

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

Сформулируем три задачи, которые необходимо решить в этом случае:

  1. Ввод сетевой модели в базу данных в виде естественно – языковых предложений. Пользователь вводит с клавиатуры словесное описание модели, представленной в виде сети Петри. Например: Переход номер 1 связан на входе с позицией номер 5 дугой цвета 3.
  2. Анализ состояния базы данных по вопросам. Здесь осуществляется проверка правильности ввода информации с помощью вопросов. Например: Какой переход связан на входе с позицией номер 5?
  3. Анализ сетевой модели. Здесь осуществляется оценка моделируемой системы и выработка предложений по её усовершенствованию и изменению

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

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

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

При вводе информации о сетевой модели возможны различные формулировки предложений, например:

Существует много методов анализа естественно-языковых предложений.

  1. Нахождение ключевого слова. Можно использовать в тех случаях, когда можно гарантировать, что это слово в предложении несет всю важную информацию [2].
  2. Использование ключевых слов для извлечения из запросов характерных образцов. Каждый запрос ассоциируется с одним и только одним образцом. Эти образцы содержат информацию о типе вопроса и об отношении, которого касается вопрос. Образец, ассоциированный с конкретным запросом, может быть использован для запуска соответствующих операций поиска в базе данных [2].
  3. Анализ синтаксической структуры предложения. Алгоритм такого анализа состоит в сведении к набору правил Пролога всех форм, которые может принимать предложение. Далее осуществляется сопоставление предложения с этими правилами. Если одно из правил запускается, то, значит, структура предложения совпадает с заложенной в него структурой [2].
  4. Анализ семантической структуры предложения – тематический анализ посредством падежной грамматики. Для предложения-действия главным элементом является глагол, находящийся среди групп существительных, которые поясняют его действия. Для семантического анализа необходимо изучить эти группы существительных, то есть их падежи. Падеж определяет отношение к главному глаголу данной группы существительных [2].

Рассмотрим на примере анализ одного из таких предложений:

Переход номер 9 имеет время задержки по цвету 5 равное 3 секунд.

После этапов преобразование и фильтрации предложение примет вид

["переход", "9", "имеет", "время", "задержки", "по", "цвету", "5", "3", "секунд"]

В данном примере на этапе синтаксического анализа используется метод анализа по парам различий. Метод заключается в том, что анализатор передает часть своей работы некоторой иерархии низкоуровневых правил, каждое из которых выполняет определенный элемент задачи синтаксического анализа [2].

Каждая программа в иерархии получает список слов в качестве входных данных. Этот список составляет часть первоначального запроса. Подпрограмма высшего уровня получает весь запрос целиком. Следующая подпрограмма, расположенная на более низком уровне, анализирует первое слово списка. Она выполняет все возможные действия в рамках той информации, которая содержится в данном слове, а затем передает оставшуюся строку ещё более низкоуровневой программе для дальнейшей обработки. Эта подпрограмма, в свою очередь, анализирует только одно слово и выполняет все возможные (с учетом накладываемых им ограничений) действия и т.д. На некотором конечном низком уровне больше слов в строке не останется, т.е. весь запрос будет проанализирован. Тогда низкоуровневые подпрограммы начнут возвращать информацию на более высокие уровни и можно получить полный ответ [3].

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

ПРОВЕРКА отщепляет от списка первое слово "переход" и проверяет знакомо ли оно системе.

СООТВЕТСТВИЕ отделяет лексему "9" .

АССОЦИАЦИЯ анализирует слово "имеет". Система подтверждает, что для лексемы "иметь" есть соответствующая ассоциация в базе данных: ассоциация ("с", ["имеет"]). Таким образом, "имеет" будет преобразовано в "с".

С лексемой "время" опять работает ПРОВЕРКА.

Следующую лексему "задержки" проверяет АССОЦИАЦИЯ и находит в базе данных: ассоциация ("время", ["время", "задержки"]). То есть лексемы "время" и "задержки" будут преобразованы в одну лексему "время".

С лексемой "по" также работает АССОЦИАЦИЯ. Система подтвердит, что такой предлог есть в базе данных.

ПАДЕЖ анализирует слово "цвету" и осуществляет его преобразование к форме именительного падежа "цвет".

СООТВЕТСТВИЕ отделяет лексемы "5" и "3".

ПРОВЕРКА отщепляет последнюю лексему "секунды", и система информируется о том, что слов в списке больше нет.

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

"переход", "9", "с", "время", "по", "цвет", "5", "3", "секунды".

Здесь сформировались связи и единицы измерения, соответствующие базе данных:

Схема ("переход", "с", "время")

Схема ("время", "по", "цвет")

Измерение ("время", "секунд")

Таким образом, в базу данных будет записана информация:

Переход (Т9,[],[],[],[],[С5/3])

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

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

В текущей базе данных будет храниться информация:

Переход (номер, [список входных позиций], [список выходных позиций], [список входных дуг], [список выходных дуг], время задержки по цвету);

Позиция (номер, количество меток, [список меток с указанием цвета], [список входных дуг], [список выходных дуг]);

Дуга (номер, цвет, количество, входная позиция, выходной переход, выходная позиция, входной переход).

В постоянной базе данных будет храниться информация:

Схема ("время", "по", "цвет").

Ассоциация ("с", ["имеет"])

Ассоциация ("время", ["время", "время задержки"]).

Измерение ("время", "секунд").

Особенность ("переход", "время")

Особенность ("позиция", "метка")

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

Литература

  1. Питерсон Дж. Теория сетей Петри и моделирование систем. – М: Мир, 1984.
  2. Хант Э. Искусственный интеллект. – М: Мир, 1978.
  3. Фураева Ю.А., Воробьев С.В., Сабинин О.Ю. Экспертные системы моделирования с интерфейсом на естественном языке //Известия СПбГЭТУ, 1997.
  4. Сабинин О.Ю. Основы теории робототехнических систем. – СПб: СПбГЭТУ, 1991.

Site of Information Technologies
Designed by  inftech@webservis.ru.