06.03.2013 Views

Artificial Intelligence and Soft Computing: Behavioral ... - Arteimi.info

Artificial Intelligence and Soft Computing: Behavioral ... - Arteimi.info

Artificial Intelligence and Soft Computing: Behavioral ... - Arteimi.info

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

13.5 Learning by Inductive Logic<br />

Programming<br />

Inductive logic programming (ILP) employs an inductive method on the first<br />

order clauses through a process of inverse resolution. The ILP can generate<br />

new predicates <strong>and</strong> is therefore called constructive induction.<br />

Let us first start with the resolution theorem of predicate logic.<br />

Suppose we have two clauses C1 <strong>and</strong> C2 given by<br />

C1 = Male(X) ← Boy(X)<br />

<strong>and</strong> C2 = Boy(ram).<br />

So, C1 = ¬ Boy(X) ∨ Male(X). (13.10)<br />

Let literal L1 = ¬ Boy (X) (13.11)<br />

<strong>and</strong> L2 = Boy (ram) (13.12)<br />

Let the unifying substitution θ={ram / X}. We can now write<br />

L1θ = ¬ L2θ = ¬ Boy (ram). Now, after resolving C1 <strong>and</strong> C2, suppose we obtain<br />

the resolvent C, where<br />

C = Male(ram). Thus C is the union of (C1-{L1})θ = Male(Ram)<br />

<strong>and</strong> (C2-{L2})θ = φ.<br />

Formally, we can always write C = (C1-{L1})θ ∪ (C2-{L2})θ (13.13)<br />

The unifying substitution θ can be factored to θ1 <strong>and</strong> θ2 [10], i.e.<br />

θ = θ1θ2 (13.14)<br />

where θ1 contains all the substitutions involving variables from clause C1 <strong>and</strong><br />

θ2 contains all the substitutions involving variables from C2. Thus<br />

C = (C1-{L1})θ1 ∪ (C2-{L2})θ2<br />

where '–' denotes set difference operator. We can re-express the above as<br />

C – (C1-{L1})θ1 = (C2-{L2})θ2 (13.15)<br />

which finally yields

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

Saved successfully!

Ooh no, something went wrong!