Artificial Intelligence Foundations of Computational Agents David L. Poole University of British Columbia Alan K. Mackworth University of British Columbia Kg CAMBRIDGE ^0 UNIVERSITY PRESS
Contents Preface xiii I Agents in the World: What Are Agents and How Can They Be Built? 1 1 Artificial Intelligence and Agents 3 1.1 What Is Artificial Intelligence? 3 1.2 A Brief History of AI 6 1.3 Agents Situated in Environments 10 1.4 Knowledge Representation 11 1.5 Dimensions of Complexity 19 1.6 Prototypical Applications 29 1.7 Overview of the Book 39 1.8 Review 40 1.9 References and Further Reading 40 1.10 Exercises 42 2 Agent Architectures and Hierarchical Control 43 2.1 Agents 43 2.2 Agent Systems 44 2.3 Hierarchical Control 50 2.4 Embedded and Simulated Agents 59 2.5 Acting with Reasoning 60 2.6 Review 65 vii
viii Contents 2.7 References and Further Reading 66 2.8 Exercises 66 II Representing and Reasoning 69 3 States and Searching 71 3.1 Problem Solving as Search 71 3.2 State Spaces 72 3.3 Graph Searching 74 3.4 A Generic Searching Algorithm 77 3.5 Uninformed Search Strategies 79 3.6 Heuristic Search 87 3.7 More Sophisticated Search 92 3.8 Review 106 3.9 References and Further Reading 106 3.10 Exercises 107 4 Features and Constraints 111 4.1 Features and States Ill 4.2 Possible Worlds, Variables, and Constraints 113 4.3 Generate-and-Test Algorithms 118 4.4 Solving CSPs Using Search 119 4.5 Consistency Algorithms 120 4.6 Domain Splitting 125 4.7 Variable Elimination 127 4.8 Local Search 130 4.9 Population-Based Methods 141 4.10 Optimization 144 4.11 Review 151 4.12 References and Further Reading 151 4.13 Exercises 152 5 Propositions and Inference 157 5.1 Propositions 157 5.2 Prepositional Definite Clauses 163 5.3 Knowledge Representation Issues 174 5.4 Proving by Contradictions. 185 5.5 Complete Knowledge Assumption 193 5.6 Abduction 199 5.7 Causal Models 204 5.8 Review 206 5.9 References and Further Reading 207 5.10 Exercises 208
Contents ix 6 Reasoning Under Uncertainty 219 6.1 Probability 219 6.2 Independence 232 6.3 Belief Networks 235 6.4 Probabilistic Inference 248 6.5 Probability and Time 266 6.6 Review 274 6.7 References and Further Reading 274 6.8 Exercises 275 III Learning and Planning 281 7 Learning: Overview and Supervised Learning 283 7.1 Learning Issues 284 7.2 Supervised Learning 288 7.3 Basic Models for Supervised Learning 298 7.4 Composite Models 313 7.5 Avoiding Overfitting 320 7.6 Case-Based Reasoning 324 7.7 Learning as Refining the Hypothesis Space 327 7.8 Bayesian Learning 334 7.9 Review 340 7.10 References and Further Reading 341 7.11 Exercises 342 8 Planning with Certainty 349 8.1 Representing States, Actions, and Goals 350 8.2 Forward Planning 356 8.3 Regression Planning 357 8.4 Planning as a CSP 360 8.5 Partial-Order Planning 363 8.6 Review 366 8.7 References and Further Reading 367 8.8 Exercises 367 9 Planning Under Uncertainty 371 9.1 Preferences and Utility 373 9.2 One-Off Decisions 381 9.3 Sequential Decisions 386 9.4 The Value of Information and Control 396 9.5 Decision Processes 399 9.6 Review 412 9.7 References and Further Reading 413 9.8 Exercises 413
x Contents 10 Multiagent Systems 423 10.1 Multiagent Framework 423 10.2 Representations of Games 425 10.3 Computing Strategies with Perfect Information 430 10.4 Partially Observable Multiagent Reasoning 433 10.5 Group Decision Making 445 10.6 Mechanism Design 446 10.7 Review 449 10.8 References and Further Reading 449 10.9 Exercises 450 11 Beyond Supervised Learning 451 11.1 Clustering 451 11.2 Learning Belief Networks 458 11.3 Reinforcement Learning 463 11.4 Review 485 11.5 References and Further Reading 486 11.6 Exercises 486 IV Reasoning About Individuals and Relations 489 12 Individuals and Relations 491 12.1 Exploiting Structure Beyond Features 492 12.2 Symbols and Semantics 493 12.3 Datalog: A Relational Rule Language 494 12.4 Proofs and Substitutions 506 12.5 Function Symbols 512 12.6 Applications in Natural Language Processing 520 12.7 Equality 532 12.8 Complete Knowledge Assumption 537 12.9 Review 541 12.10 References and Further Reading 542 12.11 Exercises 542 13 Ontologies and Knowledge-Based Systems 549 13.1 Knowledge Sharing 549 13.2 Flexible Representations 550 13.3 Ontologies and Knowledge Sharing 563 13.4 Querying Users and Other Knowledge Sources 576 13.5 Implementing Knowledge-Based Systems 579 13.6 Review 591 13.7 References and Further Reading 591 13.8 Exercises 592
Contents xi 14 Relational Planning, Learning, and Probabilistic Reasoning 597 14.1 Planning with Individuals and Relations 598 14.2 Learning with Individuals and Relations 606 14.3 Probabilistic Relational Models 611 14.4 Review 618 14.5 References and Further Reading 618 14.6 Exercises 620 V The Big Picture 623 15 Retrospect and Prospect 625 15.1 Dimensions of Complexity Revisited 625 15.2 Social and Ethical Consequences 629 15.3 References and Further Reading 632 A Mathematical Preliminaries and Notation 633 A.l Discrete Mathematics 633 A.2 Functions, Factors, and Arrays 634 A.3 Relations and the Relational Algebra 635 Bibliography 637 Index 653