Научная статья на тему 'Интервальные и мультиинтервальные расширения в недоопределенных моделях'

Интервальные и мультиинтервальные расширения в недоопределенных моделях Текст научной статьи по специальности «Математика»

CC BY
188
72
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук

Аннотация научной статьи по математике, автор научной работы — Телерман B. В., Сидоров В. А., Ушаков Д. М.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Интервальные и мультиинтервальные расширения в недоопределенных моделях»

Вычислительные технологии

Том 2, № 1, 1997

ИНТЕРВАЛЬНЫЕ И МУЛЬТИИНТЕРВАЛЬНЫЕ РАСШИРЕНИЯ В НЕДООПРЕДЕЛЕННЫХ

МОДЕЛЯХ*"

В. В. Телерман, В. А. Сидоров, Д. М. Ушаков Институт систем информатики Новосибирск, Россия

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

Предложенная А.С. Нариньяни в начале 80-х годов концепция недоопределенности и потоковых вычислений на моделях с недоопределенными значениями [1-3] получила свое воплощение в различных программных продуктах, разработанных в Российском научно-исследовательском институте искусственного интеллекта и в Институте систем информатики им. А.П. Ершова СО РАН. Среди них следует отметить такие системы, как решатель уравнений и неравенств UniCalc [4], система планирования и ведения проектов Time-Ex [5] и решатель буквенно-арифметических головоломок АрБуЗ [6].

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

Наиболее близким к н-моделям является подход, который получил название "программирование в ограничениях" (Constraint Programming, или CP) [7, 8]. В обоих подходах основными используемыми понятиями являются объекты, которым сопоставлены некоторые значения и ограничения, сужающие области допустимых значений этих объектов.

* Работа поддержана Республиканским научно-техническим советом по направлению "Информатизация России" (грант №285.78)

t© В. В. Телерман, В.А.Сидоров, Д.М.Ушаков, 1997

Необходимо найти такие значения для объектов, которые удовлетворяют одновременно всем накладываемым на них ограничениям.

У н-моделей есть свои особенности, которые, как нам кажется, делают их предпочтительнее традиционного СР-подхода. Во-первых, вычисления на всех н-моделях выполняются единым потоковым алгоритмом, который не зависит от класса исходной задачи. Это обстоятельство позволяет использовать в одной и той же н-модели такие объекты и ограничения, которые традиционно относятся к задачам разных типов, например целочисленные, вещественные и логические объекты, множества и массивы, линейные, нелинейные и теоретико-множественные отношения и т.д. Во-вторых, на основе аппарата н-моделей созданы высокотехнологичные программные продукты, позволяющие относительно просто настраиваться на самые разнообразные предметные области [9, 10].

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

Определение 1. Задачей удовлетворения ограничений называется пара (V, С), где V — совокупность переменных, принимающих значения из некоторых универсальных множеств (универсумов), а С — совокупность ограничений, связывающих значения переменных из V.

Каждое ограничение из С имеет вид одной из следующих формул:

У = x,

У = с,

У = /(хЪ •••,

здесь х, хг, у — символы переменных из V, с — константный символ, / — функциональный символ арности п. Каждому константному символу приписывается некоторая константа из соответствующего универсума, каждому функциональному символу — некоторая функция, действующая на соответствующих универсумах (ввиду ограничений на объем данной статьи мы опускаем здесь формальное определение многосортной модели). Более сложные ограничения распадаются на множество более простых (вышеприведенных видов) после введения дополнительных переменных. Вопросы корректности таких преобразований в произвольных многосортных моделях были нами рассмотрены в работе [11].

Определение 2. Решением задачи удовлетворения ограничений (V, С) называется такое приписывание каждой переменной из V некоторого определенного значения из ее универсума, при котором выполняются все ограничения из С.

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

Определение 3. Недоопределенным расширением (н-расширением) универсума X на-

зывается любой конечный набор его подмножеств *Х, содержащий 0, X и являющийся замкнутым относительно пересечения.

Эти свойства гарантируют однозначное представление *[£] любого подмножества £ С X в н-расширении *Х, а именно:

*[£] = П С-

«сСе*Х

Таким образом, представлением множества £ в системе *Х является минимальное подмножество из н-расширения *Х, содержащее £. Ясно, что в общем случае для универсума X можно предложить различные н-расширения. Обозначим совокупность всех н-расширений универсума Х через БО(Х).

Для задания зависимостей между н-объектами строятся н-расширения функций над ними. Любая функция

/ : Х1 X ... X Хт ^ Хт+1

индуцирует набор функций (прямую и обратные)

/г : Р(Х1) X ... X Р(Хг-1) X Р(Хт) X ... X Р(Хт+1) ^ Р(X),

г = 1, ..., т +1,

где Р(Xj) — множество всех подмножеств Х^-, 0 = 1, ...,т +1,

/г(£1, ... , £г-1,£г+1, ... , £т+1) = {хг 1 /(хъ ... , хт) = хт+ь Xj € £j ° = г)}.

Определение 4. Н-расширение функции /г, г = 1, ..., т + 1, представляет собой функцию

*/г : X X ... X *Хг-1 X Х+1 X ... X *Хт+1 ^ X, где *Хг € 5Д(Хг), такую, что

Тг^ъ ... , £г-1 ,£г+l, ... , £т+1) = *[/г(£ъ ... , £г-1,£г+1, ..., £т+1)].

Отметим два важных свойства таких н-расширенных функций: все они корректны, то есть

/ (x1, . . . , хт) хт+1

Уг € {1, ... , т +1} хг € /№1}], ... , *[{хг_1}], Цх+1}], ... , *[{хт+1}]), и монотонны по включению, то есть

Уг V£j ,0 € Х- 0 = г) 0 С (,

Тг^Ъ . . . , £г-1, £г+1, . . . , £т+1) С ТЦСъ . . . , Сг—1, Сг+1, . . . , Ст+1).

Пользуясь введенными выше понятиями, можно дать формальное определение недо-определенной модели.

Определение 5. Недоопределенная модель (н-модель) М состоит из четырех множеств:

М = (V, С, Ж, СОЯЯ),

где

V — множество н-объектов V из заданной предметной области,

C — множество ограничений на н-объектах из V,

W — множество функций присваивания,

CORR — множество функций проверки корректности.

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

Функция присваивания — это двухместная функция, работающая при каждой попытке присваивания очередного значения н-объекту и определяющая его новое значение как пересечение текущего и присваиваемого значений.

Функция проверки корректности — это унарный предикат, который проверяет непустоту значения н-объекта.

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

Алгоритм вычислений, реализованный в н-моделях, является высокопараллельным процессом, который управляется потоком данных. Изменение значений переменных, располагающихся в общей памяти, автоматически влечет интерпретацию тех ограничений, для которых эти переменные являются аргументами. Процесс останавливается, когда сеть стабилизируется (то есть исполнение ограничений не приводит к изменению объектов н-модели) или хотя бы один из н-объектов становится некорректным. В последнем случае устанавливается противоречивость исходной н-модели.

В работе [12] показана справедливость следующих утверждений.

Теорема 1.Алгоритм удовлетворения ограничений в н-моделях заканчивает работу за конечное число шагов.

Установление противоречивости н-модели не зависит от порядка интерпретации ограничений.

В случае непротиворечивой н-модели при одних и тех же исходных значениях н-объектов их результирующие значения также не зависят от порядка интерпретации ограничений.

Если установлена противоречивость н-модели (V, C, W, CORR), то задача удовлетворения ограничений (V, C) не имеет решений.

Любое решение задачи удовлетворения ограничений (V, C) лежит в области выходных значений соответствующих объектов н-модели (V, C, W, CORR).

Рассмотрим теперь различные виды недоопределенных расширений произвольного универсума X. Тривиальное н-расширение *X = {0,X} содержит минимум информации о потенциальном значении объекта: противоречиво оно (0) или нет (X). Ниже при рассмотрении других н-расширений *X будем предполагать, что X0 — конечное подмножество X.

Точное н-расширение X Single

£ SD(X) имеет вид XSingle = {0X} и {{x} | x £ Xo}.

Оно добавляет к исходному универсуму X0 два новых значения: "неопределено"^) и "противоречие"(0).

Очевидно, что для универсума X максимальным н-расширением является множество всех подмножеств P (X). Его можно построить только в случае конечного X. В общем

случае можно ввести перечислимое н-расширение

XЕпит = X иР(Хо).

В случае, когда X является решеткой (множеством с определенными на нем ассоциативными и коммутативными операциями Л и V, подчиняющимися законам поглощения и идемпотентности), можно задать н-расширения, основанные на интервалах [6, 13, 14] и мультиинтервалах [15, 16].

Предположим, что Х0 — конечная подрешетка X, —то — минимальный, а +то — максимальный элементы X (в случае отсутствия таких элементов в исходной решетке добавим их, положив Ух € X и {—то, +то} х Л —то = —то, х V +то = +то).

Если ввести обозначение [х, х] = {х € X | х Л х = х и х V х = х}, то интервальное и мультиинтервальное н-расширения можно определить следующим образом:

X = {[х,х] | х,х € Xо и { — то, +то}},

X Микп^а1 = {£ | ^ = и£, £ € X ^егга1, г = 1, 2, ...}.

Очевидно, что [х, х] П [у, у] = [х V у,х Л у].

Пустое множество представляется интервалом [х, х], где х V х = х; весь универсум X — интервалом [—то, +то]. Точному значению х соответствует интервал [х,х]. Пересечение двух мультиинтервалов определяется как

£ П ( = {£ П 0 | г =1, 2,..., э = 1, 2,...}.

Рассмотрим, например, целочисленный объект V с множеством допустимых значений {1, 2, 7, 3}. В зависимости от выбранного вида н-расширения этого объекта ему может быть сопоставлено одно из следующих недоопределенных значений:

vSlng1e = Z (полная неопределенность), vEnum = {1, 2, 7, 3},

vInterva1 _ [1 7]

vMu1tiinterva1 _ {[1 3] [7 7]}

Рассмотрим два примера интервальных расширений.

Пример 1. Пусть X = К (множество вещественных чисел). Очевидно, К является решеткой с х Л у = шт(х,у), х V у = тах(х,у). Положим X0 равным множеству всех чисел с плавающей точкой, представимых на некоторой ЭВМ. Тогда Е^егта1 — множество интервалов с границами из X0, удовлетворяющее всем свойствам из определения 3.

Рассмотрим функцию сложения вещественных чисел f : К х К ^ К, то есть f (х,у) = х + у. Тогда ее недоопределенные расширения ^ : Е1^™1 х Е^егта1 ^ г =1, 2, 3,

определяются следующими широко известными в интервальной арифметике формулами (для простоты обозначим у3(£, () = £ + (, а () = у2(£, () = ( — £):

[х х] + ^ у] = [(х + у)-, (х + у)+],

[х,х] — [у,у] = [(х — y)-, (х — у)+].

Здесь х- = шах{у € X0 и { — то, +то} | у < х}, х+ = шт{у € X0 и { — то, +то} | у > х}.

В смысле данного примера недоопределенное расширение функции совпадает с классическим понятием интервального расширения, поэтому за более детальными примерами мы отсылаем читателя к работе [13].

Пример 2. Пусть X = P(U) для некоторого множества U, то есть элементы X суть подмножества U. Данный универсум очевидно является решеткой с x Л y = x П y, x V y = x U y. Пусть X0 = P(Uo), где Uo — конечное подмножество U, —то = 0, +то = U. Тогда Xinterval является н-расширением универсума P (U).

Подобные множества были впервые предложены в работе [1] под названием недоопре-деленные множества как альтернатива нечетким множествам Заде. Рассмотрим семантику интервала [x, x], где x, x С U0. Очевидно, что в x входят те элементы U0, которые заведомо принадлежат моделируемому данным интервалом точному множеству (так называемому денотату). Элементы из x, и только они, потенциально могут принадлежать денотату.

Рассмотрим функцию

f : X ^ Z, f (x) = #x,

вычисляющую мощность множества. Интервальное н-расширение *f2 : XInterval ^ zInterval, *f2(£) = описывается формулой

#[x,x] = #х].

Недоопределенное расширение *fi : ZInterval ^ XInterval в общем случае не может дать никакой полезной информации о недоопределенном множестве. Представление недоопределен-ного множества в виде пары (£, Z), где £ G XInterval, Z G ZInterval, дает возможность работать одновременно как с самим множеством, так и с его мощностью, что позволяет получать более "сильные"заключения о денотате. Заметим, что в работе [1] недоопределенное множество представлялось в виде пятерки (U,X+,X-,m,M), где U является универсумом, X + состоит из элементов, заведомо принадлежащих денотату (нижняя граница интервала), X- состоит из элементов, заведомо не принадлежащих денотату (данное множество представляет собой дополнение верхней границы интервала, то есть X- = U \ x), а m и M задают границы интервала мощности денотата.

Общие свойства алгебры интервалов в произвольной булевой алгебре рассматривались в работе [17], в которой также можно найти примеры недоопределенных расширений других теоретико-множественных операций.

Структурное н-расширение. Рассмотрим теперь универсум, заданный в виде декартова произведения множеств: X = X1 х • • • х Xn. Как и к любому множеству, к нему применимы н-расширения XSlngle и XEnum. Более того, если каждый из Xj является решеткой, то X тоже является решеткой (как декартово произведение решеток), поэтому к X применимы также н-расширения XInterval и XMultlinterval. Однако можно предложить еще одно н-расширение X.

Пусть X G SD(Xj), i = 1, ... , n. Тогда система *X1 х • • • х *Xn также будет удовлетворять свойствам н-расширения, то есть *X1 х • • • х *Xn G SD(X1 х • • • х Xn). Представляет интерес следующий вопрос: если зафиксировать вид н-расширения, применимого как к Xj, так и к X, то как будут между собой соотноситься системы множеств *(X1 х • • • х Xn) и *X1 х • • • х *Xn ? Рассмотрим эти соотношения для каждого приведенного выше вида н-расширения.

1. (X1 х • • • • х Xn)Sln§le С Xflngle х • • • х X|lngle.

2. (X1 х • • • • х Xn)Enum D XEnum х • • • х XEnum.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3. (X1 х • • • • х X ) Interval _ XInterval х Interval • • • х Xn .

4. (X1 х • • • • х X )Multiinterval d XMultllnterval х • • • х XMultllnterval

Таким образом, в случае интервалов выбор н-расширения универсума в виде *(X1 х • • • х Xn) или *X1 х • • • х *Xn не играет роли. В остальных случаях такой выбор существен.

Рассмотрим некоторые виды н-расширений операции ^ : Integer ^ Integer в случае аргумента, заданного целочисленным интервалом [5, 35].

Н-расширение Значение корня

Single Enum Interval Multiinterval Z (полная неопределенность) {—5, —4, —3, 3, 4,5} [—5,5] { [—5, —3], [3, 5] }

Как видим, при переходе к точному значению информация практически теряется; интервальное расширение, являясь лучше точного, тем не менее грубее двух остальных (так как содержит не принадлежащий значению подинтервал [—2, 2]).

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

x + y =12, 2x = y,

можно решить, используя интервальное н-расширение, и получить точный ответ x = 4, y = 8. Данный пример подробно был рассмотрен в [6].

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

sin(x) + sin(2x) + sin(3x) + sin(4x) + sin(5x) + sin(6x) = 0,

в интервале —п/3 < x < п/3.

Если переменной x сопоставить н-расширение Interval, то в результате вал x = [—1.04719,1.0472], в котором содержатся все решения уравнения. н-расширению Multiinterval, то получим следующие решения:

x1 = [—1.0471974, —1.0471976],

x2 = [—0.8975978, —0.8975980],

xs = [0.0,0.0],

x4 = [0.8975978,0.8975980],

x5 = [1.0471974,1.0471976].

Наиболее полно возможности н-моделей реализованы в рамках технологического программного комплекса НеМо+ [9], который предназначен для конструирования проблемно-ориентированных модулей обработки знаний на основе недоопределенности.

Пользователь имеет возможность на основе встроенных типов данных создавать собственные типы, используя объектно-ориентированную технологию. При определении нового типа можно указывать вид недоопределенности (Single, Enum, Interval, Multiinterval) и

получим интер-Если перейти к

его активную часть. Активная часть типа представляет собой совокупность ограничений, связывающих его компоненты. Язык спецификации н-моделей комплекса НеМо+ является декларативным и используется для описания пользовательских объектов и ограничений.

ТХК НеМо+ реализован на языке C++ в операционной среде MS-Windows и может работать на PC-386-совместимых компьютерах. Основными областями его применения являются научные и инженерные расчеты, экспертные системы, задачи проектирования и планирования, СУБД.

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

[1] НАРИНЪЯНИ А. С. Недоопределенные множества — новый тип данных для представления знаний. Препринт ВЦ СОАН, №232, Новосибирск, 1980.

[2] НАРИНЬЯНИ А. C. Недоопределенные модели и операции с недоопределенными значениями. Препринт ВЦ СОАН, №400, Новосибирск, 1982.

[3] НАРИНЬЯНИ А. С. Недоопределенность в системах представления и обработки знаний. Изв. АН СССР, Сер. Техн. кибернетика 5, 1986, 3-28.

[4] BABICHEV A. B., ЕТ AL. UniCalc - an intelligent solver for mathematical problems. From theory to practice, Proc. of East-West AI Conf. Moscow, 1993, 257-260.

[5] БОРДЕ С. Б. Time-Ex — интеллектуальные системы планирования времени. В "Интел. системы в машиностроении", ч. 1, Самара, 1991, 79-81.

[6] ТЕЛЕРМАН В. В., ДМИТРИЕВ В.Е. Технология программирования на основе недо-определенных моделей. Препринт ИСИ СО РАН, №25, Новосибирск, 1995.

[7] MACKWORTH A. K. Consistency in networks of relations. Artificial Intelligence 8, 1977, 99-118.

[8] MONTANARI U. Networks of constraints: Fundamental properties and application to picture processing. Information Science 7, 1992.

[9] TELERMAN V. V., ET AL. Problem solving in the object-oriented technological environment NeMo+. Lecture Notes in Computer Science 1181, 1996, 91-100.

[10] TELERMAN V. V., USHAKOV D. M. Using the subdefiniteness in real world models. Proc. of the East-West Int. Conf. Human-Computer Interaction: "Human Aspects of Business Computing", Moscow, 1996, 194-206.

[11] TELERMAN V., USHAKOV D. Data types in subdefinite models. Lecture Notes in Computer Science 1138, 1996, 305-319.

[12] ТЕЛЕРМАН В. В., УШАКОВ Д. М. Недоопределенные модели: формализация подхода и перспективы развития. В "Пробл. преставления и обработки не полностью определенных знаний", М.—Новосибирск, 1996, 7-32.

[13] ШОКИН Ю. И. Интервальный анализ. Наука, Новосибирск, 1981.

[14] Hyvonen E. Constraint reasoning based on interval arithmetic: the tolerance propagation approach. Artificial Intelligence 58, 1992, 71-112.

[15] Яковлев А. Г. Компьютерная арифметика мультиинтервалов. В "Пробл. кибернетики. Проблемно-ориентированные вычисл. системы", 1987, 66-81.

[16] Телерман В. В. Использование мультиинтервалов в недоопределенных моделях. В "Параллельное программирование и высокопроизводительные системы: Методы представления знаний в информационных технологиях" (Уфа, 19-26 июня); Тез. докл. Всесоюз. семинара, Киев, 1990, 128-130.

[17] Нечепуренко М. И. Элементы булева интервального анализа. В "Системное моделирование в информатике СМ-11" Изд. ВЦ СО АН СССР, Новосибирск, 1985, 37-61.

i Надоели баннеры? Вы всегда можете отключить рекламу.