Upload
jonas-mckenzie
View
218
Download
0
Embed Size (px)
Citation preview
ANALOGY
“A Program for the Solution of a Class of Geometric-Analogy Intelligence-Test
Questions”
Thomas G. Evans1968
Background:
Motives and Questions● Image Processing
● Line drawings● From description
● Heuristic Problem Solving● Rule-finding● Representation
● Open Questions● Importance of representation and methods for
sophisticated problem-solving and machine learning
● How can a machine make analogies?
Background:
Limitations
● 1968● Limited memory● Limited processing power● Limited computer access
● Problem Domain● Direct correspondence of “parts” of A with “parts”
of B● Limited set of relations● Limited in decomposition method
Algorithm:
Overview
Part 11. Translate drawing2. Input to program3. [Decompose figures]4. Find relationships and similarities5. Output 4.
Part 21. Input Part 1, step 52. Generate rule set3. Choose appropriate rules4. Select best solution based on 3.5. Output 4. or failure
Algorithm:
Image Encoding
1. ( 2. (DOT(.04 . 0.8)) 3. (SCC((0.3 . 0.2) 0.0 (0.7 . 0.2) 0.0 (0.5 . 0.7) 0.0 (0.3 . 0.2) 0.0))) 4. (SCC((0.4 . 0.3) 0.0 (0.6 . 0.3) 0.0 (0.6 . 0.4) 0.0 (0.4 . 0.4) 0.0 (0.4 . 0.3))) 5. )
Line 2. defines the dot P1Line 3. defines the triangle P3Line 4. defines the rectangle P2
Algorithm Part 1:Find Relationships and Similarities
1. ((P1 P2 P3) . ((INSIDE P2 P3) (ABOVE P1 P3) (ABOVE P1 P2))) 2. ((P4 P5) . ((LEFT P4 P5))) 3. ((P6 P7 P8) . ((INSIDE P7 P6) (ABOVE P8 P6) (ABOVE P8 P7))) 4. ((P2 P4 (((1.0 . 0.0) . (N.N) (1.0 . 3.14) . (N.N)))) (P3 P5 (((1.0 . 0.0)(N.N)))) 5. ((P1 P8 (((1.0 . 0.0) . (N.N))))) ...
Line 1. defines relationship of shapes in ALine 2. defines relationship of shapes in BLine 3. defines relationship of shapes in CLine 4. defines similarity of rectangles in A and BLine 5. defines similarity of points in A and B
etc. for each shape, image
Algorithm Part 2:
Generate Rule Set
Point = A1, OB3 Rectangle = A2, OB2 Triangle = A3, OB1
1. (REMOVE A1 ((ABOVE A1 A3) (ABOVE A1 A2) (SIM OB3 A1 (((1.0 . 0.0). (N.N)))))) 2. (MATCH A2 (((INSIDE A2 A3) (ABOVE A1 A2) (SIM OB2 A2 (((1.0 . 0.0). (N.N))))) . ((LEFT A2 A3) (SIM OB2 A2 (((1.0 . 0.0). (N.N)) ((1.0 . 3.14) . (N.N)))) (SIMTRAN (((1.0 . 0.0). (N.N)) ((1.0 . 3.14) . (N.N)))))) 3. (MATCH A3 (((INSIDE A2 A3) (ABOVE A1 A3) (SIM OB1 A3 (((1.0 . 0.0). (N.N))))) . ((LEFT A2 A3) (SIM OB1 A3 (((1.0 . 0.0). (N.N)))) (SIMTRAN (((1.0 . 0.0). (N.N)))))))
Algorithm Part 2:
Initial Rule Selection
Discard any possible solutions that don't have the same number of adds, removes, or matches as indicated by the rule set.
Algorithm Part 2:Refined Rule Selection
Given A, B, C, answer set I 1. foreach (A, B, C, i in I) { compare obj ADD(B) to obj ADD(i) compare obj REMOVE(A) to obj REMOVE(C) compare obj MATCH(A,B) to obj MATCH(C,i) } 2. foreach (rule taking A->B, rules from 1.) { remove from rule, statements true of A->B but not of C->i } 3. discard shorter resulting descriptions
Algorithm Part 2:Refined Rule Selection
4. if ( > 1 description has highest length) { foreach (A->B rule, C->remaining i rule) { strength = strength + 1 for each ADD, RM, MTCH element in both rules strength = strength + x for each matching transform in both rules } } 5. discard i with lowest strength value
Results
Time:
ANALOGY and humans take the same amount to solve the problems
Accuracy:
ANALOGY accuracy: 15 / 20 problems
Human Accuracy:Grade 9 – 17 / 20 problemsGrade 10 – 18 / 20 problemsGrade 11 – 19 / 20 problemsGrade 12 – 20 / 20 problems
Conclusions
● ANALOGY simulates some properties of human intelligence:● Changing internal representations in increasing levels of
abstraction;● Perceiving similarities (analogies) in both parts and wholes;● Using generalization to perform more efficient problem
solving.
● What has been learned from ANALOGY can be used to create more sophisticated pattern-matching and analogy-making programs as technology for implementing them becomes available.
● From a current perspective ANALOGY does not simulate human reasoning, nor is it very sophisticated.