© Eric Yu 2001 1 Agent Oriented Software Development References

Slides:



Advertisements
Similar presentations
Ability-Based Education at Alverno College. Proposed Outcomes for Session 1. To introduce you to Alvernos approach to designing integrative general education.
Advertisements

4th Module: Information Systems Development and Implementation:
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
© Eric Yu Strategic Actor Relationships Modelling with i* Eric Yu University of Toronto December 13-14, 2001 IRST, Trento, Italy.
1-1 LECTURE 1: INTRODUCTION Multiagent Systems Based on “An Introduction to MultiAgent Systems” by Michael Wooldridge, John Wiley & Sons, 2002.
Strategic Modelling for Enterprise Integration Eric Yu University of Toronto 14th World Congress International Federation of Automatic Control July 5-9,
© Eric Yu Agenda Session 1 – Introduction December 13, 14:30-16:30 Motivations Basic concepts –The Strategic Dependency Model –The Strategic Rationale.
Lecture 1: Introduction Slides adapted from Sobah Abbas Petersen
Chapter 4 DECISION SUPPORT AND ARTIFICIAL INTELLIGENCE
Towards Modelling and Reasoning Support for Early-Phase Requirements Engineering Vahid Jalali Amirkabir university of technology, Department of computer.
Agent Mediated Grid Services in e-Learning Chun Yan, Miao School of Computer Engineering Nanyang Technological University (NTU) Singapore April,
The Architecture Design Process
Software engineering for supply chains:
Towards Modelling and Reasoning Support for Early-Phase Requirements Engineering درس مهندسی نیازمندی ها استاد دکتر عبداله زاده دانشجو خیرالنسا مرچانت.
Writing Good Software Engineering Research Papers A Paper by Mary Shaw In Proceedings of the 25th International Conference on Software Engineering (ICSE),
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh 1 Goal.
1 Computer Systems & Architecture Lesson 1 1. The Architecture Business Cycle.
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh 1 Towards.
Course Instructor: Aisha Azeem
Frequently asked questions about software engineering
Lecture 1.
Computational Thinking Related Efforts. CS Principles – Big Ideas  Computing is a creative human activity that engenders innovation and promotes exploration.
Evaluating Goal Achievement in Enterprise Modeling – An Interactive Procedure and Experiences Jennifer Horkoff 1 Eric Yu 2 1 Department of Computer Science,
Management Information Systems
1 Chapter 2 Socio-technical Systems (Computer-based System Engineering)
Software Project Management Introduction to Project Management.
1 Computer Science Department California Polytechnic State University San Luis Obispo, CA, U.S.A. Franz J. Kurfess CPE/CSC 580: Intelligent Agents 1.
Agents. Intelligent Agents. MultiAgent Systems. Delegation Computers are doing more for us – without our intervention We are giving control to computers,
Designing and implementing of the NQF Tempus Project N° TEMPUS-2008-SE-SMHES ( )
A Goal-Based Organizational Perspective on Multi-Agent Architectures Manuel Kolp † Paolo Giorgini ‡ John Mylopoulos † † Department of Computer Science.
Problem Identification
Agent architectures Smarter software for astronomers Alasdair Allan University of Exeter, Exeter, U.K.
11 C H A P T E R Artificial Intelligence and Expert Systems.
1 From GORE (not the US presidential candidate) to AORE (Agent-Oriented Requirements Engineering) Eric Yu University of Toronto November 2000.
Socio-technical Systems (Computer-based System Engineering)
Fundamentals of Information Systems, Third Edition2 Principles and Learning Objectives Artificial intelligence systems form a broad and diverse set of.
Putting Research to Work in K-8 Science Classrooms Ready, Set, SCIENCE.
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,
The roots of innovation Future and Emerging Technologies (FET) Future and Emerging Technologies (FET) The roots of innovation Proactive initiative on:
Chapter 1 The Nature of Strategic Management
1 Evolving System Architecture to Meet Changing Business Goals An Agent and Goal-Oriented Approach Daniel Gross & Eric Yu Faculty of Information Studies.
I Robot.
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.
Agent Oriented Software Development
Agents that Reduce Work and Information Overload and Beyond Intelligent Interfaces Presented by Maulik Oza Department of Information and Computer Science.
By shahid iqbal.  Requirements Negotiation is another name for conflict resolution.  process addresses problems with requirements where conflicts occur.
1-1 Software Development Objectives: Discuss the goals of software development Identify various aspects of software quality Examine two development life.
© Eric Yu Business Processes (from Steve Easterbrook RE slides)  Business Process Automation  Leave existing business processes as they are 
SESSION 2 The Sociotechnical Gap, Do Artifacts Have Politics?
1 Structuring Knowledge for a Security Trade-offs Knowledge Base Golnaz Elahi Department of Computer Science Eric Yu Faculty of Information Study University.
 2001 John Mylopoulos STRAW’ Software Architectures as Social Structures John Mylopoulos University of Toronto First ICSE Workshop titled “From.
 Presented by:  Dr.Cherry Steffen  Kennesaw State University.
Chapter 1- Introduction Lecture 1. Topics covered  Professional software development  What is meant by software engineering.  Software engineering.
1 Software Engineering Muhammad Fahad Khan Software Engineering Muhammad Fahad Khan University Of Engineering.
SECURE TROPOS Michalis Pavlidis 8 May Seminar Agenda  Secure Tropos  History and Foundation  Tropos  Basics  Secure Tropos  Concepts / Modelling.
MIS Project Management Instructor: Sihem Smida Project Man agent 3Future Managers1.
Requirement Elicitation Nisa’ul Hafidhoh Teknik Informatika
Chapter 1- Introduction
The Project Management Framework
Agent Oriented Software Development
Frequently asked questions about software engineering
LECTURE 1: INTRODUCTION
Agents & Agent-Based Programming
LECTURE 1: INTRODUCTION
LECTURE 1: INTRODUCTION
LECTURE 1: INTRODUCTION
Requirements I Peter Dolog dolog [at] cs [dot] aau [dot] dk
An Introduction to Multiagent Systems
Presentation transcript:

© Eric Yu Agent Oriented Software Development References

© Eric Yu Ubiquity The continual reduction in cost of computing capability has made it possible to introduce processing power into places and devices that would have once been uneconomic As processing capability spreads, sophistication (and intelligence of a sort) becomes ubiquitous What could benefit from having a processor embedded in it…?

© Eric Yu Interconnection Computer systems today no longer stand alone, but are networked into large distributed systems The internet is an obvious example, but networking is spreading its ever-growing tentacles… Since distributed and concurrent systems have become the norm, some researchers are putting forward theoretical models that portray computing as primarily a process of interaction

© Eric Yu Intelligence The complexity of tasks that we are capable of automating and delegating to computers has grown steadily If you don’t feel comfortable with this definition of “intelligence”, it’s probably because you are a human

© Eric Yu Delegation Computers are doing more for us – without our intervention We are giving control to computers, even in safety critical tasks One example: fly-by-wire aircraft, where the machine’s judgment may be trusted more than an experienced pilot Next on the agenda: fly-by-wire cars, intelligent braking systems, cruise control that maintains distance from car in front…

© Eric Yu Human Orientation The movement away from machine-oriented views of programming toward concepts and metaphors that more closely reflect the way we ourselves understand the world Programmers (and users!) relate to the machine differently Programmers conceptualize and implement software in terms of higher-level – more human- oriented – abstractions

© Eric Yu Global Computing What techniques might be needed to deal with systems composed of processors? Don’t be deterred by its seeming to be “science fiction” Hundreds of millions of people connected by once seemed to be “science fiction”… Let’s assume that current software development models can’t handle this…

© Eric Yu Where does it bring us? Delegation and Intelligence imply the need to build computer systems that can act effectively on our behalf This implies: –The ability of computer systems to act independently –The ability of computer systems to act in a way that represents our best interests while interacting with other humans or systems

© Eric Yu Interconnection and Distribution Interconnection and Distribution have become core motifs in Computer Science But Interconnection and Distribution, coupled with the need for systems to represent our best interests, implies systems that can cooperate and reach agreements (or even compete) with other systems that have different interests (much as we do with other people)

© Eric Yu So Computer Science expands… These issues were not studied in Computer Science until recently All of these trends have led to the emergence of a new field in Computer Science: multiagent systems

© Eric Yu Agents, a Definition An agent is a computer system that is capable of independent action on behalf of its user or owner (figuring out what needs to be done to satisfy design objectives, rather than constantly being told)

© Eric Yu Multiagent Systems, a Definition A multiagent 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 successfully interact, they will require the ability to cooperate, coordinate, and negotiate with each other, much as people do

© Eric Yu Agent Design, Society Design The course covers two key problems: –How do we build agents capable of independent, autonomous action, so that they can successfully carry out tasks we delegate to them? –How do we build agents that are capable of interacting (cooperating, coordinating, negotiating) with other agents in order to successfully carry out those delegated tasks, especially when the other agents cannot be assumed to share the same interests/goals? The first problem is agent design, the second is society design (micro/macro)

© Eric Yu Multiagent Systems In Multiagent Systems, we address questions such as: –How can cooperation emerge in societies of self- interested agents? –What kinds of languages can agents use to communicate? –How can self-interested agents recognize conflict, and how can they (nevertheless) reach agreement? –How can autonomous agents coordinate their activities so as to cooperatively achieve goals?

© Eric Yu Multiagent Systems While these questions are all addressed in part by other disciplines (notably economics and social sciences), what makes the multiagent systems field unique is that it emphasizes that the agents in question are computational, information processing entities.

© Eric Yu The Vision Thing It’s easiest to understand the field of multiagent systems if you understand researchers’ vision of the future Fortunately, different researchers have different visions The amalgamation of these visions (and research directions, and methodologies, and interests, and…) define the field But the field’s researchers clearly have enough in common to consider each other’s work relevant to their own

© Eric Yu Spacecraft Control When a space probe makes its long flight from Earth to the outer planets, a ground crew is usually required to continually track its progress, and decide how to deal with unexpected eventualities. This is costly and, if decisions are required quickly, it is simply not practicable. For these reasons, organizations like NASA are seriously investigating the possibility of making probes more autonomous — giving them richer decision making capabilities and responsibilities. This is not fiction: NASA’s DS1 has done it!

© Eric Yu Autonomous Agents for specialized tasks The DS1 example is one of a generic class Agents (and their physical instantiation in robots) have a role to play in high-risk situations, unsuitable or impossible for humans The degree of autonomy will differ depending on the situation (remote human control may be an alternative, but not always)

© Eric Yu Air Traffic Control “A key air-traffic control system…suddenly fails, leaving flights in the vicinity of the airport with no air-traffic control support. Fortunately, autonomous air-traffic control systems in nearby airports recognize the failure of their peer, and cooperate to track and deal with all affected flights.” Systems taking the initiative when necessary Agents cooperating to solve problems beyond the capabilities of any individual agent

© Eric Yu Internet Agents Searching the Internet for the answer to a specific query can be a long and tedious process. So, why not allow a computer program — an agent — do searches for us? The agent would typically be given a query that would require synthesizing pieces of information from various different Internet information sources. Failure would occur when a particular resource was unavailable, (perhaps due to network failure), or where results could not be obtained.

© Eric Yu Some Views of the Field Agents as a paradigm for software engineering: Software engineers have derived a progressively better understanding of the characteristics of complexity in software. It is now widely recognized that interaction is probably the most important single characteristic of complex software Over the last two decades, a major Computer Science research topic has been the development of tools and techniques to model, understand, and implement systems in which interaction is the norm

© Eric Yu Some Views of the Field Agents as a tool for understanding human societies: Multiagent systems provide a novel new tool for simulating societies, which may help shed some light on various kinds of social processes. This has analogies with the interest in “theories of the mind” explored by some artificial intelligence researchers

© Eric Yu A typical process model … but we need deeper understanding! Automobile insurance claims example

© Eric Yu … a deeper understanding about processes Car owner wants car to be repaired Insurance company wants to minimize claims payout Car owner wants fair appraisal of repairs Insurance agent wants to maintain good customer relations

© Eric Yu Modelling Strategic Actor Relationships and Rationales - the i* modelling framework –have goals, beliefs, abilities, commitments –depend on each other for goals to be achieved, tasks to be performed, resources to be furnished –are semi-autonomous -- not fully knowable / controllable

© Eric Yu Strategic Dependency Relationship Actor A I want … Actor B I can … DD Car Be Repaired

© Eric Yu i* objectives, premises, key concepts Actors are semi-autonomous, partially knowable Strategic actors, intentional dependencies have choice, reasons about alternate means to ends means-ends alternatives DD wants and abilities

© Eric Yu i* modeling 1.explicit intentionality  goals 2. implicit intentionality  agents functional decomposition means-ends alternatives wants and abilities inputs outputs DD

© Eric Yu

© Eric Yu

© Eric Yu

© Eric Yu

© Eric Yu

© Eric Yu Development-World model refers to and reasons about… Operational-World models Alt-1 Alt-2 To-be As-is Strategic Rationale Model Strategic Dependency Models

© Eric Yu

© Eric Yu

© Eric Yu

© Eric Yu Softgoal Operationalizations: Contribution Relationship Side-effects to softgoals: Correlation Relationship

© Eric Yu Analysis and Design Support opportunities and vulnerabilities –ability, workability, viability, believability –insurance, assurance, enforceability –node and loop analysis design issues –raising, evaluating, justifying, settling –based on qualitative reasoning [Chung Nixon Yu Mylopoulos (2000) Non-Functional Requirements in Software Engineering. Kluwer Academic Publishers.]

© Eric Yu Another Example: Meeting Scheduler From: E. Yu. Towards Modelling and Reasoning Support for Early- Phase Requirements Engineering 3rd IEEE Int. Symp. on Requirements Engineering (RE'97) Jan. 6- 8, 1997, Washington D.C., USA. pp

© Eric Yu “Strategic Dependency” Model Meeting Scheduling Example [Yu RE97]

© Eric Yu Revealing goals, finding alternatives Ask “Why”, “How”, “How else”

© Eric Yu Scheduling meeting …with meeting scheduler

© Eric Yu “Strategic Rationale” Model with Meeting Scheduler SR2

© Eric Yu

© Eric Yu The intentional structure of a software process What goals does an actor want others to achieve? What tasks does an actor want others to perform? What resources does an actor want others to furnish? The intentional structure of a software process is modelled as a network of intentional dependencies among actors – the actor dependency model.

© Eric Yu Understanding a software process The “whys” can be traced to motivations, goals, and interests of different participants/ stakeholders in the software process.

© Eric Yu Modelling the intentional structure of a (simple) software process

© Eric Yu Roles, Agents, and Positions

© Eric Yu Software process example from IWSP 6/7

© Eric Yu Analyzing opportunities Matching Wants and Abilities

© Eric Yu Analyzing vulnerabilities Example of enforcement mechanism –Reciprocal dependency Loop analysis

© Eric Yu Analyzing vulnerabilities Example of assurance mechanism –Goal synergy or conflict Node analysis

© Eric Yu Strategic Modelling for Enterprise Integration

© Eric Yu Consider one very successful enterprise... important organizational and social aspects are missing in conventional models

© Eric Yu A Strategic Dependency Model actor goal dependency task dependency resource dependency softgoal dependency LEGEND

© Eric Yu Wants and Abilities I want... I can provide...

© Eric Yu Some strategic dependencies between IKEA and its customers

© Eric Yu A Strategic Rationale Model

© Eric Yu Roles, Positions, Agents A Strategic Dependency model showing reward structure for improving performance, based on an example in [Majchrzak96] agent position role LEGEND