Est-il un best-of-breed en mémoire FSM bibliothèque pour Java?
Je pense bibliothèque idéale serait relativement simple avec le soutien pour les événements, les actions, et les transitions. Il ne nécessite pas de configuration externe ou de précompilation. Il n'aurait pas à être simultanées capable ou multi-thread. Bien si c'était hiérarchique, mais pas nécessaires. Je pense que la Machine d'État inclus dans Qt (C++) est le niveau idéal de la complexité et de la fonctionnalité. En fait, il y a un nombre intéressant de FSM bibliothèques C/C++, mais j'ai été incapable de trouver quelque chose de semblable pour Java.
Je suis venu à travers la suite des bibliothèques Java jusqu'à présent:
- Unimod FSM Cadre - l'air très bon, mais peut-être trop complexe.
- Tungstène FSM Bibliothèque - N'est plus actif que d'une bibliothèque autonome. Pas de documentation que j'ai pu trouver.
- Apache SCXML - Peut-être? J'ai lu qu'il a des problèmes, mais je n'ai pas encore utilisé moi-même.
Un certain nombre d'articles en ligne, de discuter des idées pour la mise en œuvre d'une coutume FSM en Java, et c'est peut-être le chemin à parcourir pour simple en mémoire FSM besoins. Au début, j'ai considéré en utilisant un moteur de BPM comme de l' Or, mais je pense que ces types de bibliothèques sont beaucoup trop lourds et plus orientés vers les processus de flux de travail.
Je suis à la recherche d'utiliser un FSM pour la gestion du niveau élevé de comportements d'un petit robot. Toutefois, je m'attends à un décent FSM bibliothèque de ce type serait également applicable pour l'interface utilisateur de gestion de l'état, l'écoulement de jeu, simple et de l'IA.
Toute bibliothèque recommandations, notes sur l'expérience avec les bibliothèques ci-dessus, ou des pointeurs vers récente et moderne FSM stratégies de mise en œuvre en Java serait appréciée.