Upload
peter-evans-greenwood
View
215
Download
0
Embed Size (px)
Citation preview
8/10/2019 Agents in the EnterprAgents in the Enterprise
1/10
Agents in the Enterprise
Paul Taylor,
Peter Evans-Greenwood,
James Odell.
Agentis International,
1990 N. California Blvd, Suite 400,
Walnut Creek, CA 94596, USA.
2/33 Lincoln Square South, Carlton,
Victoria, 3053, Australia.
{pt ayl or | pevansg| j odel l }@agent i ss of t war e. com
Abstract
The discovery of useful applications of agent technology is currently generating considerable
interest in both research and business domains. The term agent technology refers to a bag of
software technologies and methods that realise systems comprised of multiple autonomous,
goal-seeking agents that employ cooperation and collaboration to automate or systematise
some problem space that existing technologies cannot. This paper cites analysis on the
adoption of agent technologies and surveys the characteristics of todays enterprise computing
environment to build a case for the use of agent technology. Relevant characteristics of the
technology that appear useful in the enterprise context include anthropomorphism (as a basis
for decomposing complex, loosely coupled business systems), adaptability and the ability tomanage change, and the concept of deploying multi-agent-based solution architectures one
agent at a time, such that each individual agent enacts both a valuable point of automation in
its own right and a node in a multi-agent solution. We report on Agentis experience in
pursuing this approach by using three indicative agent-based solutions.
1 Introduction
A new generation of software tools and techniquescollectively known as agent technology
promises to manage, in real time, the complexities of todays enterprise. Although there have been
notable successes of enterprise-scale agent-based solutions to date, most have been in narrow industrial
domains (such as robotics and flexible manufacturing) or applications involving simulation within
equally constrained business domains. These are important classes of applications but they do not
break from the technologys roots in research, nor do they significantly advance the more widespread
adoption of agent technology.
We are interested in the benefits that the technology can bring to enterprise computing rather than in
the technology per se. This paper surveys the characteristics of todays enterprise (and its computing
environment) and builds a case for the application of agent technology. Agent technology gives the
solution architect a set of natural structures for designing enterprise solutions and applications. We
believe that anthropomorphism is a useful basis for decomposing the next generation of complex,
loosely coupled business systems. An anthropomorphic approach provides useful mappings between
people (who perform situated acts in an essentially social context) and agents (which enact roles, pursue
goals, have perception and beliefs, and follow plans toward intentions) that perform collaborative workon behalf of people.
A g e n t i s I n t e r n a t i o n a l 2 0 0 5 T a y l o r , E v a n s - G r e e n w o o d , O d e l l 1
8/10/2019 Agents in the EnterprAgents in the Enterprise
2/10
A G E N T S I N T H E E N T E R P R I S E A S W E C 2 0 0 5
But structure is only one dimension of a successful enterprise solution. The enterprise imposes strict
constraints on its systems, and some of these contradict the assumptions underlying established agent-
oriented approaches and agent runtime platforms. Previous attempts at deploying agents in the
enterprise have failed partially because they have not adequately considered the essential characteristics
of enterprise systems, such as performance, scalability, reliability, business transparency, and
adaptability. We offer some pragmatic solutions to each of these problemsan approach based on
bringing agents to the enterprise, rather than the enterprise to agent technology.
1.1 The Promise of Agent Technology in the Enterprise
Software agents are autonomous problem-solving computational entities that can demonstrate more
effective operation in dynamic and open environments than can traditional technologies. In the
enterprise, individual agents can automate complex control and monitoring behaviours not possible
with current technologies, or they can operate in collaboration with other agents (including both people
and software) to achieve automation in highly dynamic and complex environments.
Agents go beyond objects (for example, Java objects) in that they implement autonomy by exercising
choice over their internal actions and external interactions. An agent may exercise autonomy by
selecting what processing to perform (at runtime, based on prevailing conditions) to achieve a particular
goal. Agents in a multi-agent system may collaborate to achieve individual or shared objectives.
Unlike objects, agents may be assigned one or more goals or tasks by their owners and then set running
to achieve those goals. Agent-based systems are implemented using a wide range of current
technologies, including object-oriented languages and distributed object services, Web Services,
directories, and many others.
The development of agent technologies is surfacing a range of specific techniques and algorithms for
dealing with interactions in dynamic, open environments. These include solutions, patterns, protocols
and standards for balancing reaction and deliberation in individual agents, learning from and about
other agents in the environment, eliciting and acting upon user preferences, finding ways to negotiate
and cooperate with other agents, and developing means of forming and managing coalitions. Multi-
agent solutions map naturally to problem spaces typified by complexity, loose coupling, dynamism and
collaboration, where exiting agents (normally people) employ a high degree of autonomy,specialisation, interpretation and skill to plan, resolve deals, allocate resources or negotiate paths. For
example, multi-agent systems are providing faster and more effective methods of resource allocation in
complex environments, such as the management of utility networks, than human-centred approaches.
In businesses where timely provisioning or customer servicing is important (such as
telecommunications), agents are monitoring and managing provisioning processes and the overarching
service level agreements. In healthcare, agents are automating patient monitoring and providing
intelligent integration of monitoring devices. Other applications can be found anywhere where markets,
economies or societies, or biological environments need to be monitored or managed (Agentlink III,
2004).
1.2 The Current State of Agent Technology Adoption
Agent technologys broad and encompassing base makes assessments and predictions on its adoption
in organisations difficult. Gartners July 2004 analysis places various agent technologies, application
domains and drivers at different points in the adoption cycle (Gartner 2004a-f). In the infrastructure
domain, business process execution languages (BPEL) are on the rise with between 1% and 5% market
penetration. Basic Web Services for service definition and application integration (using SOAP and
WSDL) are achieving mainstream adoption as evidenced by implementation by major software
vendors, with 20% to 50% market penetration. Advanced Web Services offering higher quality of
service (to enable advanced business-critical functions over standards-based networks using SOAP,
WSDL, UDDI, WS-Security and WS-R) depend on the availability and maturity of standards, and
implementations are not yet fully available from vendors.
Gartner observes that narrow business domains for the technology have not yet emerged, but that thisdemand is currently expressed in the building momentum of the Semantic Web. The Semantic Web
the adoption of metadata and protocols so that machines can automatically process, integrate and reason
A g e n t i s I n t e r n a t i o n a l 2 0 0 5 T a y l o r , E v a n s - G r e e n w o o d , O d e l l 2
8/10/2019 Agents in the EnterprAgents in the Enterprise
3/10
A G E N T S I N T H E E N T E R P R I S E A S W E C 2 0 0 5
about data across different applicationshas less than 1% market penetration. Another current
transformational concept, the Trading Grid (an interconnection of networks and marketplaces to
support virtual organisations) is also at the very start of the adoption cycle. Electronic markets
(eMarketplaces) now have up to 5% market penetration. Each of these domains and technology
families are predicted by Gartner to take up to 10 years to plateau.
Intelligent agents as a whole are perceived as having been over-hyped to date. However, self-service agents (a specific type of intelligent agent that acts on a customers or businesss behalf to
automate transactions) are catching on and have reached up to 5% penetration. In all these cases,
however, these are lightweight agents and applications of agents, with the mainstream of agent
technologies still to engage the marketplace.
2 Agent-based Systems in the Enterprise
Todays enterprise computing environment is demanding of applications in terms of performance and
scalability, adaptability, and verifiability. Because of this, many successful agent prototypes fail when
moved into production environments. Enterprise-class workloads, for example, are typified by high
volumes of relatively simple transactions, and relatively fixed interaction patterns. By contrast, most
multi-agent runtime platforms support low volumes but complex interactions with each other and withtheir environment.
The task of mapping agent concepts and the necessary runtime support services onto enterprise
transaction platforms (such as J2EE) is not a trivial process. Important issues include dealing with
threads, knowing when and how to use stateless and stateful objects in an agents implementation, agent
identity, object and database locking, support for the EJB containers interface, efficient agent belief or
data persistence, and support for loosely-coupled inter-agent communication. Other important
characteristics of the enterprise that an agent-based system must address include reliability,
extensibility, maintainability, and the need to coexist in todays highly secured and intensively managed
operational environments. Each of these issues requires the application of a range of techniques and
approaches to reach a workable solution. Agent platforms (and agent product vendors who claim
enterprise-ready runtime and operational platforms) must have viable enterprise technology foundationsas well as solid answers to all of these concerns.
2.1 Agents and Business Process Automation
A critical concern in mapping agents onto enterprise application architectures is the positioning of
agents in the landscape of services (specifically Web Services and WSDL), and business process
automation. The current momentum of vendor support behind the emerging business process modelling
(BPM) standards will ensure rapid and global adoption of web services, investment in BMP tools and
creation of BPEL models, and the widespread deployment of BPEL engines in medium to large
enterprises.
Agents most naturally fit at the business process orchestration level of an enterprises technology
stack, from where they can monitor the enterprise environment and take action to pursue goals. Figure1 illustrates agents as controllers in the enterprise technology stack. Adoption of enterprise
orchestration agents will not happen quickly, however, for several reasons. Firstly, the enterprises
existing software and business process controllers are deeply embedded inside monolithic applications
such as ERP, MRP and call-centre solutions. Secondly, enterprises will (correctly) be cautious about
delegating control of business-critical processes to a new class of software application and underlying
technology, new products, and new vendors. As a consequence, the take-up of the technology in the
enterprise will not be rapid (as Gartner predicts).
However, much can be achieved by relatively simple but nonetheless useful point-solutions and
simple multi-agent solutions. Initially, we expect to see agents as natural providers of complex services
to the business process execution plane, or as non-invasive monitors operating off to one side of the
enterprise technology stack. Agents will incrementally advise, and then over time, begin to replace
human operators in an enterprises business process architecture. Figure 1 therefore represents the to
be picture for agents as process controllers in the enterprise.
A g e n t i s I n t e r n a t i o n a l 2 0 0 5 T a y l o r , E v a n s - G r e e n w o o d , O d e l l 3
8/10/2019 Agents in the EnterprAgents in the Enterprise
4/10
A G E N T S I N T H E E N T E R P R I S E A S W E C 2 0 0 5
System Application Resource
Transport
EAI
BPM Workflow
Agent System
System Application Resource
Transport
EAI
BPM Workflow
Agent System
Figure 1: Agents as control lers in the enterpr ise technology s tack.
On the surface, BPM appears to present a mismatch between business process execution and an agent-
orchestrated business processes, since BPEL provides a formal, executable notation for modelling
business processes, without explicit regard for dynamic, in situ agent-based decision-making. Put
another way, BPEL requires the modeller to have anticipated all possible paths at modelling time and
does not support constructs that explicitly support agent-like decision-making. Further down the track,
we consider that agents will populate the business process execution layer, adding value to BPML
execution by adding heuristic, goal-directed behaviours in places where BPML exceptions become
unwieldy or humans would otherwise need to be involved.
Agent technology allows us to leverage ideas from economics and complex systems theory to create
applications that exhibit the adaptability of systems observed in the natural world. The technologys
non-linear, goal-based trial-and-error nature simplifies the capture of complex business decisions.
Business processes that were previously too exception-rich to be automated (for example, real-time
logistics management and optimization, or mortgage approval) will become reachable with agent tools.
Where agents are embedded in enterprise business process flows, they will facilitate new levels of
adaptability by allowing continuous and incremental process change (and process improvement)
without downtime.
2.2 Semantic Gap
We see other benefits to the business from socially structured, agent-based business systems. The
agent paradigm lifts the level of abstraction at which the enterprise system designer works. Increasing
the solution design and programming abstraction levels also allows us to reduce the language barrierbetween a business stake-holders understanding of the business problem and its agent-based solution.
The task of implementing business knowledge in an enterprise application normally falls to
application designers and developers. Agent technology promises to eliminate this effort by allowing
business analysts and stakeholders to work in the language of the problem (the agents, goals, and
relationships). Agent-based solutions will achieve a higher level of transparency by allowing business
stakeholders to directly validate implemented functionality, thereby improving business confidence and
avoiding the constant friction between the businesss understanding of requirements and the developers
implementation in a programming language that is opaque to business people. The business results are
reduced time-to-market, increased quality, and responsiveness to change.
A g e n t i s I n t e r n a t i o n a l 2 0 0 5 T a y l o r , E v a n s - G r e e n w o o d , O d e l l 4
8/10/2019 Agents in the EnterprAgents in the Enterprise
5/10
8/10/2019 Agents in the EnterprAgents in the Enterprise
6/10
8/10/2019 Agents in the EnterprAgents in the Enterprise
7/10
8/10/2019 Agents in the EnterprAgents in the Enterprise
8/10
A G E N T S I N T H E E N T E R P R I S E A S W E C 2 0 0 5
3 Agentis Agent Technology Offering
The three agent-based solutions described have all been developed and deployed in enterprise
environments by Agentis using the AdaptivEnterprise suite of products. Agentis International was
founded in 2001 to commercialize the software assets of the Australian Artificial Intelligence Institute
(AAII). Agentis product, the AdaptivEnterprise suite, employs the Belief-Desire-Intent model of
agency at its core and has direct lineage back to the Procedural Reasoning System, a BDI agentplatform jointly developed between Stanford Research Institute and NASA to support real-time fault
detection applications for the Space Shuttle program in the 1990s. Agentis has successfully deployed
agent-based solutions using its AdaptivEnterprise product in the financial services, insurance, retail and
distribution, logistics, and utility (energy) industries in the US, in Europe and Australia.
J2EE Cluster
Client
Web Proxy
or
Hardware LoadBalancer
Database Database
App Server
App Server
App Server
Web
Container
EJB
Container
Struts-based Servlet
Servlet session
Servlet session
Servlet session
Custom
Struts
Actions
CustomJSPs
Agent
API
Agent Server
Agent Instance
Agent Instance
Agent Instance
Session Bean
Plans
Services
Facilities
Entity Bean
StateState
Message BeansEvents
Replication
Requests
Integration Facilities
Responses
JDBC JMS Web Srvc
EJB API JavaBean
Security
Transaction
Logging
Monitoring &
Management
Connection
Pooling
CommonServices
RMI
JMS
Web Service
J2EE Cluster
Client
Web Proxy
or
Hardware LoadBalancer
Database Database
App Server
J2EE Cluster
Client
Web Proxy
or
Hardware LoadBalancer
Database Database
App Server
App Server
App Server
Web
Container
EJB
Container
Struts-based Servlet
App Server
App Server
Web
Container
EJB
Container
Struts-based Servlet
Servlet sessionServlet session
Servlet session
Servlet session
Custom
Struts
Actions
CustomJSPs
AgentAPI
Agent Server
Agent InstanceAgent Instance
Agent Instance
Agent Instance
Session Bean
Plans
Services
Facilities
Entity Bean
StateState
Message BeansEvents
Replication
Requests
Integration Facilities
Responses
JDBC JMS Web Srvc
EJB API JavaBean
Security
Transaction
Logging
Monitoring &
Management
Connection
Pooling
CommonServices
RMI
JMS
Web Service
Figure 5: Agent is Adapt ivEnterpr ise product runt ime archi tecture .
Agentis AdaptivEnterprise achieves enterprise acceptability by supporting packaging and deployment
of its agents to industry-standard J2EE application servers. Agentis has invested significant applied
research and product development effort into producing and verifying the mapping between the kinds ofagent concepts outlined earlier and the standard J2EE mechanisms. Figure 5provides a sketch of the
products runtime architecture.
Individual agents are deployed as stateless or stateful session beans, with or without beliefs (agent
data) that can be made to persist between invocations. Each agent bean includes a small runtime
component that manages that agents plan library, its perceptors (using JMS), its public interface, and
the runtime mechanism to select and schedule plans based on the selected goals, the state of the agents
beliefs, and the evaluation of preconditions. Agents may request services from other agents using
synchronous (RMI) or asynchronous (via JMS) requests. Agents may have explicit identity assigned to
them by the AdaptivEnterprise runtime services, or they may be anonymous, which allows pooling of
agents for high performance. Each individual agent may use an associated entity EJB for cached belief
persistence, and all agents are deployed with their own MDB for messaging support. Autonomy issimulated using timers and schedulers, which may be used from an external source or from the
A g e n t i s I n t e r n a t i o n a l 2 0 0 5 T a y l o r , E v a n s - G r e e n w o o d , O d e l l 8
8/10/2019 Agents in the EnterprAgents in the Enterprise
9/10
A G E N T S I N T H E E N T E R P R I S E A S W E C 2 0 0 5
application server. Each agent has access to the full range of application server services for
transactions, security, logging, and connection pooling, as well as to the industry standard interfaces,
including JMS, JDBC, JCA, JMX, the J2EE EJB API, and the JavaBean API.
The AdaptivEnterprise Suite extends agent concepts into the web server by providing tools and
templates to support the development of JSP-based user interfaces using the Struts MVC framework.
This support includes reference and sample JSPs, the ability to simulate agents using intelligent stubs,and tools to automate and manage the JSP-to-agent interfaces during development.
Deployed agents are fully replicable across a J2EE cluster allowing failover and fail-back for high
availability operation. Warm or hot-deployment also allows operations staff to deploy a single agent, or
an agent component of a multi-agent solution, into the operational environment without having to halt
the application server or the entire application. Extensive performance profiling has been done across a
wide range of agent-based enterprise applications to demonstrate that the AdaptivEnterprise agents
perform similarly to hand-crafted Java EJB applications. The AdaptivEnterprise platform supports
some optimisation options in the inbuilt code generator.
At the time of writing, Agentis technology and product roadmap for AdaptivEnterprise includes IDE
and integrated product support for standards-based agent communication languages, a blackboard for
inter-agent communication and scheduling, flexible deployment of BDI agent models in a range ofruntime deployment containers, and many other enterprise integration and multi-agent features.
4 Conclusion
Agent technology promises much but is still considered to be some way from being mainstream. Its
further adoption is somewhat dependent upon its maturing into enterprise development environments,
standard interfaces, operational platforms, and high volume workloads and throughputs. None of these
inhibitors are insurmountable. Solving them involves bridging between the promising world of agents
and the uncompromising world of the enterprise. The Agentis AdaptivEnterprise product is one of
several examples in the marketplace of enterprise-ready agent development platforms.
There is much to like about what agent technology can bring to the enterprise. In particular, ourexperience of developing agent-based applications for the enterprise highlights the way the paradigm
offers the solution architect a set of natural structures for designing enterprise solutions and
applications. From our experience, we reinforce anthropomorphism as a useful basis for decomposing
the next generation of complex, loosely coupled business systems. The description of three agent-based
solutions that primarily employ anthropomorphic agents, incrementally replacing human decision-
making, in three different industries and problem spaces, illustrates a workable tactic.
Agentis approach is to promote the technology incrementally, starting with small, but highly visible
point-solutions that automate a particularly troublesome decision point in a high-value business process
that had not yielded to automation to date. These are tactical solutions to pressing workflow
problems. Beyond this, multi-agent solutions can be proposed, designed and delivered, using the same
anthropomorphic approach to system structuring, and the same iterative and incremental approach for
each agent point-solution. At each scale and stage of development, the multi-agent solution remains
highly adaptable.
Successfully designing and deploying agent-based solutions in the enterprise mixes this discipline and
freedom in a way that existing technologies have never fully allowed. Ultimately, it may be the
adaptability of agent-based solutions that propels them into enterprise space.
5 References
(AgentLink III, 2004) Agent Based Computing: Technology Roadmap and Consultation Report,
December 2004, AgentLink.
(Gartner 2004a) Hype Cycle for Application Integration and Platform Middleware, Gartner, 2004.
(Gartner 2004b) Hype Cycle for Application Development, Gartner, 2004.
A g e n t i s I n t e r n a t i o n a l 2 0 0 5 T a y l o r , E v a n s - G r e e n w o o d , O d e l l 9
8/10/2019 Agents in the EnterprAgents in the Enterprise
10/10
A G E N T S I N T H E E N T E R P R I S E A S W E C 2 0 0 5
(Gartner 2004c) Hype Cycle for Human-Computer Interaction, Gartner, 2004.
(Gartner 2004d) Hype Cycle for B2B CRM Technologies, Gartner, 2004.
(Gartner 2004e) Hype Cycle for the Knowledge Workplace, Gartner, 2004.
(Gartner 2004f) Hype Cycle for Supply Chain Management, Gartner, 2004.
A g e n t i s I n t e r n a t i o n a l 2 0 0 5 T a y l o r , E v a n s - G r e e n w o o d , O d e l l 1 0