Problem Solving in Common Lisp Common Lisp J.E. Spragg May 1997.

Slides:



Advertisements
Similar presentations
Recuperação de Informação B Cap. 10: User Interfaces and Visualization , , , November 29, 1999.
Advertisements

Solving problems by searching
REVIEW : Planning To make your thinking more concrete, use a real problem to ground your discussion. –Develop a plan for a person who is getting out of.
16 key concepts.
1 CMSC 471 Fall 2002 Class #6 – Wednesday, September 18.
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
1 Software Testing and Quality Assurance Lecture 13 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
A More Expressive 3D Region Connection Calculus Chaman Sabharwal, Jennifer Leopold, & Nate Eloe.
Best-First Search: Agendas
© 2005 Prentice Hall6-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Classes and Object- Oriented... tMyn1 Classes and Object-Oriented Programming The essence of object-oriented programming is that you write programs in.
Copyright © Cengage Learning. All rights reserved. CHAPTER 1 SPEAKING MATHEMATICALLY SPEAKING MATHEMATICALLY.
From requirements to design
Planning Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 11.
Introduction To System Analysis and Design
Problem Solving What is AI way of solving problem?
Chapter 10 Marketing and Product Development: Creating and Positioning Goods and Services © 2007 The McGraw-Hill Companies, Inc., All Rights Reserved.
EE663 Image Processing Edge Detection 5 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals.
Domain-Specific Software Engineering (DSSE). Software Engineering Concerns  There are many of them  “Classical” software architecture research has focused.
1 Planning. R. Dearden 2007/8 Exam Format  4 questions You must do all questions There is choice within some of the questions  Learning Outcomes: 1.Explain.
Handling non-determinism and incompleteness. Problems, Solutions, Success Measures: 3 orthogonal dimensions  Incompleteness in the initial state  Un.
24-Jun-15 Pruning. 2 Exponential growth How many leaves are there in a complete binary tree of depth N? This is easy to demonstrate: Count “going left”
Recursion Chapter 7. Chapter 7: Recursion2 Chapter Objectives To understand how to think recursively To learn how to trace a recursive method To learn.
CSE (c) S. Tanimoto, 2007 Search 1: State Spaces 1 State-Space Search Outline: Demonstration with T* State spaces, operators, moves A Puzzle: The.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 16 Slide 1 User interface design.
Group practice in problem design and problem solving
Science Vocabulary Bingo. Descriptive research Research based on observations.
University of Maribor 1 CADUI' June FUNDP Namur An Interactive Constraint-Based Graphics System with Partially Constrained Form-Features.
13.7 – Graphing Linear Inequalities Are the ordered pairs a solution to the problem?
The Evolution of the Object Model OOAD. The Evolution of the Object Model software engineering trends observed The shift in focus from programming-in-the-small.
Recursion Chapter 7. Chapter Objectives  To understand how to think recursively  To learn how to trace a recursive method  To learn how to write recursive.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Aspects and Closures and Promises (Oh My!) Alva L. Couch Tufts University.
Design and Engineering
15 July 2005Edward Tsang (Copyright)1 Constraint Satisfaction and Optimization Professor Edward Tsang University of Essex URL:
Digital Image Processing CCS331 Relationships of Pixel 1.
Technology Matrix: Grade 4 Alexandra Wilson EDU 521 Fall 2010.
SECTION 10-2 Using the Fundamental Counting Principle Slide
RE - SEARCH ---- CAREFUL SEARCH OR ENQUIRY INTO SUBJECT TO DISCOVER FACTS OR INVESTIGATE.
Introduction to Problem Solving. Steps in Programming A Very Simplified Picture –Problem Definition & Analysis – High Level Strategy for a solution –Arriving.
Overview Of Expert System Tools Expert System Tools : are all designed to support prototyping. Prototype : is a working model that is functionally equivalent.
Today’s Agenda  Reminder: HW #1 Due next class  Quick Review  Input Space Partitioning Software Testing and Maintenance 1.
1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah
Solving Problems by searching Well defined problems A probem is well defined if it is easy to automatically asses the validity (utility) of any proposed.
Lecture 3: 18/4/1435 Searching for solutions. Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Design of Problem Solvers (PS) using Classical Problem Solving (CPS) techniques Classical Problem Solver has 2 basic components:  Search engine (uses.
Artificial Intelligence Lecture No. 6 Dr. Asad Ali Safi ​ Assistant Professor, Department of Computer Science, COMSATS Institute of Information Technology.
Vector-Valued Functions Copyright © Cengage Learning. All rights reserved.
Finite State Machines (FSM) OR Finite State Automation (FSA) - are models of the behaviors of a system or a complex object, with a limited number of defined.
Yr 7.  Pupils use mathematics as an integral part of classroom activities. They represent their work with objects or pictures and discuss it. They recognise.
Galaxy Lessons Presented by Team Galaxy Lessons Project Organization.
4 4.2 © 2016 Pearson Education, Inc. Vector Spaces NULL SPACES, COLUMN SPACES, AND LINEAR TRANSFORMATIONS.
Software Design Process. What is software? mid-1970s executable binary code ‘source code’ and the resulting binary code 1990s development of the Internet.
Solving problems by searching Chapter 3. Types of agents Reflex agent Consider how the world IS Choose action based on current percept Do not consider.
Solving problems by searching
Recursion Topic 5.
Software Requirements analysis & specifications
Class Meeting 5 February 10, 2009
Social Research Methods
Stephen Hess Dr. Jeffery Heer Discussion for 4/21 CS 376.
CSE (c) S. Tanimoto, 2001 Search-Introduction
Chapter 10 Counting Methods.
#4 Explorations Workbook Pg 212 Similar Figures
CSE (c) S. Tanimoto, 2002 State-Space Search
전문가 시스템(Expert Systems)
Copyright © Cengage Learning. All rights reserved.
Copyright © Cengage Learning. All rights reserved.
A Problem Solving Technique
CSE (c) S. Tanimoto, 2004 State-Space Search
Presentation transcript:

Problem Solving in Common Lisp Common Lisp J.E. Spragg May 1997

The Problem Space Model l People seem to handle adequately the notion of physical space. l It seems natural to extend our notions of physical space and use it as a topological metaphor for problems and problem solving. l The problem space model of problems and problem solving makes use of the ideas of location, shape, and distance that are so useful in reasoning about physical space.

Problem Space l A problem space is a set of states that represent distinct configurations of the objects and relationships of the domain. l And a set of operators which define how to move between states. l Operators typically have parameters.

Defining a Problem Space l Defining a problem in a given problem space requires two things: »an initial state »a goal l The initial state is a distinguished state that represents the starting point within the space. l The goal is a specification of the subset of the problem space which could serve as a solution to the problem.

Solving Problems l Solving a problem in this model is accomplished by finding a sequence of operators which, when applied to the initial state, allows one to reach a state satisfying the goal criterion. l In the Blocks World example, the solution is a sequence of transformations that represent a legal plan.

Search l It is easy to see why this is an attractive model of problem solving. l To solve a problem, all we have to do is define the problem space and then unleash a general-purpose search engine on it.

Classic Problem Solving Systems l The design of a classic problem solver consists of two parts: »an interface for user-supplied problem spaces, and a »search engine.

Interface l The interface requires the ability to manipulate states and operators. l What kinds of manipulations are needed? »Goal detection: Ascertain whether a given state satisfies the goal criterion. »State identity: Detect when two descriptions of states refer to the same state. »State display: Produce a human readable description of a given state.

l The importance of goal detection is obvious. l State identity is important because we make no progress by re exploring already examined states. l Displaying states allows us to observe and debug system behaviour.

Expanding a State l Identify what operators are available. l Determine whether a given operator is applicable to a particular state. l Given a state and an operator applicable to it, ascertain all the ways the operator can be instantiated on that state. l Figure out what new state results from applying an instantiated operator to a state.