Oxford University Press, Australia and New Zealand

  Home  >  Titles  >  Higher Education  >  Computer Science  >  Computational Intelligence
Your cart Bookmark this page Print this page

ISBN: 9780195102703

Published:

Availability: Contact Customer Service

Hardback

AU$52.95

NZ$82.95

Request an Inspection copy

Computational Intelligence

A Logical Approach

David Poole, Alan Mackworth, Randy Goebel

Computational Intelligence: A Logical Approach provides a unique and integrated introduction to artificial intelligence. It weaves a unifying theme--an intelligent agent acting in its environment-- through the core issues of AI, placing them into a coherent framework. Rather than giving a surface treatment of an overwhelming number of topics, it covers fundamental concepts in depth, providing a foundation on which students can build an understanding of modern AI. This logical approach clarifies and integrates representation and reasoning fundamentals, leading students from simple to complex ideas with clear motivation. The authors develop AI representation schemes and describe their uses for diverse applications, from autonomous robots to diagnostic assistants to infobots that find information in rich information sources. The authors' website (http://www.cs.ubc.ca/spider/poole/ci.html) offers extensive support for the text, including source code, interactive Java scripts, various pedagogical aids, and an interactive environment for developing and debugging knowledge bases. Ideal for upper-level undergraduate and introductory graduate courses in artificial intelligence, Computational Intelligence encourages students to explore, implement, and experiment with a series of progressively richer representations that capture the essential features of more and more demanding tasks and environments.
Preface 1. Computational Intelligence and Knowledge 1.1. What is Computational Intelligence? 1.2. Agents in the World 1.3. Representation and Reasoning 1.4. Applications 1.5. Overview 1.6. References and Further Reading 1.7. Exercises 2. A Representation and Reasoning System 2.1. Introduction 2.2. Representation and Reasoning Systems 2.3. Simplifying Assumptions of the Initial RRS 2.4. Datalog 2.5. Semantics 2.6. Questions and Answers 2.7. Proofs 2.8. Extending the Language with Function Symbols 2.9. References and Further Reading 2.10. Exercises 3. Using Definite Knowledge 3.1. Introduction 3.2. Case Study: House Wiring 3.3. Databases and Recursion 3.4. Verification and Limitations 3.5. Case Study: Representing Abstract Concepts 3.6. Case Study: Representing Regulatory Knowledge 3.7. Applications in Natural Language Processing 3.8. References and Further Reading 3.9. Exercises 4. Searching 4.1. Why Search? 4.2. Graph Searching 4.3. A Generic Searching Algorithm 4.4. Blind Search Strategies 4.5. Heuristic Search 4.6. Refinements to Search Strategies 4.7. Constraint Satisfaction Problems 4.8. References and Further Reading 4.9. Exercises 5. Representing Knowledge 5.1. Introduction 5.2. Defining a solution 5.3. Choosing a Representation Language 5.4. Mapping from Problem to Representation 5.5. Choosing an Inference Procedure 5.6. References and Further Reading 5.7. Exercises 6. Knowledge Engineering 6.1. Introduction 6.2. Knowledge-Based System Architecture 6.3. Meta-interpreters 6.4. Querying the User 6.5. Explanation 6.6. Debugging Knowledge Bases 6.7. A Meta-interpreter with Search 6.8. Unification 6.9. References and Further Reading 6.10. Exercises 7. Beyond Definite Knowledge 7.1. Introduction 7.2. Equality 7.3. Integrity Constraints 7.4. Complete Knowledge Assumption 7.5. Disjunctive Knowledge 7.6. Explicit Quantification 7.7. First-Order Predicate Calculus 7.8. Modal Logic 7.9. References and Further Reading 7.10. Exercises 8. Actions and Planning 8.1. Introduction 8.2. Representations of Actions and Change 8.3. Reasoning with World Representations 8.4. References and Further Reading 8.5. Exercises 9. Assumption-Based Reasoning 9.1. Introduction 9.2. An Assumption-Based Reasoning Framework 9.3. Default Reasoning 9.4. Abduction 9.5. Evidential and Causal Reasoning 9.6. Algorithms for Assumption-Based Reasoning 9.7. References and Further Reading 9.8. Exercises 10. Using Uncertain Knowledge 10.1. Introduction 10.2. Probability 10.3. Independence Assumptions 10.4. Making Decisions Under Uncertainty 10.5. References and Further Reading 10.6. Exercises 11. Learning 11.1. Introduction 11.2. Learning as Choosing the Best Representation 11.3. Case-Based Reasoning 11.4. Learning as Refining the Hypothesis State 11.5. Learning Under Uncertainty 11.6. Explanation-Based Learning 11.7. References and Further Learning 11.8. Exercises 12. Building Situated Robots 12.1. Introduction 12.2. Robotic Systems 12.3. The Agent Function 12.4. Designing Robots 12.5. Uses of Agent Models 12.6. Robot Architectures 12.7. Implementing a Controller 12.8. Robots Modeling the World 12.9. Reasoning in Situated Robots 12.10. References and Further Reading 12.11. Exercises A. Glossary B. The Prolog Programming Language B.1. Introduction B.2. Interacting with Prolog B.3. Syntax B.4. Arithmetic B.5. Database Relations B.6. Returning All Answers B.7. Input and Output B.8. Controlling Search C. Some More Implemented Systems C.1. Bottom-up Interpreters C.2. Top-down Interpreters C.3. A Constraint Satisfaction Problem Solver C.4. Neural Network Learner C.5. Partial-Order Planner C.6. Implementing Belief Networks C.7. Robot Controller Bibliography Index
David PooleAssociate Professor of Computer Science, Alan MackworthProfessor of Computer Science and Director, Laboratory for Computational Intelligence, both at University of British Columbia, Randy GoebelProfessor of Computing Science, University of Alberta
"From the title one gets the sense of a fresh approach. Its use of case studies to intertwine theory and practice is excellent."--Jonathan Hodgson, St. Joseph's University