個人的なイースター プロジェクトとして、モデルベースのテストを職場で実装しようとしています。Python で実装されたグラフがあり、グラフのすべてのエッジをトラバースするか、グラフのすべての遷移を少なくとも 1 回実行する必要があります。エッジを 2 回以上トラバースすることは問題ではありませんが、同じノードで開始および終了し、一連のエッジ/トランジションを取得する必要があります。
より単純なアルゴリズム > 最短のシーケンス。
私は周りを見回して多くのアルゴリズムを見つけましたが、自分に合ったアルゴリズム/組み合わせを見つけることができませんでした. 誰かが私を正しい方向に向けたり、これを行う方法についてのヒントを教えてくれたりしたら、それは素晴らしいことです.
私のグラフの実装は次のようになります。
graph = {
A : {'IDLE': 't8', 'B': 't2', 'C': 't4'},
B : {'A': 't3', 'C': 't4', 'IDLE': 't6'},
C : {'A': 't5', 'IDLE': 't7', 'B': 't2'},
IDLE : {'A': 't1'}
}