Ранее уже было указано на то, что нельзя дать исчерпывающее определение ИИ. Однако можно перечислить задачи, методы решения которых на ЭВМ принято связывать с понятием ИИ. Ниже приводятся краткие характеристики основных таких задач.
Автоматическое решение задач представляет собой не столько вычислительную процедуру поиска ответа, как, например, расчет квадратного корня, сколько нахождение метода решения поставленной задачи. Системы, осуществляющие построение вычислительной процедуры, называют автоматическими решателями задач.
Под распознавателями подразумевают устройства, реагирующие на внешнюю среду через различные датчики, например телекамеры, и позволяющие решать задачи распознавания образов. В таких устройствах результаты распознавания выводятся на экран или печатающее устройство, а в более современных системах есть возможность синтезировать речевые ответы. Использование ИС с большой или сверхбольшой степенью интеграции позволяет строить системы распознавания речевых команд.
Системы распознавания естественной речи позволяют пользователю упростить взаимодействие с ЭВМ с помощью специализированных языков высокого уровня, близких к естественным.
Задачи доказательства теорем и обучения (например, для овладения навыками в какой-либо игре) решаются с помощью автоматического совершенствования алгоритма посредством обработки пробных вариантов, т. е. как бы с помощью накопления "собственного опыта". Следует отметить, что способность к обучению представляет собой одно из основных свойств ИИ.
В настоящее время многие отождествляют понятия ИИ и экспертных систем. Это отождествление появилось во многом благодаря разработкам по созданию программного и аппаратного обеспечения для ЭВМ пятого поколения, разрабатываемых в рамках упомянутого выше японского проекта. Существующие экспертные системы включают в себя огромные базы знаний, сформированные с помощью информации, получаемой от экспертов, т. е. специалистов в той области, для которой создавалась каждая система. Манипуляция накопленными данными осуществляется в другой части экспертных систем, содержащей правила вывода. Сейчас такие системы с успехом используются в медицине, геологии, а также при проектировании ЭВМ.
Обычные языки программирования не очень удобны для разработки систем ИИ. Для построения таких систем больше подходят такие языки, как Пролог, имеющий встроенный механизм логического вывода, или Лисп, ориентированный на обработку списков. Кроме того, создано множество специализированных языков, позволяющих решать ряд отдельных задач ИИ. Пролог был изобретен в Европе и вскоре, к удивлению многих специалистов, был выбран основным языком в японском проекте создания ЭВМ пятого поколения. Язык Лисп, распространенный преимущественно в США, начинает постепенно вытесняться Прологом.
Для эффективной работы мощных систем ИИ необходима высокая скорость доступа к большим базам данных, а также высокое быстродействие. ЭВМ с обычной архитектурой не удовлетворяют этим требованиям. Обычные последовательные методы решения задач постепенно уступают место методам параллельной обработки, когда несколько процессоров независимо друг от друга выполняют различные части одной программы. В настоящее время фирма Inmos приступила к выпуску микросхем, названных транспьютерами. Использование этих устройств позволяет решить проблему распараллеливания на аппаратном уровне. В ближайшее время, очевидно, аналогичные устройства начнут выпускать и другие фирмы.
Ряд современных разработок направлен на создание аппаратных средств реализации трансляторов с языков логического программирования, в том числе и с языка Пролог. Скорость работы систем ИИ в последнее время стали выражать с помощью новых единиц измерения - липсов (LIPS - logical inferences per second), обозначающих число логических выводов в секунду. В настоящее время созданы ЭВМ, способные работать с быстродействием в несколько сотен липсов. Однако такое быстродействие нельзя считать удовлетворительным, и оно должно быть поднято до миллиона липсов и выше.
В системах искусственного интеллекта человеческие знания, необходимые для решения задач ИИ, должны быть представлены и записаны в форме, пригодной для последующей обработки на ЭВМ. Сложность заключается в том, что многие аспекты знаний изменяются в зависимости от условий и с трудом поддаются описанию, оставаясь при этом очевидными для человека. Знания должны храниться в системах ИИ в некоторой обобщенной для данной предметной области форме, позволяющей использовать выбранное представление в любой возможной ситуации. Для хранения знаний требуется большая область памяти, и, кроме того, значительное время уходит на их предварительную обработку. Знания, заложенные в систему ИИ, должны быть понятны человеку. Это очевидное условие может быть упущено при разработке системы. С другой стороны, знания должны представляться в форме, удобной для обработки на ЭВМ.
Многие аспекты ИИ связаны с развивающейся в настоящее время наукой - робототехникой. Идея создания "разумного" робота, способного "учиться на собственном опыте", представляет собой одну из центральных проблем ИИ. Такой робот может обладать способностью к ведению диалога на ограниченном естественном языке и уметь решать задачи, требующие инициативы и некоторой оригинальности мышления. Для этого необходимо некоторое предварительное обучение робота, в результате которого он мог бы в отличие от используемых сейчас промышленных роботов выполнять целенаправленные и заранее незапрограммированные действия.
В течение многих лет идеи ИИ серьезно не рассматривались. Это происходило отчасти благодаря чрезмерному оптимизму некоторых теоретиков, а также из-за появления ряда сенсационных публикаций по этому предмету, впоследствии оказавшихся во многом несостоятельными. Идея аппаратно-программных моделей человеческого мозга вызывала насмешки, а в сфере технического производства стали избегать разработок, связанных с ИИ, так как результаты их внедрения явно не соответствовали обещаниям. Эта в полном смысле слова плачевная ситуация в настоящее время изменилась к лучшему благодаря новейшим достижениям в разработке аппаратуры и программного обеспечения ЭВМ.
Однако сложившееся к настоящему времени взаимное недоверие между теоретиками ИИ и представителями промышленной сферы может привести к тому, что научно-исследовательские работы в данной области будут испытывать значительные финансовые трудности, и, кроме того, эти работы будут оторваны от реальных нужд промышленности. Следует обратить внимание на опыт индустриального развития Японии, добившейся за последние 20 лет рекордных достижений в экономике. Такой успех стал возможен благодаря быстрому и повсеместному внедрению результатов научных исследований.
Эта книга рассчитана на студентов и непрофессионалов, обладателей бытовых персональных ЭВМ (ПЭВМ). Мы будем избегать задач, для решения которых нужна сложная и доступная лишь профессиональным программистам техника, а также берем на себя заботу о том, чтобы читатель увидел реальную возможность применения полученных сведений на практике. Изучение возможностей своего домашнего компьютера - интересное и приятное занятие. При этом многие фундаментальные концепции ИИ усваиваются легче, чем с помощью универсальных ЭВМ, общение с которыми достаточно усложнено. Конечно, не стоит преувеличивать возможности микроЭВМ. Невозможно, например, на бытовых ЭВМ достигнуть такой же скорости логического вывода, как на универсальных. Так же бесполезны попытки создания экспертной системы на компьютере, имеющем объем оперативной памяти 2К- Следует трезво оценивать возможности бытовой вычислительной техники.
В следующем разделе коротко рассмотрим некоторые реальные системы ИИ как сложные, так и достаточно простые.