Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Report_Danyakin.docx
Скачиваний:
39
Добавлен:
04.06.2015
Размер:
6.61 Mб
Скачать
    1. Анализ современных методов интеллектуального планирования и подходов к реализации интеллектуальных планировщиков

1.3.1 Основные термины и понятия интеллектуального планирования

Интеллектуальное планирование. Под интеллектуальным планированием в настоящее время чаще всего подразумевается автоматическая генерация планов некоторой программно-аппаратной системой, Однако, сам термин «интеллектуальное планирование» до сих пор не имеет однозначного определения. В русскоязычной литературе наиболее употребляемым является термин «интеллектуальное планирование» (например [2]), а в англоязычной – «автоматическое планирование» (automated planning) [3]. В обоих случаях подразумевается собственно процесс генерации плана вычислительной машиной.

План. В контексте интеллектуального планирования план - это некоторое представление будущего поведения. В частоности, план обычно представляет собой набор действий с некоторыми ограничениями (например тем-поральными) для исполнения некоторым агентом или агентами [3].

Среда или домен планирования. Для построения -\плана и управления его выполнением необходимо построить формальное описание среды [2], также называемое доменом проблемной области [3]. Основные способы, используемые для описания среды, базируются на таких методах представления знаний, как продукционные системы, логические методы, семантические сети, фреймовые структуры.

Агент или контроллер. Контроллером называтеся объект, способный как оказывать изменения на среду, так и наблюдать ее состояние (частично или полностью) [3]. Контроллер получает планы от планировщика, и исполняет их. Фактически, агент является исполнителем плана.

Планировщик или агент. Под планировщиком понимается программная система, производящая генерацию планов на основе формального описания среды, начального состояния среды и поставленных перед планирощиком целей. В некоторых работах планировщик называется агентом [2]. В отдельных случаях в состав планировщика входит опциональный компонент - проектировщик.

Проектировщик. За счет проектировщика осуществляется распределение ресурсов для выполнения планов, построенных планировщиком. Однако, в последнее время стало возможным включения проектировщика в состав планировщика, что раньше приводило к слишком сильному усложнению планировщика.

Таким образом, в самом общем случае совокупность рассмотренных выше базовых понятий интеллектуального планирования может быть представлена в виде, показанном на рис.1

Рис. 1 — Концептуальная модель интеллектуального планирования

1.3.2 Подходы к планированию

Планирование с помощью пропозиционной логики. Планирование может осущетсвляться по принципу доказательства некоторой теоремы в рамках ситуационного исчисления [4]. Одним из примеров применения методов доказательства теорем для решения задачи планирования является система QA3 [2]. В таком подходе одно множество утверждений используется для описания начального состояния, а другое — для описания эффектов действий. Чтобы следить за тем, какие факты являются истинными в текущем состоянии, в каждый предикат включаются выделенные переменные состояния. Целевое условие описывается формулой с переменной, связанной квантором существования. Задача системы состоит в том, чтобы доказать существование состояния, в котором истинно целевое условие. В основе доказательства лежит метод резолюций. К сожалению, система QA3 продемонстрировала низкую вычислительную эффективность. Также оказалось, что при подходе, основанном на доказательстве теорем как методе планирования, не существует сколько-нибудь приемлемого решения проблемы фрейма.

Планирование в пространстве планов. В планировании в пространстве планов основная идея заключается в планировании множества целей {g1,...,gk}, для каждой из конкретных целей более или менее отдельно, но учитывая дополнительные сведения для обнаружения и разрешения пересечений и связей между планами, полученных для конкретных целей при объединени для получения конечного решения. Например, простой домен Роботы Работающие в Порту (Dock Worker Robots) включает в себя груды контейнеров, роботов, которые могут перевозить контейнеры в разные места, и краны, которые могут поставить контейнеры на роботов или снять их с роботов. Предположим, есть несколько свай контейнеров, и цель состоит в том, чтобы изменить их, переложив определенным образом контейнеры. Затем планировщик в пространстве планов, такой как UCPOP будет искать частично упорядоченный план, необходимый для решения данной задачи.

Планирование в пространстве состояний. Данный подход был впервые успешно реализован в системе STRIPS [2]. Хотя алгоритмы поиска в пространстве состояний очень хорошо известны, до недавнего времени они не получали столько внимания со стороны исследователей классического планирования, потому что никто не знал, как с помощью хорошей эвристической функции организовать правильное управление выводом. Прорыв произошел, когда стало ясно, что эвристические значения могут быть вычислены относительно быстро, извлекая их из ослабленных решений (например таких, как графов планирования). Это привело к появлению алгоритмов планированию, таких как HSP и FastForward [5]. К настоящему времени разработано достаточно много эвристических функций, которые позволяют эффективно решать задачи планирования с помощью данного подхода. На сегодняшней день поиск в пространстве состояний является наиболее популярным подходом в ИИ планировании.

Планирование как удовлетворение ограничений. Многие задачи в ИИ и в других областях информатики могут быть рассмотрены как задачи удовлетворения ограничений (CSP-задачи), для которых существует множество высокопроизводительных алгоритмов. В связи с этим, формулировка задачи планирования, как задачи удовлетворения ограничений, приобрела определенную популярность. CSP-задача предъявляет требования к значениям переменных в форме ограничений. Множество возможных значений переменных конечно и называется доменом. Ограничения указывают, какие кортежи значений допустимы для определенного множества переменных. Ограничение может быть задано явно путем перечисления допустимых кортежей или неявно в форме алгебраического выражения. Решением CSP-задачи является такая подстановка значений переменных, при которой удовлетворяются все ограничения [2].

Решением CSP-задачи является такое означивание всех переменных, при котором все ограничения удовлетворены. Если для некоторой задачи имеется, по крайней мере, одно решение, то задача является разрешимой, иначе — неразрешимой, или же противоречивой, или же переограниченной.

К данному подходу также относится планирование с помощью специальных графов планирования. Граф планирования - это многоуровневая структура. Для каждого n, уровень n включает в себя действие a так, что на уровне n − 1 условия удовлетворены, и при этом не нарушены определенные ограничения. Литералы на уровне n включают литералы с уровня n − 1, а также все эффекты от всех действий на уровне n [4]. Таким образом, планирование на графах представляет упрощенную версию задачи планирования, в которой несколько действий могут появиться одновременно, даже если они вступают в противоречие друг с другом. Основной алгоритм планирования представлен на алг. 1. Данный алгоритм использует технику прямого распространения ограничений [2].

for n=1,2.. пока не будет найдено решение do

Создать n-уровневый граф планирования;

Выполнить обратный посик в пространстве состояний от цели и попытаться найти план-решение, но ограничить поиск тем, что включить только действия из графа планирования;

end

Алг. 1: Упрощенный алгоритм GraphPlan

Планирование на графах может быть вычислено относительно быстро (то есть, в полиномиальное время), и ограничение на поиск в обратном направлении значительно повышает эффективность поиска. В результате, Планирование на графах работает намного быстрее, чем планирование в пространстве планов. В результатах исследователи большое количество алгоритмов планирования, основанные на планировании на Графах, в том числе IPP, CGP, DGP, LGP, PGP, SGP, TGP, и др.

Планирование на основе прецедентов. Планирование на основе прецедентов (Case Based Planning - CBP) использует предшествующий опыт для решения новых задач [2]. Использование опыта несет в себе двойную выгоду. Во-первых, система планирования становится адаптивной к предметной области. Такая система может на основе удачных и неудачных попыток планирования пополнять свои знания о предметной области или уточнять их. Это делает возможным применение таких систем в динамических средах. Во-вторых, использование опыта может повысить эффективность планирования, так как для составления новых планов используются фрагменты готовых решении. После постановки новой задачи планирования система пытается наийти в библиотеке прецедентов решение похожей задачи. Следующее действие заключается в модификации выбранного прецедента таким образом, чтобы он решал новую задачу. Для этого в прецеденте заменяются цели и начальные условия. Далее выполняется проверка полученного решения. Проверка может выполняться различными способами: имитация, выполнение плана в реальной среде или какими-то специальными процедурами ревизии. CBP-подход может применяться также в PDDL доменах [6].

Трансляция в другую проблему. Здесь основная идея состоит из трех этапов. Во-первых, нужно перевести задачи планирования в другой вид комбинаторной задачи, такие как удовлетворительное или целочисленное программирование, для которых эффективное решение проблемы уже существует. Во-вторых, использование решателя удовлетворительного или целочисленного программирования для решения проблемы перевода. В-третьих, принятие решения, найденного для решения проблемы и перевод его обратно в план. Этот подход привел к появлению таких планировщиков как Satplan [2]. В таких планировщиках как COLIN (COntinuous LINear) [7] и OPTIC (Optimising Preferences and Time-Dependent Costs) [8] задача планирования сводится к системам линейных уравнений, для решения которых используется математическая библиотека COIN.

Таблица 2.1 Алгоритмы классического планирования

Название

Достоинства

Недостатки

1

Планирование с помощью пропозиционной логики

Был самым первым подходом в классическом планировании.

Не было найдено приемлемого решения проблемы фрейма.

2

Планирование в пространстве планов

Высокая производительность, т.к. можно искать одну подцель, не беря во внимание другие.

Сложность получения конечного решения, может давать плохие результаты в зависимости от проблемы.

4

Планирование в пространстве состояний

Самый популярный подход, большая часть исследований в планировании связана именно с планированием в пространстве состояний.

Высокая вычислительная сложность на больших проблемах.

Название

Достоинства

Недостатки

5

Планирование как удовлетворение ограничений

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

-

6

Планирование на основе прецедентов

Использование накопленного опыта для решения новых задач.

Требуется накопить некоторое множество планов, прежде чем использовать данный подход.

7

Трансляция в другую проблему

Позволяет решать задачи с использованием имеющихся средств для решения задач в другой постановке.

Необходимо создание 2-х трансляторов - из исходной проблемы в проблему на целевом формализме, и перевод решения обратно на исходный язык.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]