Искусственные иммунные системы и их применение

реклама
ISBN 978-5-7262-1782-6
НЕЙРОИНФОРМАТИКА-2013. Часть 3
С.А. ЧЕЛНАКОВ
Воронежский государственный педагогический университет
[email protected]
ИСКУССТВЕННЫЕ ИММУННЫЕ СИСТЕМЫ И ИХ
ПРИМЕНЕНИЕ
Рассматривается задача моделирования работы робота для принятия
решения с использованием искусственной иммунной системы. Помимо
собственно принятия решения, задачей является нахождение оптимального пути, т.е. определение набора наиболее существенных характеристик
среды, влияющих на поведение робота. Предложен, реализован и исследуется алгоритм поведения робота на основе алгоритма А* с использованием искусственной иммунной системы.
Ключевые слова: искусственная иммунная система, поиск пути, компьютерная реализация
Введение
Иммунная система организма представляет собой сложную адаптивную структуру, эффективно использующую различные механизмы защиты от внешних патогенов. Основная задача иммунной системы заключается в распознавании клеток (или молекул) организма и классификации их
как своих или чужих. Выявляемые чужеродные клетки служат сигналом
для активации защитного механизма соответствующего типа.
С точки зрения организации обработки данных иммунная система – это
высокопараллельная структура. В ней реализованы механизмы обучения,
памяти и ассоциативного поиска для решения задач распознавания и
классификации. В частности, иммунная система способная обучаться распознаванию важных структур (антигенных пептидов); запоминанию уже
встречавшихся структур и использованию законов комбинаторики в рамках генных библиотек для эффективной генерации детекторов структур
(вариабельных участков молекул антител), взаимодействующих с внешними антигенами и собственными клетками организма. При этом реакция
на антиген происходит не только на уровне отдельных распознающих
единиц, но и на системном уровне путем взаимного распознавания клонов
лимфоцитов и реакциях антиген-антитело. Таким образом, поведение им-
УДК 004.032.26(08) Нейронные сети
121
ISBN 978-5-7262-1782-6
НЕЙРОИНФОРМАТИКА-2013. Часть 3
мунной системы определяется всей совокупностью локальных сетевых
взаимодействий.
В работе, представленной данным докладом, предполагается описать
одну из возможных реализаций работы искусственной иммунной системы
(ИИС).
Цель работы состоит в практической реализации управления роботом
при помощи алгоритмов искусственной иммунной системы.
Публикации по данной теме приведены в источнике [1].
Постановка задачи и описание алгоритма
Рассмотрим возможное применение робота. Традиционной задачей для
робота является обход различного рода препятствий; в случае ограниченного запаса энергии робот должен решать задачу о возврате на базу с учетом текущей ситуации (уровень заряда, удаленность от базы и тому подобное). В связи с этим робот должен быть помещен в искусственную
среду, в которой имеются абстрактные препятствия, а также у робота
должен быть определенный запас энергии, который расходуется с течением времени. В качестве внешнего фактора, влияющего на принятие решения робота, можно ввести задачу по сбору мусора. Таким образом, робот
является сборщиком мусора.
Обозначим требования к среде:
1) наличие препятствий;
2) наличие базы для подзарядки робота;
3) наличие целей – «мусор»;
4) среда представляет собой карту конечного размера.
Требования к роботу могут быть следующими:
1) робот имеет «зрение», реализующее в качестве радара определенного радиуса действия;
2) робот тратит энергию во время своего похода по среде;
3) робот должен определять препятствия и обходить их стороной;
4) робот определяет момент, когда ему необходимо вернуться на базу
за подзарядкой;
5) робот имеет цель – собрать мусор, если он видит мусор.
Целесообразно ли использовать логику искусственной иммунной системы при формировании логики принятия решений роботом? Искусственные иммунные системы являются весьма гибкими по отношению к
изменчивой внешней среде, что является неоспоримым преимуществом:
блок логики отличается гибкостью в зависимости от ситуаций, с которыми система встречается на протяжении своего жизненного цикла. Основ122
УДК 004.032.26(08) Нейронные сети
ISBN 978-5-7262-1782-6
НЕЙРОИНФОРМАТИКА-2013. Часть 3
ные свойства искусственных иммунных систем позволяют предугадывать
поведение в незнакомой ситуации, основываясь на опыте прошлых контактов. А компактная иммунная память со свойством «забывчивости»
позволяет реализовать быструю адаптацию к новой среде и при этом избавиться от ненужных знаний.
Искусственную иммунную систему целесообразно использовать в следующих блоках робота:
1) блок принятия решения о возврате на базу для подзарядки;
2) блок определения препятствия и выбора точки перемещения.
Искусственная среда, в которую помещается рассматриваемый объектробот представляет собой виртуальную карту. Карта – это прямоугольник
с нанесенными препятствиями и объектами
На карте могут присутствовать различные типы объектов:
1) препятствия;
2) база;
3) цели;
4) помещенный на карте робот.
Препятствие – это некий участок карты, на который не сможет ступить
робот. Таким образом, при помощи препятствий можно описывать достаточно большое множество объектов.
Рассмотрим, например, комнату. В комнате помимо стен имеется стол,
стул, шкаф, кровать и тому подобные предметы интерьера. Отпечатки
этих объектов на полу, а также проекция труднодоступной местности и
воспринимаются как препятствия.
Все препятствия являются статичными и не передвигаются во время
проведения эксперимента, то есть, основная часть рассматриваемой среды
не динамична.
Исходя из анализа поставленной задачи, искусственная среда имеет в
своем составе некую базу, на которой робот может пополнять свой запас
энергии. База также как и препятствия не перемещается во время проведения эксперимента, а также может быть выставлена в любом месте рассматриваемой карты на свободном от препятствий участке.
Визуально база отличается от окружающей среды синим цветом.
Помимо функции подзарядки, база является отправной точкой для робота: робот начинает свое движение, находясь на базе.
Установка базы внутри маленького закрытого пространства приведет к
ожидаемому эффекту: робот сможет двигаться только в ограниченном
квадрате, что, в свою очередь, не противоречит поставленной задаче, но
снижает степень интереса в самом эксперименте.
УДК 004.032.26(08) Нейронные сети
123
ISBN 978-5-7262-1782-6
НЕЙРОИНФОРМАТИКА-2013. Часть 3
Цель – это мусор, который собирает робот. Цель появляется неожиданно в любом свободном месте карты. Количество целей, которые могут
появиться на карте в один момент времени является ограниченным только
количеством свободного места на карте.
Цель считается захваченной, если робот вступит на участок, являющийся целью. Не важно, какой стороной робот подъехал к цели – это сделано для упрощения задачи и концентрации на создании внутренней логики системы интеллекта робота.
Программно в памяти компьютера карта преобразуется в цифровую
матрицу, где каждый элемент отвечает за конкретный участок карты. Положим, что участок карты равняется одному пикселю на видимом изображении.
Различные объекты, располагающиеся в пикселях карты, отличаются в
программной реализации индивидуальным кодом. Свободные места традиционно обозначаются нулем.
Для ориентации в пространстве робот использует радар. Радар представляет собой аналог зрения, но может видеть вокруг себя, а не только
впереди себя.
Рассмотрим обычное зрение, которое существует в природе. Представим, что перед нами находится объект – кубик. Мы можем четко видеть
кубик, но если перед этим кубиком нам поставят другой кубик того же
размера, то мы уже не сможем четко видеть кубик за ним, а может и вообще не увидим его. Таким образом, искусственное зрение робота также
должно обладать тем же свойством.
Обозначим функциональные этапы работы радара, реализующего зрение робота:
1) обнаружение одиноко стоящих объектов или групп объектов на
карте;
2) отображение «тени» от стоящих поблизости объектов;
3) составление выходных данных радара.
Радар имеет ограниченный радиус действия, задающийся настройками
системы. Для простоты рассматриваемой системы предполагается, что
радар получает квадратную область с центром в месте нахождения робота. В таком случае, положим, что радиус действия радара – это половина
стороны квадрата.
Выходными данными радара является матрица, показывающая роботу,
где располагаются объекты на карте, относительно текущего положения
самого робота.
124
УДК 004.032.26(08) Нейронные сети
ISBN 978-5-7262-1782-6
НЕЙРОИНФОРМАТИКА-2013. Часть 3
Полученная в результате работы мини-карта, используется роботом для
принятия решения о следующем шаге и участвует в сборе данных, который ведется на протяжении жизни робота.
Система получает данные с карты по
расположению вокруг робота различных
предметов.
Система
проводит
виртуальные линии
зрения.
Все что, находится
внутри линий зрения, считается невидимым.
Так рисуются тени от всех объектов, расположенных вокруг робота. Полученная мини-карта является результатом работы радара.
Рис. 1. Представление работы радара
Робот на протяжении своей жизни решает несколько основных задач:
 задача по определению направления движения;
 задача по объезду препятствий;
УДК 004.032.26(08) Нейронные сети
125
ISBN 978-5-7262-1782-6
НЕЙРОИНФОРМАТИКА-2013. Часть 3
 задача по определению состояния своих характеристик и включение соответствующих программ при их определенном значении;
 иные специфические задачи (в нашем случае – это сбор мусора).
Запрос данных радара
Запрос о возврате на базу
да
Программа возврата на базу с
учетом объезда препятствий
Необходимо
вернуться?
нет
Запрос о дальнейшем шаге с учетом объезда препятствий и целей
Переход на новую позицию
Рис. 2. Алгоритм работы робота
Почти каждая задача связана с выбором и решением. Произвольное
поведение в реальных ситуациях грозит крахом либо самой системы, либо
невыполнением поставленных задач. Это вынуждает вводить в систему
робота модули логики, которые выдают результат на поставленный запрос, основываясь на совокупности нескольких факторов.
В рассматриваемой модели робота возможны два модуля, отвечающие
за логику и принятие решения:
1) модуль принятия решения о дальнейшем движении;
2) модуль принятия решения о возврате на базу для подзарядки.
Робот в каждый момент времени запрашивает данные по своим логическим модулям для того, чтобы определить свои дальнейшие действия. В
таком случае, основываясь на описании виртуальной среды и модуля, отвечающего за зрение, можно составить алгоритм поведения робота. Процесс
представляет собой бесконечно повторяющиеся циклические действия.
126
УДК 004.032.26(08) Нейронные сети
ISBN 978-5-7262-1782-6
НЕЙРОИНФОРМАТИКА-2013. Часть 3
Все действия робота подчиняются трем целям, которые могут быть
упорядочены согласно убыванию приоритета:
1) возврат на базу для подзарядки;
2) сбор мусора;
3) совершение произвольного движения по карте.
При переносе робота в другую среду, если не обнулять данные памяти,
он будет сначала основываться на данных из предыдущей среды и естественным образом будет их корректировать согласно новым представлениям. Этот эффект может быть рассмотрен как приспособление к новой
среде, что дает возможность помещать робота даже в изменчивую среду.
Усовершенствованием описанного алгоритма может являться введение
нечеткого сравнения образцов. Например, рассматриваемые характеристики при сравнении должны отличаться не более чем на заранее определенную величину, тогда они будут считаться равными. Такое дополнение
дает возможность внедрения логики предугадывания поведения, основываясь на предыдущем опыте, что повысит приспособляемость системы к
новым или изменчивым условиям внешней среды.
Выводы
Теория искусственных иммунных систем отлично подходит для реализации блока логического принятия решения. Проведенные испытания
показали устойчивость работы системы, в основу логики которой легли
идеи искусственных иммунных систем.
Недостатком работы системы принятия решений о возврате можно
считать достаточно долгий промежуток времени, который тратится на
поиск оптимальной точки возврата, ввиду того, что сравнение с образцами в памяти является достаточно строгим.
Разработанные алгоритмы могут применяться не только при виртуальном моделировании робототехники, но и в системах реального времени. На основе идей искусственных иммунных систем можно разрабатывать более сложные модули принятия решений, которые будут основываться на опыте, с которым сталкивалась система в процессе своего существования.
Список литературы
1. Дасгупт Д. Искусственные иммунные системы и их применение / Д.
Дагступт. М.: Физматлит, 2006.
УДК 004.032.26(08) Нейронные сети
127
ISBN 978-5-7262-1782-6
НЕЙРОИНФОРМАТИКА-2013. Часть 3
2. Forrest S. A sense of self for unix processes / S. A. Forrest // In: Proc. Of
IEEE symposium on research in security and privacy, Oakland, CA, May,
1996.
3. Jerne N. K. The immune system / N. K. Jerne // Sci. Am., 1973. V. 229.
№1. P.52 – 60.
4. Hunt J. E. An adaptive, distributed learning system, based on the immune system / J. E. Hunt // In: Proc. Of IEEE international conference on systems, man and cybernetics, 1995. P. 2494-2499.
5. Hunt J. E. Learning using an artificial immune system / J. E. Hunt // J.
Network Comp. Appl., 1996. V. 19. P. 189–212.
6. Hunt J. E. Case memory and retrieval based on the immune system / J.
E. Hunt // Proc. First Int. Conference on Case Based Reasoning. Lecture Notes
in Artificial Intelligence, 1995. V. 1010. P. 205–216.
7. Hunt J. E. Introducing using immune response into a CBR system for data mining / J. E. Hunt // Research and Development in Expert Systems XIII,
1996.
8. Kolodner J. L. Case-Based Reasoning. / J. L. Kolodner, 1993.
128
УДК 004.032.26(08) Нейронные сети
Скачать