A classical solution concept in fully observable nondeterministic (FOND) planning, is the strong policy (aka winning strategy in the closely related area of reactive synthesis), i.e., such a policy ensures that the goal is reached in an adversarial environment. When strong policies are not available or there is no evidence that the environment is adversarial, one can resort to best-effort policies, which always exist, and which follow the classic decision-theoretic principle that an agent should not use a dominated strategy. A typical positional best-effort policy works as follows: from every state, it follows a strong policy if one exists from that state (such states are called strong-winning''), else a weak policy if one exists from that state (weak-winning''), and else is unconstrained (``losing''). In this work, we introduce a sound and complete planner for both best-effort planning and strong planning. The algorithm that underpins the planner is quite simple: it represents certain sets of states, such as the winning regions, by their ⊆-minimal elements. The algorithm returns uniform policies, i.e., it returns a policy πt that is a strong solution starting in every strong-winning state, and it returns a policy πw that is a weak solution starting in every weak-winning state, and it provides a certificate for the set of losing states. We implemented the algorithm with some simple optimizations (calling it FONDANT), and evaluated it on a benchmark set consisting of the instances that were used in the evaluation of leading strong planners PR2 and FOND-SAT, and the best-effort planner BeSyftP. On coverage, our implementation is at least as good on all domains, and outperforms on some domains; and on wall time, it is slower on small and medium-sized instances, and outperforms on larger instances.
Figures & tables
domain
FONDANT (ours)
PR2
FOND-SAT
doors
15/15
14/15
15/15
miner
51/51
51/51
51/51
elev-strong
9/9
9/9
7/9
tire-strong
12/12
12/12
12/12
tire-spiky
11/11
11/11
10/11
tri-tire
40/40
32/40
2/40
Table 1: Coverage table for strong winning instances: FONDANT (ours) vs. PR2 and FOND-SAT within the 1800s and 16GB cap; cells are solved/total within scope, bold marks the highest number of solved instances per row.
domain
instances
FONDANT
PR2
avg (s)
max (s)
avg (s)
max (s)
doors
14
0.19
0.20
52.3
560.3
miner
51
0.41
1.35
0.20
0.35
elev-strong
9
0.20
0.20
0.12
0.13
tire-strong
12
0.18
0.20
0.12
0.14
tire-spiky
11
0.19
0.21
0.13
0.14
Table 2: Wall times on the 204 strong-winning instances both solve, per domain: mean and slowest wall (s) over the same instance set for each solver. PR2’s no-answer rows are excluded (doors p15; triangle p33–p40). Bold = faster (lower).
domain
#instances
FONDANT (ours)
BeSyftP
avg (s)
max (s)
avg (s)
max (s)
BestEffortTests
7
0.24
0.30
0.06
0.06
TriangleTireWorld
10
0.18
0.21
60.1
315.6
Elevators
9
0.30
0.71
178.3
1001.7
RectangleTireworld
8
0.51
0.79
43.2
236.8
TOTAL
34
0.30
0.79
75.0
1001.7
Table 3: Wall times on the 34 best-effort instances both planners answer, per family (mean/slowest, s). The twelve instances only FONDANT answers (elevators p09/p11–p15, rectangle p9–p14) are not included this table. Bold means faster (lower) per statistic.
FONDANT (ours)
BeSyftP
domain
#instances
strong
coop
losing
ans
strong
coop
losing
ans
BestEffortTests
7
3
2
2
7
3
2
2
7
TriangleTireWorld (p1–p10)
10
10
0
0
10
10
0
0
10
Elevators
15
9
6
0
15
7
2
0
9 ‡
RectangleTireworld
15
14
0
0
14 †
8
0
0
8 ‡
TOTAL
47
36
8
2
46
28
4
2
34
Table 4: Best-effort three-way classification (strong / weak / losing) of FONDANT side by side with the synthesizer BeSyftP ( De Giacomo et al. 2023 ) on its published families; cells count instances per verdict class (“ans” = answered). Bold = our totals.