Исходный URL: http://www.alife-soft.narod.ru/note/m_nets/m_nets.html
Аппарат активных семантических сетей был разработан в Киевском институте кибернетики и долго оставался неизвестным множеству сетевых пользователей. Он был разработан, как средство построения активных систем знаний. Его основные идеи были предложены Амосовым Н.М. и далее развиты до реального применения. В данной статье мы попробуем дать краткое описание того огромнейшего труда, который и привел к создания такой удобной модели. Основная особенность М-сети , отличающая ее от семантических сетей известного типа состоит в том, что на множестве ее узлов и связей определены операции передачи возбуждения- численной величены, характеризующей активность атомов информации. В каждый момент времени состояние сети может описано активностью предыдущих состояний. Самой основной характеристикой является возможность задания активности знаний, то есть знания представляют собой не какой-то список, а объектный связанный массив.
Общее представление проблемы.
Рисунок 1. Модель интеллектуальной системы.
На рисунке 1 видно, как М-сеть работает с внешним миром. Сразу можно предположить, что для нормального функционирования системы необходимо:
Обратная связь осуществляется через датчики и активаторы, по одним информация поступает в систему, по другим система влияет на окружающую среду. Датчики и активаторы имеют сложные (но жесткие) процедуры обработки информации и могут производить распознавание или собственную коррекцию решений. М-сеть представляет собой модель мира и производит обработку и принятие глобальных решений. Получается, мы имеем систему, которую можно назвать интеллектуальной и даже "живой", так как она способна принимать решения на уровне высокоразвитых животных.
Математическое описание М-сети.
Рисунок 2. Общая структура М-сети.
На рисунке 2 изображена М-сеть в классической форме.
Датчик - представляет собой реальный датчик или математически обработанную информацию, которая представляется в виде численной величины, характеризующей текущее значение актуальности либо соответствия информации.
Узел - объект, который содержит процедуру действия при его возбудимости. Процедура может активировать жесткий алгоритм обработки, другую М-сеть, другую нейросеть:
Связь активирующая связь, усиливает возбудимость узла-приемника.
Связь деактивирующая связь, ослабляет возбудимость узла-приемника.
Ниже изображена функция активации узлов.
Имеются 2 канала, по которым возбуждение поступает в М-сеть. Первый - восприятие внешнего мира или система "виртуальных датчиков". При активации датчика изменения передаются через связи к узлам М-сети. От них возбуждение передается на остальные узлы.
Второй- память самих узлов. Все значения на каждом из узлов сохраняются и пересчитываются в последующие моменты времени. Возбуждения узлов в функционирующей М-сети изменяются, что обеспечивает гибкую систему поддержания целостности модели мира. Особую роль в регуляции активности сети играет СУТ.
СУТ представляет собой систему, которая в каждый момент времени обеспечивает доминирование одного или нескольких близких по значениях узлов над всеми остальными. СУТ осуществляет на сети положительную обратную связь по усиления активности. В каждый момент она выбирает один наиболее возбужденный узел(или несколько) и дополнительно повышает его возбуждение и уменьшает возбудимость остальных узлов.
Алгоритмы СУТ таковы, что возбуждение выделенных ею узлов постепенно уменьшается во времени. При этом пропорционально растормаживаются остальные узлы. Возбуждение от узлов выделенных СУТ, распространяется по всей сети, вызывая перераспределение активности. В результате СУТ переключается на другие узлы и процесс повторяется. Таким образом СУТ противодействует эффекту "осла" и система не может войти в dead lock.
Активированные с помощью СУТ узлы производят выполнение привязанных к ним процедур, названных выше активаторами. Процедура может выполнять любые вычисления, например, запускать обработку другой М-сети, производить противоракетный маневр, запускать FineReader и производить распознавание страницы:
Основная проблема в функционировании М-сети состоит в том, что в ней отсутствует обучение и автоформализация данных. Таким образом, человек сможет визуально отобразить функционирование объекта, создать связи между информационными атомами и настроить веса связей. Далее сеть всего лишь изменяет статусы и активационную мощность узлов. М-сети представляют собой язык программирования нечеткой логики.
Рассмотрим, в общем, преимущества и недостатки М-сетей.
Преимущества М-сетей.
Недостатки М-сетей.
Пример описания системы с помощью М-сети.
На рисунке 3 изображена система, которая представляет собой дорогу с реверсивным(однонаправленным) движением и два светофора, которые это движение регулируют.
Рисунок 3. Пример решаемой задачи.
С1 это светофор 1, который управляет движение той стороны, в которую направлен, аналогично со светофором 2. То есть машины могут ездить в разные стороны, в зависимости от статусов светофора. Кроме того через дорогу должны переходить люди, для них даже предусмотрена кнопка экстренного перехода. Ну вот теперь ясно, что собой представляет задача. Рассмотрим способ ее решения с помощью М-сети.
На рисунке 4 показана схема М-сети. Видно, что например нажатие кнопки экстренного перехода тормозит, но не отключает сразу проезд автомобилей по дороге. А каждое состояние препятствует возникновению другого и только высокое значение датчиков способно перевести систему в другое устойчивое состояние. Осталось расставить значения коэффициентов и решатель задачи будет готов. По сравнению с сетями фреймов или семантическими сетями данный метод отличается простотой описания и быстротой работы.
Рисунок 4. Решение задачи с помощью М-сети.
Полученные выводы.
Описанная система характеризуется двумя важными особенностями. Во-первых на одном этапе работы пользователь не выполняет собственно никаких программистских функций. Пересчеты М-сети, ее обучения и другие включены в систему поддержки для него невидимы. "Программирование" сводится, таким образом, к оперированию только предметными знаниями.
Во вторых, система поддержки обеспечивает оперативное информирование пользователя, как о промежуточных, так и о конечных результатах предпринимаемых им действий: при каждом запуске сети ему предъявляются динамика активности сети и порождаемые решения. Значительные удобства при отладке создает и то обстоятельство, что весь процесс формирования решения может быть прослежен и проанализирован путем наблюдения за работой сети.
Список использованной литературы.
1. Н.М. Амосов, А.М. Касаткин, Л.М. Касаткина, С.А. Талаев Автоматы и разумное поведение. Опыт моделирования. - Киев: "Наукова думка", 1973. -261с.
2. Нейрокомпьютеры и интеллектуальные роботы /Амосов Н. М., Байдык Т.Н.,Гольцев А.Д., Касаткин А.М., Касаткина Л.М., Куссуль Э.М., Рачков-ский Д.А.; Под ред. Амосова Н.М. : АН УССР Ин-т кибернетики. - Киев : Наук. Думка,1991.-272с. - ISBN 5-12-002344-4
3. Страница разработчика. http://www.icfcst.kiev.ua/amosov/
4. Пример программы реализующей сеть близкую по структуре http://olegnabatov.narod.ru/