Introduction to CSE 591: Autonomous agents - theory and practice. Chitta Baral Professor Department of Computer Sc. & Engg. Arizona State University.

Slides:



Advertisements
Similar presentations
Introduction to Databases
Advertisements

Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB JavaForum.
Introduction to Databases
ETEC 100 Information Technology
Chapter 6 Database Design
introduction to MSc projects
Introduction to Databases
Programming Language Semantics Mooly SagivEran Yahav Schrirber 317Open space html://
Self Adaptive Software
Introduction to Databases Transparencies
Latent Semantic Analysis (LSA). Introduction to LSA Learning Model Uses Singular Value Decomposition (SVD) to simulate human learning of word and passage.
6 Chapter 6 Database Design Hachim Haddouti. 6 2 Hachim Haddouti and Rob & Coronel, Ch6 In this chapter, you will learn: That successful database design.
The Need of Unmanned Systems
Chapter 1 Introduction to Databases
Introduction to AS Computing
Introduction to Databases
Introduction to Database Systems 1.  Assignments – 3 – 9%  Marked Lab – 5 – 10% + 2% (Bonus)  Marked Quiz – 3 – 6%  Mid term exams – 2 – (30%) 15%
Introduction to Databases Transparencies 1. ©Pearson Education 2009 Objectives Common uses of database systems. Meaning of the term database. Meaning.
Principles of Programming Chapter 1: Introduction  In this chapter you will learn about:  Overview of Computer Component  Overview of Programming 
Databases From A to Boyce Codd. What is a database? It depends on your point of view. For Manovich, a database is a means of structuring information in.
Introduction. » How the course works ˃Homework ˃Project ˃Exams ˃Grades » prerequisite ˃CSCI 6441: Mandatory prerequisite ˃Take the prereq or get permission.
Chapter 1 Introduction to Databases Pearson Education ©
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
Introduction: Databases and Database Users
IST 210 Database Design Process IST 210 Todd S. Bacastow January 2005.
Week 4 Lecture Part 3 of 3 Database Design Samuel ConnSamuel Conn, Faculty Suggestions for using the Lecture Slides.
Introduction to Database Systems
CODD’s 12 RULES OF RELATIONAL DATABASE
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Databases From A to Boyce Codd. What is a database? It depends on your point of view. For Manovich, a database is a means of structuring information in.
1 Software Design Reference: Software Engineering, by Ian Sommerville, Ch. 12 & 13, 5 th edition and Ch. 10, 6 th edition.
Introduction. » How the course works ˃Homework ˃Project ˃Exams ˃Grades » prerequisite ˃CSCI 6441: Mandatory prerequisite ˃Take the prereq or get permission.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
1 Relational Databases and SQL. Learning Objectives Understand techniques to model complex accounting phenomena in an E-R diagram Develop E-R diagrams.
1 Chapter 1 Introduction to Databases Transparencies Last Updated: Pebruari 2010 By M. Arief Updated by RSO Feb 2011
Chapter 1 Introduction to Databases. 1-2 Chapter Outline   Common uses of database systems   Meaning of basic terms   Database Applications  
Formal Methods in Software Engineering
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
1 Introduction to Databases. 2 Examples of Database Applications u Purchases from the supermarket u Purchases using your credit card u Booking a holiday.
1 Chapter 1 Introduction to Databases Transparencies.
3.2 Semantics. 2 Semantics Attribute Grammars The Meanings of Programs: Semantics Sebesta Chapter 3.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
1 Object Oriented Logic Programming as an Agent Building Infrastructure Oct 12, 2002 Copyright © 2002, Paul Tarau Paul Tarau University of North Texas.
Distributed Models for Decision Support Jose Cuena & Sascha Ossowski Pesented by: Gal Moshitch & Rica Gonen.
Data Structure Introduction Dr. Bernard Chen Ph.D. University of Central Arkansas Fall 2010.
CSCI 6442 Database Management II INTRODUCTION Copyright 2016 David C. Roberts, all rights reserved.
Introduction to Databases Transparencies © Pearson Education Limited 1995, 2005.
1 Chapter 2 Database Environment Pearson Education © 2009.
IST 210 Database Design Process IST 210, Section 1 Todd S. Bacastow January 2004.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
An AV Control Method Using Natural Language Understanding Author : M. Matsuda, T. Nonaka, and T. Hase Date : Speaker : Sian-Lin Hong IEEE Transactions.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Introduction to Databases
Information Systems in Organizations 2
Information Systems in Organizations 2
Introduction to Databases
Chapter 6 Database Design
Preparing for the Verbal Reasoning Measure
Information Systems in Organizations 2
Information Systems in Organizations 2
Introduction Artificial Intelligent.
Information Systems in Organizations 2
Introduction to Databases Transparencies
Information Systems in Organizations 2
Information Systems in Organizations 2
Information Systems in Organizations 2
Introduction to Databases
Information Systems in Organizations 2
Presentation transcript:

Introduction to CSE 591: Autonomous agents - theory and practice. Chitta Baral Professor Department of Computer Sc. & Engg. Arizona State University

About the course It is an advanced graduate level course. Prerequisites –None formally, but be concerned (and discuss with me) If not taken an AI class before. If afraid of writing proofs. If you don’t know what NP-completeness is. The course will be rigorous.

Grading Scale: A+, A, B+, B, C+, C, F. Grade weights –Home work + small assignments 20-30% –2 Exams 50% –Paper 20-30% One exam in mid-October and another on the last day of class (no exams on the day of finals)

A formal approach to design and analysis of autonomous agents Lots of hype about agents. Used in different contexts, no uniform framework. Multiple answers to the question: What is an agent? No systematic approach to design or analyze an agent exists.

Central thesis Give a formal approach to design and analysis of ‘autonomous’ agents. –Similar to the design of relational databases. Use this approach in different applications. –For example: network agents, embedded agents, diagnostic agents, remote (space) agents, data-consistency agents (active databases), viewing living cells as agents.

What are ‘autonomous’ agents? Agents –One that acts or has the power or authority to act. –One empowered to act for or represent another. –A means by which something is done or caused. –A force or substance that causes a change. –…

What are autonomous agents? Cont. Autonomous –Not controlled by others or by outside forces –Independent in mind or judgment or government; self directed. –Self governing

Our view An agent is an entity (software module, piece of embedded hardware) that acts and causes change. Autonomy: –Not micro-managed –Can take high-level directives and goals and can figure out what actions it needs to take and execute those actions.

What ability an autonomous agent must possess? Must understand high level directives Must have knowledge about its abilities –What actions it can perform –How these actions affect the world Must be able to reason and chalk out its plan of action (and revise them if things change)

Designing agents: the steps Representing actions and environment. – Objects in the environment. –Relationship between the objects. –Actions that the agent can perform. –Actions that are beyond the control of the agent. (exogenous actions) –How does the actions affect the environment. –*Main issue* -- an appropriate language (syntax and semantics) for representing the above.

Designing agents (cont.) What is the goal of the agent? –Achievement goals. –Maintenance goals. –In general, to make the trajectories taken by the agent satisfy some temporal (LTL, CTL*) formula. –Research issues: Are existing temporal languages enough? Do we need new constructs? –Knowledge temporal goals! –Issues: Complexity of planning with such goals.

Designing agents (cont) Agent architecture and execution languages –Pure reactive agent: a collection of rules of the form: ‘if observed x and context is z then do action y’. The agent continuously senses the environment and executes the rule whose condition matches the sensor values. Research issue: * Verifying that a collection of such rules when executed will satisfy the goal of the agent. * Automatic generation of such rules.

Designing agents (cont) Agent architecture and execution languages (cont) –Pure deliberative agent: Follows a cycle of Sense Assimilate observation (reasoning is needed here) Replan if necessary (reasoning and planning are needed here). Replanning becomes necessary if environmental actions make changes that invalidates the original plan. Execute part of the plan. (assimilation and planning are both hard; NP-complete even in simple cases.)

Designing agents (cont) Agent architecture and execution languages –Hybrid agents Reactive for some (important/frequent/critical) states and deliberative for others. The states for which reactions are stored are updated similar to the cache/main-memory hierarchy. Various levels of reactivity: simplest ones spell out the action; next: use a fast (logic) program to decide on the next action; use domain knowledge to do faster planning so as to come up with the action to be executed.

Designing agents -- summary 1.Actions, environment, and effect of actions. 2.Goal or directives. 3.Execution or architecture. 4.Design and analysis tasks: 1.Write 1 and 2 and then, 2.Given 1 and 2 come up with 3; or 3.Given 1, 2, and 3, verify 3 is correct with respect to 2; or 4.Given 1, 2, and 3, and some change in 2, update 3 to satisfy the new directives.

A data consistency maintenance agent. (An active database) Actions and their effect on the environment * Fluents: (technical term for objects in the world) purchase(purchaseid, client, amount). payment(paymentid, client, amount). account(client, credit, status). * Environmental actions: insertion of tuples to the purchase and payment relations for existing clients. *Agent's actions: Any other insert, delete and update.

Active database agent (cont.) Actions and their effects on the environment. (cont.) –insert(f) causes f – executable insert(f) if ~ f – delete(f) causes ~f – executable delete(f) if f – update(f,f') causes f', ~ f – executable update(f,f') if f

Active Dtabase agent (cont.) Goal: Make sure the stable state of the database satisfies the following. –For each client c which appears in a tuple a in the relation account: if a.credit = 3K then a.status = good. –For each client c which appears in a tuple a in the relation account: a.credit is 5K minus the sum of all the purchase amounts for c plus the sum of all the payment amounts for c.

Active Database agent (cont.) Reactive execution program (triggers) –Trigger 1: When a tuple p is added to the purchase relation, then update the tuple a in the relation account such that p.client = a.client so that the updated a.credit has the value obtained by subtracting p.amount from the old a.credit. –Trigger 2: When a tuple a in the relation account is updated such that a.credit is less than 3K then update a such that a.status has the value ``bad''. –Trigger 3: When a tuple p' is added to the payment relation, then update the tuple a in the relation account such that p'.client = a.client so that the updated a.credit has the value obtained by adding p'.amount to the old a.credit.

Active Database agent (cont.) Reactive execution program (cont.) –Trigger 4: When a tuple a in the relation account is updated such that a.credit is more than or equal to 3K then update a such that a.status has the value ``good''. Correctness: Suppose the database is in a stable state (I.e., it satisfies the goal conditions) and an allowable exogenous action occurs, then if the triggers are executed they will take the database to a stable state.

Paper ideas New language constructs for expressing the ability of agents and their impact on the environment New language constructs to express goals Agent architecture components Designing and implementing an agent in a particular domain