Искусственный интеллект (ИИ) можно определить как область компьютерной науки, занимающуюся автоматизацией разумного поведения. Это определение имеет существенный недостаток, поскольку само понятие интеллекта не очень понятно и четко сформулировано. Большинство из нас уверены, что смогут отличить "разумное поведение", когда с ним столкнутся. Однако вряд ли кто-нибудь сможет дать интеллекту определение, достаточно конкретное для оценки предположительно разумной компьютерной программы и одновременно отражающее жизнеспособность и сложность человеческого разума.
Как и большая часть наук, ИИ разбивается на множество поддисциплин, которые, разделяя основной подход к решению проблем, нашли себе различные применения. Рассмотрим некоторые из основных сфер применения этих отраслей и их вклад в искусственный интеллект вообще.
1 Ведение игр.
Игры могут порождать необычайно большие пространства состояний. Для поиска в них требуются мощные методики, определяющие, какие альтернативы следует рассматривать. Такие методики называются эвристиками и составляют значительную область исследований ИИ. Эвристика- стратегия полезная, но потенциально способная упустить правильное решение. Примером эвристики может быть рекомендация проверять, включен ли прибор в розетку, прежде чем делать предположения о его поломке, или выполнять рокировку в шахматной игре, чтобы попытаться уберечь короля от шаха. Большая часть того, что мы называем разумностью, по-видимому, опирается на эвристики, которые люди используют в решении задач.
|
|
2 Автоматические рассуждения и доказательство теорем
Благодаря исследованиям в области доказательства теорем были формализованы алгоритмы поиска и разработаны языки формальных представлений, такие как исчисление предикатов и логический язык программирования PROLOG. Привлекательность автоматического доказательства теорем основана на строгости и общности логики. В формальной системе логика располагает к автоматизации. Разнообразные проблемы можно попытаться решить, представив описание задачи и существенную относящуюся к ней информацию в виде логических аксиом и рассматривая различные случаи задачи как теоремы, которые нужно доказать. Этот принцип лежит в основе автоматического доказательства теорем и систем математических обоснований
3 Экспертные системы
Одним из главных достижений ранних исследований по ИИ стало осознание важности специфичного для предметной области (domain-specific) знания. Врач, к примеру, хорошо диагностирует болезни не потому, что он располагает некими врожденными общими способностями к решению задач, а потому, что многое знает о медицине. Точно так же геолог эффективно находит залежи ископаемых, потому что он способен применить богатые теоретические и практические знания о геологии к текущей проблеме. Экспертное знание- это сочетание теоретического понимания проблемы и набора эвристических правил для ее решения, которые, как показывает опыт, эффективны в данной предметной области. Экспертные системы создаются с помощью заимствования знаний у человеческого эксперта и кодирования их в форму, которую компьютер может применить к аналогичным проблемам. Стратегии экспертных систем основаны на знаниях человека-эксперта. Хотя многие программы пишутся самими носителями знаний о предметной области, большинство экспертных систем являются плодом сотрудничества между таким экспертом, как врач, химик, геолог или инженер, и независимым специалистом по ИИ. Эксперт предоставляет необходимые знания о предметной области, описывая свои методы принятия решений и демонстрируя эти навыки на тщательно отобранных примерах. Специалист по ИИ, или инженер по знаниям (knowledge engineer), как часто называют разработчиков экспертных систем, отвечает за реализацию этого знания в программе, которая должна работать эффективно и внешне разумно. Экспертные способности программы проверяют, давая ей решать пробные задачи. Эксперт подвергает критике поведение программы, и в ее базу знаний вносятся необходимые изменения. Процесс повторяется, пока программа не достигнет требуемого уровня работоспособности.
|
|
4 Нейронные сети
Нейронные сети возникли из исследований в области искусственного интеллекта, а именно, из попыток воспроизвести способность биологических нервных систем обучаться и исправлять ошибки, моделируя низкоуровневую структуру мозга. Основной областью исследований по искусственному интеллекту в 60-е - 80-е годы были экспертные системы. Такие системы основывались на высокоуровневом моделировании процесса мышления (в частности, на представлении, что процесс нашего мышления построен на манипуляциях с символами). Скоро стало ясно, что подобные системы, хотя и могут принести пользу в некоторых областях, не ухватывают некоторые ключевые аспекты человеческого интеллекта. Согласно одной из точек зрения, причина этого состоит в том, что они не в состоянии воспроизвести структуру мозга. Чтобы создать искусственный интеллект, необходимо построить систему с похожей архитектурой.
5 Понимание естественных языков и семантическое моделирование
Одной из долгосрочных целей искусственного интеллекта является создание программ, способных понимать человеческий язык и строить фразы на нем. Способность применять и понимать естественный язык является фундаментальным аспектом человеческого интеллекта, а его успешная автоматизация привела бы к неизмеримой эффективности самих компьютеров. Многие усилия были затрачены на написание программ, понимающих естественный язык. Хотя такие программы и достигли успеха в ограниченных контекстах, системы, использующие натуральные языки с гибкостью и общностью, характерной для человеческой речи, лежат за пределами сегодняшних методологий.
Понимание естественного языка включает куда больше, чем разбор предложений на индивидуальные части речи и поиск значений слов в словаре. Оно базируется на обширном фоновом знании о предмете беседы и идиомах, используемых в этой области, так же, как и на способности применять общее контекстуальное знание для понимания недомолвок и неясностей, присущих естественной человеческой речи.
6 Планирование и робототехника
Исследования в области планирования начались с попытки сконструировать роботов, которые бы выполняли свои задачи с некоторой степенью гибкости и способностью реагировать на окружающий мир. Планирование предполагает, что робот должен уметь выполнять некоторые элементарные действия. Он пытается найти последовательность таких действий, с помощью которой можно выполнить более сложную задачу, например, двигаться по комнате, заполненной препятствиями.
|
|
7 Машинное обучение
Обучение остается "крепким орешком" искусственного интеллекта. Важность обучения, тем не менее, несомненна, поскольку эта способность является одной из главных составляющих разумного поведения. Экспертная система может выполнять долгие и трудоемкие вычисления для решения проблем. Но, в отличие от человеческих существ, если дать ей такую же или подобную проблему второй раз, она не "вспомнит" решение. Она каждый раз вновь будет выполнять те же вычисления - едва ли это похоже на разумное поведение. Хотя обучение является трудной областью, существуют некоторые программы, которые опровергают опасения о ее неприступности. Одной из таких программ является AM - Автоматизированный Математик, разработанный для открытия математических законов [Lenat, 1977, 1982]. Отталкиваясь от заложенных в него понятий и аксиом теории множеств, Математику удалось вывести из них такие важные математические концепции, как мощность множества, целочисленная арифметика и многие результаты теории чисел. AM строил теоремы, модифицируя свою базу знаний, и использовал эвристические методы для поиска наилучших из множества возможных альтернативных теорем. Из недавних результатов можно отметить программу Коттона [Cotton и др., 2000], которая изобретает "интересные" целочисленные последовательности.