Search
Exercise 1: Let $\Pi=\langle V,A,s_0,g\rangle$ be an FDR task where $V=\{v_1,v_2,v_3,v_4\}$ and $\mathsf{dom}(v_i)=\{0,1\}$. The initial state is $s_0=\{v_1=0,v_2=0,v_3=0,v_4=0\}$ and the goal $g=\{v_3=1,v_4=1\}$. The actions $A=\{a_1,a_2,a_3,a_4\}$ are defined as follows:
Draw the causal graph of $\Pi$ and write down all the interesting patterns up to size $2$.
Solution
Recall that the causal graph is the digraph whose vertices are variables $v_1,v_2,v_3,v_4$ without self-loops. There is a directed edge $(v_i,v_j)$ for $i\neq j$ iff there is $a_k\in A$ such that either $\mathsf{pre}_{a_k}(v_i),\mathsf{eff}_{a_k}(v_j)$ are defined or $\mathsf{eff}_{a_k}(v_i),\mathsf{eff}_{a_k}(v_j)$. The causal graph for $\Pi$ looks as follows:
v1 <---> v2 <---> v3 ---> v4
Recall that the interesting patterns $P$ should be weakly connected and causally relevant (i.e., there is a directed path from any $v\in P$ to a variable $u\in P$ such that $g(u)$ is defined). Thus the interesting patterns of size $1$ are just $\{v_3\}$ and $\{v_4\}$. For the size $2$ we have $\{v_2,v_3\}$ and $\{v_3,v_4\}$. That is all. For instance, $P=\{v_2,v_4\}$ is not interesting since the subgraph of the causal graph induced by $P$ is not weakly connected.
Exercise 2: Formulate the linear program whose optimum value is the post-hoc heuristic for the initial state $s_0$ in the task from the previous exercise using the interesting patterns up to size $2$.
We must first compute the PDB heuristic $h_P(s_0)$ for each $P\in\{\{v_3\},\{v_4\},\{v_2,v_3\},\{v_3,v_4\}\}$. We draw the LTS induced by the syntactic projection for each pattern $P$.
The LTS for $P=\{v_3\}$ looks as follows (self-loops omitted):
a3 0 ----> 1
Thus $h_{\{v_3\}}(s_0)=2$.
Similarly, the LTS for $P=\{v_4\}$ looks as follows (self-loops omitted):
a4 0 ----> 1
Thus $h_{\{v_4\}}(s_0)=3$.
The LTS for $P=\{v_2,v_3\}$ is the following (the state $\{v_2=x,v_3=y\}$ is denoted $xy$, self-loops omitted):
a2 -----> 01 <----- 11 ^ a3 | |a3 a2 | 00 -----> 10
Thus $h_{\{v_2,v_3\}}(s_0)=2+2=4$.
Finally, the LTS for $P=\{v_3,v_4\}$ is the following one (the state $\{v_3=x,v_4=y\}$ is denoted $xy$, self-loops omitted):
a3 01 -----> 11 ^ | |a4 a3 | 00 -----> 10
Thus $h_{\{v_3,v_4\}}(s_0)=2+3=5$.
Next, we must find out which actions affect which patterns. Recall that an action $a$ affects a pattern $P$ if there is $v\in P$ such that $\mathsf{eff}_{a}(v)$ is defined.
For each action $a_i$, we introduce a variable $X_i$ representing the number of applications of $a_i$. The linear program whose value is the post-hoc heuristic for $s_0$ is the following:
\[ \min X_1 + 2X_2 + 2X_3 + 3X_4\qquad\text{subject to} \] \begin{align*} 2X_3 &\geq 2\\ 3X_4 &\geq 3\\ 2X_2+2X_3 &\geq 4\\ 2X_3+3X_4 &\geq 5 \end{align*}
It is not so difficult to see that the optimum value of the above LP is $7$.
Exercise 3: For the FDR task from Exercise 1, formulate the linear program computing the potential heuristic optimized for the initial state.
The potential heuristic uses linear programming to find an optimized linear function mapping a state to a heuristic value. The coefficients of the linear map are called potentials. Recall that a fact in an FDR task is a pair $(v,d)$ for $v\in V$ and $d\in\mathsf{dom}(v)$ and we understand a state $s$ as a set of facts. We introduce a variable $X_{(v,d)}$ for each fact $(v,d)$. Its value represents the potential of the fact. The heuristic value is then computed by $h^{\mathrm{pot}}(s)=\sum_{(v,d)\in s} X_{(v,d)}$. The linear program maximizes the heuristic value for a given state; in our case, the initial state $s_0$ subject to constraints ensuring that the heuristic is goal-aware and consistent (and thus admissible).
The following are the variables of the LP: \[X_{(v_1,0)},X_{(v_1,1)},X_{(v_2,0)},X_{(v_2,1)},X_{(v_3,0)},X_{(v_3,1)},X_{(v_4,0)},X_{(v_1,4)},\] and auxiliary variables representing the maximum of all potential for a single variable \[M_{v_1}, M_{v_2}, M_{v_3}, M_{v_4}.\]
The objective function maximizes the heuristic value for the initial state $s_0=\{(v_1,0),(v_2,0),(v_3,0),(v_4,0)\}$: \[\max X_{(v_1,0)} + X_{(v_2,0)} + X_{(v_3,0)} + X_{(v_4,0)}\] subject to the constraints for the auxiliary variables \begin{align*} X_{(v_1,0)}\leq M_{v_1} && X_{(v_1,1)}\leq M_{v_1} \\ X_{(v_2,0)}\leq M_{v_2} && X_{(v_2,1)}\leq M_{v_2} \\ X_{(v_3,0)}\leq M_{v_3} && X_{(v_3,1)}\leq M_{v_3} \\ X_{(v_4,0)}\leq M_{v_4} && X_{(v_4,1)}\leq M_{v_4} \\ \end{align*} the constraint ensuring the goal-awareness \[M_{v_1}+M_{v_2}+X_{(v_3,1)}+X_{(v_4,1)}\leq 0\] and the constraints ensuring consistency \begin{align*} X_{(v_1,0)} - X_{(v_1,1)} & \leq 1\\ X_{(v_1,1)} + M_{v_2} - X_{(v_1,0)} - X_{(v_2,1)} & \leq 2\\ X_{(v_2,1)} + M_{v_3} - X_{(v_2,0)} - X_{(v_3,1)} & \leq 2\\ M_{v_4} - X_{(v_4,1)} & \leq 3\\ \end{align*}
The optimum value for the LP above is $8$. Thus, we get a better value than the post-hoc heuristic. The perfect heuristic $h^*(s_0)=9$.