Интеллектуальные программные агенты

В искусственном интеллекте существует несколько типов агентов. Например: Физический Агент — агент, воспринимающий окружающий мир через некоторые сенсоры и действующий с помощью манипуляторов. Временной агент — агент, использующий изменяющуюся с ходом времени информацию и предлагающий некоторые действия или предоставляющий данные компьютерной программе или человеку, и получающий информацию через программный ввод. Простая агентная программа может быть математически описана как агентская функция, которая проектирует любой подходящий результат восприятия на действие, которое агент может выполнить, или в коэффициент, элемент обратной связи, функцию или константу, которые могут повлиять на дальнейшие действия.

Программный агент, напротив, проецирует результат восприятия только на действие. Всех агентов можно разделить на пять групп, по типу обработки воспринимаемой информации: Агенты с простым поведением; Агенты с поведением, основанным на модели; Целенаправленные агенты; Практичные агенты; Обучающиеся агенты. Агенты с простым поведением действуют только на основе текущих знаний. Их агентская функция основана на схеме условие-действие IF (условие) THEN действие. Такая функция может быть успешной, только если окружающая среда полностью поддается наблюдению. Некоторые агенты также могут иметь информацию о их текущем состоянии, что позволяет им не обращать внимания на условия, предпосылки которых уже выполнены. Агенты с поведением, основанным на модели, могут оперировать со средой, лишь частично поддающейся наблюдению. Внутри агента хранится представление о той части, что находится вне границ обзора. Чтобы иметь такое представление, агенту необходимо знать, как выглядит окружающий мир, как он устроен. Эта дополнительная информация дополняет «Картину Мира». Целенаправленные агенты схожи с предыдущим типом, однако они, помимо прочего, хранят информацию о тех ситуациях, которые для них желательны. Это дает агенту способ выбрать среди многих путей тот, что приведет к нужной цели. Целенаправленные агенты различают только состояния, когда цель достигнута, и когда не достигнута. Практичные агенты, помимо этого, способны различать, насколько желанно для них текущее состояние. Такая оценка может быть получена с помощью «функции полезности», которая проецирует множество состояний на множество мер полезности состояний. В некоторой литературе обучающиеся агенты (ОА) также называются автономными интеллектуальными агентами, что означает их независимость и способность к обучению и приспосабливанию к изменяющимся обстоятельствам. По мнению Николая Касабова[,система ОА должна проявлять следующие способности: обучаться и развиваться в процессе взаимодействия с окружающей средой, приспосабливаться в режиме реального времени, быстро обучаться на основе большого объёма данных, пошагово приспосабливать новые способы решения проблем, обладать базой примеров с возможностью её пополнения, иметь параметры для моделирования быстрой и долгой памяти, возраста и т. д., анализировать себя в терминах поведения, ошибки и успеха.

 

20. Методы поиска в пространстве состояний: метод перебора в глубину.

Пространство состояний – это граф, вершины которого соответствуют ситуациям, встречающимся в задаче («проблемные ситуации»), а решение задачи сводится к поиску путей на этом графе. На самом деле, задача поиска пути на графе и задача о N ферзях - это задачи, использующие одну из стратегий перебора альтернатив в пространстве состояний, а именно –с тратегию поиска в глубину. Со всеми задачами такого рода связано два типа понятий: проблемные ситуации; разрешенные ходы или действия, преобразующие одни проблемные ситуации в другие. Проблемные ситуации вместе с возможными ходами образуют направленный граф, называемый пространством состояний. Пространство состояний некоторой задачи определяет «правила игры»: вершины пространства состояний соответствуют ситуациям, а дуги – разрешенным ходам или действиям, или шагам решения задачи. Конкретная задача определяется: пространством состояний; стартовой вершиной; целевым условием или целевой вершиной. Каждому разрешенному ходу или действию можно приписать его стоимость. Под термином «поиск в глубину» имеется в виду тот порядок, в котором рассматриваются альтернативы в пространстве состояний. Всегда, когда алгоритму поиска в глубину надлежит выбрать из нескольких вершин ту, в которую следует перейти для продолжения поиска, он предпочитает самую «глубокую» из них. Самая глубокая вершина – это вершина, расположенная дальше других от стартовой вершины. Поиск в глубину наиболее адекватен рекурсивному стилю программирования, принятому в Прологе. Причина этого состоит в том, что обрабатывая цели, Пролог сам просматривает альтернативы именно в глубину.