Движок правил для пространственных и временных рассуждений? - PullRequest
2 голосов
/ 18 марта 2010

У меня есть приложение, которое получает ряд датумов, которые характеризуют трехмерные пространственные и временные процессы. Затем он фильтрует эти данные и создает действия, которые затем отправляются процессам, которые выполняют действия. Промыть и повторить.

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

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

Мне еще предстоит найти движок правил, способный рассуждать хорошо во времени и пространстве. (Такие вещи, как: когда два 3D-объекта когда-либо близки? Содержится ли когда-либо 3D-объект A в 3D-области B? Если объект C находится рядом с объектом D, но ориентирован назад относительно C, тогда выполните действие D.)

Я смотрел на Drools, Cyc, Jess в прошлом (скажем, 3-4 года назад). Пришло время пересмотреть современное состояние. Какие-либо предложения? Какие-нибудь стандарты, которые вам известны, поддерживают подобные рассуждения? Какие-то стандарты де-факто? Какие-либо приложения?

Спасибо!

Ответы [ 3 ]

1 голос
/ 23 марта 2010

Предпосылка - помните, что основанная на SQL * СУБД 1 является (вполне способным) механизмом логического вывода, как видно из этих сравнений между SQL и Prolog:

Чтобы обратиться конкретно к вашим пространственно-временным заявкам, эта книга поможет:

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

Конечно, если ваша СУБД на базе SQL (пока) не оснащена интервальными (и другими) операторами, вам необходимо соответствующим образом расширить ее ( с помощью хранимых процедур и / или пользовательских функций). - UDFs).

Обновление: просмотр бумаги, на которую указано в комментариях к timemirror ( На пути к пространственному языку трехмерных запросов для построения информационных моделей ) они в основном выполняют то, к чему я прикасался выше:

(последняя страница)

КОНЦЕПЦИИ ОСУЩЕСТВЛЕНИЯ

Реализация аннотации Система типов в язык запросов будет будет выполняться на основе запроса язык SQL, который широко установленный стандарт в области объектно-реляционные базы данных. международный стандарт SQL: 1999 расширяет реляционную модель до включают объектно-ориентированные аспекты, такие как как возможность определить комплекс абстрактные типы данных со встроенными методы.

Я не согласен с терминологией «объектно-реляционная база данных» (здесь не по той причине), но я думаю, что остальное уместно.


Обновление: цитата, относящаяся к 3D и теории интервалов из цитированной выше книги:

ПРИМЕЧАНИЕ: все обсуждаемые интервалы до сих пор можно думать как одномерно. Тем не менее, мы могли бы хочу совместить два одномерных интервалы, чтобы сформировать двумерный интервал. Например, прямоугольная Земельный участок можно рассматривать как двумерный интервал, потому что это по определению является объектом с длина и ширина, каждая из которых в основном одномерный интервал измеряется вдоль некоторой оси. И из Конечно, мы можем распространить эту идею на любой количество измерений . Например, (довольно просто!) здание может быть рассматривается как трехмерное интервал: это объект с длиной, ширина и высота, или, другими словами, кубовидный. (Более реалистично, Здание может рассматриваться как набор несколько таких кубоидов, которые перекрываются в различными способами.) И так далее. В чем следует, однако, мы будем ограничивать наши внимание к одномерным интервалам в частности, за исключением явного заявления об обратном, и мы опустим "одномерный" квалификатор для простоты.

Примечание

  1. Я написал на основе SQL , а не реляционный , потому что существуют способы использования таких СУБД, которые полностью отклоняются от теории отношений.
1 голос
/ 02 апреля 2011

Проверьте SpatialRules на http://www.objectfx.com/. Это геопространственный процессор сложных событий для 2D и 3D.

1 голос
/ 20 марта 2010

Это пространственное рассуждение ... несколько моделей, но 9DE-IM теперь принят OGC и реализован в PostGIS и других инструментах программирования.

В PostGIS реализован механизм пространственного мышления, основанный на модели 9 пересечений с расширенными размерами... 9DE-IM ..

http://postgis.refractions.net/documentation/manual-svn/ch04.html#DE-9IM см. Раздел 4.3.6.1.Теория ...


Так же, как и пакет Java Topology Suite (и пакет Net Topology для C # и т. Д.) ...

http://docs.codehaus.org/display/GEOTDOC/Point+Set+Theory+and+the+DE-9IM+Matrix

В частности ознакомьтесьматериал geometry.relate .. такой как

логический isRelated = geometry.relate (geometry2, "T * T *** T **")

Вы можете проверить отношения или отфильтроватьданные на их основе.Работает с точками, линиями, полигонами и т. Д. *


Это может помочь с временными элементами ..

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.87.4643&rep=rep1&type=pdf

...