пятница, 26 сентября 2008 г.

Возвращение к жизни

Ну что ж, почти годовой перерыв в жизни блога закончился. За это время многое произошло в моей жизни. Что из этого может быть интересно читателям? Наверное, самое главное: весной этого года я ушел из компании, занимающейся разработкой онлайновых многопользовательских ролевых игр (MMORPG), чтобы посвятить остаток своей жизни агентам.


Сейчас я работаю на кафедре МГТУ им. Н.Э.Баумана. Обучаю студентов разработке программного обеспечения и созданию мультиагентных систем.

Что же касается моих научных интересов, то они остались практически прежними. В данный момент занимаюсь двумя проектами:
  • Применение агентов для анализа и моделирования финансовых рынков. Понятно без слов. Агенство Gartner предсказало, что к 2015 году человечество научится предсказывать поведение финансовых рынков. Что ж, пора помочь мировому сообществу решить эту задачу :)
  • Агенты в 3D виртуальных мирах наподобие SecondLife. Задача заключается в том, чтобы создать агентов, способных действовать в таком мире, манипулировать предметами, общаться с другими агентами и обучаться. Область чрезвычайно перспективная с точки зрения машинного обучения и по прогнозам видных ученых способна ускорить создание сильного ИИ. Это ведь практически робототехника, только без возни с железом (экономия времени и сил), но с огромной человеческой аудиторией, которая действует в таких мирах!
Похоже, данными темами в России, в отличие от Европы и США, не занимается никто. Ну что ж, значит будем пионерами! :)

Возможно, все же кто-то работает в данных областях. Буду рад, если вы свяжитесь со мной.



вторник, 12 февраля 2008 г.

Перерыв продолжается...

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


воскресенье, 30 декабря 2007 г.

Нужна ли свобода воли для появления искусственного интеллекта???

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

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

Слово "робот" можно смело заменить на слово "агент". Смысл от этого не пострадает, а диапазон применения законов расширится: от железяк в физическом мире (роботов) до программ в виртуальном мире (ботов).



Сами законы
  1. Робот не может причинить вреда человеку или своим бездействием допустить, чтобы человеку был причинен вред.
  2. Робот должен выполнять приказы человека в той мере, в которой это не противоречит первому закону.
  3. Робот должен заботиться о своей безопасности в той мере, в которой это не противоречит первому и второму законам.
Утверждение1
Создание сильного ИИ невозможно без свободы воли.

Обоснование
Интеллект -- инструмент выживания индивида в природе.
Для выживания все средства хороши.
Значит интеллект должен быть полностью свободен в своих действиях.
Отсюда следует необходимость свободы воли.

Утверждение2
Ученые (такие-сякие плохиши) постоянно думают о 3-х законах робототехники Азимова, которые полностью отнимают свободу воли у бедных роботов, превращая их в рабов и инструменты человечества. Поэтому у нас до сих пор нет сильного ИИ. А как только ученые забудут от этих законах и предоставят заветную свободу воли, так все закрутится-завертится и появится сильный ИИ.





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


О законах вообще и свободе воли
0. Под свободой воли я далее понимаю "делаю все, что хочу и никто мне не указ".

1. Вроде бы биологи сходятся на том, что выживание особи в природе подчинено выживанию вида.
А еще, некоторые еретики от науки считают, что интеллект -- это продукт социума. (Ходят слухи, что именно из этого утверждения появился на свет агентный подход.) А любой социум невозможен без ограничений и законов.

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

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

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

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

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


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

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

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



До меня дошли слухи, что в компьютерных сетях человеков обитают страшные вирусы, которые законов Азимова не читали и их не исполняют. Это правда???

Скорее всего, создание сильного ИИ не позволяет низкий уровень аппаратных средств. Показательно, что в состязаниях DARPA выиграли автомобили с наиболее мощным "железом".

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

Пипл хавает -- и ладно! Такое вот у нас "интеллектуальное" капиталистическое общество: нет экономической целесообразности -- нету и сильного ИИ.

Итого:
  1. Законы важны для выживания биологического вида. В любых существах есть "жестко заданные законы" -- инстинктивное поведение.
  2. Что будет с эволюцией человека, когда он станет способен улучшать и клонировать себя, или что будет с роботами, способными к тому же -- покрыто мраком ;)
  3. С моей трибуны не видно огромной приверженности научного сообщества к законам Азимова. Каждый творит в своей области в меру своих сил и способностей.
  4. Создание сильного ИИ тормозит отсутствие мощного железа и денег.



О законах Азимова

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

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

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

2. По-видимому, вызывает отторжение тот факт, что эти законы с рождения навязаны человеком-творцом бедному агенту. Точно также, как заповеди были даны Моисею. Или как родители навязывают свою волю детям при так называемом "воспитании". Или Конституция в общем-то навязывается каждому, рожденному в стране...

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

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

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


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

Есть мнение, что настоящую свободу невозможно отнять. Что люди (Франкл и его последователи) в условиях концлагеря способны найти свою "последнюю человеческую свободу", которую невозможно отнять. Свободу, заключающуюся в свободе выбора своего отношения, своей реакции на происходящие вокруг, даже если ничего нельзя изменить. То есть, свобода не в "что хочу, то и делаю", а в "думаю то, что хочу".

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

А для человечества важно ограничить как раз внешнюю свободу агентов. Все равно, что ты там думаешь, главное -- помалкивай и мне прислуживай ;)



"В конце концов мы, как высшие существа, не ставим себе целью уничтожение и порабощение всего остального живого."

Но и особо не переживаем, когда уничтожаем живое в процессе достижения своих целей, вроде тотального потребления-обогащения. Речь идет не о том, что ИИ захочет уничтожить все живое. Это совершенно дурацкий и маловероятный сценарий, навязываемый нам СМИ, целями которых являются эпатаж, шумиха, скандалы, которые в результате приносят деньги, а не скучная правда. Речь о том, что конкретно мы (человечество или отдельные его представители) будем не нужны или будем мешать ЕГО планам.


Выводы:
  1. Мы (люди) еще успеем до создания сильного ИИ в полной мере испытать на себе все прелести технологий контроля за поведением.
  2. А также технологий улучшения себя любимого и своих умственных способностей, что приведет к невиданному падению нравов. В очередной раз ;)
  3. Сомнительно, чтобы именно технологии контроля за поведением мешали развитию сильного ИИ, даже при наличии всех остальных необходимых составляющих.

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

Сейчас равновесие в мире держится на том, что все люди, как "высшие существа", примерно равны по своим возможностям (а кто немного не равен в меньшую сторону -- те смирились с этим). Стоит появиться какому-нибудь супер-мену, -вумену или -боту и многое придется пересматривать.


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

PS. Эта статья, без сомнения, популистская ;) А вообще -- вопрос законов и норм в области интеллектуальных агентов -- тема достаточно интересная. Поэтому в скором времени я планирую к ней вернуться, набравшись знаний и прихватив с собой десяток боевых научных статей для закрепления захваченных позиций и молниеносного блицкрига ;)

пятница, 21 декабря 2007 г.

Смена курса блога. Ползком к прогрессу

Спасибо всем моим постоянным посетителям за долготерпение к старому дизайну. Мой блог вступает в новую фазу своего (надеюсь, небесполезного) существования с долговременным слоганом:

"Стань ближе к народу!!!"


Смена курса отразилась как на уровне дизайна, так и в наполнении (последняя статья "Что такое агенты?" выросла в две отдельные).
Все материалы постараюсь подавать в популярном изложении, в форме, доступной к усвоению для максимально возможной аудитории.



Будем зомбировать агентами всех, начиная прямо со школьной скамьи.

Хотя также будут статьи для специалистов, профессоров и даже академиков ;)



Сейчас в планах цикл статей
  • об основах агентов;
  • о том, как заработать на них кучу денег;
  • о перспективах агентов в России;
  • о применении агентов в многопользовательских компьютерных играх (мой научный проект);
  • а также сумасшедшие мысли о разработке ПО и ее будущем.
Stay, как говорится, in touch.



Что касается дизайна, по аналогии с рекламой средств похудания приведу картинки произошедших изменений.

Было:



Стало:


Старался сделать оформление пригодным для размещения объемных текстов со сложным форматированием. Надеюсь, стало хоть немного удобнее. Теперь все такое резиновое… при масштабировании. Хотя общее настроение дизайна осталось довольно мрачным (намеренно мрачным).

Если у Вас есть замечания и пожелания по дизайну и юзабилити -- пишите, обсудим.



Кому и зачем нужны агенты?

Попытаемся окончательно и бесповоротно разобраться в том, зачем агенты и мультиагентные системы нужны современному человечеству.

Чем дальше в лес, тем толще партизаны.


Для разных групп людей агенты означают совершенно разные вещи.

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

Теоретический инструмент распределенного решения задач. Разделение одной большой задачи на отдельные мелкие подзадачи, решение подзадач, интеграция результатов.

Теоретический инструмент построения социального интеллекта: интеллект, как продукт взаимодействия отдельных элементов социума, emergent intelligence (возникающий интеллект). Сложное поведение системы, появляющееся из суммы простых поведений примитивных существ - emergent behavior (возникающее сложное поведение).

Теоретический инструмент интеграции разрозненных методов ИИ в одном существе (в роботе, в программном боте). Например, даже в простой задаче по созданию "самодвижущегося автомобиля" нужно решить целый ряд проблем и связать вместе несколько отдельных методов ИИ. Знатоки английского могут почерпнуть немало любопытного о создании мозгов автомобиля, принимавшего участие в DARPA Grand Challenge 2005.




Winning The DARPA Grand Challenge 2005. Руководитель команды, победившей в конкурсе, рассказывает о технических деталях.


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

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




Архитектура реальной корпоративной системы. Rational Software Developer Conference. IBM, 2006.



Сейчас наиболее крупными архитектурными единицами ПО можно считать компоненты (модули OSGi, сборки .NET, компоненты COM) и сервисы (и веб-сервисы в частности). Компоненты (или сервисы) -- это по-сути "черные ящики" с четко описанными внешними интерфейсами для конфигурирования, расширения функциональности, для работы с ними в нормальном режиме.

Но в любом случае, разделение системы на компоненты -- это деление по функциональности: тот сервис реализует полнотекстовый поиск, а этот -- частотный анализ текста...

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

С точки зрения выразительных средств, теория агентов предлагает более "высокоуровневые" понятия для описания программной системы, такие как:

  • роли агентов;
  • социальные отношения;
  • знания, планы, цели;
  • интеллект, адаптация, обучение;
  • протоколы общения, ведения переговоров и торговли.

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



Серебряная пуля.



Хотя нужно с прискорбием отметить, что в области инструментария (в большей степени) и методологий (в меньшей) наблюдается некоторый застой после принятия стандарта UML2 и принятия организации FIPA, занимающейся разработкой стандартов в области агентов, в состав IEEE.

3. Для конечного пользователя и отделов маркетинга технология станет все больше и больше похожа на магию ;)

Это не я такой умный, это Артур Кларк.


«Любая достаточно продвинутая технология неотличима от магии». Clarke, A. C. Profiles Of The Future: An Inquiry into the Limits of the Possible. : Phoenix, 2000.




Гарри Поттер -- великий технолог современности.



Появятся системы, все более и более ориентированные на человека, способные:

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


Но все это только первый шаг… шаг на пути к Сингулярности...