Я думаю, что по определению у FSM есть только одна точка входа, а у деревьев поведения может быть несколько входов.Дерево - это граф, но граф - это не дерево.Дерево - это ациклический граф, в котором листья никогда не имеют нескольких родителей.Так что в этом отношении дерево лучше подходит для FSM.
В любом случае, я бы предположил, что этот тип симуляции выходит за рамки android api.Следовательно, я бы больше посмотрел на то, какие инструменты доступны в Java.Однажды я занимался исследованием машинного обучения на Java.В итоге я реализовал собственную структуру данных Tree, чтобы облегчить многопоточность.
Надеюсь, это поможет!