Artificial Intelligence and Searching CPSC 315 – Programming Studio Spring 2017 Project 2, Lecture 1 Adapted from slides of Yoonsuck Choe
Artificial Intelligence Long-standing computational goal Turing test Field of AI very diverse “Strong” AI – trying to simulate thought itself “Weak” AI – trying to make things that behave intelligently Several different approaches used, topics studied Sometimes grouped with other fields Robotics Computer Vision
Topics in Artificial Intelligence Problem solving Reasoning Theorem Proving Planning Learning Knowledge Representation Perception Agent Behavior Understanding brain function and development Optimizing etc.
AI History AI has gone through “high” and “low” points Like many other areas… Cycle of inflated expectations, promising early results, tough problems leading to collapse in confidence, long-term productivity Early stages: 1950s through mid-1970s Early work on reasoning, language (conversation – Turing-test oriented), games Late 1970s – early 1980s Hit limitations/roadblocks
AI History (continued) Mid-1980s Japan: 5th Generation Project – giant push for AI Expert systems and neural networks grew Late 1980-1990s Another “gap” as earlier work did not pan out 2000s onward : Growth in interest in AI again over time AI topics applied to big data are especially popular Machine Learning, Natural Language Processing, etc.
Game Playing and Search Game playing a long-studied topic in AI Seen as a proxy for how more complex reasoning can be developed Search Understanding the set of possible states, and finding the “best” state or the best path to a goal state, or some path to the goal state, etc. “State” is the condition of the environment e.g. in theorem proving, can be the state of things known By applying known theorems, can expand the state, until reaching the goal theorem Should be stored concisely
Really Basic State Search Example Given a=b,b=c,c=d, prove a=d. a=b, b=c, c=d a=b, b=c, c=d a=c a=b, b=c, c=d b=d a=b, b=c, c=d (a=c, b=d), a=d
Operators Transition from one state to another Fly from one city to another Apply a theorem Move a piece in a game Add person to a meeting schedule Operators and states are both usually limited by various rules Can only fly certain routes Only certain theorems can be applied Only valid moves in game Meetings can have capacity, requirements for/against grouping people, etc.
Search Examine possible states, transitions to find goal state Interesting problems are those too large to explore exhaustively Uninformed search Systematic strategy to explore options Informed search Use domain knowledge to limit search
Game Playing Abstract AI problem Nice and challenging properties Usually state can be clearly, concisely represented Limited number of operations (but can still be large) Unknown factor – account for opponent Search space can be huge Limit response based on time – forces making good “decisions” e.g. Chess averages about 35 possible moves per turn, about 50 moves per player per game, or 35100 possible games. But, “only” 1040 possible board states.
Types of games Examples Deterministic vs. random factor Known state vs. hidden information Examples Deterministic Chance Perfect Info Chess, Checkers, Othello, Go Monopoly, Backgammon Imperfect Info Stratego, Bridge? Poker, Scrabble
Game Playing In upcoming lectures, we will discuss some of the basic methods for performing search Project will likely focus on a deterministic game with perfect information