В.Э.Карпов, М.М.Арифулин, И.А.Подопригора

Проект «АДАПТАНТ». Мобильные роботы в интеллектуальном жилище

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

Введение

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

Концепция интеллектуального жилища

Судя по подавляющему числу публикаций и работ, посвященных весьма модному сегодня направлению, называемому «Интеллектуальное жилище» («Умный дом», «Интеллектуальная квартира» и т.п.), интеллектуальность понимается исключительно с точки зрения создания комплекса его - жилища - «интеллектуальных» составляющих: «интеллектуальных» кофемолок, сливных бачков, пылесосов, холодильников, кондиционеров и систем охраны.

Идея «умных» зданий зародилась в США. Сначала появились Intelligence building («понятливые здания») со структурированными кабельными сетями, позволяющими коммутировать и использовать один и тот же кабель для нужд АТС, для компьютерной сети, для системы безопасности и т.д. Потом появились системы мультиплексирования каналов связи, позволяющих одновременно передавать по одной линии различную информацию.

Дальнейшим развитием этой несложной идеи стал Smart House («умный дом»). В основе «умного дома» - централизованное управление электронными системами жилища: каминами, кофеварками, системой безопасности, отоплением, вентиляцией, освещением и т.п. Управление «умным» домом осуществляется центральным процессором, который получает сигналы от датчиков различных устройств, обрабатывает их и отправляет соответствующие сигналы другим устройствам. Например, получив сигнал от датчика движения в прихожей, система автоматики включает освещение и отопление. А по сигналу от часов может включиться кофеварка. Интерфейсами пользователя-жильца могут быть клавиатуры, сенсорные экраны, аварийные кнопки, телеэкраны, компьютеры, телефоны, ручные пульты и т.п.

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

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

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

Адаптация в ИЖ

Специфика интеллектуального жилища заключается прежде всего в огромнейшем разнообразии решаемых им задач. К тому же задачи эти подчас либо слабо формализованы, либо просто-напросто слишком сложны, чтобы можно было предложить приемлемые алгоритмы их решения. Ясно, что переложить все заботы по управлению большим количеством сложных устройств на центральный процессор было бы нецелесообразно. Гораздо перспективнее и интереснее было бы говорить о децентрализованном управлении, при котором задача поддержания нужных условий существования решалась бы самими составными частями ИЖ. Тогда само ИЖ можно было бы рассматривать как множество компонент, каждая из которых решала бы свою задачу, взаимодействовала бы с другими «обитателями», подстраивалась (или адаптировалась) под свое окружение.

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

Интерес представляют по меньше мере две адаптационные модели, которые и будут рассмотрены в настоящей работе далее.

1.     ИСО/ИЖ как гомеостат. Здесь ИСО/ИЖ вырабатывает управляющие воздействия на своих обитателей с целью упорядочивания их – обитателей - поведения. Иными словами, обитатели адаптируются под требования ИСО/ИЖ («мойте руки перед едой», «вытирайте ноги» и «экономьте электроэнергию»).

2.     ИСО/ИЖ как адаптивная система. Обитатели управляют поведением ИСО/ИЖ, адаптируя его для поддержания своих внутренних целевых функций.

Ситуация, в которой и ИЖ адаптируется к своим обитателей, и обитатели адаптируются к требованиям, предъявляемым ИЖ, является синтезом этих двух моделей и особого интереса поэтому не представляет.

Адаптивное поведение

Существует множество моделей адаптивного поведения. Это и классические труды Я.З.Цыпкина, Д.А.Поспелова, В.И.Варшавского и многих других, это и генетические алгоритмы Холланда во всех их вариациях, и нейронные сети. Но в этой работе была выбрана модель адаптивного поведения, предложенная М.Л.Цетлиным и его учениками, модель, основанная на базе моделирования условно-рефлекторного поведения, реализуемая конечными автоматами. Это одна из наиболее красивых и изученных моделей, имеющая строгое математическое обоснование. К тому же, гибкость и общность этой модели позволяет перейти и к решению такой важной задачи, как моделирование коллективного поведения. Применительно к рассматриваемой теме речь могла бы идти о коллективном взаимодействии обитателей.

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

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

Модель интеллектуального жилища, обитателей и их взаимодействия

Итак, рассмотрим модель, в которой имеется множество объектов, которые в процессе своей жизнедеятельности должны уметь адаптироваться друг к другу и к окружающей среде. Причем эта адаптация должна быть основана на формировании у этих обитателей системы условных рефлексов. За «неправильное» поведение особь должна наказываться, за «правильное» - поощряться. Таким образом, с течением времени особи должны выработать «правильную» линию поведения. В терминах ИЖ – поддерживать правильную температуру, вовремя включать освещение и кофеварки, вытирать ноги и мыть руки перед едой. Модель Цетлина описывает подобное внешне нетривиальное приспосабливающееся устройство в виде достаточно простого математического объекта – конечного автомата.

Автомат – это устройство, способное в каждый момент времени t=1,2,… воспринимать конечное число сигналов SÎ(S1,S2, ... SN) и изменять в зависимости от них свое внутреннее состояние; автомат может производить конечное число действий fÎ(f1,f2, ... fM); выбор действия определяется внутренним состоянием автомата, которых имеется конечное число jÎ(j1, j2, ... jK).

Предполагается, что автомат находится в некоторой среде, и что действия f автомата вызывают ответные реакции S среды C. Эти реакции в свою очередь являются для автомата входными сигналами, которые автомат использует для принятия решений о дальнейших действиях.

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

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

Именно эта достаточно простая модель показалась поначалу пригодной для реализации. Причем не только сугубо программной, но и аппаратной. Тем более что В.Л.Стефанюк, ученик и соратник Цетлина, рассказал как-то о том, что когда-то он собрал установку (еще на лампах), моделирующую условно-рефлекторное поведение цетлинских автоматов. Безусловно, в коллектив разработчиков это вселило большие надежды на успех проекта.

Архитектура аппаратного комплекса

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

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

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

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

Рис.1. Структура комплекса

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

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

Интеллектуальное жилище представляло собой совокупность датчиков, отслеживающих местоположение обитателей, акустических датчиков, а также исполнительных устройств – излучателей, сирен (для осуществления воздействия на обитателей) и центрального зарядного устройства. Управление должно было происходить через параллельный порт соответствующей ЭВМ. Таким образом, чтобы все было «по-честному», каждое устройство должно было управляться своими собственными «мозгами» - независимой ЭВМ, а взаимодействие – только на уровне обмена реальными физическими сигналами.

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

Реализация модели поведения

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

С практической точки зрения оказалось целесообразнее использовать следующий вариант управляющего автомата.

Имеется устройство с N датчиками и M эффекторами (в нашем случае N=7, M=5). Таким образом, входной алфавит составляет X=2N сигналов, а выходной - Y=2M. При этом рассматривается автомат с детерминированной матрицей переходов по всем 2N сигналам. А вот действия совершаются в соответствии со стохастической матрицей P (размером Q×X×Y). Т.е., находясь в некотором состоянии q(t) и приняв на входе сигнал x(t), автомат переходит в состояние q(t+1). При этом он совершает действие d, выбираемое из соответствующего вектора вероятностей – строки матрицы P.

d(t+1) = F(P(t), x(t), q(t)),

q(t+1) = Q(x(t),q(t)).

Смысл реакции на сигнал наказания/поощрения заключается в изменении значений вероятностей выполняемых действий.

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

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

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

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

Рис.2. Структура управляющего автомата

Следующей задачей была реализация схемы наказания/поощрения. При дрессировке обычно используются как наказание, так и поощрение. Первое устраняет нежелательные реакции, второе подкрепляет нужные. Однако при выработке условных рефлексов можно обойтись исключительно наказаниями. В конце концов, отсутствие наказания может (и должно) рассматриваться как поощрение. С технической же точки зрения речь идет лишь о минимизации потока воздействий на объект. По мере выработки нужных условных рефлексов количество наказаний минимизируется. В противном случае пришлось бы с течением времени постоянно поощрять объект. Проблема же заключается в том, когда и за что наказывать. Между свершением действия и его оценкой проходит какое-то время. Предположим, что действие было оценено как неверное и объекту был послан сигнал наказания. За это время объект мог совершить еще много чего, потому, получив сигнал наказания, возникает закономерный вопрос: а за что, собственно, наказали? В модели все просто. Имеется дискретный такт времени, все синхронизировано и однозначно. Реально же и действия объекта могут иметь различную продолжительность, и скорость реакции оценивающей системы может варьироваться, да и сами сигналы имеют асинхронный характер.

Из множества вариантов разрешения этих проблем был выбран наиболее простой, естественный и в некотором смысле психологически обоснованный.

Суть его сводится к тому, что, во-первых, все действия объекта должны иметь примерно равную и наперед заданную продолжительность. Во-вторых, совершив очередное действие, объект встает на паузу, замирает, ожидая реакции системы. Все это очень похоже на поведение неуверенного в своих действиях человека, живущего с постоянной оглядкой и, совершая что-либо, ожидающего возмездия – не накажут ли. Условно этот режим «периодического» функционирования изображен на рис.3,а. Аналогичный режим «непрерывного» функционирования (рис.3,б), когда продолжительность действий также фиксирована, но пауза стремится к нулю, показывает худшие с точки зрения обучения результаты. Это связано с «промахами» наказания, т.к. время реакции оценивающей системы tр должно быть жестко связано продолжительностью действия tд: tр<tд.

            а)                                                                     б)

Рис.3. Режимы периодического (а) и непрерывного (б) оценивания

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

Мы не будем останавливаться на особенностях программной реализации этой модели поведения. Модель достаточно очевидна и прозрачна. Можно отметить лишь, что наряду с условно-рефлекторным поведением все-таки было необходимо реализовать и безусловно-рефлекторное. Причиной тому стали особенности аппаратной реализации. Дело в том, что основу системы питания мобильных роботов составляют аккумуляторные батареи, которые необходимо периодически подзаряжать. Когда срабатывает датчик разряда аккумуляторов, робот перестает «играть» в условные рефлексы и переключается на выполнение жесткого алгоритма поиска кормушки (зарядного устройства). И только найдя его и зарядив аккумуляторы, робот снова продолжает играть в адаптацию. Действительно, какие могут быть исследования и эксперименты, когда аккумуляторы садятся!

Конструкция робота

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

Рис.4. Структура обитателя ИЖ

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

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

Эксперименты

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

Вырабатывались следующие рефлексы:

1.     «Замри». При получении определенного сигнала от ИЖ робот должен был замереть – выполнить «пустое» действие.

2.     «Голос». Робот должен по команде ИЖ издать звуковой сигнал.

3.     Объезд препятствий. При срабатывании контактных датчиков робот должен останавливаться и совершать соответствующий разворот.

В среднем, если обучение происходит «с нуля», т.е. при равновероятностной матрице действий, робот вырабатывал устойчивые условные рефлексы примерно за 10 минут, получая около 50 сигналов наказания, каждый из которых уменьшал вероятность «неправильного» действия примерно на 10%. «Переобучение» робота занимало, естественно, значительно большее время.

Сравнение результатов имитационного моделирования с «натурными» экспериментами оказалось весьма неутешительным. На практике основными «ухудшающими» факторами оказались неизбежные инерционность системы, неравномерность скорости оценки/реакции и помехи (ложные срабатывания и пропуски сигналов). К сожалению, попытка введения этих факторов в имитационную модель для повышения ее адекватности привела к разбалансированию всей модели.

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

Выводы

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