javaで推論プロセスのためにフォワードチェーンとバックワードチェーンを実装するための最良のアプローチは何ですか?
一連のステートメントを持つホーン形式の知識ベースが与えられました。
インターネットで検索しようとしましたが、この種の人工知能の概念をコーディングに実装する方法に関する説明を見つけることができませんでした。
私の理解 :
これまで、各センテンス (Horn-Form) を読み込んでオブジェクトを作成しようと考えてきました。各 Sentence クラス オブジェクトには関係変数があり、ナレッジ ベースに Backward または Forward チェーンを要求すると、それらのオブジェクトの配列がチェックされ、目的のチェーンが構築されます。
public class Sentence{
private String impliedBy;
private String implementedVar;
public Sentence(String sentence){
String[] relation = sentence.split("=>");
this.impliedBy = relation[0];
this.implementedVar = relation[1];
}
...
}
と言ってクラスの上に電話する...
Sentence s = new Sentence("a&b=>c");
申し訳ありませんが、私はこの種の複雑なプログラミングに慣れていません。私の予測によれば、この種の推論を非常に高いレベルで実行するには、多くの最適化が必要になる可能性があります。しかし、誰かの理解が必要なようです...
ありがとう!