«Взрывное» развитие математики и вслед за ней прикладных наук начиная со второй половины XIX века дало стимул к развитию и различным направлениям в области изучения мышления и интеллекта. Но здесь уже сложно говорить о какой-то последовательной работе над этой темой, так как сам по себе вопрос изучения человеческого разума является междисциплинарным и про историю развития наук об искусственном интеллекте можно говорить исключительно в ключе постепенного сбора информации и разработки методов в совершенно различных областях знания, которые затем объединялись и в конечном итоге привели к выделению искусственного интеллекта в отдельное научное направление. Другими словами, искусственный интеллект, как дерево, базируется на мощной корневой системе, в которую отдельными корешками входят различные науки от философии, чистой математики и теории вычислений до нейрофизиологии и психологии.
Так что можно выделить следующие магистральные направления научной мысли, которые питают искусственный интеллект (не включая отдельные более узкие специализации):
• философия сознания;
• формальная логика;
• теория вычислений;
• теория информации;
• кибернетика;
• вычислительная техника;
• нейрофизиология;
• психология;
• социология.
Итак, исследования в рамках философии сознания начал Рене Декарт, после которого к этой теме приобщались многочисленные философы, среди которых стоит отметить Джона Локка и Дэвида Юма. Много усилий к изучению природы сознания прилагали философы немецкой школы, в частности Артур Шопенгауэр и Георг Гегель. К XX веку философия сознания выделилась в отдельное направление в рамках аналитической философии, которое является чуть ли не единственной прикладной философской дисциплиной, имеющей большое значение для многих направлений научной мысли, в том числе и для искусственного интеллекта. Философия сознания пытается ответить на вопросы о природе сознания и его соотношения с объективной реальностью, что связано с моралью, свободой воли и этическими вопросами, которые, в свою очередь, сразу же возникают при более глубоком изучении проблем искусственного интеллекта и развития его взаимоотношений с интеллектом естественным.
Как уже было упомянуто, основы формальной логики заложил ещё в античные времена Аристотель, однако потом до начала XX века эта методология использовалась учёными без какого-либо развития. Математики пытались как-то формализовать научный метод, и даже было произведено несколько интересных попыток. Немецкие математики и логики Георг Кантор и Готлоб Фреге фактически стали отцами наивной теории множеств и теории предикатов первого порядка соответственно. Эти теории позволяли формализовать очень многое, однако страдали от важного недостатка – противоречивости. И только в 1910–1913 гг. английские математики и философы Бертран Рассел и Альфред Уайтхед опубликовали трёхтомную работу «Принципы математики», где они ввели теорию типов как инструмент для более точной формализации основ математики, в которой невозможно было сформулировать парадокс Рассела о «множестве всех множеств». Именно после этой книги развитие математики пошло семимильными шагами, в результате чего сделали свои открытия Курт Гёдель, Алонзо Чёрч, Алан Тьюринг и многие другие замечательные учёные. Так что в историческом ряду развития формальной логики стоят такие личности, как Аристотель, Г. Кантор, Г. Фреге, Б. Рассел, А. Уайтхед и К. Гёдель.
После того как в 1931 г. австрийский логик Курт Гёдель опубликовал свои работы, в которых было приведено доказательство его знаменитых теорем о неполноте, начались исследования в этом направлении. Многие из них были чисто философскими, однако две примечательные работы легли в основу всей современной вычислительной техники. Первая – лямбда-исчисление Алонзо-Чёрча, описанное в его теперь уже знаменитой статье 1936 г., в которой он показал существование неразрешимых задач. Параллельно ему Алан Тьюринг переформулировал теорему Гёделя и, пытаясь решить «проблему разрешения» Давида Гильберта, разработал формализм в виде гипотетического устройства, которое впоследствии стало носить название «машины Тьюринга».
Обобщение достижений А. Чёрча и А. Тьюринга привело к формулированию тезиса Чёрча-Тьюринга, который, являясь эвристическим утверждением, гласит, что для любой алгоритмически вычислимой функции существует вычисляющая её значения машина Тьюринга. Этот тезис постулирует эквивалентность между интуитивным понятием алгоритмической вычислимости и строго формализованными понятиями частично рекурсивной функции (по Чёрчу), или функции, вычислимой на машине Тьюринга (по Тьюрингу). Тезис невозможно строго доказать или опровергнуть ввиду того, что интуитивное понятие алгоритмической вычислимости строго не определено. Однако этот тезис в совокупности с теорией вычислений сегодня лежит в основе алгоритмического решения задач и, как следствие, имеет непосредственное применение в рамках искусственного интеллекта.
Вместе с тем в 1948 году американский математик Клод Шеннон публикует статью «Математическая теория связи», которая сегодня считается вехой в рождении теории информации. Несмотря на то что до К. Шеннона в области проблем передачи информации работали такие пионеры, как Гарри Найквист и Ральф Хартли, именно Клоду Шеннону удалось математически точно сформулировать основные положения новой науки, определить её базис и доказать основную теорему, позже названную его именем. Эта теорема определяет предел максимального сжатия данных и числовое значение информационной энтропии. В связи с дальнейшим развитием сетей передачи данных теория информации и все её приложения стали развиваться семимильными шагами, что привело к появлению многочисленных способов помехоустойчивого кодирования информации для каналов с шумом. Всё это имеет самое непосредственное значение для развития интеллектуальных систем, поскольку вопросы передачи информации в них стоят на одном из первых мест.
Конечно, одной из центральных наук, стоящих в основе разработки технологий искусственного интеллекта, является кибернетика как базовая методология исследования сложных систем, взаимодействующих друг с другом и со средой. Кибернетика сама по себе является междисциплинарной областью исследования, базирующейся на многих отраслях науки, в том числе и уже перечисленных здесь ранее. Однако именно разработанный в её рамках научный аппарат в полной мере позволяет целенаправленно заниматься поиском и проектированием сложных адаптивных и самообучающихся систем, к которым, вне всяких сомнений, относятся системы искусственного интеллекта. Кибернетику как науку разрабатывали такие знаменитые учёные, как Уильям Росс Эшби, Карл Людвиг фон Берталанфи, Джон фон Нейман, Стаффорд Бир, а также многочисленная когорта русских учёных, среди которых обязательно надо упомянуть Ивана Алексеевича Вышеградского (основоположника теории автоматического регулирования), Алексея Андреевича Ляпунова, Виктора Михайловича Глушкова и популяризатора науки об искусственном интеллекте Льва Тимофеевича Кузина.
Все теоретические изыскания в области теории вычислений, теории информации, кибернетики и других наук в конечном итоге приводят к развитию вычислительной техники как прикладной дисциплины, рассматривающей вопросы создания и программирования универсальных вычислительных машин. Попытки создать механическую машину для вычислений предпринимались со времён, наверное, Блёза Паскаля, и первым в этом преуспел наш соотечественник Семён Николаевич Корсаков, который в 1830-х годах создавал первые «интеллектуальные машины» на перфокартах. Хотя в те же самые годы английский математик Чарльз Бэббидж разрабатывал проект универсальной цифровой вычислительной машины, до реализации дело у него не дошло. Несмотря на всё это, основы современной вычислительной техники были заложены Джоном фон Нейманом, который разработал принципы построения архитектуры универсальных вычислительных машин. Впрочем, первый компьютер в современном понимании сделал немецкий инженер Конрад Цузе, он же разработал и первый язык программирования высокого уровня, однако из-за военно-политических особенностей мира в те времена работы Цузе оставались малоизвестными. После Второй мировой войны работы над созданием универсальных компьютеров велись во всё ускоряющемся ритме, который выдерживается до сих пор (так называемый «закон Мура»).
Однако по мере продвижения в деле создания всё более мощных вычислительных систем становилось ясно, что разработать интеллект in silico так просто не получится, и исследователей в этом отношении ждало такое же разочарование, как создателей различных механических кукол (автоматонов), которым казалось, что ещё чуть-чуть – и их куклы обретут разум. Как не получилось с механикой, так же не получилось и с электроникой. Это способствовало вовлечению в исследования нейрофизиологов и других специалистов в части анатомии, физиологии и других аспектов функционирования нервной системы и других регуляторных систем организмов человека и животных.
И вот в 1943 г. американские нейрофизиолог Уоррен Мак-Каллок и математик Уолтер Питтс публикуют статью, которая открыла миру новую вычислительную модель, основанную на понятии искусственного нейрона. Да, эта модель была довольно упрощённой и не принимала во внимание большое количество свойств органических нейронов, однако она позволяла производить вычисления. Эта статья фактически открыла широчайшее направление исследований, которое сегодня превалирует в области искусственного интеллекта – искусственные нейронные сети. Вслед за У. МакКалоком и У. Питтсом следует отметить таких учёных, как канадский физиолог Дональд Хебб, который описал принципы обучения искусственного нейрона (он предложил первый работающий алгоритм обучения искусственных нейронных сетей), а также американский нейрофизиолог Фрэнк Розенблатт, который разработал на искусственных нейронах устройство, моделирующее процесс восприятия, – перцептрон.
Но всё, как обычно, оказалось не таким простым, как казалось. Несмотря на то что исследователям удалось смоделировать один нейрон и составить из таких моделей нейронную сеть, сознания в ней так и не зародилось. С одной стороны, это было связано с тем, что на тех вычислительных мощностях, которые были доступны учёным в середине XX века, можно было смоделировать нейронную сеть, состоящую из пары сотен нейронов и нескольких слоёв. Такой объём совсем не соответствует десяткам миллиардов нейронов в головном мозге человека с сотнями тысяч связей для каждого нейрона. С другой стороны, становилось понятно, что «карта не является местностью», так что ждать самозарождения сознания в нейронной сети, даже если она будет очень сложной, слишком странно. Поэтому исследователи обратились к такой науке, как психология.
Одним из первых учёных, кто обратил внимание на этот аспект искусственного интеллекта и его отношения к человеческому разуму, был русский учёный-медик и кибернетик Николай Михайлович Амосов. В ряду его обширной библиографии есть такие знаковые работы, как «Искусственный разум», «Автоматы и разумное поведение» и «Алгоритмы разума». Несмотря на глубокую степень проработки ряда важнейших вопросов, в этих работах всё так же остаётся нераскрытым вопрос о природе сознания. И получается довольно парадоксальная ситуация. Есть практически полное понимание того, как работает нейрон на уровне клетки и субклеточных структур вплоть до биохимических реакций и метаболических путей преобразования веществ, что фактически и эмулирует вычислительные процессы в рамках одной клетки. Также есть понимание, но уже не такое целостное, того, как работают нейронные сети. А ещё есть понимание психологии человека, его поведения и высших когнитивных и интеллектуальных функций. Это понимание ещё менее глубокое, но есть множество операционных гипотез, которые позволяют описывать, объяснять и предсказывать. Но при этом нет никакого понимания того, что находится посередине. Каким образом биохимические реакции нейрона и электрохимические процессы в нейронных сетях приводят к возникновению сознания, интеллекта и разума? Ответа на этот вопрос до сих пор нет. И в итоге получается, что психология – это попытки «дизассемблировать» высшую психологическую деятельность центральной нервной системы человека, но они отвязаны от базовых химических и физических процессов.
Наконец, учёные задумались и о таком важном аспекте интеллектуальной деятельности, как «коллективный интеллект». Само человеческое общество в целом часто показывает более высокий уровень интеллектуальной деятельности, чем каждый его отдельный представитель. Ведь многие сложные научные концепции и технические объекты могут быть изобретены и разработаны исключительно в рамках объединения усилий разноплановых специалистов. Однако не только человеческое общество показывает подобный паттерн поведения. Он виден и в жизни, например, общественных насекомых, когда каждая отдельная особь, вообще не имеющая и тени разума, делает вклад в поведение своего «суперорганизма», который кажется вполне интеллектуальным. Муравьи и пчёлы – это вершина эволюции насекомых на Земле. Эти наблюдения натолкнули исследователей в области искусственного интеллекта на идеи о «роевой модели интеллекта» в рамках так называемых многоагентных систем. Это – одно из самых быстро развивающихся сегодня направлений науки и техники. Здесь сложно назвать какую-либо ключевую личность, поскольку тема возникла совсем недавно. Но эта тема очень горячая и ещё долго будет оставаться на острие научного поиска.
* * *
Итак, мы рассмотрели большую часть научных направлений, которые лежат в основе искусственного интеллекта. Это, можно сказать, его базис и научные и технологические предтечи, предпосылки. Когда же родилось само направление исследований, которое назвали «искусственный интеллект»? Для ответа на этот вопрос необходимо обратиться к работам философов и практиков искусственного интеллекта Марвина Мински и Джона Маккарти. Второй так вообще является автором самого термина «искусственный интеллект» (а кроме того, он разработал язык программирования LISPи является одним из основоположников функционального программирования). Эти учёные основали в 1959 г. Лабораторию информатики и искусственного интеллекта в рамках Массачусетского технологического института, и это была первая научная лаборатория, которая занималась данной проблемой.
Именно Джон Маккарти сформулировал основополагающие принципы искусственного интеллекта, определив то, что потом было названо «чистым подходом», или «нисходящим искусственным интеллектом», и выразилось в гипотезе Ньюэлла-Саймона о том, что осмысленные действия можно выполнять только при наличии в некоторой системе механизма символьных вычислений, а сами такие символьные вычисления являются необходимым условием наличия в этой системе интеллекта. Другими словами, подход Джона Маккарти выражался в том, что системы искусственного интеллекта должны имитировать высокоуровневые психологические процессы разумного существа, такие как логическое мышление, логический вывод, речь, творчество и т. д.
С другой стороны, его друг и коллега Марвин Мински сформулировал совершенно противоположное определение искусственного интеллекта, которое получило наименование «грязного подхода», или «восходящего искусственного интеллекта». В основе этой парадигмы лежит попытка моделирования естественных процессов, происходящих в самой природе человека. В первую очередь это, конечно же, моделирование нейросетевых процессов в разных аспектах. Наиболее широко проявившейся технологией в рамках грязного подхода стали искусственные нейронные сети, которые моделируют разные процессы человеческого разума на логическом уровне. Можно было бы попробовать смоделировать биохимический уровень, однако для этого не хватает вычислительных мощностей даже сегодня, не говоря уже про те давние времена. Другой известной технологией являются различные генетические и эволюционные методы решения задач. Но в целом этот подход не является «искусственным интеллектом» в том понимании Джона Маккарти, как он определил данный термин.
При этом необходимо понимать, что первоначально предназначением той междисциплинарной области исследований, которая получила название «искусственный интеллект», было моделирование когнитивных функций человека для их исследования на модели, чтобы понять природу интеллекта, разума и сознания человека. Другими словами, искусственный интеллект первоначально рассматривался как довольно фундаментальная область исследований, и только через какое-то время появилась задача по практическому применению наработок, которая нашла своё отражение в создании большого количества искусственных систем, решающих задачи, традиционно относившиеся к прерогативе человека.
Фактически две парадигмы, описанные выше, лежат в основе всякого подхода к разработке искусственного интеллекта. На сегодняшний день таких подходов выделяют семь:
1) интуитивный;
2) логический;
3) символьный;
4) структурный;
5) эволюционный;
6) квазибиологический;
7) агентный.
Надо отметить, что агентный подход к разработке искусственного интеллекта чаще всего рассматривается в рамках так называемой гибридной парадигмы, которая представляет собой смесь нисходящей и восходящей парадигм, берет из них лучшее и старается нивелировать отрицательные стороны. Гибридная парадигма и агентный подход будут рассмотрены в самом конце этой главы.
Интересно то, что в рамках искусственного интеллекта, который, как уже было отмечено, является междисциплинарным научным направлением исследований, имеется ряд задач, которые решаются методами всех или некоторых перечисленных подходов. В частности, к таким задачам традиционно относят:
• поиск информации;
• обработка естественного языка;
• представление знаний;
• машинное обучение;
• распознавание образов;
• интеллектуальный анализ данных, или «дата-майнинг»;
• обработка НЕ-факторов знания;
• принятие решений;
• робототехника;
• роевой интеллект.
Нельзя сказать, что это полный и консистентный список задач, к тому же некоторые из представленных задач в какой-то части пересекаются. Тем не менее это хороший список, являющийся анкером, от которого можно отталкиваться при изучении подходов и методов искусственного интеллекта. Другие исследователи могут предлагать иной список и классификацию задач, но далее в этой книге будет рассматриваться решение именно этих задач разными методами искусственного интеллекта, составляющими те или иные подходы в рамках одной из трёх парадигм.
Что интересно, если попытаться расположить в матрице подходы и парадигмы в строках, а решаемые задачи в столбцах, то получится своеобразная «периодическая система технологий искусственного интеллекта», в ячейках которой будут перечислены различные методы конкретного подхода для решения конкретной задачи. Вот так может выглядеть такая матрица.