由于我一直在研究图中的路径查找算法,我发现了一些有趣的问题。
情况定义:
1)状态图可以有p个状态,s布尔字段和z Int字段
2)每个州都有q ingoing和r out转换,以及h Int字段(h属于z - 见上文)
3)每次转换只能有1个事件,只有1个动作
4)每个动作都可以改变n个布尔字段和x Int字段
5)每个事件都可以有一个触发器来自图
中任何伯尔字段数的组合6)转换可以是OPEN / CLOSED形式。如果转换打开/关闭取决于触发器2从0..c布尔字段复合。
7)我知道用于查找从状态A到状态B的最短路径的算法。
8)如果所有转换都是OPEN,我知道用于查找覆盖所有状态和整个状态图转换的路径的算法。
现在,目标是什么:
我需要找到覆盖上述动态变化状态图中所有状态和转换的最短路径。当某个操作更改某个int字段时,该算法应该遍历已更改int字段的所有状态。 该算法还应该能够打开和关闭转换(通过按行动打开和关闭另一个转换的转换),使得建立的路径最短并覆盖所有转换和状态。
知道怎么解决吗?我会很高兴任何想法。谢谢你的回答。