Bridges To Computing General Information:  This document was created for use in the "Bridges to Computing" project of Brooklyn College.  You are invited.

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Problem Solving by Searching Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 3 Spring 2007.
Computer Science 111 Fundamentals of Programming I Introduction to Object-Based Programming.
CS0007: Introduction to Computer Programming Console Output, Variables, Literals, and Introduction to Type.
Intelligent Agents Russell and Norvig: 2
ECE457 Applied Artificial Intelligence R. Khoury (2007)Page 1 Please pick up a copy of the course syllabus from the front desk.
Agents in the previous examples Agents are just 3D objects in virtual worlds Agents are not independent thread. No agent architecture. ……
Brent Dingle Marco A. Morales Texas A&M University, Spring 2002
Experiences with an Architecture for Intelligent Reactive Agents By R. Peter Bonasso, R. James Firby, Erann Gat, David Kortenkamp, David P Miller, Marc.
Design of Multi-Agent Systems Teacher Bart Verheij Student assistants Albert Hankel Elske van der Vaart Web site
Intelligent Agents revisited.
Chapter 12: Intelligent Systems in Business
Chapter 11 ASP.NET JavaScript, Third Edition. 2 Objectives Learn about client/server architecture Study server-side scripting Create ASP.NET applications.
CS 188: Artificial Intelligence Fall 2009 Lecture 19: Hidden Markov Models 11/3/2009 Dan Klein – UC Berkeley.
Intelligent Agents: an Overview. 2 Definitions Rational behavior: to achieve a goal minimizing the cost and maximizing the satisfaction. Rational agent:
Sylnovie Merchant, Ph.D MIS 210 Fall 2004 Lecture 1: The Systems Analyst Project Management MIS 210 Information Systems I.
Adding Automated Functionality to Office Applications.
Leroy Garcia 1.  Artificial Intelligence is the branch of computer science that is concerned with the automation of intelligent behavior (Luger, 2008).
Sepandar Sepehr McMaster University November 2008
Department of Computer Science What is NetLogo UH-DMML  Multi-agent programmable modeling environment  Well suited for modeling complex systems evolving.
Distribution Channels
INTRODUCTION TO ARTIFICIAL INTELLIGENCE Massimo Poesio Intelligent agents.
Bridges To Computing General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited.
CH558 Software Agent (Software Agent Technology and Multi-agent Systems) Spring Semester, 2005 Dept. of Computer Science Yonsei University.
CISC 1600 – Lecture 3.2 Simulations Complex Input & Output NetLogo.
2-Day Introduction to Agent-Based Modelling Day 2: Session 8 Exploring Model Collections, NetLogo Lists, Further Resources.
B RIDGES T O C OMPUTING General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited.
Copyright 2004 Prentice Hall1 Inside Stakeholders  Shareholders – the owners of the organization  Managers – the employees who are responsible for coordinating.
Bridges To Computing General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited.
© Yilmaz “Agent-Directed Simulation – Course Outline” 1 Course Outline Dr. Levent Yilmaz M&SNet: Auburn M&S Laboratory Computer Science &
Bridges To Computing General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited.
Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved. Decision Support Systems Chapter 10.
General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. This work is licensed under the Creative.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
NAVEEN AGENT BASED SOFTWARE DEVELOPMENT. WHAT IS AN AGENT? A computer system capable of flexible, autonomous (problem-solving) action, situated in dynamic,
Agent-Based Modeling and Simulation (ABMS) Bertan Badur Department of Management Information Systems Boğaziçi University.
Bridges To Computing General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited.
Bridges To Computing General Information:  This document was created for use in the "Bridges to Computing" project of Brooklyn College.  You are invited.
B RIDGES T O C OMPUTING General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited.
Bridges To Computing General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited.
New Mexico Computer Science For All Variables and Scope Maureen Psaila-Dombrowski.
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
Agents & Agent-Based Programming. Outline I.References II."Agents" defined. III.Agent-Based Programming Paradigm IV.Motivations V.Putting it all together.
Agents that Reduce Work and Information Overload and Beyond Intelligent Interfaces Presented by Maulik Oza Department of Information and Computer Science.
Bridges To Computing General Information:  This document was created for use in the "Bridges to Computing" project of Brooklyn College.  You are invited.
Introduction of Intelligent Agents
Instructional Objective  Define an agent  Define an Intelligent agent  Define a Rational agent  Discuss different types of environment  Explain classes.
Distributed Models for Decision Support Jose Cuena & Sascha Ossowski Pesented by: Gal Moshitch & Rica Gonen.
Artificial Intelligence Lecture No. 6 Dr. Asad Ali Safi ​ Assistant Professor, Department of Computer Science, COMSATS Institute of Information Technology.
Bridges To Computing General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited.
JavaScript Introduction and Background. 2 Web languages Three formal languages HTML JavaScript CSS Three different tasks Document description Client-side.
Intelligent Agents Chapter 2. How do you design an intelligent agent? Definition: An intelligent agent perceives its environment via sensors and acts.
M10 WS11:Krankenhausbedarfsplanung The World as We See It given by Gabriel Wurzer and Wolfgang E. Lorenz
General Information: This document was created for use in the "Bridges to Computing" project of Brooklyn College. You are invited and encouraged to use.
Intelligent Agents on the Internet and Web BY ROHIT SINGH MANHAS M.C.A 4TH SEM. Dept. of I&CT, MIT, Manipal.
EEL 5937 Multi Agent Systems -an introduction-. EEL 5937 Content What is an agent? Communication Ontologies Mobility Mutability Applications.
1 Agent-Based Tools: focus on NetLogo Ing. Cristina Ponsiglione University of Naples Federico II Laboratorio di Simulazione ad Agenti.
EEL 5937 Multi Agent Systems -an introduction-. EEL 5937 Content What is an agent? Communication Ontologies Mobility Mutability Applications.
Week 3 - Wednesday CS 113.
Management Information Systems
Management Information Systems
Computer Programming.
Algorithms and Flow Charts
Copyright © 2013 Pearson Education, Inc. Publishing as Prentice Hall
Agents & Agent-Based Programming
CS4341 Introduction to Artificial Intelligence
A person who conduct a study, identifies activities and objectives and determines a procedure to achieve the objectives.
Market-based Dynamic Task Allocation in Mobile Surveillance Systems
creating a ecosystems model in net logo
Presentation transcript:

Bridges To Computing General Information:  This document was created for use in the "Bridges to Computing" project of Brooklyn College.  You are invited and encouraged to use this presentation to promote computer science education in the U.S. and around the world.  For more information about the Bridges Program, please visit our website at: Disclaimers:  IMAGES: All images in this presentation were created by our Bridges to Computing staff or were found online through open access media sites and are used under the Creative Commons Attribution-Share Alike 3.0 License. If you believe an image in this presentation is in fact copyrighted material, never intended for creative commons use, please contact us at so that we can remove it from this presentation.  LINKS: This document may include links to sites and documents outside of the "Bridges to Computing" domain. The Bridges Program cannot be held responsible for the content of 3 rd party sources and sites.

Agent Based Programming & Simulations Lecture 2: Multi-Agent Systems

References  Russell, Stuart J.; Norvig, Peter (2003), Artificial Intelligence: A Modern Approach (2nd ed.), Upper Saddle River, New Jersey: Prentice Hall, ISBN , chpt. 2  Stan Franklin and Art Graesser (1996); Is it an Agent, or just a Program?: A Taxonomy for Autonomous Agents; Proceedings of the Third International Workshop on Agent Theories, Architectures, and Languages, Springer- Verlag, 1996  An Introduction to Multiagent Systems, by Michael Wooldridge, John Wiley & Sons, Ltd (2002).

Content  Types of Agents  Agent Defined  Agent Types  Intelligent Agents  Multi-Agent Systems  Defined  Properties  Research Areas  Continuing with NetLogo

Agent Defined  An Agent "is an autonomous entity which observes and acts upon an environment and directs its activity towards achieving goals." Russell & Norvig 2003,  NOTE: A "software agent" usually implies a program, a "computer agent" can be a hardware/software combination, and an "intelligent agent", can be anything (including people/groups of people).

Components of an Agent 1. Sensors 2. Actuators/Effectors 3. Reasoning (maybe be very simple "if-then") 4. Learning (optional, defines an "intelligent agent")

Basic Agent Types  Simple reflex agents -> If condition then action.  Can accomplish simple tasks quickly, unlikely to find "optimal" solution  If (distance-to-wall < 5 ) { turn right } else { turn left }  NOTE: Algorithm above will eventually find door out of room.  Model-based reflex agents -> A model-based reflex agent keeps track of the current state of the world using an internal model (create a model). It then chooses an action based on tests performed on the model.  Slow  (1) Make map of room. (2) Calculate path(s) to door (3) Execute path  Can find optimal solution in some cases.

Intelligent Agents  Goal-based agents  Goal-based agents are model-based agents which store information regarding situations that are desirable. This allows the agent a way to choose among multiple possibilities, selecting the one which reaches a goal state.  Learning agents  Learning has an advantage that it allows the agents to initially operate in unknown environments and to become more competent than its initial knowledge alone might allow.  Learning is difficult, time-consuming and has to be done within some other methodology (neural-networks, reinforcement learning, etc.)

Multi-Agent System  "A multi-agent system is one that consists of a number of agents which interact with one another. In the most general case, agents will be acting on behalf of users with different goals and motivations. To interact successfully, they will require the ability to cooperate, coordinate and negotiate with each other, much as people do. " (Wooldridge)  A Multi-Agent system is... an environment in which many (well, two or more) agents exist and interact.

Properties of multi-agent systems 1. Individual agents are self-interested  Agent pursue their own individual goals  There may be team rewards for a group of agents achieving a goal together... but 2. Cooperation is not governed,  Cooperation (and altruism) are emergent (if happens at all) Note: Compare this to "distributed systems", where 1. goals are only group-based 2. cooperation is engineered to be inherent in the system

Multi-Agent Systems… Why? Are there advantages to using Agent-Based programming? Yes! 1. Complexity: Some problems are so complex that they are basically impossible to model as a single program.  Examples: Weather, Internet, Travel Systems 2. Emergent Behavior: Some types of behavior are very difficult to program in directly but can result as a side effect of individual agents selfishly pursuing their own very simple goals.

The Flocking Program - Emergent Behavior (link)link

Research Areas – Multi-Agent Systems Key Research Areas 1. Agent design (micro level): How do we design individual agents to operate (accomplish their own goals) effectively? 2. Society Design (macro level): How do we design groups of agents, or societies, to operate effectively together? 3. Hive Intelligence (abstract level): Can simple agents, working together, effectively demonstrate high level reasoning abilities? Can simple agents, working together, accomplish very complex tasks?

Ants & Termites (Hive Intelligence)

continuing with NetLogo

NetLogo Imperative Programming 1. Sequence -> 1. Left-Right, Top Down 2. Buttons can also call procedures. 2. Selection -> (link)link 1. if condition [ commands ] 2. ifelse condition [ commands1 ] [ commands2 ] Example: ask patches [ ifelse pxcor > 0 [ set pcolor blue ] [ set pcolor red ] ]

NetLogo Imperative Programming (cont) 3. Repetition -> (link1)link1 1. while [reporter] [ commands ] Example: ask turtles [ while [ xcor < 5 ] [ right random 360 forward 1 ] 2. Forever buttons -> The advantage of a forever button is the user can click the button to stop the loop.

NetLogo Procedural Programming  A procedure (or function) is created using the reserved keyword 'to'.  The name of the function follows 'to'.  The end of a procedure is marked by the 'end' keyword.  Procedures can be called by other procedures or by buttons on the interface.

NetLogo Agents as Objects  In the previous lab we introduced the "primitives" for the turtle and patch agents.  Some of those primitives were member variables (facts about the agents) and other primitives were functions (procedures).  The agents in NetLogo are also objects.  Unlike regular objects agents in NetLogo can "see" their enviroment and each other.

NetLogo Sensors and Effectors  Agents in Netlogo can use special primitives (built in functions) to "see" their environment.  turtles-here (returns a list of turtles nearby)  patches-here (returns a list of patches nearby)  turtles-at (returns a list of turtles at a specific location)  patches-at (returns a list of patches at a specific location)  self (returns local state information)  Agents can also use special primitives (built in functions) to "affect" their environment, including other agents (ask).  setxy (change a turtles location)  set color (change a turtles color)  set pcolor (change a patches color)  hatch (create NEW turtles)  die (deletes a turtle)

Groups, Sets, Lists  When you use the command ask turtles [ ] we are actually sending command to a set (group, or list) consisting of all the turtles in the program.  In NetLogo we can create what are called AgentSets literally sets (groups, lists) of agents.  We can then send commands to the agents in that set. Examples: (with) (turtles-here) (any?) (in-radius)withturtles-hereany?in-radius  ask patches with [pcolor = red]  ask patch 0 0 [ ask turtles-here  if any? turtles with [color = red]  ask turtles [ ask patches in-radius 3

Breeds  Breeds can be thought of as a customizable agentset. ask dogs [ forward 1 ]  Officially a breed is like a “subtype” of turtle:  it has all the attributes of turtle,  plus any new attributes declared for the breed.  Breeds can be declared and customized in your code breed [ dogs dog] dogs-own [ flea-count ]  Breed is actually an attribute, which can be reset.  show [ breed ] of turtle 0  ask turtle 0 [ set breed dogs]

General Program Outline

DON'T PANIC  You will have several labs on NetLogo.  Lost of help is available online:  Fantastic (short) NetLogo Quick Guide Fantastic (short) NetLogo Quick Guide  Full Netlogo Manual Full Netlogo Manual  NetLogo Dictionary NetLogo Dictionary

The End