| Multi-agent systems (MAS) have emerged as a new methodology to address the issues in organizing large-scale software systems. This methodology provides a conceptual model that helps maintaining constraints, a task conventional software engineering is unable to achieve. In recent years, MAS has been used in various areas in computer science and engineering and is becoming a versatile tool that addresses software engineering needs. It also extends the spectrum of computer science research and has drawn more and more attention to a wide range of areas from theoretical studies to practices. An agent is a software entity that actively seeks ways to complete its tasks. Intelligent agents have the ability to gain knowledge through their problem-solving processes. The study of social behaviors of agents in cognitive science is an important part of the intelligent agent field. Software agents, on the other hand, focus on interaction and collaboration to achieve the goals in a context that changes in a usually unforeseen manner. The necessity of using agents arises from the complexity of large software systems, which bring about design issues that conventional software engineering technology fails to tackle. For instance, mobile agents were proposed to address the needs in the client/server model for the client to be able to migrate to the server side to perform the operation that passive message-passing mechanisms cannot handle efficiently. In a dynamic distributed system, agents with self-adjusting ability can simplify the system architectural design. The design of such a system may be exceedingly complicated in traditional software architecture frameworks or object-oriented modeling.
Agent-oriented modeling yields an unconventional approach to system design, including component definition and system integration. Different applications may impose various requirements on the design and lead to different types of agents. Autonomy is a distinguishing property of an agent. Autonomy entails the agent’s capability to survive in a changing environment. An agent has the ability to sense the conditions and make decisions on how to react accordingly. Adaptability requires learning ability necessary for the agent to be able to adjust its decision-making according to past experience. Moreover, an agent-oriented design should address robustness—the system should be reliable when unexpected events occur. |
|
|
| | Pro C# 2005 and the .NET 2.0 Platform, Third EditionIremember a time years ago when I proposed a book to Apress regarding a forthcoming software SDK code-named Next Generation Windows Services (NGWS). As you may be aware, NGWS eventually became what we now know as the .NET platform. My research of the C# programming language and the .NET platform took place in parallel with the authoring of the... | | Beginning XML (Programmer to Programmer)Beginning XML provides a complete course in the Extensible Markup Language (XML) with an unusually gradual learning curve. In fact, the introduction states that the book is "for people who know that it would be a pretty good idea to learn the language, but aren't 100 percent sure why." Despite its recognition of the... |
|