空間的および時間的推論のためのルール エンジン?
-
20-09-2019 - |
質問
3 次元の空間的および時間的プロセスを特徴付ける多数のデータを受け取るアプリケーションがあります。次に、これらのデータをフィルタリングしてアクションを作成し、そのアクションを実行するプロセスに送信します。洗い流して繰り返します。
現在、私は多くの複雑な空間/時間計算を実行するカスタム フィルターのコレクションを持っています。
社内の人々と自分のシステムについて話し合うと、ルール エンジンを使用しているかどうかを尋ねられることがよくあります。
私は、時間的および空間的に適切に推論できるルール エンジンをまだ見つけていません。(次のようなもの:2 つの 3D エンティティが近づくのはいつですか?3D エンティティ A が 3D 領域 B に含まれたことはありますか?エンティティ C がエンティティ D の近くにあるが、C に対して後方を向いている場合は、アクション D を実行します。)
私は過去に(たとえば 3 ~ 4 年前)Drools、Cyc、Jess を見てきました。最先端の技術を再検討する時期が来ています。助言がありますか?この種の推論を裏付ける標準をご存知ですか?事実上の標準はありますか?何か応用はありますか?
ありがとう!
解決
前提 - SQL ベースであることを思い出してください。1 SQL と Prolog の次の比較からわかるように、DBMS は (非常に有能な) 推論エンジンです。
時空間アプリケーションに具体的に取り組む場合、この本は次のことに役立ちます。
- 一時データと関係モデル - 詳細調査 の応用 間隔と関係理論 一時的なデータベース管理の問題へ。
つまり、間隔理論と関係理論を組み合わせることで、時空間問題を効果的に推論することが可能になります ( 5.2 間隔の適用).
もちろん、SQL ベースの DBMS に間隔 (およびその他) 演算子が (まだ) 装備されていない場合は、それを適切に拡張する必要があります (経由 ストア プロシージャおよび/またはユーザー定義関数 - UDF)。
アップデート: 指摘された紙をざっと読む timemirror によるコメント (ビルディング インフォメーション モデル用の 3D 空間クエリ言語に向けて)それらは本質的に上で触れたことを行います。
(最後のページ)
実装の概念
アブストラクトの実装 system をクエリ言語に入力すると、 クエリに基づいて実行される 言語 SQL で、広く の分野で確立された標準 オブジェクト・リレーショナル・データベース。ザ 国際標準SQL:1999 リレーショナル・モデルを次のように拡張します。 次のようなオブジェクト指向の側面を含む 複合体を定義する可能性として 統合型による抽象データ型 メソッド。
私は「オブジェクト リレーショナル データベース」という用語には同意しませんが (ここでは本題から外れているため)、残りの部分は適切だと思います。
アップデート: 上で引用した本からの 3D と間隔理論に関する引用:
注記:説明されているすべての間隔 これまでのところ、 次元。ただし、 2つの1次元を組み合わせたい 2次元を形成する間隔 間。たとえば、矩形の 地面のプロットは、次のように考えられます。 2 次元の間隔は、 は、定義上、 length と width で、それぞれ 基本的には 1 次元の間隔です ある軸に沿って測定されます。そして、 コース この考え方は、 次元の数. 。たとえば、 (かなり簡単です!建物は 3次元と見なされる 間:長さのあるオブジェクトですが、 width、および height、つまり 直方体。(より現実的には、 建物は、 で重なり合ういくつかのそのような直方体 いろんな方法があります。などなど。何で ただし、 1次元の区間への注意 具体的には、明示的な これに反する声明、および私たち 「1次元」は省略されます 簡単にするための修飾子。
注記
- 私が書いた SQLベース そしてそうではありません 関連した なぜなら、リレーショナル理論から完全に逸脱した DBMS の使用方法があるからです。
他のヒント
これは...いくつかのモデル空間推論であるが、9DE-IMは現在、OGCによって受け入れられ、PostGISのと他のプログラミングツールに実装されています。
PostGISでは9DE-IM ...次元に拡張9交差モデルに基づいて空間推論エンジンを実装して..
http://postgis.refractions.net/documentation /manual-svn/ch04.html#DE-9IMする 宗派4.3.6.1を確認してください。理論...
<時間>だから、Javaのトポロジスイート(およびC#などのためのネットトポロジスイート)がありません...
ます。http://ドキュメント.codehaus.org /ディスプレイ/ GEOTDOC /ポイント+設定+理論+と+ + DE-9IM +マトリックスの
particualrでは、このような
として.. geometry.relateのものをチェックアウトブールisRelated = geometry.relate(geometry2の、 "Tの*のT *** T **")
あなたはそれらに基づいて関係、またはフィルタデータをテストすることができます。 PTS、線、多角形などで動作します...
<時間>これは一時的なものに役立つかもしれない..
http://citeseerx.ist .psu.edu / viewdoc /ダウンロードしてくださいDOI = 10.1.1.87.4643&担当者= REP1&タイプ= PDF の
http://www.objectfx.com/ のでSpatialRulesをチェックしてください。これは、2Dと3Dのための地理空間の複雑なイベントプロセッサです。