Эволюционные вычисления
Программа шашек Сэмюэля также была известна тем, что была одной из первых попыток эволюционных вычислений. (Его программа «эволюционировала», сопоставляя модифицированную копию с текущей лучшей версией его программы, и победитель становился новым стандартом.) Эволюционные вычисления обычно включают использование некоторого автоматического метода создания и оценки последовательных «поколений» программы. , пока не появится высокоэффективное решение.
Ведущий сторонник эволюционных вычислений Джон Холланд также написал тестовое программное обеспечение для прототипа компьютера IBM 701. В частности, он помог разработать «виртуальную» крысу с нейронной сетью, которую можно было научить перемещаться по лабиринту. Эта работа убедила Холланда в эффективности восходящего подхода. Продолжая консультировать IBM, Холланд в 1952 году перешел в Мичиганский университет, чтобы получить докторскую степень по математике. Однако вскоре он переключился на новую междисциплинарную программу по компьютерам и обработке информации (позже известную как коммуникационная наука), созданную Артуром Бёрксом, одним из создателей ENIAC и его преемника EDVAC.В своей диссертации 1959 года, скорее всего, первой в мире докторской степени по компьютерным наукам, Холланд предложил новый тип компьютера — многопроцессорный компьютер, — который назначал бы каждому искусственному нейрону в сети отдельный процессор. (В 1985 году Дэниел Хиллис решил инженерные трудности и построил первый такой компьютер — суперкомпьютер Thinking Machines Corporation с 65 536 процессорами.)
Холланд присоединился к факультету в Мичигане после окончания учебы и в течение следующих четырех десятилетий руководил большей частью исследований методов автоматизации эволюционных вычислений — процесса, теперь известного под термином генетические алгоритмы. Системы, реализованные в лаборатории Холланда, включали шахматную программу, модели одноклеточных биологических организмов и систему классификаторов для управления смоделированной газопроводной сетью. Однако генетические алгоритмы больше не ограничиваются «академическими» демонстрациями; в одном важном практическом приложении генетический алгоритм взаимодействует со свидетелем преступления, чтобы создать портрет преступника.
Логическое мышление и решение проблем
Способность рассуждать логически является важным аспектом интеллекта и всегда была в центре внимания исследований ИИ. Важной вехой в этой области стала программа доказательства теорем, написанная в 1955–1956 годах Алленом Ньюэллом и Дж. Клиффордом Шоу из RAND Corporation и Гербертом Саймоном из Университета Карнеги-Меллона. Программа Logic Theorist, как ее стали называть, была разработана для доказательства теорем из Принципы математики (1910–13), трехтомный труд британских философов-математиков Альфреда Норта Уайтхеда и Бертрана Рассела. В одном случае доказательство, разработанное программой, было более элегантным, чем доказательство, данное в книгах.
Ньюэлл, Саймон и Шоу написали более мощную программу General Problem Solver, или GPS. Первая версия GPS была запущена в 1957 году, и работа над проектом продолжалась около десяти лет.GPS может решить впечатляющее количество головоломок методом проб и ошибок. Тем не менее, одна из критических замечаний в отношении GPS и подобных программ, лишенных какой-либо способности к обучению, заключается в том, что интеллект программы полностью вторичен и исходит из любой информации, которую явно включает программист.
английский диалог
Две из самых известных ранних программ искусственного интеллекта, Элиза и Парри, создавали жуткое подобие интеллектуального разговора. (Подробности обоих были впервые опубликованы в 1966 году.) Элиза, написанная Джозефом Вейценбаумом из Лаборатории искусственного интеллекта Массачусетского технологического института, имитировала человека-терапевта. Парри, написанный психиатром Стэнфордского университета Кеннетом Колби, имитировал человека, страдающего паранойей. Психиатры, которых просили решить, общаются ли они с Пэрри или человеком, страдающим паранойей, часто не могли сказать. Тем не менее ни Пэрри, ни Элизу нельзя было с полным основанием назвать умными. Вклады Пэрри в беседу были законсервированы — заранее созданы программистом и сохранены в памяти компьютера. Элиза тоже полагалась на готовые предложения и простые приемы программирования.
Языки программирования ИИ
В ходе работы над Logic Theorist и GPS Ньюэлл, Саймон и Шоу разработали свой язык обработки информации (IPL), компьютерный язык, адаптированный для программирования ИИ. В основе IPL лежала очень гибкая структура данных, которую они назвали списком. Список — это просто упорядоченная последовательность элементов данных. Некоторые или все элементы в списке сами могут быть списками. Эта схема приводит к сильно разветвленным структурам.
В 1960 году Джон Маккарти объединил элементы IPL с лямбда-исчислением (формальной математическо-логической системой) для создания языка программирования LISP (процессор списков), который остается основным языком для работы ИИ в Соединенных Штатах. (Само лямбда-исчисление было изобретено в 1936 году принстонским логиком Алонзо Чёрчем, когда он исследовал абстрактные Entscheidungsproblem, или «проблема решения» для логики предикатов — та же проблема, над которой работал Тьюринг, когда изобретал универсальную машину Тьюринга.)
Язык логического программирования PROLOG (Programmation en Logique) был задуман Аленом Кольмерауэром в Университете Экс-Марселя, Франция, где этот язык был впервые реализован в 1973 году. Дальнейшее развитие PROLOG получил логик Роберт Ковальски, член группы AI. в Эдинбургском университете. Этот язык использует мощный метод доказательства теорем, известный как разрешение, изобретенный в 1963 году в Аргоннской национальной лаборатории Комиссии по атомной энергии США в Иллинойсе британским логиком Аланом Робинсоном. PROLOG может определить, следует ли данное утверждение логически из других заданных утверждений. Например, при наличии утверждений «Все логики рациональны» и «Робинсон — логик» программа на ПРОЛОГе дает утвердительный ответ на вопрос «Робинзон рационален?» PROLOG широко используется для работы с ИИ, особенно в Европе и Японии.
Исследователи из Института компьютерных технологий нового поколения в Токио использовали PROLOG в качестве основы для сложных языков логического программирования. Известные как языки пятого поколения, они используются на нечисловых параллельных компьютерах, разработанных в Институте.
Другая недавняя работа включает разработку языков для рассуждений о зависящих от времени данных, таких как «счет был оплачен вчера». Эти языки основаны на временной логике, которая позволяет размещать утверждения в потоке времени. (Временная логика была изобретена в 1953 году философом Артуром Прайором в Кентерберийском университете, Крайстчерч, Новая Зеландия.)
Программы микромира
Чтобы справиться с ошеломляющей сложностью реального мира, ученые часто игнорируют менее важные детали; например, физики часто игнорируют в своих моделях трение и упругость.В 1970 году Марвин Мински и Сеймур Пейперт из лаборатории искусственного интеллекта Массачусетского технологического института предложили, чтобы аналогичным образом исследования в области искусственного интеллекта были сосредоточены на разработке программ, способных к разумному поведению в более простых искусственных средах, известных как микромиры. Многие исследования были сосредоточены на так называемом мире блоков, который состоит из цветных блоков различных форм и размеров, расположенных на плоской поверхности.
Ранним успехом микромирового подхода стала книга SHRDLU, написанная Терри Виноградом из Массачусетского технологического института. (Подробности программы были опубликованы в 1972 году.) SHRDLU управлял манипулятором, который работал над плоской поверхностью, усыпанной игровыми блоками. И рука, и блоки были виртуальными. SHRDLU реагировал на команды, вводимые на естественном английском языке, например: «Пожалуйста, сложите оба красных блока и либо зеленый куб, либо пирамиду». Программа также могла отвечать на вопросы о собственных действиях. Хотя SHRDLU изначально превозносился как крупный прорыв, Виноград вскоре объявил, что программа на самом деле зашла в тупик. Техники, впервые примененные в программе, оказались непригодными для применения в более широких и интересных мирах. Более того, создаваемая ШРДЛУ видимость понимания микромира блоков и высказываний о нем на английском языке была на самом деле иллюзией. ШРДЛУ понятия не имел, что такое зеленый блок.
Еще одним продуктом подхода микромира был Shakey, мобильный робот, разработанный в Стэнфордском исследовательском институте Бертрамом Рафаэлем, Нильсом Нильссоном и другими в период 1968–72 годов. Робот занимал специально построенный микромир, состоящий из стен, дверных проемов и нескольких деревянных блоков простой формы. У каждой стены был тщательно выкрашенный плинтус, чтобы робот мог «видеть», где стена встречается с полом (упрощение реальности, типичное для подхода микромира). У Шейки было около дюжины основных способностей, таких как ПОВОРОТ, ТОЛКАНИЕ и ПОДЪЕМ-РАМП.
Критики указывали на сильно упрощенный характер среды Шейки и подчеркивали, что, несмотря на эти упрощения, Шейки работал мучительно медленно; серия действий, которые человек мог спланировать и выполнить за считанные минуты, заняла у Шейки дни.
Самый большой успех подхода микромира — это тип программы, известный как экспертная система, описанная в следующем разделе.