複雑な分岐ロジックのAndroidビジネスアプリケーションを実装して、マーケティングアンケートツールとして使用したいと思っています。 ダイアログロジックをFSMまたはビヘイビアツリーとして実装するかどうか混乱します。著者はステートマシンを実装するためにツリーを使用しています。例えば、ゲームのための人工知能では、著者はIan Millingtonらによると、FSMに決定木を使用することを提案している。しかし、私は、FSMはクロージャを持つことができると考えています。たとえば、 "アラームを発生させる"と "防御する"の間で遷移すると、ツリーではなくグラフになります。私の最初の質問は、ツリーとステートマシンの違いは何ですか? 2つ目は、アプリケーションの優れた実装となり、高いレベルの分岐の複雑さを管理することです。ビヘイビアツリーとステートマシン
答えて
私は行動の木が複数の入力を持つことができますが、定義により、FSMは、唯一のエントリポイントを持っていると思います。ツリーはグラフですが、グラフはツリーではありません。ツリーは、葉が複数の親を持たない非循環グラフです。この点で、木はFSMに適しています。
とにかく、私はこのタイプのシミュレーションがandroid apiの範囲外であると思います。したがって、私はどのような種類のツールがJavaで利用可能であるかについてもっと検討しています。私はかつてJavaで研究プロジェクトを学習していました。私は、マルチスレッドを容易にするために、カスタムTreeデータ構造を実装しました。
私はそれが助けてくれることを願っています!
行動ツリーと意思決定ツリーは、2つの異なるものです。行動木は目標指向で反応性があり(環境のようなゲームでエージェントやスマートエンティティの決定をシミュレートするためのもの)、意思決定ツリーは、行動の有用性に基づいて決定の仕様(および記憶域)与えられた状態。 主に、最初のアプローチでは、実行は状態がいっぱいです(実行はツリー内の状態に結びつきます)、後では状態がより少なくなります(ツリー全体が到達するためにルートからリーフに評価されます)結論)。
あなたの説明によれば、あなたが探しているのはルールベースのエキスパートシステムです。
FSMは、遷移によってリンクされた状態のグラフです。複雑なfsmの場合、複雑な遷移のために拡張することは困難です。
動作ツリーの場合、各ノードはその親によって管理されますが、実際には親/子関係に暗黙的に移行されているため、既存の動作ツリーを拡張する方が簡単です。
you can refer to https://github.com/TencentOpen/behaviac for the source code and designer.
- 1. ステートマシン
- 2. ステートマシンと複数ステート
- 3. ステートマシンのブロッキングシステムコールとコールイベント
- 4. 春ステートマシン
- 5. ステートマシン、モデル検証とRSpecの
- 6. ステートマシンWindows用ワークフローデザイナーWF
- 7. 春のステートマシンは、アクション
- 8. は春のステートマシンで
- 9. ステートマシンの永続性
- 10. 春のステートマシン遷移
- 11. 春のステートマシンのJpaRepositoryStateとJPAの@Entity
- 12. 春のWebflow、春のステートマシンとHTML5
- 13. C++ステートマシンとファイル内の隠蔽クラス
- 14. ステートマシンを改善する
- 15. 春のステートマシンのメモリcomsume
- 16. ステートマシンでのVHDL synaxエラー
- 17. ステートマシンのオントロジー/ステートマシンを設計するためのその他のツール
- 18. ステートマシン - 私は、ステートマシンを作成し、このようなインターフェースを使用したい場合は国、イベントとpFuncs
- 19. ステートマシンでターゲットステートを変更する方法
- 20. ステートマシンは最高のソリューションです
- 21. ステートマシンの継承チェーンが分岐する
- 22. Rubyステートマシン - シンボルから引きますか?
- 23. エンタープライズアーキテクト - ステートマシンの輸出画像 - 国境
- 24. ステートマシンをPythonで作成する
- 25. 春ステートマシン取得豆の作成例外
- 26. WF 4ステートマシンを使用したワークフローサービス
- 27. ステートマシンの単体テスト方法は?
- 28. ステートマシンの遅延を使用する
- 29. QMLステートマシン私はそれを実行したときに、信号
- 30. JavaScriptの約束とC#asyc-awaitの点でステートマシンとは何ですか?