11.04.2014 Views

Advances in Intelligent Systems Research - of Marcus Hutter

Advances in Intelligent Systems Research - of Marcus Hutter

Advances in Intelligent Systems Research - of Marcus Hutter

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!