FerryMansProblem
left: wolf goat cabbage
boat at: left cargo:
right:
Shortest path:
ReachableState: number: 1 metricValue: 12.0
left: wolf cabbage goat
boat at: left cargo:
right:
1 --load cargo Cargo: goat-> 2
ReachableState: number: 2 metricValue: 11.0
left: wolf cabbage
boat at: left cargo: goat
right:
2 --move boat-> 3
ReachableState: number: 3 metricValue: 10.0
left: wolf cabbage
boat at: right cargo:
right: goat
3 --move boat-> 5
ReachableState: number: 5 metricValue: 9.0
left: wolf cabbage
boat at: left cargo:
right: goat
5 --load cargo Cargo: wolf-> 6
ReachableState: number: 6 metricValue: 8.0
left: cabbage
boat at: left cargo: wolf
right: goat
6 --move boat-> 8
ReachableState: number: 8 metricValue: 7.0
left: cabbage
boat at: right cargo:
right: goat wolf
8 --load cargo Cargo: goat-> 10
ReachableState: number: 10 metricValue: 6.0
left: cabbage
boat at: right cargo: goat
right: wolf
10 --move boat-> 14
ReachableState: number: 14 metricValue: 5.0
left: cabbage goat
boat at: left cargo:
right: wolf
14 --load cargo Cargo: cabbage-> 16
ReachableState: number: 16 metricValue: 4.0
left: goat
boat at: left cargo: cabbage
right: wolf
16 --move boat-> 20
ReachableState: number: 20 metricValue: 3.0
left: goat
boat at: right cargo:
right: wolf cabbage
20 --move boat-> 23
ReachableState: number: 23 metricValue: 2.0
left: goat
boat at: left cargo:
right: wolf cabbage
23 --load cargo Cargo: goat-> 24
ReachableState: number: 24 metricValue: 1.0
left:
boat at: left cargo: goat
right: wolf cabbage
24 --move boat-> 25
ReachableState: number: 25 metricValue: 0.0
left:
boat at: right cargo:
right: wolf cabbage goat
Full reachability graph:
4 --move boat-> 1
ReachableState: number: 1 metricValue: 12.0
left: wolf cabbage goat
boat at: left cargo:
right:
1 --load cargo Cargo: goat-> 2
1 --load cargo Cargo: goat-> 2
ReachableState: number: 2 metricValue: 11.0
left: wolf cabbage
boat at: left cargo: goat
right:
2 --move boat-> 3
2 --move boat-> 3
5 --move boat-> 3
ReachableState: number: 3 metricValue: 10.0
left: wolf cabbage
boat at: right cargo:
right: goat
3 --load cargo Cargo: goat-> 4
3 --move boat-> 5
3 --load cargo Cargo: goat-> 4
ReachableState: number: 4 metricValue: 13.0
left: wolf cabbage
boat at: right cargo: goat
right:
4 --move boat-> 1
3 --move boat-> 5
11 --move boat-> 5
13 --move boat-> 5
ReachableState: number: 5 metricValue: 9.0
left: wolf cabbage
boat at: left cargo:
right: goat
5 --load cargo Cargo: wolf-> 6
5 --load cargo Cargo: cabbage-> 7
5 --move boat-> 3
5 --load cargo Cargo: wolf-> 6
ReachableState: number: 6 metricValue: 8.0
left: cabbage
boat at: left cargo: wolf
right: goat
6 --move boat-> 8
5 --load cargo Cargo: cabbage-> 7
ReachableState: number: 7 metricValue: 8.0
left: wolf
boat at: left cargo: cabbage
right: goat
7 --move boat-> 9
6 --move boat-> 8
17 --move boat-> 8
ReachableState: number: 8 metricValue: 7.0
left: cabbage
boat at: right cargo:
right: goat wolf
8 --load cargo Cargo: goat-> 10
8 --load cargo Cargo: wolf-> 11
7 --move boat-> 9
19 --move boat-> 9
ReachableState: number: 9 metricValue: 7.0
left: wolf
boat at: right cargo:
right: goat cabbage
9 --load cargo Cargo: goat-> 12
9 --load cargo Cargo: cabbage-> 13
8 --load cargo Cargo: goat-> 10
ReachableState: number: 10 metricValue: 6.0
left: cabbage
boat at: right cargo: goat
right: wolf
10 --move boat-> 14
8 --load cargo Cargo: wolf-> 11
ReachableState: number: 11 metricValue: 10.0
left: cabbage
boat at: right cargo: wolf
right: goat
11 --move boat-> 5
9 --load cargo Cargo: goat-> 12
ReachableState: number: 12 metricValue: 6.0
left: wolf
boat at: right cargo: goat
right: cabbage
12 --move boat-> 15
9 --load cargo Cargo: cabbage-> 13
ReachableState: number: 13 metricValue: 10.0
left: wolf
boat at: right cargo: cabbage
right: goat
13 --move boat-> 5
10 --move boat-> 14
22 --move boat-> 14
ReachableState: number: 14 metricValue: 5.0
left: cabbage goat
boat at: left cargo:
right: wolf
14 --load cargo Cargo: cabbage-> 16
14 --load cargo Cargo: goat-> 17
12 --move boat-> 15
21 --move boat-> 15
ReachableState: number: 15 metricValue: 5.0
left: wolf goat
boat at: left cargo:
right: cabbage
15 --load cargo Cargo: wolf-> 18
15 --load cargo Cargo: goat-> 19
14 --load cargo Cargo: cabbage-> 16
ReachableState: number: 16 metricValue: 4.0
left: goat
boat at: left cargo: cabbage
right: wolf
16 --move boat-> 20
14 --load cargo Cargo: goat-> 17
ReachableState: number: 17 metricValue: 8.0
left: cabbage
boat at: left cargo: goat
right: wolf
17 --move boat-> 8
15 --load cargo Cargo: wolf-> 18
ReachableState: number: 18 metricValue: 4.0
left: goat
boat at: left cargo: wolf
right: cabbage
18 --move boat-> 20
15 --load cargo Cargo: goat-> 19
ReachableState: number: 19 metricValue: 8.0
left: wolf
boat at: left cargo: goat
right: cabbage
19 --move boat-> 9
16 --move boat-> 20
18 --move boat-> 20
23 --move boat-> 20
ReachableState: number: 20 metricValue: 3.0
left: goat
boat at: right cargo:
right: wolf cabbage
20 --load cargo Cargo: wolf-> 21
20 --load cargo Cargo: cabbage-> 22
20 --move boat-> 23
20 --load cargo Cargo: wolf-> 21
ReachableState: number: 21 metricValue: 6.0
left: goat
boat at: right cargo: wolf
right: cabbage
21 --move boat-> 15
20 --load cargo Cargo: cabbage-> 22
ReachableState: number: 22 metricValue: 6.0
left: goat
boat at: right cargo: cabbage
right: wolf
22 --move boat-> 14
20 --move boat-> 23
26 --move boat-> 23
ReachableState: number: 23 metricValue: 2.0
left: goat
boat at: left cargo:
right: wolf cabbage
23 --load cargo Cargo: goat-> 24
23 --move boat-> 20
23 --load cargo Cargo: goat-> 24
ReachableState: number: 24 metricValue: 1.0
left:
boat at: left cargo: goat
right: wolf cabbage
24 --move boat-> 25
24 --move boat-> 25
ReachableState: number: 25 metricValue: 0.0
left:
boat at: right cargo:
right: wolf cabbage goat
25 --load cargo Cargo: goat-> 26
25 --load cargo Cargo: goat-> 26
ReachableState: number: 26 metricValue: 3.0
left:
boat at: right cargo: goat
right: wolf cabbage
26 --move boat-> 23
xtend:
ReachableState: number: 25 metricValue: 0.0
left:
boat at: right cargo:
right: wolf cabbage goat
java streams:
Optional[ReachableState: number: 25 metricValue: 0.0
left:
boat at: right cargo:
right: wolf cabbage goat
]
final step
ReachabilityGraph