私はかなり複雑なルールエンジンを開発中です。そこで、GNUルールエンジンを利用して、アプリケーションと統合することにしました。私は優れたルールエンジンとして CLIPSに出くわしました。
現在、私のアプリケーションはC ++であり、.clpルールエンジンをC ++アプリケーションに統合する方法を学ぶことができるサンプルの方法(Hello worldの種類のプログラム)が必要です。
質問
- 私のアプリケーションは、Linux / AIX / HPおよびMingw(Windows用)で開発されています。CLIPSでルールエンジンを開発し、これらすべてのプラットフォームのC ++アプリケーションに統合できますか?統合方法に関するリンクを教えてください。
- ルールエンジンを使用する基本的な理由は、C /C++アプリケーション内で「構築」されたルールが大量のメモリ/CPUを使用することを経験したことです。ルールエンジンを使用することで、より最適化された(より良いリソース使用率)方法で同じことを達成できるという印象を受けています。CLIPSはそれを達成するのに役立ちますか?
アップデート1:
どのようなアプリケーションを開発していますか?
一列に並べるために、私はフィルターマッチベースのカウンターを開発しています。ユーザーはインクリメントできます(NetworkID = XYZ、インクリメントカウント= 7)、(NetworkID = MNO、インクリメントカウント= 934)...など。NetworkID= X *のクエリを取得したら、XAAからすべてのカウントを提供する必要があります。 ..XZZ。複数のプロセス、異なるノード(分散環境)にわたる複数のスレッドで更新されます。なぜエキスパートシステムルールが内部にあるのですか、そしてどのようなルールがありますか?
これで、私のプラットフォーム/アプリケーションはC ++になりました(ユーザーがインクリメント/デクリメント/クエリを実行します)。今、私はこれらを支援するためにルールエンジンを使用したいと思います。C / C ++コードでロジックを書くと、必要なリソースがさらに殺されるようです。
PS:インクリメント/デクリメント/クエリに関連する重要なコードはすべて最適化されたcコードにあります。一部のラッパーはC++コードです。そのため、プラットフォーム/アプリケーション(C / C ++コード)から呼び出すことができるルールエンジンをチェックしています。