Appendix A Formal Models for Artificial Intelligence Methods: Formal Notions for Search Methods
Appendix A Formal Models for Artificial Intelligence Methods: Formal Notions for Search Methods
As we mentioned in Chap. 2 , search methods are based on a concept of cognitive simulation developed in psychology and mind theory. In this appendix, firstly we introduce fundamental notions of state space and search tree in a formal way. Then, we present properties of heuristic function [ 256 ]. A constraint satisfaction problem (CSP) is formalized at the end [ 305 ].
A.1 State Space, Search Tree and Heuristic Function
Definition A.1
SF set of operators that can be used for solving P. A state space of the problem P is a node- and edge-labelled directed graph
V is a set of graph nodes corresponding to states of the problem P,
E is a set of graph edges of the form (v, λ, w), v, w ∈ V, λ ∈ Ŵ; an edge (v, λ, w) ∈ E represents a transition from a state v to a state w as a result of an application of an operator λ,
S is called a start node of the state space and it
is called a goal node of the state space and it represents a goal state of the problem P . A solution of the problem P is any path in the graph G that begins at a start node
and ends in a goal node. 1
1 In fact, solving a problem means an application of a sequence of operators that ascribe labels to edges of the path. © Springer International Publishing Switzerland 2016
247 M. Flasi´nski, Introduction to Artificial Intelligence, DOI 10.1007/978-3-319-40022-8
248 Appendix A: Formal Models for Artificial Intelligence Methods … State spaces usually are too big to be searched directly. Therefore, searching for
a solution, we treat them as a problem domain. Then we successively span a tree structure on such a domain. Let us introduce the following definition.
Definition A.2 Let G be a state space of a problem P. A search tree 2 T is a directed tree spanned on G (on a part of G) such that the root v of T is a start node of G.
As we discussed in Chap. 4 , if we construct heuristic methods of a state space search, we should define a heuristic function determining (for each state) a distance to a goal state. Now, we introduce formal notions related to this function [ 256 ].
Definition A.3 function is a function
h :V→R + ,
where R + is a set of non-negative real numbers, such that it ascribes a cost of reaching
a goal node of G for any node v ∈ V . We will assume a cost-based interpretation of a heuristic function in the defini-
tions below. It means that we will try to move from a given node to a node with a minimum value of a heuristic function. If we assumed a quality-based interpretation of a heuristic function we would try to go to a node with a maximum value (quality) of a heuristic function. If one uses the second interpretation, the symbol ≤ should
be replaced with the symbol ≥. Definition A.4
A heuristic function h is admissible if for each node v of a state space G (or: of a search tree) the following condition holds:
h(v) ≤ C(v),
where C(v) is an actual cost of a path from the node v to the goal node. Definition A.5
A heuristic function h is consistent (monotone) (cf. Fig. A.1 ) if for each node v of a state space G (or: of a search tree) and for each child node S(v) of the node v the following conditions holds.
If C(v, S(v)) is the cost of moving from the node v to the node S(v), then
h(v) ≤ C(v, S(v)) + h(S(v)) .
Of course, 3 any consistent heuristic function is admissible.
2 A search tree defined in such a way is called a partial search tree. 3 Sometimes, we claim an additional condition to be fulfilled. If k is the goal node of a state space G , then h(k) = 0.
Appendix A: Formal Models for Artificial Intelligence Methods … 249 Fig. A.1 Consistency of a
v heuristic function
C(v,S(v)) S(v)
h(v)
h(S(v))
goal node
Definition A.6 Let h 1 , h 2 be admissible heuristic functions. The heuristic function
h 2 dominates the heuristic function h 1 if for each node v of a state space G the following condition holds:
h 2 (v) ≥h 1 (v).
As we discussed in Chap. 4 , having two admissible functions, one should use a dominating function.
A.2 Constraint Satisfaction Problem
Definition A.7 Constraint Satisfaction Problem, CSP is a triple
P = (Z, D, C),
where Z = {x 1 , x 2 ,..., x n } is a finite set of variables,
D = (D x 1 , D x 2 ,..., D x n ) , where D x i is a set of possible values that can be ascribed to x i , called a domain of x i ,
C is a finite set of constraints (restrictions, conditions) imposed on a subset of Z.
Let x 1 , x 2 ,..., x n ∈ Z, α 1 ∈D x 1 , α 2 ∈D x 2 ,..., α n ∈D x n .
i for each variable x i , i = 1, 2, . . . , n.
Definition A.8 Let P = (Z, D, C) be a constraint satisfaction problem. P is satis- fiable