Реализация логики ветвящегося времени

Рассмотрение современного подхода к моделированию темпоральных рассуждений в интеллектуальных системах. Операции над временными ограничениями. Алгоритмы вывода для ветвящейся временной логики, построенной на основе качественной точечной модели времени.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 19.01.2018
Размер файла 186,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Московский Энергетический Институт (Технический Университет), Москва

РЕАЛИЗАЦИЯ ЛОГИКИ ВЕТВЯЩЕГОСЯ ВРЕМЕНИ

И.Е. Куриленко

Аннотация

Рассматривается современный подход к моделированию темпоральных (временных) рассуждений в интеллектуальных системах. Предлагаются алгоритмы вывода для ветвящейся временной логики, построенной на основе качественной точечной модели времени. Разработанные алгоритмы построены с учетом специфики применения в составе интеллектуальных систем поддержки принятия решений реального времени (ИСППР РВ).

Введение

Современные исследования и разработки по созданию перспективных интеллектуальных (экспертных) систем поддержки принятия решений (ИСППР), в частности, ИСППР реального времени (РВ) [Вагин и др., 2001] опираются на разработку и применение интегрированных моделей и неклассических логик. Так как многие базовые понятия, такие как «изменение», «причина», «следствие» и отношения между ними описываются в терминах времени, ведутся активные исследования по построению интегрированных моделей рассуждений учитывающих временной фактор при описании проблемной ситуации и в процессе поиска решения [Поспелов и др., 1986]. ИС типа ИСППР РВ в процессе своего функционирования вынуждены оперировать с большим количеством информации, изменяющейся со временем (это могут быть показания датчиков, значения управляющих параметров, выполняемые операторами действия и т.д.) [Башлыков и др., 1994]. При этом поиск решения таких задач ИСППР как диагностика, мониторинг, планирование, прогнозирование и др. должен обеспечиваться в условиях достаточно жестких временных ограничений (определяемых реальным управляемым процессом) и различного вида неопределенностей в исходных данных и знаниях [Еремеев и др., 2003]. Таким образом, временные логики и временной вывод могут применяться во многих блоках ИСППР РВ (анализаторе, блоках поиска решения, объяснения, моделирования и прогнозирования) и позволяют повысить скорость отклика системы, что увеличивает эффективность принятия решений ЛПР в различных проблемных (аномальных) ситуациях.

Для ИСППР РВ требуются модели (логики) ветвящегося времени, которые полезны при прогнозировании последствий принимаемых решений или развития некоторой ситуации в условиях дефицита времени. К сожалению, алгоритмы вывода для известных темпоральных логик [Torsun, 1998] ветвящегося времени обладают большой сложностью. В данной работе основное внимание уделяется вопросу создания темпоральной логики ветвящегося времени, применимой в составе современных ИС.

1. Основные определения и алгоритмы

На данный момент известно большое количество разнообразных временных логик [Pnuelli, 1977; Смирнов, 1979; Allen, 1983; Gereviny et al., 1993]. Однако на практике препятствием к их широкому внедрению является высокая сложность алгоритмов вывода. В этом плане выделяются логики, построенные на основе представления информации о времени как ограничений (зависимостей) между временными примитивами. В качестве таких примитивов могут использоваться временные моменты, интервалы или их комбинация. Зависимости между временными примитивами трактуются как ограничения на их расположение во времени. Благодаря существованию полиномиальных алгоритмов вывода, а также тому, что в них представимы сложные типы временных зависимостей, они являются предметом активных исследований. Среди них наиболее простой и приемлемой по вычислительной сложности для применения в составе современных ИС является точечная временная логика [Еремеев и др., 2009]. Реализация алгоритмов вывода в точечной временной логике основывается на переходе к задаче согласования временных ограничений (ЗСВО). ЗСВО является конкретизацией более общей задачи согласования ограничений (ЗСО), что позволяет использовать для решения ЗСВО методы, применяемые для ЗСО [Еремеев и др., 2003]. ЗСВО задается как Z = (V,D,BTR,C) [Еремеев и др., 2005]:

1. V={V1,V2,…,Vm} - конечное множество временных переменных (интерпретируемых как моменты времени);

2. D - область значения переменных (множество целых чисел);

3. BTR={r1,r2,…rn} - конечное множество взаимоисключающих бинарных базовых временных ограничений, полное объединение которых является универсальным ограничением U (не накладывающим каких-либо ограничений);

4. C={Cij|Cij={r1,…rk};k>0;r1,…rkBTR;i,j?m}, конечное множество ограничений, где Cij - ограничение над временными переменными Vi и Vj, интерпретируемое как (Vi,r1,Vj)…(Vi,rk,Vj). Если Cij состоит только из одного дизъюнкта, то оно называется точным.

Для решения задачи выполнимости SAT необходимо найти множество не противоречащих друг другу ограничений C*={Cij*|Cij*={rl},rlCij}. Если такого множества построить нельзя, то ЗСВО является несогласованной. Если ЗСВО имеет по крайне мере одно решение, то она называется согласованной.

Основными операциями над временными ограничениями являются:

1) отрицание (): Lij=U\Lij;

2) инвертирование (~): ~(r1,…,rk)=(~r1,…,~rk);

3) пересечение: S?T={r|rS,rT};

4) композиция: TS={t1,…tk}{s1,…sq}={t1s1,t1s2,…tksq}.

Известно [Gereviny et al., 1993], что множество всех возможных типов временных ограничений для двух временных примитивов, состоит из 2|BTR| типов ограничений, замкнуто относительно операций , ~, ?, и образует алгебру временных ограничений.

ЗСВО называют единичной ЗСВО (ЕЗСВО) тогда и только тогда, когда в множество C входят только точные ограничения. При этом сама ЗСВО сводится к проверке непротиворечивости (согласованности) ограничений из множества C. Задачу определения ограничения r, справедливого для переменных Vi и Vj, для которых задано ограничение Cij={r1,…rk}, при k>1, называют задачей вычисления неточного ограничения Cij.

Ограничение Cij выполнимо для переменных Vi и Vj тогда и только тогда, когда существует хотя бы одно решение ЗСВО, в котором Сij является ограничением для этих переменных. Минимальным ограничением Сijmin называется множество, состоящее только из выполнимых ограничений для Vi и Vj. ЗСВО называют минимальной, если все ее ограничения минимальны. Задачу вычисления минимальной ЗСВО называют задачей поиска минимального представления MIN. Известно, что для любой ЗСВО всегда можно найти эквивалентную минимальную или показать несогласованность ограничений. алгоритм моделирование темпоральный интеллектуальный

Построим на базе точечной временной логики логику ветвящегося времени, применимую в составе современных интеллектуальных систем [Куриленко, 2004; Куриленко, 2009]. Сначала определим на базе ЕЗСВО сценарий как Si=(Vi,Ci,Sj), где S0=(V0,D,BTR,C0) - ЕЗСВО, интерпретируемая как начальный сценарий; Si - наследуемый сценарий, который расширяет множество переменных Vj и множество единичных ограничений Cj сценария Sj, j<i, множествами Vi и Ci соответственно; D - область определения переменных (множество целых чисел), BTR- множество базовых временных ограничений. Таким образом, сценарий является композитной ЕЗСВО, которую можно построить по иерархии наследования, задаваемой в определением сценария. Для каждого сценария, исходя из определения ЕЗСВО, можно поставить задачи поиска минимального представления и проверки согласованности, то есть можно говорить о согласованном или несогласованном сценарии и сценарии в минимальном представлении. Будем называть текущими сценариями такие сценарии, для которых не существует наследуемых сценариев.

Определим ветвящуюся ЗСВО как множество альтернативных сценариев, унаследованных от одного начального сценария S0 VZ = {S: S - сценарий}. Определим для ветвящейся ЗСВО следующие подзадачи:

Проверка согласованности - проверка существования как минимум одного текущего согласованного сценария Si VZ.

Проверка истинности каких-либо утверждений для конкретного текущего сценария.

Преобразование всех ЕЗСВО, соответствующих согласованным сценариям, к минимальному виду.

Проверка истинности каких-либо утверждений для всех текущих сценариев или хотя бы для одного текущего сценария.

Рассмотрим пример (рис. 1). Данная задача содержит 16 сценариев, из которых 5 являются несогласованными. Следует отметить, что, исходя из практических соображений, следует допускать наследование только согласованных сценариев. Поэтому сценарии S26 и S27 не участвовали в порождении сценариев-наследников.

Рис. 1 Ветвящаяся ЗСВО

Таким образом, каждый сценарий соответствует возможному варианту развития событий (задаваемому соответствующим множеством ограничений над моментами времени).

Существуют разнообразные стратегии формирования сценариев в ветвящейся ЗСВО. В качестве источника ветвления на каждом шаге являются дизъюнктивные утверждения. Не дизъюнктивные утверждения добавляются к каждому текущему сценарию и не приводят к ветвлению. В случае же если вносятся дизъюнктивные утверждения, то к каждому сценарию добавляется ряд наследников. Например, при добавлении в ветвящуюся ЗСВО ограничения типа Cij v Сxy для каждого текущего сценария должны быть добавлены три сценария - сценарий, в котором обязательно наличие ограничения Cij, сценарий, в котором обязательно наличие Сxy и сценарий в котором обязательно наличие как Cij так и Сxy. Естественно, что при такой постановке ветвление является существенной проблемой, так как ведет к сильному росту числа возможных сценариев (особенно при большом числе дизъюнктов). Однако существует ряд приемов, которые могут быть использованы для ограничения ветвления. Мы рассмотрим их немного позже. На практике может быть предусмотрен вариант внесения ограничений, связанных исключающим или, то есть в рассмотренном примере нет необходимости порождения сценария, в котором обязательно наличие комбинации Cij и Сxy. Другой возможной стратегией является независимая достройка сценариев (когда каждый сценарий достраивается и разветвляется так, как это необходимо исходя из практической задачи). В этом случае внесение дизъюнктивного ограничения приводит к разветвлению конкретного сценария и может не затронуть все оставшиеся сценарии.

Алгоритмы решения задач ветвящейся ЗСВО могут быть построены на базе алгоритмов решения ЕЗСВО [Gereviny et al., 1993; Еремеев и др., 2005; Куриленко, 2007; Куриленко, 2008]. В частности каждую ЕЗСВО в процессе решения ветвящейся ЗСВО можно решать с помощью перехода к задаче на графе времени TL-графе (Подробно подход к решению ЕЗСВО на основе перехода к задаче на графе рассмотрен в работах [Gereviny et al., 1993; Еремеев и др., 2005]). Однако подобный подход не является оптимальным, так как на практике придется хранить в памяти TL-граф и Time-граф для каждого сценария. С учетом возможного роста числа сценариев хотелось бы построить такое внутреннее представление задачи, которое позволяло бы экономить ресурсы за счет учета наследования сценариев, заложенного в само определение ветвящейся ЗСВО. Также при построении алгоритмов следует учесть, что создание новых сценариев на каждом шаге должно выполняться как можно быстрее, так как в некоторых приложениях, типа ИСППР РВ, глубина анализа (то есть рассмотрение как можно большего числа сценариев) способствует получению более качественного решения. В работах [Куриленко 2008, 2009] предлагаются алгоритмы позволяющие экономить вычислительные ресурсы при последовательном дополнении ЕЗСВО ограничениями, за счет анализа производимых изменений. В случае ветвящейся ЗСВО такие алгоритмы отлично подходят для решения ЕЗСВО для каждого сценария-наследника Si=(Vi,Ci,Sj), так как они определяются как расширение множества ограничений в сценарии-предке. Коротко рассмотрим этот подход. Для представления ЕЗСВО используется TL граф, определяемый как G=(W,E,L), где W - непустое множество вершин (соответствующее моментам времени), E - множество направленных связей вида (wi, l, wj), где wi,wjW, lL, L={<,?} [Куриленко, 2008]. Путем рxy=<x0,x1,..xk>из вершины x в вершину y в графе G называется последовательность вершин, в которой x0=x, xk=y и (xi,xi+1)E для всех 0?i<k. В качестве веса пути примем w(рxy)=, где - пометка ребра (xi,xi+1). В случае если при вычислении веса wxy в графе G существует направленная связь (y, l, x), то в качестве wxy принимается ~l. Будем считать путь рxy существенным, если w(рxy)?U и w(рxy)? Ш.

Определим множество P всех направленных путей между всеми вершинами в графе G. Определим: P' - множество существенных путей в графе G, P'P; множество входящих в вершину x путей Lp(x)={рlx|l?x, рlxP'} и множество выходящих из вершины x путей Rp(x)={рxm|m?x, рxmP'}. Алгоритмы создания и удаления связей строятся таким образом, что их выполнение производится над множеством существенных путей, и что связи, которые могут привести к несогласованности, отсекаются на этапе внесения и не участвуют в порождении путей. Ниже приводится алгоритм, применяемый для создания связей (алг. 1), сложность которого составляет O(|Rp(y)||Lp(x)|). Требуемый для работы объем памяти - O(e2). Существенным отличием алг. 1 является то, что согласованность проверяется на этапе создания связей, и несогласованность определяется сразу при внесении приводящих к ней связей.

Алгоритм 1. Алгоритм создания связей

Входные данные: (x,r,y) - связь для создания, r{<,>,?,?}; P' - множество всех существенных путей.

01: r'< Алгоритм 1(x,y,P')

02: if (r' ? r = Ш) return inconsistent

03: if (r'r) return // Существующее ограничение сильнее вносимого

04: foreachlxLp(x)) {

05: ifly существенный) P = Pрly

06: foreachymRp(y))

07: iflm - существенный) P = Pрlm

08: } // foreach рlxLp(x)

09: foreachymRp(y))

10: ifxm - существенный) P = Pрxm

Алгоритм создания связей в результате своей работы вносит в множество существенных путей пути, которые образуются в TL-графе в результате создания связи (w,l,v). Алгоритмы вычисления выполнимого ограничения и удаления ограничения приведены в работе [Куриленко, 2008]. Эти алгоритмы построены так, что они позволяют поддерживать в актуальном состоянии множество всех существенных путей на TL-графе G, соответствующему ЕЗСВО, после каждого изменения. Основным преимуществом этого подхода является то, что после каждого изменения не требуется вызов дополнительных алгоритмов проверки согласованности и вычисления неявных ограничений.

Таким образом, для каждого текущего сценария можно держать множество существенных путей и для достройки сценария использовать приведенные выше алгоритмы. Следует отметить, что применяемая внутренняя структура данных (множество существенных путей) может быть с легкостью адаптирована для ветвящейся ЗСВО за счет хранения для каждого сценария-наследника Si=(Vi,Ci,Sj) только тех существенных путей, которые появились при дополнении ЕЗСВО сценария-предка Sj входящими в Ci ограничениями. Такой подход очень просто реализуется, позволяет значительно уменьшить объем памяти, требуемый для решения задачи.

Рассмотрим некоторые методы, позволяющие уменьшить ветвление. В примере, приведенном на (рис. 2) показана ситуация, когда в ветвлении нет необходимости. Следует отметить, что все три сценария Sj+1, Sj+2 и Sj+3 будут идентичны Sj, так как ограничения (V2, <, V5) и (V1, <, V4) следуют из ЕЗСО, соответствующей сценарию Sj. Более сложной версией проиллюстрированного правила выводимости является случай, когда в дизъюнктивном ограничении не все элементарные ограничения следуют из Sj. Но и в этом случае можно уменьшить ветвление. Рассмотрим пример на рис.3. Сценарии Sj+2 и Sj+3 будут аналогичными, так как из ЕЗСВО, соответствующей Sj, следует ограничение (V2, <, V5). Сценарий Sj+1 идентичен Sj, но сохранен в качестве текущего сценария, чтобы не потерять вариант, когда выполнение ограничения (V5,<,V4) не требуется. В этом заключается сложность логики ветвящегося времени.

Приведенные алгоритмы позволяют организовать решение ветвящейся ЗСВО и ее подзадач. В частности, так как при любых изменениях поддерживается множество текущих сценариев и для каждого сценария за счет применения приведенных ранее алгоритмов для получения множества существенных путей поддерживается актуальное решение соответствующей ЕЗСВО, автоматически решается подзадача проверки согласованности. В любой момент для любого из текущих сценариев можно проверить истинность какого-либо утверждения.

Рис. 2 Пример случая ограничения ветвления

Рис. 3 Пример случая ограничения ветвления

Заключение

Построенная ветвящаяся логика на базе точечной временной логики является менее выразительной, чем известные аналоги, но практически реализуемой. Рассмотренные алгоритмы реализованы в СВР PointTime, интегрирующей различные модели представления временных зависимостей (для метрического, интервального, смешанного представления времени, для линейной и ветвящейся структур времени, количественных и качественных временных зависимостей и т.д.). Данная СВР разрабатывается в МЭИ (ТУ) для применения в составе прототипа ИСППР РВ для мониторинга и управления сложными техническими объектами [Еремеев и др., 2005].

Благодарности. Работа выполнена при финансовой поддержке РФФИ (проект 08-01-00437-a).

Список литературы

1. Башлыков А.А., Еремеев А.П. Экспертные системы поддержки принятия решений в энергетике. М.: Изд-во МЭИ, 1994.

2. Вагин В.Н., Еремеев А.П. Некоторые базовые принципы построения интеллектуальных систем поддержки принятия решений реального времени // Изв. РАН. Теория и системы управления, 2001, №6.

3. Еремеев А.П., Троицкий В.В. Модели представления временных зависимостей в интеллектуальных системах поддержки принятия решений // Изв. РАН. Теория и системы управления, 2003, №5.

4. Еремеев А.П., Куриленко И.Е. Реализация временных рассуждений для интеллектуальных систем поддержки принятия решений реального времени // Программные продукты и системы, 2005, №2.

5. Еремеев А.П., Куриленко И.Е. Применение темпоральных моделей в интеллектуальных системах / Интеллектуальные системы. Колл. монография. Выпуск третий. / Под. Ред. В.М. Курейчика. М.: Физматлит, 2009.

6. Куриленко И.Е. Некоторые принципы построения систем временных рассуждений для СППР РВ // Сб. тр. научной сессии МИФИ-2004 в 15 т. Т.3. М.:МИФИ, 2004.

7. Куриленко И.Е. О методах улучшения алгоритмов вывода для системы временных рассуждений // Сб. тр. IV-й междунар. научно-практической конф. Интегрированные модели и мягкие вычисления в искусственном интеллекте в 2 т. Т.1. М.:ФизМатЛит, 2007.

8. Куриленко И.Е. «Пошаговые алгоритмы временных рассуждений для точечной модели времени» // Сб. тр. научной сессии МИФИ-2008 в 15 т. Т.10. М.:МИФИ, 2008.

9. Курилено И.Е. Система временного вывода для интеллектуальных систем поддержки принятия решений реального времени // Сб. док. междунар. научно-практ. конф. Интегрированные модели и мягкие вычисления в искусственном интеллекте в 2 т. Т.1. М.:ФизМатЛит, 2009.

10. Поспелов Д.А., Литвинцева Л.В Представление знаний о времени и пространстве в интеллектуальных системах / Под ред. Д.А. Поспелова. М.: Наука, 1986.

11. Смирнов В.А. Логические системы с модальными временными операторами // Материалы II Советско-финского коллоквиума по логике «Модальные и временные логики». М.: Институт философии АН СССР, 1979.

12. Allen J.F. Maintaining Knowledge about Temporal Intervals. // Communications of the ACM. 1983. Vol. 26, №11.

13. Gereviny A. and Schubert L. Efficient Algorithms for Qualitative Reasoning about Time. Technical report 496, Department of Computer Science, University of Rochester, Rochester, NY, 1993.

14. Pnuelli A. The temporal logic of programs. Proc. 18th Ann. Symp. Found. Computational Science, 1977.

15. Torsun I.S. Foundations of Intelligent Knowledge-Based Systems // ACADEMIC PRESS, London, 1998.

Размещено на Allbest.ru

...

Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.