Иммунологическая система обеспечения безопасности

advertisement
Л.А. Станкевич, А.Б. Казанский
СПбГПУ, ИЭБФ РАН
ИММУНОЛОГИЧЕСКАЯ СИСТЕМА ОБЕСПЕЧЕНИЯ
БЕЗОПАСНОСТИ ГУМАНОИДНОГО РОБОТА
Введение. Создание гуманоидных роботов (ГР), по форме и поведению близких к
человеку, является серьезным вызовом робототехники и искусственного интеллекта в 21-м
веке. Именно такие роботы предполагается широко использовать для замены человека в
опасных зонах, космосе, а также при работах или играх в непосредственном контакте с людьми.
В то же время они могут стать чрезвычайно серьезной социальной проблемой современного
мира. Большое распространение роботов, имеющих очень мощные компьютерные
интеллектуальные системы и энергетические возможности, а также непосредственный выход в
локальные и глобальные сети, может быть причиной их несанкционированного использования
во вред человеку. Недостаточно защищенные ГР могут быть заражены программными
вирусами, которые изменят их функциональность и сделают опасными для людей. Даже без
вмешательства извне, роботы, если не принять соответствующих мер, могут стать опасными
при отказах энергетики, поломках и сбоях в системе. Перепрограммированные или
неисправные роботы могут быть источником человеческих жертв и материальных потерь.
Поэтому уже сейчас необходимо уделять большое внимание созданию специальных систем
обеспечения безопасности ГР, которые позволяют обнаружить несанкционированные
вторжения в их системы управления, а также внутренние отказы и сбои, и устранить их
последствия. Это позволит максимально уменьшить число жертв и потерь за счет правильной
организации восстановительных операций и применения разнообразных технических средств.
В данной работе предлагается строить систему обеспечения безопасности ГР на основе
биологически инспирированного иммунологического подхода. Иммунитетом называют
способность иммунной системы к отторжению чужеродных тел. С технической точки зрения
интерес представляют такие свойства иммунной системы, как иммунологическая память,
толерантность и способность к распознаванию образов. Иммунная система уничтожает чужие
по отношению к организму субстанции (антигены), используя производимые ей лимфоциты и
(или) антитела. Традиционно искусственные иммунные сети применяются для сжатия
информации, кластеризации, распознавания образов, поиска оптимума сложных функций и пр.
[3]. На их основе разработана новая методология для решения динамических задач сохранения
работоспособности при неизвестных (враждебных) элементах среды, которую и предлагается
использовать для организации защиты робота от повреждений, потери энергии и борьбы с
программными вирусами.
Модели иммунологических систем. В плане организации системы безопасности робота
представляют интерес три модели иммунных сетей: идиотипическая модель Йерне, клональноселекционная теория и пространственная модель иммунной сети Тараканова.
В 1974 г. выдающийся швейцарский иммунолог, лауреат Нобелевской премии Йерне
выдвинул теорию идиотипических сетей [6]. Согласно его гипотезе, антитела могут в свою
очередь выступать как антигены друг для друга. Тем самым возникает сильно связанная,
самоактивирующаяся сеть, в которой все антитела имеют, как антигенные детерминаны идиотопы, так и центры распознавания антител – паратопы. Таким образом, иммунная система
представляется как огромная сложная сеть паратопов, которые распознают идиотопы и
идиотопов, которые распознают паратопы. Идиотопы стимулируют активность В-лимфоцитов с
комплементарными паратопами, обнаруженными на вырабатываемых ими антителах.
Наоборот, паратопы подавляют активность соответстующих лимфоцитов. При развитии
иммунного ответа происходит повышение концентрации антител данной специфичности, и на
них формируется новый иммунный ответ с образованием антиидиотипических антител. Этот по
счету второй ответ подавляет первый, но вызывает образование нового иммунного ответа, так
как и антиидиотипические антитела несут чужеродные антигенные детерминанты. Но каждый
последующий иммунный ответ значительно слабее, нежели ингибируемый им предыдущий и
постепенно угасает. Как показано на моделях, подобные процессы в иммунных сетях приводят
в результате к подавлению (удалению) клонов, обладающих сходством с антигеном. Более того,
показано, что сеть обладает распределенной памятью.
Теория иммунной сети не получила такого широкого признания в иммунологии, как
классическая клонально-селекционная теория. В то же время она продолжает развиваться и
дополняет классическую теорию. Так, Варела и Коутиньо предложили так называемую теорию
“иммунных сетей второго поколения” [10]. Сильно связанная иммунная сеть, названная ими
“Центральная иммунная система” обладает толерантностью к антигену и демонстрирует скорее
регуляторный характер, ослабляя его активность, а слабо связанная сеть демонстрирует
классическую реакцию взрывного характера (“Переферическая иммунная система”). Модели ВТ-лимфотических сетей
демонстрируют такое толерантное поведение [2]. Подход к
искусственным нейронным сетям, инспирированный классической клонально-селекционной
теорией иммунитета часто условно называют популяционным иммунитетом. Подобные модели
приводят к мультиагентным системам, использующим эволюционные алгоритмы [11].
Пространственная модель Тараканова [6] является хорошо формализованной и может
успешно применяться для распознавания вирусов, которые могут быть занесены в бортовую
компьютерную систему робота через каналы связи (с локальной сетью или сетью Интернета).
Эта модель демонстрирует лучшие результаты по скорости обучения и размерности задач
распознавания образов, чем искусственные нейронные сети.
Модели иммунных сетей опробованы при решении поведенческих задач роботов. Так,
Ишигуро и Ватанабе [4, 5] в своем проекте иммуноида реализовали искусственный интеллект с
использованием модели иммунной сети Йерне. Этот интеллект динамически возникает в
процессе взаимодействия между специальными агентами. Иммуноид решает пространственную
задачу сбора мусора и энергетической подпитки. Антигены информируют о направлении, в
котором находится мусор, препятствия, также направление и расстояние до базы подзарядки,
уровень внутренней энергии. В антителах желательные пары условия/действия представлены
паратопами антител, а идиотопы описывают связи с другими антителами. Оригинальная
иммуноподобная архитектура для управления коллективами роботов (распределенная
робототехника) предложена в работе [8].
Защита робота от потери энергии и опасности для человека. Система обеспечения
безопасности ГР должна выбирать поведения робота, защищающие его, например, от внезапной
остановки при потере энергии или опасных ситуаций, связанных с близостью человека и
возможностью нанести ему вред. При этом могут быть выделены следующие входные
параметры системы: уровень энергии, способность к управлению, координация тела робота,
неправильные команды, дистанция до человека, дистанция до базы с зарядным устройством. В
качестве выходных параметров системы можно использовать команды для инициации
следующих поведений робота: поиск базы, избегание столкновения с человеком, остановка
действий при сильных нарушениях координации, включение антивирусной защиты,
отключение энергии при невозможности управления роботом, продолжение выполнения
текущих операций при возврате к нормальной ситуации. В терминологии иммунологической
системы входные параметры, определяющие текущую ситуацию (например, дистанция и
направление на человека и пр.), которые детектируются установленной на борту сенсорной
системой, могут рассматриваться как множественные антигены. В то же время, подготовленные
модули компетентности (например, перечисленные поведения) могут рассматриваться как
антитела. Взаимодействие между модулями компетенции определяется через стимуляцию и
подавление действий антител. Такая иммунная система должна выбирать модуль
компетентности (антитело), обнаружив соответствующую текущую ситуацию (антиген), и
реализовать нужное компенсирующее поведение робота.
На рис. 1 представлена схема защиты ГР от потери энергии и избегания опасных для
человека ситуаций.
Сенсомоторная система
B – База с
зарядкой
EL – Уровень энергии
CA – Способность к
управлению
CB – Координация
частей тела
P – Человек
O – Объект
Взаимодействия
DB – Дистанция и
направление на базу
DO – Дистанция и
направление на объект
DP – Дистанция и
направление на
человека
WC – Неправильная
команда
PV – Программный
вирус
C – Команда от
Оператора
V – программный
вирус
Динамическая среда
Система управления
Поведением
поведением
SВ – Поиск базы
AP – Избегание
человека
SA – Остановка
действий
AV – Антивирусная
защита
SW – Отключение
энергии
WO – Работа с
объектами
(исследование и
захват объектов)
Гуманоидный робот
Рис.
1. Схема
Схема защиты
защиты гуманоидного
гуманоидного робота
робота
Рис.4.
Такая схема системы защиты или управления безопасным поведением робота может быть
построена на иммунологической сети. Иммунологическая сеть должна быть сконструирована
так, чтобы дать подходящий механизм выбора нужного поведения из набора, заготовленного в
модулях компетентности. В нашем случае ГР воспринимает с помощью сенсорной системы
информацию об объектах динамически изменяющейся среды {B, P, O, C, V}, передает ее в виде
нужного набора параметров в систему управления поведением, которая вырабатывает
определенные управления, отрабатываемые актуаторами робота. Здесь параметры{EL, CA, CB,
DB, DO, DP, WC, PV}, определяющие текущую ситуацию, являются антигенами, а параметры
модулей компетенции{SB, AP, SA, AV, SW, WO}, определяющие поведение, - антителами.
В качестве примера реализации фрагмента иммунологической сети рассмотрим задачу
обеспечения безопасности ГР, перемещающего объекты. Среда робота (помещение)
ограничена стенами и имеет много объектов, которые он должен перемещать. Существуют
стеллажи для объектов и аппарат для зарядки батареи робота, расположенный в определенном
месте (база робота). Задача робота – переносить объекты на стеллажи без истощения запаса
энергии (уровня заряда батареи). При этом робот должен избегать столкновений с человеком
или стенами. Робот потребляет некоторую энергию и при движении в среде и при рабочих
операциях. Энергия может восстанавливаться путем своевременной зарядки батареи на базе.
В этом примере предполагается, что робот имеет предопределенное начальное количество
энергии, и расход энергии определяется внутренним датчиком текущей энергии робота. Для
количественной оценки используем следующие допущения: (1) робот потребляет энергию Em
на каждом шаге; (2) робот теряет добавочно энергию E ' m , когда он переносит объект; (3) если
робот сталкивается с человеком или стеной, он теряет некоторую энергию E c дополнительно;
(4) если робот достигает базы, он немедленно получает полный заряд энергии; (5) если уровень
энергии робота высокий, поведение «идти на базу», может не выбираться, чтобы избежать
перезаряда батареи.
На основе этих допущений вычислять текущий уровень энергии можно так:
E (t )  E (t  1)  E m  k1 E m'  k 2 E c ,
(1)
где k1  1, если объект переносится в руке робота, или k1  0 , если иначе; k 2  1 , если есть
столкновение со стеной или человеком, или k 2  0 , если иначе.
Здесь E (t ) обозначает уровень энергии в момент t . Можно пояснить подробнее, почему
эта проблема относится к проблеме выбора поведения. Предположим, что робот находится на
далеком расстоянии от базы и уровень его энергии низкий. В этой ситуации, если робот несет
объект, он будет терять свою энергию благодаря терму E ' m в уравнении (1). Поэтому робот
должен выбрать поведение «идти на базу», чтобы пополнить энергию. Другими словами,
приоритет такого поведения должен быть выше, чем поведения «перемещение объекта».
С другой стороны, если робот находится на близком расстоянии от базы, в отличие от
предыдущей ситуации, он мог бы предпочесть выбор поведения «перемещение объекта». Из
этих примеров можно понять, что робот может выбирать подходящее поведение (модуль
компетентности) путем гибкого изменения приоритетов подготовленных модулей
компетентности в соответствии с внутренней и внешней ситуацией.
Используя аналогию с иммунологической сетью, предположим, что детектированная
текущая ситуация и подготовленное простое поведение работают как антиген и антитело
соответственно. В нашем примере полагается, что каждый антиген дает информацию о
существовании объекта для перемещения (направление), человека (направление) и базы
(направление и расстояние), а также о текущем уровне энергии робота. Для упрощения,
категоризируем направление и (или) расстояние до обнаруженных объектов, а также уровень
внутренней энергии так: (1) Направление: спереди, справа, слева, сзади; (2) Расстояние:
далекое, среднее, близкое; (3) Уровень энергии: высокий, низкий.
При выборе пригодного антитела для текущего антигена используется иммунологический
арбитражный механизм, основанный на взаимодействии антител в идиотопической сети.
Идентификация каждого антитела определяется структурой его паратопа и идиотопа. Для
нашего примера эта структура может включать поля: для паратопа используется пара:
предусловие и поведение; для идиотопа используется ID-номер, стимулирующего антитела, и
степень стимула. Похожая структура предусловия используется и для антигена.
Набор предусловий и их градации обозначим так: (1) Объект (O) (спереди - F, справа - R,
слева - L, нет - N, в руке робота - H); (2) Человек (P) (спереди - F, справа - R, слева - L, нет - N);
(3) База (B) (спереди - F, справа - R, слева - L, нет - N, близкое - Nr, среднее - Md, далекое - Fr);
(4) Уровень энергии (EL) (высокий - Hi, низкий - Lo).
Введем следующие поведения робота при решении проблемы перемещения объекта (WO),
избегания столкновения с человеком (AP) и поиска базы (SB): (1) Движение вперед (F); (2)
Поворот вправо/влево (R/L); (3) Исследование и Захват объекта (О); (5) Зарядка батареи (B).
Для выбора антитела необходим индекс, который количественно представляет его
пригодность при текущей ситуации. Введем для этого переменную под названием
«концентрация антитела» для каждого антитела.
Основной принцип предлагаемой иммунологической сети - антитела должны
взаимодействовать между собой для достижения консенсуса при выборе поведения.
Рассмотрим ситуацию, показанную на рис. 2.
Антитело 1
Антитело 2
База
справа
Энергия
низкая
Поворот
направо
Искать
базу
Человек
спереди
4
Энергия
высокая
1
Работать
дальше
3
3
Антитело 4
Антитело 3
База справа
Антиген 1
Маневр
уклонения
Человек спереди
Антиген 2
Энергия высокая или низкая
Антиген 3
Рис.2. Пример сети взаимодействующих антител
Здесь введены три антигена, вторгающиеся в мир робота, и четыре антитела,
взаимодействующие между собой при выборе поведения, компенсирующего эти антигены.
Например, антитело 1 означает, что, если робот детектирует базу в направлении справа, это
антитело активизируется и затем должно вызвать поведение «поворот вправо». Однако, если
текущий уровень энергии высокий, это антитело должно дать возможность другим антителам,
представленным его идиотопами (в нашем случае, антителу 4), чтобы помешать перезаряду
батареи. Теперь предположим, что робот имеет достаточно энергии. В этом случае антитела 1, 2
и 4 одновременно стимулируются антигенами. В результате концентрация этих антител
увеличится. Однако, благодаря взаимодействиям антител через их паратопы и идиотопы,
концентрация каждого антитела изменяется. В итоге антитело 2 будет иметь наивысшую
концентрацию и будет в дальнейшем выбрано. Это означает, что робот будет делать маневр
уклонения от контакта с человеком. В случае, если робот не имеет достаточно энергии, имеется
тенденция к выбору антитела 1 подобным же образом. Это означает, что робот не будет
специальный маневр уклонения от человека и попытается сделать поворот направо, чтобы идти
к базе и перезарядить батарею. В этом примере можно наблюдать, что взаимодействие между
антителами работает как механизм регулирования приоритета.
Динамика иммунологической сети связана с изменениями концентрации антител.
Концентрация i-го антитела может быть вычислена в соответствии с уравнением
N
N
dAi (t )
(2)
 {  m ji a j (t )    mik ak (t )  mi  k i }ai (t ) ,
dt
j 1
k 1
1
ai (t  1) 
.
(3)
1  exp( 0.5  Ai (t ))
В этих уравнениях N - число антител, m ji и mi - означают сходство между антителами j
и i (например, степень отклонения) и между антителом i и детектированным антигеном
соответственно. Первый и второй термы правой части уравнения (2) означают стимуляцию и
подавление от других антител соответственно. Третий терм представляет стимуляцию от
антигена, а четвертый терм является фактором диссипации (например, естественной смерти).
Уравнение (3) является функцией сплющивания, используемой, чтобы обеспечить стабильность
концентрации. Здесь выбор антител является просто выполнением базиса типа колеса рулетки,
соответствующего значению концентраций антител. Заметим, что только одно антитело
допускается к активации и его воздействию в виде соответствующего поведения в мире робота.
Выбор поведения ГР в игровой среде. Иммунологическая система была также
опробована при решении задачи выбора поведения агентов в игровых виртуальных средах.
Исследования поведений агентов в игровых средах при командной работе несколько лет
проводятся в рамках международного проекта Robot World Cup (RoboCup – Кубок Роботов).
RoboCup ориентирован на конечную цель - соревнования по футболу между командами людей
и гуманоидных роботов. Иммунологическая система выбора поведения агентов-футболистов в
динамически изменяющейся и противодействующей среде (например, при обучении сценарию
атаки ворот противника) показала лучшие результаты, чем продукционная и нейросетевая
системы. Для достижения хороших результатов в соревнованиях агентов-спасателей
использован опыт авторов по разработке и участию в соревнованиях агентов-футболистов.
Предлагается многоагентная архитектура иммунологической системы, в которой использованы
иммунологические принципы обработки информации и принятия решений.
Заключение. Рассмотренные задачи и их моделирование в рамках управления
поведением объектов в динамических средах показали эффективность использования
иммунологического подхода. В определенной мере иммунологические системы могут
обеспечить параметры решения лучшие, чем известные подходы с использованием
продукционных систем или нейронных сетей. Такими параметрами, например, являются
размерность входных данных и время обучения системы. Поэтому можно считать
перспективным использование иммунологического подхода в системах безопасности и
управления гуманоидных роботов.
Список литературы
[1] Burnet F.M. The clonal selection theory of acquired immunity. - London, Cambridge University
Press, 1959.
[2] Carneiro J. and J.Stewart. Self and nonself revisited: Lessons from modelling the immune network.
In: Moran FR., A.Moreno, J.J.Merelo P.Chacon (Eds.) Advances in Artificial Life III, 1995, pp.406420.
[3] De Castro L.N. and J. Timmis. An artificial immune network for multimodal optimisation. In 2002
Congress on Evolutionary Computation. Part of the 2002 World Congress on Computational
Intelligence.,pp. 699-707, Honolulu, Hawaii, Usa. May 2002.
[4] Ishiquro A., Kondo.T and Watanabe, Y. Emergent Construction of Artificial Immune Networks for
Autonomous Mobile Robots. In Proceeding 1997 IEEE International Conference on System Man and
Cybernetics, Orlando, FL, USA, pp. 1222-1228.
[5] Watanabe Y., Ishiguro A., and Uchikawa Y. Decentralized Behavior Arbitration Mechanism for
Autonomous Mobile Robot Using Immune Network. In “Artificial Immune Systems and Their
Applications, D. Dasgupta (Ed.)”, Spring-Verlag, Berlin, 1999.
[6] Jerne N.K. Towards a network theory of the immune system. – Annales d’Immunologie (Institut
Pasteur), 1974, 125С , pp. 373-389.
[7] Negoita M.. Artificial Immune Systems — an Emergent Technology for Autonomous Intelligent
Systems and Data Mining. In Proceeding of Conference AISM-DM, S-Petersburg, 2005.
[8] Surya P.N. Singh and Scott M. Thayer. A Foundation for Kilorobotic Exploration. Robotics
Institute, Carnegie Mellon University, USA, 1999.
[9] Tarakanov A.O., Kvachev S.V., and Sukhorukov A.V. A Formal Immune Network and Its
Implementation for On-Line Intrusion Detection. V.Gorodetsky, I. Kotenko, and V/ Skormin (Eds.):
MMM-ACNS 2005, LNCS 3685, Springer-Verlag Berlin Heidelberg, pp. 394-405, 2005.
[10] Varela F.J. & Coutinho A. Second generation immune networks. – Immunology Today, 1991, 12,
pp. 159-166.
[11] Wang L., Hirsbrunner, B. An Evolutionary Algorithm with Population Immunity and Its
Application on Autonomous Robot Control. –IEEE Congress on Evolutionary Computation. December
8-12, 2003, Canberra, Australia.
Download