Semantic narrow subset of problems. This is partly

Semantic Nets and Solving Raven’s Progressive Matrices ProblemsJeremy BrownStudent, Georgia Institute of TechnologySeattle, WA, USAjeremy.

[email protected] nets are one technique for representing knowledge that an AI agent can use fordeliberation (learning, reasoning, memory). Using that as a foundation, one can design an agentcapable of answering problems on the Raven’s Progressive Matrices test.1. IntroductionAI has seen a resurgence in recent years and has become a pervasive technology ofeveryday life (Goel & Davies, 2011, pg. 19). However, many applications of AI, such as voiceand facial recognition, focus on an increasingly narrow subset of problems.

We Will Write a Custom Essay Specifically
For You For Only $13.90/page!

order now

This is partly due tothe inherent difficulties designing AI, but also our limited success in constructing cognitivesystems that span multiple problem domains.An active area of research is that of computational psychometrics, or the science ofdesigning agents that can take the same tests of intelligence that humans can (Goel & Joyner,2016, pg. 26).

The objective of this paper is to present a design for an agent capable of taking theRaven’s Progressive Matrices test based on semantic nets and provide sufficient background onthe problem. Such agents aim to help us better understand how to design cognitive systems whilealso increasing our knowledge of human cognitive processes.The descriptions and visual aids aim to provide enough foundation for building an agent,but several, challenging albeit well understood, areas are left to be researched by the reader (e.

g.image detection). Upon conclusion, you should understand one approach for creating an AI agentcapable of answering some problems on the RPM test.2. Background2.1 Raven’s Progressive MatricesRaven Progressive Matrices (RPM) is a general cognitive ability test aimed at measuringabstract reasoning ability (Raven & Raven, 2003, pg.

223). Written by John C. Raven in 1936,the test usually consists of 60 multiple choice visual analogy problems and is widely accepted asthe basis of evaluating nonverbal cognitive ability tests (Raven & Raven, 2003, pg. 236). Figure1 shows an example problem in which a testee must identify the answer that best satisfies theequality A is to B as C is to #.Figure 1: 2×1 RPM problem (Goel & Joyner, 2016, pg.

29).2.2 Semantic NetworksA semantic network is a knowledge representation in which there are:? Nodes, edge and labels representing the lexicon? Links between nodes forming the structure? Semantics in which the nodes and links represent entities? Access Procedures for constructing and producing content using vocabulary defined inthe language (Winston, 1992, pg. 20)Figure 2 is an example semantic net of the previous RPM problem.

As you can see, theproduced knowledge representation conveys not only the important entities, but the explicitrelationships and transformations between them. When evaluating a solution, you can use thisinformation for comparison.Figure 2. Semantic net of Figure 1 and answer 5 (Goel & Joyner, 2016, pg. 31)In addition, a good knowledge representation exposes natural constraints, suppressesirrelevant details, is transparent concise, complete, fast and computable (Winston, 1992, pg. 18).

2.3 AI limitationsUnderstanding the characteristics of AI Agents can help understand why they havedifficulty solving many tasks that humans classify as easy. The most notable as the apply toRPM are:? Agents knowledge is incomplete relative to the world? Agents have limited sensors? Computational logic is fundamentally deductive (Goel, Joyner, 2016, pg. 6)With those in mind, defining and constructing a model that doesn’t provide incompleteinformation is hard to conceive.

Even given a model it’s not clear how best to compute a solutionfrom it.3 Design3.1 Knowledge RepresentationThe following definitions will be used for constructing the semantic net:? Node: A detected shape element that consists of the following properties: fill, name,positionData, shapeData, sizeData.

? Relational Link: Link between two nodes representing the spatial relationships {above,inside, leftof }.? Transformational Link: Link between two nodes representing the transformationsrequired to obtain node equality: {added, contracted, deleted, filled, emptied, expanded,reflected, rotated and unchanged }.? Knowledge graph: All nodes in an image and the relationships between them.? Solution graph: Two knowledge graphs with transformational links connecting all nodesof the source graph to nodes on the destination graph.The structure is defined by the nodes and relational links while the semantics areconveyed by transformational links between graphs. This knowledge representation equips uswith the foundation for writing an AI agent to solve the RPM problem.

3.2 AlgorithmThe basis of this approach is modeled after Analyzer and the Describe and Matchmethodology (Winston, 1992, pg. 22). The algorithm creates a knowledge graph for each imageand then a solution graph for each analogy.

It then creates a solution graph for each potential answer and compares those with the analogies. The comparison produces a similarity score byperforming a breadth first search of the graphs, comparing nodes at a given level and the linksused to get there. It uses heuristics in regards to image extraction, generated relationships and thenumber of transformations to apply at a given step.The following pseudocode describes the base logic of the algorithm:# For 2×2 calculations. 3×3 will be expanded# A B# C ? where ? = Ddef solve(problem) a, b, c = construct_graph(image) for image in problem a_b_solution = construct_solution_graph(a, b) a_c_solution = construct_solution_graph(a, c) scores = for potential in problem.answers c_d_solution = construct_solution_graph(c, potential) b_d_solution = construct_solution_graph(b, potential) scores.append((compare_solution_graph(a_b_solution,c_d_solution) + compare_solution_graph(a_c_solution, b_d_solution),potential)) return sortDesc(scores)01 // grab potential with highestscoredef construct_graph(image) start from top left nodes = detect shape/size/position info from image # create relationships for (i = 0; a < len(node)-2; i++) a = nodei b = nodei+1 if max(a.

y) != max(b.y) if max(a.y) > max(b.y) a is above b else b is above a if 0x+a.

y crosses b odd times a is inside by if < b.

center.x a is left of b else if < b is left of a else if < b.

center.y b is above a else a is above b return graphdef construct_solution_graph(head, tail) for all nodes in head # Needs improved handling of ambiguity and correspondence if node exists in tail and position info the same linkunchanged else if only x, y different and same depth in graph applyrotation else try up to 3 transformations else add delete link return solution_graphdef compare_solution_graph(a, b) similarity = 0 bfs from a.root for each level compare nodes and links traversed then add to similarity return similarity4. ConclusionSolving RPM with an agent is nontrivial. Not only is there difficulty in defining the rightrepresentation, but there is also a great deal of complexity in extracting that representation andperforming computations.Using the proposed design an agent would be capable of answering some questionscorrectly on the RPM test.

Further, the semantic net provides the necessary foundation toimprove the solving algorithm moving forward and makes clear the importance of knowledgerepresentations in AI design.5. ReferencesGoel, A. K., & Davies, J. (n.

d.). Artificial Intelligence. In Cambridge Handbook ofIntelligence(3rd ed., p. 19).

Goel, A., & Joyner, D. (2016). KBAI Ebook: Knowledge-based Artificial Intelligence.Raven, J.

, & Raven, J. (2003). Raven Progressive Matrices. In Handbook of NonverbalAssessment (pp. 223-237).

Boston, MA: Spring.Winston, P. H. (1992). Artificial Intelligence (3rd ed.).

Reading, MA: Addison -WesleyPublishing Company.