Explore all your favorite topics in the SlideShare appGet the SlideShare app to Save for Later — even offline
Agents can dynamically discover services.Agents can use the latest web-based technologies, such as Java, XML, and HTTP. These technologies are simple to use, ubiquitous:- existing or being everywhere, especially at the same time, heterogeneous and platform neutral.
Before we try to define what is a Software Agent, let us first try to understand the meaning and characteristics of an agent. We are all, in one sense or another, familiar with the concept of an agent. Probably most of us have dealt with travel agents and we know the role undertaken by them. The main representative role of a travel agent, for example, is that it acts on behalf of others.
Temporal continuity:- agent is continuous running process. It is not one-shot n stop.
1. agents are really just objects++.2. agent-based approach is an extension tohow we think in an OO world.Agents, then, are an evolution rather than arevolution
1. Agency refers to the conceptual and physical location in which agents reside and execute. the heart of the agency is the agent platform2. the component model infrastructure that provides local services for agents and includes proxies to access remote services.3. Agent Management System (AMS) - controls creation, deletion, suspension, resumption, authentication, persistence and migration of agents. Provides “White Pages” to name and locate agents.4. Agent Communication Channel (ACC) - routes messages between local and remote FIPA agents, realizing messages using an agent communication language.5. Directory Facilitator (DF) - provides “Yellow Pages” service for FIPA agents that register agent capabilities so an appropriate task-specific agent to handle the task can be found.
This is end of discussion about agents. Now we will discuss how to use these agents in cbsd.We do speech of act. For ex. “prepare for war” is to “attack”.
1. This does not mean that all agent components are universal written in a single language. It means that they are specially designed and deployed so that agent components written in different languages can work together.2. This is possible because agent components are encapsulated -- each one has its own self-contained small unit of development and testing.3. It is possible to create different settings for a SOAC so that it can be operated on any platforms.4. Although many agent components are created to meet the needs of a particular application, once they have been built and deployed, it is possible to use them for different applications.
Analysis: In the requirement analysis, the customer’s requirements are gathered from the user requirement specifications and the BDI (Belief-Desire-Intention) model is used to construct the agent diagram.2. Design: Relationship diagrams show the relationships among agents, such as inheritance, dependency, visibility and logically and physically structured organization. Interaction diagrams show the interactions among several agents, such as local, partial and global agents. Component diagrams show useful information of packaging the related agent components when coding.
Attributes: They identify the agentBehaviour model The agents are autonomous and independent. It is very important to have trustworthy agents. Therefore, the behavior model will ensure that the only agents would be well-behaved and can continue to operate usefully.3. Inference Engine: It operates the agent based on the behavior model.
User Agent interface: It hides the complexities of the system operations. It allows the user to define his/her one-time queries as well as long term, elatively static needs.Domain Agent: It works on behalf of the user. It is responsible for representing user's requirements. It formulates the component specifications from the user requirements and delegates the authority for the domain agent mediator to find the matched software components.Domain Agent Mediator: It provides communication service for domain agents so that they can be implemented and placed in a heterogeneous anddistributed environment.Agent component: It is a software implementation that can be executed on a physical or logical device. An agent component implements one or more interfaces that are imposed upon it. All components must satisfy certain component contracts. In the architecture, there are universal components and domain components. The universal component is the basic component and the domain component is a professional component so that some special knowledge is usually needed for the domain specialist to develop an application system.Component contract: It ensures that independently developed components obey certain rules so that components can interact in predictable ways.Coordination service: It is supported by the architecture so that the domain specialist could master less software developing skills. Furthermore it provides several coordination services such as the transaction service and persistence service.Component interface: It provides the execution methods for the users.Component repository: It has contained all kinds of components and a catalog mechanism should be provided by it.
Why Software Agents? Dynamically discover services. Use latest web-based technology. Simple to use. Platform Neutral. Intelligence.
Agent An agent is an entity that: acts on behalf of others in an autonomous fashion performs its actions in some level of proactivity and reactivity exhibits some levels of the key attributes of learning, co-operation, and mobility.
Introduction Mid 50’s first ideas about software agents. John McCarthy, Oliver G. Selfridge. Today software agents are still a hot, diverse topic. distributed artificial intelligence, robotics, artificial life, distributed object computing, human-computer interaction, intelligent and adaptive interfaces, intelligent search and filtering, information retrieval, etc.
Definition "Let us define an agent as a persistent software entity dedicated to a specific purpose. Persistent distinguishes agents from subroutines; agents have their own ideas about how to accomplish tasks, their own agendas. Special purpose distinguishes them from entire multifunction applications; agents are typically much smaller.” An autonomous agent is a system situated within and a part of an environment that senses that environment and acts on it, over time, in pursuit of its own agenda and so as to effect what it senses in the future.
Categorization of Agents Autonomous Agents Biological Agents Computational Agents Robotic Agents Artificial Life Agents Software AgentsTask-specific Agents Entertainment Agents Viruses
Categorization of Agents Mobile agents Interface agents Collaborative agents Information agents Reactive agents Hybrid agents
Difference Object Oriented Agent Oriented Modular Modular Dependent Autonomy Distinct InteractiveIntegration Required No Integration Required Centralized Decentralized Same Always Can Play different role Static Mobile
Environment of Agent Application. Platform. Agent. Communication. Ontology.
ACBD ACBD- Agent Component Based Development. An agent component is a reusable unit of composition with contractually specified interfaces, which can be used by the outside of the agent component via the interfaces. It is capable of: Reducing cost. Improving the reliability of system.
Properties of ACBD Language Neutral. Can implemented independently. It is not constrained to a single platform. It is not bound to any particular application
Comparison Component Agents Static MobileUnintelligent IntelligentRemains same Adaptive to change
Extending DOCC Data object control component.
Problems to solve The issues of performance and efficiency based on agent software development have not been properly settled. There lacks a kind of combination among the mature models of development, methods and tools to describe the agents-based analysis and design process. The “dynamic” and “continually scalable” features in the process of system development have not been implemented.
Conclusion Agent Concepts Barely Five Years. Agents Seem to be the Up and Coming Technology of the Future. The Possibilities and Capabilities of Agents are Endless The Mobile Agent Alone Has Not Been Covered in Research Extensively Aglets Have a Chance of Being the Building Blocks of Front Running Technology Standardization Issues Must be Addressed for Different Agent Systems to Interact!
Future Work Another Facet of Agents is the Intelligent Agent Mobile Agents are Used for Intelligent Agents Researchers are Trying to Implement an Agent With Artificial Intelligence Current Developing Applications IBM is Developing a Memory Agent Application Used to Detect Cancer IBM Claims the Agent Learns Based on Previous Input Uses a Learning Algorithm to Predict the Numbers for Detection
Other IBM Products Memory agent Knowledge Capture Learns What People Know Builds a Knowledge Base Incrementally Operates While People Do Their Normal Jobs Memory agent Virtual Consultation Allows People to Consult the Knowledge of Others Eliminates Need for Speaking to Them in Person
References 1. Agent Technology Edited by Nicholas R. Jennings and Micheal J. Wooldridge, Springer, 1998, ISBN 3-540-63591-2 2. Introduction to Agent Technology, Heimo Laamanen. 3. Levine, David, "Relationship between Agent and Object Technologies" in Odell, James, ed.,Agent Technology Green Paper, OMG Agent Work Group, 1999.
4. An Agent Component-Oriented Software Process, Youtian Q., Tianzhou C., Xu H., IEEE. Software Agents as Next Generation Software Components, Martin L. Griss, Software Technology Laboratory, Hewlett-Packard Company.