Глава 2
Искусственная жизнь и искусственный интеллект
Развитие роботехники подходит к важнейшему этапу: возможности создания искусственной жизни и искусственного интеллекта.
Искусственный интеллект
Мечтой человечества является создание машины, снабженной искусственным интеллектом (ИИ), способной соперничать или даже превосходить интеллект человека. Как мне представляется, внедрение и развитие искусственного интеллекта (ИИ) в компьютерных системах наилучшим образом возможно через создание нейронных сетей. Это не совпадает с мнением других компьютерных специалистов, считающих экспертные системы и специальные системы правил под «задачу» (программы) потенциально более жизнеспособными.
Неоспоримым является тот факт, что «задачные» операционные системы (DOS, Windows, Linux и т. д.) и соответствующее им матобеспечение способны решать практически все известные на сегодня задачи. Не отрицая этого факта, замечу, что для реализации мечты о создании ИИ работа с нейронными сетями является наиболее многообещающей.
Еще совсем недавно было предсказано, что использование мощных параллельных процессоров в комбинации с нейронными сетями при использовании принципа нечеткой логики позволит смоделировать человеческий мозг в течение десяти ближайших лет. Прогноз оказался слишком оптимистичным, тем не менее определенных успехов в этом направлении удалось достичь. На рынке появилось уже второе поколение чипов, построенных по принципу нейронных сетей. Совсем недавно две компании (Intel Corp., Santa Clara, CA и Nestor Inc., Providence, RI) объединенными усилиями создали нейрочип Ni1000. Модель Ni1000, выпущенная в 1993 году, содержит 1024 искусственных нейрона. Эта интегральная схема содержит три миллиона транзисторов и способна производить 20 миллиардов двоичных операций в секунду.
Эволюция «сознания» в искусственном интеллекте
Наличие сознания является проявлением внутренних процессов, протекающих в мозгу. Зарождение сознания у человека Homo sapiens явилось результатом эволюционного развития нейронных структур мозга как биологической системы. Миллиард лет назад наиболее развитой формой жизни на Земле были черви. Давайте на минуту представим себе этого доисторического червя и зададимся вопросом: мог ли зачаток (в смысле нейронной структуры) интеллекта породить некоторое рудиментарное «сознание»? Если это так, то такой «интеллект» и «сознание» оказываются похожими на работу искусственных нейронных сетей, используемых в современных суперкомпьютерах (см. рис. 2.1).
Рис. 2.1. График, показывающий возможности суперкомпьютера
Червь, несомненно, является живым существом, но может ли он осознавать «себя»? Или его нервная система представляет собой организованный ансамбль нейронов, воспроизводящих все ту же «начальную» запись, которая уже была заложена в нейронной структуре предков, осуществляя, таким образом, не более чем функциональный биологический автоматизм?
Является ли сознание жизнью?
Такой вопрос включает в себя несколько: «Является ли интеллект сознанием?» и «Является ли сознание жизнью?» Представляется корректным говорить о том, что интеллект должен достичь определенной степени развития, «критической» массы и только в этом случае можно говорить о появлении сознания. В любом случае искусственные нейронные сети способны и в итоге достигнут уровня «сознания». Произойдет ли это через 10 лет, или через 1000 лет – это не имеет никакого значения; 1000 лет есть только миг в эволюционной истории. (Я все же надеюсь, что это произойдет через десяток лет, и мне удастся при жизни увидеть полноценный ИИ.) Интересно, когда искусственные нейронные сети обретут «сознание» и «самосознание», можно ли будет считать их живыми существами?
Искусственная жизнь
В создании искусственной жизни (ИЖ) можно выделить три основные направления исследований: создание «нейронных» роботов с автономным питанием, создание нанороботов (в том числе и с возможностью «размножения»), создание компьютерных программ (матобеспечение). Наиболее совершенным типом искусственной жизни на Земле на сегодняшний день являются компьютерные программы. Роботы, способные к самовоспроизводству, еще не изобретены, а ждать появления нанороботов придется еще достаточно долго. По этой причине остановимся сейчас только на компьютерных программах ИЖ.
В подобных программах «жизнь» существует исключительно в виде цепочек электрических импульсов, которые генерируются программой в памяти компьютера. Специалисты-компьютерщики создали массу различных программ ИЖ, моделирующих различные биологические процессы (выживание, рождение, смерть, развитие, движение, кормление, спаривание и т. д.). Некоторые из них называются «клеточная автоматизация» (кластеризация), другие имеют название «генетических» алгоритмов.
Программа клеточной автоматизации (КА) была использована для точного моделирования биологических систем и исследования характера распространения заразных заболеваний, таких как СПИД в человеческой популяции. Подобные программы также применялись для исследования эволюционных процессов, поведения колоний муравьев и пчел и множества других стохастических систем. Для генерации случайных процессов в программы были введены специальные стохастические алгоритмы. Одним из интересных применений было использование КА программ для оптимизации размеров нейронных сетей, использованных в головном компьютере. Есть надежда, что подобные программы помогут создать и «связать» большие нейронные сети для использования в суперкомпьютерах.
Генетические алгоритмы (ГА) функционируют в духе Дарвиновской теории выживания сильнейшего. Две конкурирующие ГА программы могут «встретиться» в памяти компьютера и перемешать свои двоичные коды для произведения «потомства». Если «потомок» окажется так же или более жизнеспособным по сравнению с «родителями», то, вероятнее всего, он выживет. Являются ли эти программы живыми – это, очевидно, зависит от определения жизни. Что если появятся программы, способные к саморазвитию и повышению собственного «программного» уровня? Что произойдет, когда подобные программы будут встроены в передвижных роботов? Как насчет роботов, научившихся производству себе подобных?
Нанороботы – мы живые существа?
Наноробот представляет собой робота, имеющего размеры микроба. Фирме IBM удалось достичь определенных успехов в создании электронных и механических устройств (транзисторы и проводники), имеющих молекулярные или даже атомарные размеры. Подобные достижения вселяют уверенность в возможности создания предметов сколь угодно малых размеров, поэтому роботы размером с бактерию теоретически возможны.
Некоторые ученые предсказывают, что следующим эволюционным шагом будет возникновение жизни на основе кремния, которая заменит на планете углеродные формы жизни. То, что мы сейчас называем электронными устройствами и роботами, станут формами саморазвивающейся и саморазмножающейся силиконовой жизни.
Немного истории
Прогресс компьютерных технологий за последние пять с половиной десятилетий можно назвать ошеломляющим. Созданный в 1946 году компьютер ENIAC представлял собой целую гору электронного оборудования. При размерах 30 м в длину, 2,4 м в высоту и 0,9 м в ширину его вес доходил до 30 т. ENIAC содержал 18 тыс. электронных ламп, 70 тыс. резисторов, 10 тыс. конденсаторов, 6 тыс. переключателей и 1,5 тыс. электромагнитных реле. Производительность машины составляла 5 тыс. сложений, 357 умножений или 38 делений в секунду. Сегодня подобный компьютер образца 1946 года можно уместить на крошечной кремниевой пластинке площадью менее 5 кв. мм.
Физик Роберт Ястроу утверждал в журнале «The enchanted Loom» (New York, Simon&Shuster, 1981), что «компьютеры первого поколения были в миллиард раз «глупее» и неэффективнее человеческого разума. На сегодняшний день этот разрыв сократился более чем в тысячу раз».
Наука неослабевающими темпами стремится к созданию ИИ, и как я уже говорил, возможно, искусственный интеллект будет создан еще при нашей жизни. От точки создания ИИ всего несколько шагов до создания машинного «суперинтеллекта». Многие ученые скажут вам, что это только мечта, пытаясь удержать сладкую иллюзию о безусловном и окончательном превосходстве человеческого интеллекта. Не утешаясь подобными иллюзиями, я могу сказать, что прогресс создания ИИ непреклонно и с неослабевающим темпом становится реальностью.
Совершеннее, чем мы
Хотим ли мы как представители разумной расы создать интеллект, превосходящий наш собственный? Если думать над этой проблемой, то в долговременной перспективе он может потребоваться нам хотя бы для целей выживания. Подумайте о перспективах той страны, которая первой создаст ИИ с IQ порядка 300. Подобной машине ИИ можно поручать проблемы оздоровления национальной экономики, очистки окружающей среды, прекращения загрязнений, развития военных стратегий на случай конфликтов, осуществления медицинских и научных исследований и, конечно, создания более совершенных устройств ИИ. Возможно, что следующая теория развития Вселенной будет предложена не человеком (как в свое время это сделал Альберт Эйнштейн), а машинным ИИ.
Запертая клетка
Почему так важно создать суперинтеллект? Найдет ли человечество, в конце концов, решение этой волнующей проблемы? Возможно. Необходимость создания мощного ИИ можно проиллюстрировать одной историей, которую я услышал или прочитал. Боюсь только, что я не вспомню фамилии автора, за что приношу ему свои извинения. Если я немного исказил историю своим пересказом, то прошу прощения и за это.
В клетке находятся десять шимпанзе. Дверь клетки заперта. Чтобы догадаться, как отпереть замок и открыть дверцу клетки, требуется коэффициент интеллекта IQ порядка 90. Каждый шимпанзе, сидящий в клетке, был подвергнут тестированию и показал IQ порядка 60. Могут ли десять шимпанзе, объединив усилия, найти способ открыть дверцу клетки? Ответ однозначен – НЕТ. Интеллект не накапливается. Если бы 10 шимпанзе, действуя совместно, обладали бы суммарным интеллектом IQ равным 600, то этого было бы более чем достаточно, чтобы отпереть дверцу. Реально шимпанзе не могут этого сделать.
В реальной жизни мы сталкиваемся с проблемами, такими как загрязнение окружающей среды, экономика, заболевания, подобные раку и СПИДу, поиски долголетия, и разнообразными направлениями научного поиска, которые метафорически могут быть представлены как «сидение» в запертой клетке. С этой точки зрения создание сверхмощного ИИ представляется очевидным. Такой ИИ, возможно, найдет нужные ключи для «отпирания» подобных проблем, которые до настоящего времени остаются в принципе нерешенными. Я не думаю, что подобные возможности ИИ остаются вне сферы внимания различных государств. Возможно, что следующий «Манхэттенский проект», предпринятый в нашей стране, (я надеюсь) будет посвящен созданию суперИИ.
Мы как раса вряд ли будем довольны появлением машинного интеллекта, по сравнению с которым мы будем ощущать себя в роли шимпанзе. Научные фантасты уже в течение долгого времени описывают безумия суперкомпьютеров, имеющих ИИ. Таков компьютер HAL в романе А. Кларка «Космическая одиссея, 2001», таков центральный компьютер в «Терминаторе» и «Терминаторе II». Для всех будущих создателей ИИ, которые прочитали эту книжку, у меня есть предостережение «Не забывайте про выключатель!»
Биотехнологии
Успехи биотехнологий в скором будущем позволят нам изменять нашу генетическую основу. На основе этого станет возможным «модифицировать» наш мозг для увеличения его интеллектуальных способностей. Однако вполне возможно, что подобные генные модификации приведут к непредсказуемым последствиям для последующих поколений, которые могут быть катастрофическими. Создание суперинтеллекта на основе машины представляется более безопасным, по крайней мере, до поры до времени.
Нейронные сети – ожидания против реальности
Возможности нейронных сетей с самого момента появления были, пожалуй, излишне разрекламированы. Поэтому достаточно легко не принимать во внимание мои соображения насчет ИИ, ИЖ и нейронных сетей, собственно, как делают это многие в течение ряда лет. Хотя, правда и то, что появление «человекоподобного» интеллекта было предсказано.
Если развитие будет идти теми же темпами, что и в последние 50 лет, то, как я надеюсь, через полвека появятся системы ИИ, сравнимые с возможностями человеческого мозга.
Что такое нейронные сети?
Я описывал нейронные сети без точного определения. Сейчас я дам это определение. Нейронными сетями называются искусственные компьютерные системы (на базе аппаратного и программного обеспечения), которые функционируют и «обучаются» на основе моделей, созданных по аналогии с биологическими системами человеческого мозга. Такие сети могут быть созданы на базе аппаратно/программного обеспечения или быть чисто аппаратными. Моделирование по образцу биологических мозговых структур привело к успешному решению некоторых частных проблем, необходимых для создания ИИ, таких как машинное зрение, распознавание речи и вокализация. Нейронные сети могут быть «обучены» для осуществления распознавания образов. Они могут быть научены чтению или проверке качества продукции через визуальный контроль изделий. Одним таким примером является система Papnet, описанная в главе 1. Другие сети могут быть обучены распознаванию звуковых команд (распознавание речи) и речевому синтезу. Сети, использующие статистические методы, могут предсказывать поведение и вероятности событий в сложных нелинейных системах, основываясь на данных прошлого опыта. Такие системы способны давать динамику нефтяных цен, обеспечивать контроль электронных устройств самолета и предсказывать погоду. Нейронные системы могут также успешно применяться в анализе состояния рынка, оценивать кандидатов на ипотечные кредиты и страхование жизни, показывая лучшие результаты, чем традиционно используемые экспертные системы на основе стандартных решающих правил.
Что такое искусственный интеллект?
Законный вопрос, не правда ли? Безусловно, развитие нейронных сетей приведет сперва к появлению «интеллекта», а потом уже – «сознания». В попытке создания сетей, которые интеллектуальны или демонстрируют интеллект, каким критерием нужно руководствоваться, чтобы понять, что цель уже достигнута?
Британский математик Алан Тьюринг предложил интересную процедуру, которая, в общем, считается достоверной для определения того, имеет ли машина интеллект. Человек и машина вступают в беседу, посылая сообщения по телетайпу. Если машина может поддерживать общение таким образом, что человек не в состоянии определить – кто находится на другом конце линии телетайпа: человек или машина, то машина определяется как «мыслящая». Эта процедура называется тестом Тьюринга и является одним из критериев определения ИИ.
Хотя тест Тьюринга является общепринятым, он не является окончательной процедурой определения ИИ. Существует ряд совершенно «тупых» языковых программ, которые практически способны пройти эту процедуру. Наиболее известной из них является программа ELIZA, разработанная Джозефом Вейценбаумом в Массачусетском технологическом институте. ELIZA имитирует работу психолога, и вы можете с ней побеседовать. Например, если вы послали ELIZA сообщение, что вы потеряли своего отца, она может ответить: «Почему вы потеряли своего отца» или «Расскажите мне больше о своем отце». Эти ответы могут вас заставить вас поверить в то, что ELIZA понимает вашу речь. Это не так, конечно. Ответы есть хитро сконструированные утверждения на основе ваших сообщений.
Таким образом, если мы хотим, то можем отбросить критерий Тьюринга и взять что-то еще. Возможно, лучшим указанием на существование интеллекта будет наличие сознания или самосознания. Машина, осознающая себя, будет точно знать, что она разумна. Другим возможным критерием, более прямым и простым, может служить способность обучения на основе опыта. Этот критерий использован в данной книге.
Конечно, мы можем отбросить все логические основания и утверждать, что интеллект свойственен системам, имеющим развитое чувство юмора. Насколько мне известно, человекообразные являются единственными существами, способными смеяться. Возможно, наличие чувства юмора и эмоций будет лучшим критерием и поставит точку в его поисках.
Использование нейронных сетей в роботах
Итак, каким образом нейронные сети сегодня используются в робототехнике? Да, мы еще далеки от создания достаточно «разумного» ИИ, не говоря уже о том, чтобы снабдить им одного из наших роботов. Тем не менее, во многих случаях использование технологии нейросетей позволяет создавать системы контроля функций роботов, превосходящих возможности стандартных ЦПУ и программного обеспечения. Использование нейросетей в наших роботах позволит им совершать маленькие «чудеса» без использования стандартных компьютеров, процессоров и программ. В главе 6 мы построим систему с нечеткой логикой, состоящую из двух нейронов, способную отслеживать направление источника света. Подвижный робот, снабженный такой системой, оказывается в состоянии следовать за источником света в любом направлении. Также в главе 6 мы обсудим технологию BEAM и идеи Марка Тилдена, создавшего транзисторные схемы (нейронные сети), которые обеспечивают движение и иные функции роботам, имеющим «ноги». Большой прогресс достигнут в применении другого нейронного процесса, названного предикативной архитектурой, использующего метод предикативной (условной) реакции на стимул.
Микросети
Небольшие программы нейронных сетей могут быть осуществлены через микроконтроллеры. Более полную информацию о микроконтроллерах» можно найти в главе 6.
Нейронная поведенчески-ориентированная архитектура
Принцип построения поведенчески-ориентированной архитектуры устройства, разработанный Вальтером Греем, показывает, что относительно простые стимульно-реактивные нейронные системы, вмонтированные в робота, демонстрируют высокоорганизованную, сложную систему поведения. Устройства предикативной архитектуры, как частного случая поведенчески-ориентированной архитектуры, разрабатывались доктором Родни Бруксом (MIT) и будут также более подробно рассмотрены в главах 6 и 8.