Advances in Intelligent Systems Research - of Marcus Hutter
Advances in Intelligent Systems Research - of Marcus Hutter
Advances in Intelligent Systems Research - of Marcus Hutter
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
choice <strong>of</strong> such logic is compositionality: To evaluate a formula<br />
on a large structure A which is composed <strong>in</strong> a regular<br />
way from substructures B and C it is enough to evaluate certa<strong>in</strong><br />
formulas on B and C <strong>in</strong>dependently. Monadic secondorder<br />
logic is one <strong>of</strong> the most expressive logics with this<br />
property and allows to def<strong>in</strong>e various useful patterns such as<br />
stars, connected components or acyclic subgraphs. 4<br />
In the syntax <strong>of</strong> our logic, we use first-order variables<br />
(x 1 , x 2 , . . .) rang<strong>in</strong>g over elements <strong>of</strong> the structure, secondorder<br />
variables (X 1 , X 2 , . . .) rang<strong>in</strong>g over sets <strong>of</strong> elements,<br />
and real-valued variables (α 1 , α 2 , . . .) rang<strong>in</strong>g over R, and<br />
we dist<strong>in</strong>guish boolean formulas ϕ and real-valued terms ρ:<br />
ϕ := R i (x 1 , . . . , x ri ) | x i = x j | x i ∈ X j | ρ < ε ρ | ϕ ∧ ϕ |<br />
ϕ ∨ ϕ | ¬ϕ | ∃x i ϕ | ∀x i ϕ | ∃X i ϕ | ∀X i ϕ | ∃α i ϕ | ∀α i ϕ,<br />
ρ := α i | f i (x j ) | ρ ∔ ρ | χ[ϕ] | m<strong>in</strong> αi ϕ | ∑ x|ϕ ρ | ∏ x|ϕ ρ.<br />
Semantics <strong>of</strong> most <strong>of</strong> the above operators is def<strong>in</strong>ed <strong>in</strong> the<br />
well known way, e.g. ρ+ρ is the sum and ρ·ρ the product <strong>of</strong><br />
real-valued terms, and ∃Xϕ(X) means that there exists a set<br />
<strong>of</strong> elements S such that ϕ(S) holds. Among less known operators,<br />
the term χ[ϕ] denotes the characteristic function <strong>of</strong><br />
ϕ, i.e. the real-valued term which is 1 for all assignments for<br />
which ϕ holds and 0 for all other. To evaluate m<strong>in</strong> αi ϕ we<br />
take the m<strong>in</strong>imal α i for which ϕ holds (we allow ±∞ as values<br />
<strong>of</strong> terms as well). The terms ∑ x|ϕ ρ and ∏ x|ϕ ρ denote<br />
the sum and product <strong>of</strong> the values <strong>of</strong> ρ(x) for all assignments<br />
<strong>of</strong> elements <strong>of</strong> the structure to x for which ϕ(x) holds. Note<br />
that both these terms can have free variables, e.g. the set <strong>of</strong><br />
free variables <strong>of</strong> ∑ x|ϕ<br />
ρ is the union <strong>of</strong> free variables <strong>of</strong> ϕ<br />
and free variables <strong>of</strong> ρ, m<strong>in</strong>us the set {x}. Observe also the<br />
ε <strong>in</strong> < ε : the values f(a) are given with arbitrary small but<br />
non-zero error (cf. footnote 2) and ρ 1 < ε ρ 2 holds only if<br />
the upper bound <strong>of</strong> ρ 1 lies below the lower bound <strong>of</strong> ρ 2 .<br />
The logic def<strong>in</strong>ed above is used <strong>in</strong> structure rewrit<strong>in</strong>g rules<br />
<strong>in</strong> two ways. First, it is possible to def<strong>in</strong>e a new relation<br />
R(x) us<strong>in</strong>g a formula ϕ(x) with free variables conta<strong>in</strong>ed<br />
<strong>in</strong> x. Def<strong>in</strong>ed relations can be used on left-hand sides <strong>of</strong><br />
structure rewrit<strong>in</strong>g rules, but are not allowed on right-hand<br />
sides. The second way is to add constra<strong>in</strong>ts to a rule. A<br />
rule L → s R can be constra<strong>in</strong>ed us<strong>in</strong>g three sentences (i.e.<br />
formulas without free variables): ϕ pre , ϕ <strong>in</strong>v and ϕ post . In<br />
both ϕ pre and ϕ <strong>in</strong>v we allow additional constants l for each<br />
l ∈ L and <strong>in</strong> ϕ post special constants for each r ∈ R can be<br />
used. A rule L → s R with such constra<strong>in</strong>ts can be applied<br />
on a match σ <strong>in</strong> A only if the follow<strong>in</strong>g holds: At the beg<strong>in</strong>n<strong>in</strong>g,<br />
the formula ϕ pre must hold <strong>in</strong> A with the constants l<br />
<strong>in</strong>terpreted as σ(l). Later, dur<strong>in</strong>g the whole cont<strong>in</strong>uous evolution,<br />
the formula ϕ <strong>in</strong>v must hold <strong>in</strong> the structure A with<br />
cont<strong>in</strong>uous values changed as prescribed by the solution <strong>of</strong><br />
the system D (def<strong>in</strong>ed above). F<strong>in</strong>ally, the formula ϕ post<br />
must hold <strong>in</strong> the result<strong>in</strong>g structure after rewrit<strong>in</strong>g. Dur<strong>in</strong>g<br />
simultaneous execution <strong>of</strong> a few rules with constra<strong>in</strong>ts and<br />
with given time bounds t i , one <strong>of</strong> the <strong>in</strong>variants ϕ <strong>in</strong>v may<br />
cease to hold. In such case, the rule is applied at that moment<br />
<strong>of</strong> time, even before t 0 = m<strong>in</strong> t i is reached — but <strong>of</strong><br />
course only if ϕ post holds afterwards. If ϕ post does not hold,<br />
the rule is ignored and time goes on for the rema<strong>in</strong><strong>in</strong>g rules.<br />
4 We provide additional syntax (shorthands) for useful patterns.<br />
Game Graph:<br />
P<br />
Start<strong>in</strong>g Structure:<br />
Q<br />
R<br />
C<br />
R<br />
C<br />
R<br />
R<br />
C<br />
R<br />
C<br />
R<br />
Figure 2: Tic-tac-toe as a structure rewrit<strong>in</strong>g game.<br />
Structure Rewrit<strong>in</strong>g Games<br />
As you could judge from the cat and mouse example, one<br />
can describe a structure rewrit<strong>in</strong>g game simply by provid<strong>in</strong>g<br />
a set <strong>of</strong> allowed rules for each player. Still, <strong>in</strong> many cases it<br />
is necessary to have more control over the flow <strong>of</strong> the game<br />
and to model probabilistic events. For this reason, we use<br />
labelled directed graphs with probabilities <strong>in</strong> the def<strong>in</strong>ition<br />
<strong>of</strong> the games. The labels for each player are <strong>of</strong> the form:<br />
λ = (L → s R, D, T , ϕ pre , ϕ <strong>in</strong>v , ϕ post , I t , I p , m, τ e ).<br />
Except for a rewrit<strong>in</strong>g rule with <strong>in</strong>variants, the label λ specifies<br />
a time <strong>in</strong>terval I t ⊆ [0, ∞) from which the player can<br />
choose the time bound for the rule and, if there are other cont<strong>in</strong>uous<br />
parameters p 1 , . . . , p n , also an <strong>in</strong>terval I pj ⊆ R for<br />
each parameter. The element m ∈ {1, ∗, ∞} specifies if the<br />
player must choose a s<strong>in</strong>gle match <strong>of</strong> the rule (m = 1), apply<br />
it simultaneously to all possible matches (m = ∞, useful<br />
for model<strong>in</strong>g nature) or if any number <strong>of</strong> non-<strong>in</strong>tersect<strong>in</strong>g<br />
matches might be chosen (m = ∗); τ e tells which relations<br />
must be matched exactly (all other are <strong>in</strong> τ h ).<br />
We def<strong>in</strong>e a general structure rewrit<strong>in</strong>g game with k players<br />
as a directed graph <strong>in</strong> which each vertex is labelled by k<br />
sets <strong>of</strong> labels denot<strong>in</strong>g possible actions <strong>of</strong> the players. For<br />
each k-tuple <strong>of</strong> labels, one from each set, there must be an<br />
outgo<strong>in</strong>g edge labelled by this tuple, po<strong>in</strong>t<strong>in</strong>g to the next location<br />
<strong>of</strong> the game if these actions are chosen by the players.<br />
There can be more than one outgo<strong>in</strong>g edge with the same label<br />
<strong>in</strong> a vertex: In such case, all edges with this label must be<br />
assigned probabilities (i.e. positive real numbers which sum<br />
up to 1). Moreover, an end-po<strong>in</strong>t <strong>of</strong> an <strong>in</strong>terval I t or I p <strong>in</strong> a<br />
label can be given by a parameter, e.g. x. Then, each outgo<strong>in</strong>g<br />
edge with this label must be marked by x ∼ N (µ, σ),<br />
x ∼ U(a, b) or x ∼ E(λ), mean<strong>in</strong>g that x will be drawn from<br />
the normal, uniform or exponential distribution (these 3 chosen<br />
for convenience). Additionally, <strong>in</strong> each vertex there are k<br />
real-valued terms <strong>of</strong> the logic presented above which denote<br />
the pay<strong>of</strong>f for each player if the game ends at this vertex.<br />
A play <strong>of</strong> a structure rewrit<strong>in</strong>g game starts <strong>in</strong> a fixed first<br />
vertex <strong>of</strong> the game graph and <strong>in</strong> a state represented by a<br />
given start<strong>in</strong>g structure. All players choose rules, matches<br />
and time bounds allowed by the labels <strong>of</strong> the current vertex<br />
such that the tuple <strong>of</strong> rules can be applied simultaneously.<br />
The play proceeds to the next vertex (given by the label<strong>in</strong>g<br />
<strong>of</strong> the edges) <strong>in</strong> the changed state (after the application <strong>of</strong><br />
the rules). If <strong>in</strong> some vertex and state it is not possible to<br />
apply any tuple <strong>of</strong> rules, either because no match is found<br />
or because <strong>of</strong> the constra<strong>in</strong>ts, then the play ends and pay<strong>of</strong>f<br />
terms are evaluated giv<strong>in</strong>g the outcome for each player.<br />
Example. Let us def<strong>in</strong>e tic-tac-toe <strong>in</strong> our framework. The<br />
state <strong>of</strong> the game is represented by a structure with 9 el-<br />
C<br />
C<br />
51