Redesigning Software Procurement through Intelligent Agents

Redesigning Software Procurement through Intelligent
Agents
From: AAAI Technical Report WS-98-13. Compilation copyright © 1998, AAAI (www.aaai.org). All rights reserved.
Mark Nissen, Naval Postgraduate
School, 555 Dyer Rd. Code SM/Ni, Monterey, CA93943; e-mail:
MNissen@nps.navy.mil.
Anshu Mehra, Gensym Corporation,
125 Cambridge Park Dr., Cambridge, MA02140; e-mail:
AMehra@gensym.com.
Abstract
Software procurement represents a process of vital
importanceto most enterprises in the public and private
sectors, but particularly in the U.S.government,
the software
procurement
processis highly pathological.Intelligent agent
technology offers the potential to remedythis process
pathology and an agent-based redesign transformation is
recommended
to dramatically improvethe performanceof the
software procurementprocess. This paper outlines a number
of contemporary
agent applicationsand presentsthe results of
a measurement-driven
redesign analysis of the government
software procurement process. Wediscuss intelligent
software procurementagents that are developedto automate
and support this processusing a noveltool called the Agent
DevelopmentEnvironment(ADE).The paper highlights the
behavior and utility of intelligent software procurement
agents and presentssomepreliminaryresults associated with
their application to an operationalgovernment
organization.
Weshow howthis agent-based process redesign offers
excellent potential for improvement
in both cost and cycle
time for the process and offer an agenda for continued
researchalongthese lines.
Redesigning
Software
Procurement
Withthe passageof each productlifecycle, softwarebecomes
increasinglyimportantto efficiencyand effectivenessin the
public andprivate sectors alike. Many
majorcorporationsrely
on the powerof information technology (IT) to compete
effectivelyin this fast-paced,hypercompetitive,
globalbusiness
environmentof today, and the military has 10nginvested in
software-intensive weaponand communication
systems. With
an expanding mission but declining budget, the U.S.
government
is fast becoming
software-dependent
as well, as it
represents the largest single buyer in the world with an
estimated $40Bworth of annual software procurement(STSC
1996).
However,U.S. govemment
procurementlead times
are notoriously long and the time required for software
purchasesoften exceedsthe productlifecycles themselves.It
widelyemployslinear, bureaucratic,paper-based,regulationladen procurementprocesses, even whenbuying the same
commercial off-the-shelf
(COTS) sottware used
consumers,for example. Althoughthe govemment
has made
considerableprogressin terms of procurementover the last
fewyears(e.g., acquisitionstreamlining,usingEDI,eleclronic
bulletin boards, emphasizingCOTS
software, establishing a
preferencefor commercial
specifications and standards), its
procurement process will always be disadvantaged with
respect to those foundin the corporatesector. Theimmense
size of the government
organimtion,requirementsfor public
Irust and accountability,socioeconomic
legislation and other
attributes all contributeto this result. In fact, the government
mustdevelopsuperiorprocessesjust to achieveparity withthe
privatesectorin termsof processefficiencyandeffectiveness.
In this paper, we employ measurement-driven
inferenceto diagnosea number
of pathologiesassociatedwith
the govemment
procurementprocess and use the results to
redesign software procurementthroughan intelligent agent
application. This agent technologyserves to enforceprocess
integrationbetween
buyerandseller, takes advantageof global
connectivity, satisfies regulatory requirementswith even
greater consistencythan is possibletoday,and automatesmost
of the softwareprocurement
processwith attendantsavingsin
terms of cost and cycle time. Whenimplemented
to augment
the govemmenfs
suite of legacy, current and emergingIT
tools, this agent application can effect the kinds of quanUma
performanceimprovementssought through process redesign
(Davenport 1993). Weprovide a brief overview of some
exemplaryintelligent agent applications in the following
section andthen outline the key steps and results associated
with redesign of the software procurementprocess. The
architecturefor our intelligent agentapplicationis discussed
subsequently,
followedbythe case of its initial applicationin
the govemment
acquisition domain.Weclose the paper with
an agendafor continuedresearchalongthese lines.
Intelligent
Agent Applications
Workin the area of softwareagents has beenongoingfor some
timeand it addressesa broadarray of applications.Indeed,one
neednot researchtoo far backin the literature to identify a
plethora of agent exarnpleg zo manythat any attempt to
reviewthem, evenbriefly, wouldconstitute a journal-length
paperin andof itsel£ In this section weprovidea high-level
overviewof extant agent applications,withparticular emphasis
on a framework
to relate themwiththis presentwork.
It is informativeto groupextant agentapplications
into four classes: 1) information
filtering agents,2) information
reWievalagents,3) advisoryagents,and 4) performative
agents.
Briefly, mostinformationfiltering agentsare focusedon tasks
suchas filtering user-inputpreferencesfor e-mail(e.g., Maes
1994, Maloneet al. 1987), networknewsgroups(Sycara and
Zeng1996), frequently askedquestions (Whitehead1994)
arb. iwarytext (verity 1997). Informationrelrieval agents
address problemsassociated with collecting information
pertaining to commoditiessuch as compactdisks (Krulwich
n.d.) and computerequipment(uVision1997),in addition
services such as advertising (PriceWatch1997)and insurance
(Insurance 1997). Wealso include the ubiquitous Web
indexingrobotsin this class (see EtzioniandWeld1995)along
with Web-basedagents for report writing (Amulet1997),
publishing(InterAp1995)and assisted browsing(Burkeal.
1997).Agentsfor technical informationdelivery (Bradshaw
al. 1997) and information gathering (Knoblochand Ambite
1997)are not Web-based
per se, but they performa similar
function.
Athird class of agentsis orientedtowardproviding
intelligent advice. Examplesinclude recommendations
for
CDs(Maes1997), an electronic concierge(Etzioni and Weld
1995),an agent ’qaost" for college campusvisits (Zengand
Sycara1995)and planningsupport for manufacturingsystems
(Maturanaand Norrie 1997). Agentsfor strategic planning
support(Pinson et al. 1997), softwareproject coordination
(Johar 1997)and computerinterface assistance (Ball et al.
1997)are also groupedin this class, alongwith supportfor
militaryreconnaissance
(Buiet al. n.d.) andfinancialportfolio
management
(Sycamet al. 1996). Performativeagents in the
fourth class are generally oriented towardfunctions suchas
business transactions and work performance. Examples
include a marketplacefor agent-to-agenttransactions(Chavez
and Maesn.d.) andan agent systemfor negotiation(Buin.d.),
in addition to the performanceof knowledgeworksuch as
automated scheduling (Sen 1997, Walsh et al. 1997),
cooperative learning (Boy 1997) and automated digital
services (Mullenand Wellman
1996).
The intelligent software procurement agents
developedthrough this present research are probably best
categorized in the fourth group above(i.e., performative
agents), but they havebeendesignedto also exhibit behaviors
suchas information
filtering andreWieval,andtheir use canbe
accomplished
throughsimulation(i.e., in an advisoryrole) as
wellas enactment
(i.e., the performative
role). Thus,intelligent
softwareprocurementagents havesimilarities with examples
fromeach of the four classes above.To further descnl~eand
differentiateintelligent supplychainagents,wehaveintegrated
the agent-taxonomywork of Franklin and Graesser (1996)
witha three-dimensional
structure fromGilbertet al. (1995)
developthe analytical framework
presentedin Figure1.
Collaboration
Parallel
processing
ISCA
E
Expert systems
Intelligence
programming
Mobility
Figure 1 Agent Framework
In this framework
weuse the sameintelligence and
mobilitydimensionsnoted in the three-dimensionalslruaxa~
above, but with the substitution of the new dimension
collaborationin lieu of autonomy/agency.
This follows the
presumptionof agent autonomyslressed by Franklin and
Graesser. For purposeof discussion, wehaveannotatedlifts
three-dimensional
space with one, relatively "pure"exemplar
from each dimension. For example, manyexpert system
applicationsare quite extensivein termsof formalized,expertlevel intelligence, but they traditionally are not designedto
operateon foreignhosts nor do theygenerallycollaboratewith
other expert systemsto jointly solve problems.Similarly,
/emote programmingof the sort enabled by Java and
Telescript equipprogramsto executeon foreign machines,but
these proceduralapplications are not generallyendowed
with
the capability for intelligent inferencenor are they usually
thought of in terms of collaborative processing. Likewise,
parallel processinghas an explicit focus on collaborative
problemsolvingbetweenmultiple,parallel processors,but this
problem solving is usually focused more on procedural
processingthan intelligent reasoningandexecutionon foreign
hosts is rarely envisioned.Clearlyexceptionsexist for each
class (e.g., distn’outed
AI,intelligentJavaagents,etc.), butthese
three exemplarsshould conveythe basic conceptsassociated
with each dimension.
Notice the annotation for intelligent software
procurementagents (labeled "ISCA"in the figure). Although
this class of systemsis not as exlremeas any of the three
exemplarsfrom above along any particular dimension, it
occupies a position roughly in the middle of this threedimensionalagent space;all three of the exemplars
fromabove
are situatedalongonlya singleaxis. Thisaddsto the challenge
of our agent development
work,but it serves to enablea new
set of capabilitiesthat proveto be quiteeffectiveandusefulfor
operational processes such as software supply chain
management.
Withthis in mind, we tumnowto the sottware
procurement
processredesign.
School(NPS).Althougha leading, accrediteduniversity like
mostschoolsthat offer graduatemanagement,
engineeringand
like degrees,NPSis also a government
institution. Thea~fore
it
is subjectto all the sam
lawsandregulationstiara
e procurement
govem
the purchasingactivities of any military unit or federal
agency.
Thecommercial
software order fulfillment process
examinedthroughthis investigation pertains to workdoneby
the Product and Licensing Department at Gensym
Corporation.Gensym
is a leader in software for developing
intelligent real-time applications and maintainsan active
researchand development
activity that drives frequentproduct
inlroductions,updatesandreleases. Thereforeit representsthe
kind of rapid productevolutionthat has beenproblematicfor
government
procurement.
Thehigh-level processdelineatedin
Figure 2 depicts the integration of the User, NPSSupply
Department
and softwareConlractor.
User
IDrq~ts
Supply
Dept
Contractor
Vedfyform
¥
Y
Reseercll
$oui’oes
Software
Procurement
Process
Redesign
Source
selection
The governmentprocurementprocess is costly and timeconsuming,particularly with respect to IT. There are many
instances of procurementstaking so long that purchased
software becomesobsolete before it is received by the
government
user and put into place in the organization, for
example.Becausethe set of processesassociatedwith software
procurementappear to be so pathological for the govemment,
wefocus our initial redesignactivities on this area, andwe
include the corresponding order-fulfillment processes
associatedwithcommercial
softwarevendorsto analyzea twosegment
supplychainprocessin this section.Wefirst inlroduce
the integratedsupplychain processand then step throughthe
measurement-driven
inferenceassociatedwithits redesign.
Integrated
Supply Chain Process
Asnoted above,twoprimaryprocessesare involvedwith this
supply chain----government software purchasing and
commercialsoftware order fulfillment--and we present and
discusstwoprocessinstances in termsof a single, integrated
whole; that is, both purchasingand order fulfillment are
modeledas a single process that spans organizational
boundaries.Specifically, the government
softwarepurchasing
processexaminedthroughthis investigation pertains to work
done by the SupplyDepartmentat the Naval Postgraduate
IssueRFC
Analyze’~
qootas
,s Prepquote=
~b’Issuaol~lb~
Usegoods
Receive good~
FulflllCrder
SendInvoice
Make peymen~ ¯ ]~ Deposit
fund8
Figure2 IntegratedSupplyChainProcess
Theprocess beginswith a user in the organization
identifying a needand determininghis or her preliminary
software requirements. A market survey follows with the
marketinformation(e.g., products,capabilities, companies,
prices, etc.) used to completea (paper-based)procurement
request form.This formis submittedto the SupplyDepartment
for processing,in whicha Buyerverifies the form(e.g., in
terms of completeness,required documentation
sueh as solesourcejustification, adequatebudget,etc.) andthenresearches
somepotential sources for procurement(e.g., existing
conlracts, approved-vendor
lists, small/disadvantaged-business
fists, etc.) in additionto the sourcesidentified throughthe
marketsurvey. AnRFQis generally issued and quotationsare
analyzedby the Buyer,whothen Summarizes
the information
for reviewandsourceselectionby the user. Apurchaseorder is
then issuedandthe transactionis completed
as the softwareis
deliveredto the user andpayment
is made.
Not shown in the figure is the underlying
knowledge,expertise and information that is required for
people to perform the software purchasing and order
fulfillment processesdepictedabove. For example,the user
must knowhowto conducta marketsurveyand haveaccess to
alternative sources of software supply, as well as an
understanding of the basic procedures for govemment
procurementand information pertaining to the specific
purchaserequestformused. Similarly,the Buyermu.stpossess
thoroughknowledgeof the Federal Acquisition Regulation
and knowhowto review the purchase request (e.g., what
constitutes completeness, when to request additional
information,etc.) and havecurrent informationpertaining to
alternative sourcesof supply. TheBuyermustalso haveaccess
to one or moresuppliers’ systemsto be able to post the RFQ
and requires knowledgeof the procedures required for
quotation analysis and source selection. Access to and
understanding of the receiving and paymentsystems and
proceduresis also necessaryto completethe transaction,andof
course vendor personnel must understand the policies,
proceduresand systemsassociated with software product and
licensing. These kinds of knowledge, expertise and
informationsuggestthat an intelligent systemmayoffer good
potentialto supportthis integratedprocess.
Process Redesign
To redesign this integrated process, we employ the
measurement-drivenmethod described in Nissen (1996,
1997a, 1997b), which obtains measurementsfrom a graphbased process representation to diagnose pathologies and
recommend
redesign transformations. The knowledge-based
methodand technologyhave been successfully employedto
redesigna numberof govemment
procurementprocesses(e.g.,
see Nissen1997c), and we highlight each of the key steps
below.
Step1. Modelbaseline process. In termsof processredesign,
the baseline(i.e., "as is" processthat exists beforeredesign)
process is the one diagrarmned in Figure 2 above.
Measurement-driven
inference requires a representation that
supports automatedmeasurement,so weconvert the informal
model from above into an a~ibuted directed graph (Adigraph)as shownin Figure3. Withthis model,each process
activity is representedas a nodelinked to predecessorsand
successorsby directed edgesin the graph. Toavoid clutter,
onlythe first sevenactivities are shown
in the figurefor this
baselineprocess.Forreference,wealso list a representativeset
of atlributes associated with the "ResearchSources"step.
Theseinclude, for example,role and cardinality of the agent
responsible for performingthe activity, along with the
correspondingdepartmentand organization, inputs to and
outputs from the activity, and classes of tools and
communications
used to supportthe processand its products.
Asan A-digraphrepresentation, this modelsuppo~automatic
process measurementusing our graph-based measurement
scheme.
ID
Mkt
PR
Verify
Rsch Issue
Prep
- Level(1)
- Type(A)
- Agent (SupO)
- Cardinality(1)
- Dept(Supply)
- Org (NPS)
- Inputs (verified_PRform)
- Outputs(vendor_list)
- Tools (DBMS)
- Communication
(paper)
Figure3 Baseline A-Digraph
Representation
Step2. Measurebaseline process. Measurements
are obtained
by countingcertain nodes,edgesand atlributes that possess
heuristic value in terms of process diagnosis. Someof the
relevantmeasuresand baselineprocessvalues are presentedin
Table1 for discussion. Details associatedwith the measures
andmeasurement
processare providedin the referencesabove.
Fromthe table, wesee that the processis comprised
of twelve
activities(i.e., size = 12)and,as a sequentialprocessflow,it
twelvesteps in length. Theparallelismmeasurement
(1.00 is
theoreticalminimum
for this measure)is calculatedas the ratio
of size dividedbylengthandquantifiesthe sequentialnatureof
this baseline process instance. The other measures are
expressed in terms of normalized attribute counts. For
example,the handofffraction (0.67) indicates that roughlytwo
thirds of. the processactivities are associated with timeconsuming
handoffsfromone organizationalrole to another.
Suchhandoffsare often associated with worksitting in inboxes and out-boxes, awaiting agent assignment,managerial
approval,couriers,mailserviceandlike activities that amwell
knowncontributors to cycle time. Thethree IT fractions am
used to quantifythe extent to whichthe processinvolvesITbasedsupport, communication
and automation,respectively.
Zerorepresentsa theoretical minimum
for these measures.
Step 3. Diagnoseprocess pathologies. The measurements
presentedin Table1 offer heuristic value in termsof process
diagnosis, and the diagnostic implicationsof these measures
am also shownin the table as they pertain to process
pathologies.Forexample,wenotedabovethat processfriction
has a well knownimpact on process cycle time, as do
sequential process flows and paper-based communications.
Likewise, manual,labor-intensive processes are also well
knownto suffer fromrelatively high cost. Thesediagnosed
pathologiesare usedin tumto matchredesigntransformations.
Table 1 Baseline Process Measurements
Measure
Value Diagnosis
Processsize
12
Processlength
12
Parallelism
1.00"
Sequentialprocess
Handoffsfraction
0.67
Processfriction
IT-Supportfraction
0.25
Manualprocess
1T-Communication
fr. 0.00"
Paper-basedprocess
IT-Automation
ft.
Labor-intensive
process
0.00"
i!!i
Software Proceu2
Figure 4 ADEArchitectural Schema
Step 4. Matchredesign Wansformations.Several redesign
Iransformationsare matchedwith the pathologiesdiagnosedin
the precedingstep. For example,the sequential processflow
matcheswith a de-linearize Wansformation
(i.e., performing
someprocesssteps in parallel as opposedto serially), but
check of inputs and outputs for each step precludes the
activities of this processfrombeingperformedwith greater
concurrency;
that is, the outputfromeachstep is requiredas an
inputto the next,so de-linearization
is infeasible.Altematively,
the combination
of processfriction witha manual,paper-based
process flow matcheswith a workflow-system
Wansformation
to supportthe processactivities. Further,the labor-intensive
process (i.e., absence of automation) matcheswith the
diagnoses above to suggest that an intelligent agent
transformationmayaugnaentthe workflowsystemto further
enhanceprocess performance.Clearly manyother redesign
recommendations
can be madefrom these measurementsand
diagnoses,but these are directly applicable to the present
discussion(i.e., intelligent agenttransformationof sottware
procurement).Wenowdiscuss the architecture associatedwith
our intelligent procurement
agent Wansformation.
Agent Development Environment
Architecture
and deploy agents. ADE
is built on G2,. an object-oriented
graphical environmentthat offers a robust platformfor the
development
of intell/gent real time systems. ADEsupports
the developmentof multi-agent applications capable of
runningon a single machineor on a dislributed network.The
mainADE
components
are Agent, Message,ActiviOp,Host and
Environment.
In this section webriefly outline eachin turn,
followedby a discussionof agent simulation.Webeginwith a
high-levelarchitecturalschema
that inter-relates eachof these
ADE
components.This is diagrammed
in Figure 4.
and
Agent DevelopmentEnvironment(ADE)is the integrated
development
environmentto design, develop,debug,simulate
5
O
-~’Agent.
In ADE, agents communicate through
messagesor events (a subclass of message).ADE
provides
basic direct addressingmessageservice, with someoptional
functionality (e.g., guaranteeddelivery, messagebroadcast,
subject-based addressing). ADEuses delegation basedevent
handlingsimilar to the JavaBeansmodelin whichagents use
messagesto generateand listen for events. Eachagent has a
network-wide unique name. This enables communication
amongagents dis~buted across a networkto be independent
froman agenf s location. Agentsrefer to each other by their
nameand the nameof an agent cannot be changedduring its
entire "life."ADE provides a "Yellow Pages" lookup
capability;that is, specificpropertiescanbe definedfor agents,
enabling other agents to send messagesqualified by their
properties. Eachagent can querythe yellowpagesto find the
namesof agentsmatchinga specific Booleanset of properties.
Agentscan be dynamicallycreated, deleted, clonedand moved
across the network.ADEprovides a base agent class called
AdeAgent. AdeAgentcan be specialized and augmentedby
application-specific agent types. Exampleagents include
ResourceMonitoringAgent, ManufacturingCellAgent and
JobBrokerAgent.
Agents in ADEare autonomous, multi-threaded
objectswiththeir ownstate. Eachthreadof control of an agent
is represented by an activity instance. An agent can
concurrently performmultiple activities. For example,a
MachineToolAgentcan be concurrently performing two
activities: monitoring
a machine
job andnegotiatingfuture jobs
with other agents. Messagesand other events are sent, and
listened for, within the context of a specific activity of an
agent. Agentactivities are definedeither using the Grafcet
graphicallanguage(discussedbelow)or directly withmethods
for activitysubclasses.
Message.ADEprovides a base level messageclass
of type AdeMessage.
Agentscommunicate
with each other by
sending objects of type AdeMessageor its subclass. A
messagecontains the destination agent name.Messagesare
handledby agentactivities. Amessage
can be sent to a specific
activity of an agent. In ADE,no acknowledgment
is required
for messages.Exchangeof messagesbetweenagents maybe
synchronousor asynchronous.A synchronousmessageblocks
the activity of the agent until the reply is receivedfromthe
agent to whichthe messagewassent. Alternatively, an agent
maycontinueto performits activity withoutblocking.It is
assumedthat messagestake a finite amountof time to be
delivered. Thus,it is possiblefor messagesto get delayedor
lost, andfor messages
sent in oppositedirectionsby different
agentsto cross oneanotherO.e., bothbe in transit at the same
time). ADE
supportstwo majorsubclasses of AdeMessage:
(i)
AdeSolication is a messagefor which the sending agent
expectsa reply; and, (ii) AdeAssertion
is a messagefor which
the sendingagent expectsno reply. Messagesare used for the
commtmicationbetween agents and between the different
activities of the sameagent. Communication
betweenagents
andexternal devicesor processesis also accomplished
through
messages. A subclass of AdeMessagecalled AdeEventis
providedin ADE
for discrete event simulation.
I
Activity. Anactivity definesa specific behaviorof an
agent. AdeActiviO~class provided in ADEfacilitates the
development
of a multi-threadcapability withoutdealingwith
threads, stacks and priorities. Anagent maybe concurrently
performing
multipleactivities of the sametype or of different
types. Withinan activity, multiplethreadsmaybe active at the
sametrine. Messages
sent to an agentmayeither initiate a new
activity or maycontinuea dialog withan ongoingactivity. In
the first case,the agentstarts a newthreadof activity. During
execution of an activity the agent can send and receive
synchronousand asynchronousmessages.Oncean activity is
started, the messagecan be sent directly to it. Anactivity
maintainsa queueof receivedmessages.Withinan agent, the
AgentHandler
definesthe destinationactivity for eachmessage
received. This handler is called whena messagedoes not
identify its destinationactivity, whichusuallyoccurswhenan
agentis initiating communication
withother agents.
Activities are defined either as methodsor using
Grafcets.AdeGrafcetis a graphical languagethat showsboth
parallel andsequentialcontrolstructuresin easy-to-understand
pictorial form. AdeGrafcetis an extension of Grafcet, or
SequentialFunctionCharts(SFC),a grapl;fical languagethat
has beenacceptedas an induslrial standard(IEC848and IEC
1131-3)for local, PLC-levelsequential logic control (David
and Alia 1992).A GrafcetChartcontainsNodesandthe Links
amongthemdefine the flow of control of the activity of an
agent. The main types of nodes are Steps, Trams#ions,
MacroSteps,
IterativeSteps andProcessSteps.Them~fintypes
of links are Branches
andJoins.
A Step representsa state, phaseor mode.Associated
with a step are actions.that are performedwhena step is
activated. In standardGrafcetthe actionsthat canbe donein a
step are of a Booleannature, whereasAdeGrafcetactions in
steps are moregeneral; they can be compared
withstatements
of a conventionalprogramming
language. Messagestatements
to other agents maybe embedded
in the action of a step, and
actionsare intemallyrepresentedas procedures.TheIransitions
act as gates onthe flowof control throughthe GrafcetChart.
Eachtransition is associatedwitha conditionthat determines
whetheror not control canpass throughthe transition. In ADE
Grafcet transition conditions are expressed as Boolean
expressionswritten as procedures.Conlrolcan pass througha
transition whenits Booleanconlrol expressionevalo_at~to
TRUE.Wait statements for specific messagesfrom other
agents maybe embedded
in conditionprocedures.
AdeGrafcetalso provides MacroStepas a way to
embedone Grafcetchart in another. IterativeStepenablesthe
definition of embeddedGrafcet Charts whoseprocess is
repeated a numberof times. ProcessStep is a MacroStep
executedin morethan one GrafcetChart Theyare equivalent
to subroutines in standard programming
languages. A Link
connectsstepsto Iransitions.Grafcetallowsa singlestep to be
followedby morethan onetransition, anda single Iransition to
be followed by morethan one step. Thus, Grafcet allows
conlrol to fan-in andfan-out,andGrafcetprovidesfor a choice
betweensynchronousand asynchronousoperations through a
varietyof fan-inandfan-outlinks. Thereare five typesof links:
Asynchronous Branch, SynchrononsBranch, First-Tree
Branch,Asynchronous
Join and Synchronous
Join,
__ Host. In ADE,every agent registers
itself
to
AdeHost.Thereis one AdeHostfor every software processon
whicha multi-agent application is running. AnAdeHostis
responsible for delivering messages,as well as dynamically
initializing, moving,cloningand destroyingagents. When
an
agentis created,it is assignedto a specifichost. Thehost then
installs the agent, registers the agent properties and, if
requested, connectsthe agent to databases, on-line control
systems, etc. The "LocatorService" of a host enables each
agentto locate all the other agentsin the application.When
an
agent moves(e.g., from one machineto another), AdeHost
forwardsall the future messages
to the newaddress.
intelligent softwareprocurement
agents developedto perform
in this environment
and discuss the performance
implications
of this agent-basedprocesswansformation.
IIINII
II IIIINI
Hill
IdentifyneedL
~
,oftwKe mqulrwnen~
ttnd me~to "thLfl(et4~lnt"
to oonduot
rmvket
murv~ry
Environment. ADEsupports agent clusters by
providinga special agent called AdeEnvironment.
Asdepicted
in the figure above, agents belongingto an environmentmay
reside on different hosts. AdeEnvironmentenables
hierarchicalgroupingandencapsulationof agents andprovides
local "YellowPages"services. Althoughagents can moveto
different hosts across a network,an agent maybelongto only
one environment. Agents within an environment may be
disallowed to communicatewith outside agents, and an
environment
can be a cluster of other environments.
AgentSimulation. Becauseagent-basedsystems can exhibit
complexemergent dynamics, simulation is an essential
componentof a multi-agent developmentenvironment. ADE
supports simulation during development through a
SimulcaionAgent
that emulatesthe behaviorof extemaldevices
or processes.In this way,the interaction of agents with the
extemal physical environmentcan be simulated during the
developmentphase. Whenthe multi-agent application is
deployed,the interface withthe Simulation-agents
is replaced
bythe actualinterfacewiththe physicaldevices.
Summary.
In summary,ADEprovides: (i) a predefined class
hierarchy of agents and agent components;(ii) an agent
communications
"middleware";(’hi) a graphical programming
languageto design and developagents’ behaviorbasedon the
Grafcetstandard; (iv) a distributed simulationenvironment
test multi-agentapplications built withADE;(v) a complete
debuggingand tracing environment;and, (vi) a deployment
center to deploy agents in the G2 environment or as
"JavaBeans"
in Java Virtual Machines.
Redesign
Agents and Results
In this section wepresentthe preliminaryresults fromour use
of ADEand application of intelligent software procurement
agents to redesign the govemment
software procurement
process. Webriefly describethe structure and behaviorof the
weJtfor"ulergoodl"
/mel:~le from "supply dlpt"
informtheuaeroodtreceived"
tlmlout
Infon~t~ ualr-
Figure5 Grafcetfor UserBehavior
Agent Structure and Behavior
In orderto describethe structureandbehaviorof the intelligent
software procurementagents developedto performin flats
environment,we drawfrom the ADEdiscussion in previous
sections and beginwiththe Grafcetsdevelopedto supportthe
NPS-Gensym
software supply chain. The first Grafcet,
presented in Figure 5, depicts the user behavior and maps
homomorphically
to the integrated process flow fromFigures
2 and 3. For example,the Gmfcetflow begins with the user
identifying his or her needand determiningthe preliminary
software requirements. The next step involves the market
survey. Noticethe "marketagenf’ that is identified as the
recipient of a task messagehere. Thesupp&chain agentdoes
not care whetherthis task is accomplishedby a humanor
machineagent, so long as the marketsurvey is completed.
Uponreceipt of acceptablemarketsurvey results, the agent
uses its knowledge
of NPSpurchasingproceduresto create the
purchaserequest formwhichis sent to the SupplyDeparlment
for processing.
The corresponding Grafcet for the Supply
Deparlment
is presentedin Figure6, wherethe supplyagent is
"listening" for a purchaserequest. Recall that the agentsare
multi-threaded, so they can be performinga host of other
activities whilewaitingfor suchrequests.Asdepictedin Figure
2 above,the supplyagentverifies the purchaserequest, which
is either retumedfor additional informationor processed
throughthe subsequent
steps (e.g., researchingsources,issuing
RFQ,etc.) depictedin the figure.
.............
FFFF’FF
r~lrl~
irqrrlrrr
subclassing AdeAgent
and describing the agents’ behavior
using Grafcets.
FF
[] []
fulfill
~
verify
order,tend"goodd’
tend"1Involoe"
PORform
~
w~Jtfor"l:ayment
not OK
Bouro~8
depotltfundl
/
lend ’FIFQ" messagm
to ~11
tmotom" of the produot
w~Jt for"quoted’
analyze quote
n
n o "quoIQQ
tirneout
no "quote" OK
Figure 6 Grafcet for Supply DepartmentBehavior
The software contractor behavior is specified
through the Grafcet presented in Figure 7. As above, the
conWactor
agent is multi-threaded,so it can do morethan just
wait for an incomingorder from the NPSSupplyDepartment.
Uponreceipt of suchan order, however,it preparesa quotation
andsendsit to the requestingagent(i.e., supply).If an order
received,the agent’stasks branchto fulfill the order(i.e., send
the software"goods")andinvoice the customer.
Theagents’ activity behaviorsare implemented
via
the GrafcetChartsshownin Figures5-7. Specificbehaviorfor
eachstep andnodeof the Grafcetchart is describedthrougha
method.The distributed nature of the ADEenablesagents to
inter-operate on different hosts (i.e., agents can be
simultaneouslyat the customer’sand supplier’s sites). The
distributed agents can communicatewith each other via
AdeHost.
Thesupplychain application describedin this paper
involvesmultipleinstancesof onlya single agent type for the
user, supply deparlment and software contractor. A
marketspace of multiple agent types can be created by
Figure7 Grafeetfor SoftwareContractorBehavior
Preliminary Redesign Results
Wenotethe preliminarynatureof these redesignresults, for the
workto date has taken us only througha proof-of-concept
demonstration
of the integratedsupplychain agents. Although
we haveobtained measurements
fromthis agent-based, postredesignprocess configuration, we haveyet to simulate the
process performanceor measurethe implementedredesign
through pilot or like testing. Nonetheless, even these
preliminaryresults are veryencouraging
andsuggestcontinued
workalong these lines. Thepost-redesign measurements
are
presented in Table2, along with the correspondingbaseline
process measurements
fromabovefor reference.
Fromthe table one can observe the agent-based
redesigntransformation
has noeffect on processsize, lengthor
parallelism,nor did wepredict that it would.Thus,wesee no
performanceimplications with respect to these measures.In
contrast, the redesignhas a Iremendous
effect on the remaining
four measures--handoffs,IT-Support, IT-Communication
and
IT-Automation
fractions---whichare associated with reduced
cost and cycle time as shownin the table. Althoughwehave
yet to simulateor pilot this agent-based
redesign,results such
as these (e.g., eliminatingprocesshandoffsand dramatically
increasing the density of IT employed
in the process) offer
excellentpotentialto generatethe kindsof performance
effects
noted in the table. Withthis, we feel confident that the
intelligent agents developedthrough this research can be
employedto dramatically improveperformance,not only of
this software procurementprocess, but manysottware and
oflaer procurementprocessesin like organizationsacross a
widerangeof indusWies
and sectors. This leads to our agenda
for continued
researchalongthese lines.
Table2 RedesignProcess Measurements
Measul~
Baseline Redesign
Performance
Implication
Processsize
12
12
Processlength
12
12
PamUelism
1.00’
1.00"
Handoffsfraction
0.67
0.00’
- cycletime
IT-Supportfiaction 0.25
0.92
- cost
IT-Comm.
ft.
0.83
- cycletime
0.67
- cost
0.00"
IT-Automation ~. 0.00’
Continued
process. The simulation results will also be used to
adapt and tailor the supply chain agents. Also, since
software as a product is comprised of digital
information,
the exchange of software-product
information
and the goods themselves can be
performedelectronically. Future work in this area can
utilize EDI and the Webto exchange products and
product information via intelligent autonomousagents,
thus further reducing procurement lead times. The
agent-based commercial transactions between buyers
and sellers can supplant the traditional EDI for
business-to-business commerceand can potentially
increase speed and responsiveness
in today’s
hypercompetitive business environment.
References
Research
In this paper, we redesigned a software procurement
process and described the Agent Development
Environment for developing distributed multi-agent
applications.
Wethen presented a supply chain
managementapplication developed for the government
software procurement process. The application is
extremely important because the U.S. government
¯procurement lead times are notoriously long and the
time required for software purchases often exceeds the
product lifecycles themselves. Althoughtho proof-ofconcept implementation is far from an "industrial
strength" application, it satisfies our feasibility goals
and suggests the agent-based approach and ADE
technology have potential to scale well across multiple
users, customers and vendors. And our measurements
suggest excellent potential for dramatic performance
gains through reduced processcost and cycle time. This
satisfies our primary objective for this early research
stage.
Weare now constructing a simulation model
for the integrated supply chain process that is used at
the Naval Postgraduate School and GensymCorp. We
plan to use simulation to analyze and compare
procurement costs and lead times for the paper-based
"as is" process and the agent-based "redesigned"
Amulet. Amuletonline description. Interact address:
http://www.amulet.com
(1997).
Ball, G., Ling,D., Kurlander,
D., Miller, J., Pugh,D., Skelly,
T., Stankosky,A., Thiel, D., VanDantzich, M. and WaxT.
"Lifelike ComputerCharacters: The Persona Project at
Microsoft," in J. Bradshaw(Ed.). Software Agents. AAAI
Press: MenloPark, CA(1997).
Boy,G.A."SoftwareAgentsfor CooperativeI.eaming,"in J.
Bradshaw(Ed.). Software Agents. AAAIPress: MenloPark,
CA(1997).
Bradshaw,J.M., DutfMd.S. Benoit, P. and Woolley,J.D.
"KAoS: Toward an Industrial-Strength
Open Agent
Architecture," in J. Bradshaw(Ed.), SoftwareAgents. AAAI
Press: MenloPark, CA(1997).
Bui, T. "Intelligent NegotiationAgentsfor SupportingIntemetbasedCompetitiveProcurement,"
workingpaper (n.d.).
Bui, T., Jones,C., Sridar, S. andLudlow,N. "DecisionSupport
for Reconnaissance
UsingIntelligent SoftwareAgents,"Naval
PostgraduateSchoolresearchproposal(n.d3.
Burke, R.D., Hammond,
K.J. and Young,B.C. "The FindMe
Approachto Assisted Browsing,"IEEEExpert (July/August
1997),pp. 32-40.
Chavez,A. and Maes,P. "Kasbah:AnAgentMarketplacefor
Buyingand Selling Goods,"workingpaper (n.d.).
David, R. and Alia, H. Petri Nets and Grafcet: Tools for
Modeling
DiscreteEventsSystems.Prentice-HallInternational:
UK(1992).
David,R. "Grafcet:APowerfulToll for Specificationof Logic
Controllers," IEEE Transactions on Control Systems
Technology
3:3 (September
1995), pp. 253-268.
Etzioni, O. and Weld,D.S. "Intelligent Agentson the Intemet:
Fact, Fiction, and Forecast," IEEEExpert(August1995), pp.
44-49.
Nissen, M.E."ReengineeringSupport through MeasurementDrivenInference," Intelligent Systemsin
Accounting
Financeand Management
Vol 6 (1997b).
Frankfin, S. and Graesser, A. "Is It an Agent or Just a
Program? A Taxonomy for Autonomous Agents," in
Proceedingsof the Third International Workshopon Agent
Theories, Architectures, andLanguagesSpringer-Verlag:New
York, NY(1996).
Nissen, M.E. "Reengineering the RFPProcess lhrough
Knowledge-Based
Systems," Acquisition Review Quarter&
(Winter 1997); also published in the Acquisition Review
Quarterly World Wide Web electronic
library:
http://www.dsmc.dsm.mil/pubs/arq/97arq/nissen.pdf
(1997c).
Gilbert,D., Aparicio,M.,Atkinson,B, Brady,S., Ciccarino,J.,
Grosof,B., O’Connor,
P., Osisek,D., Pritko, S., Spagna,R.,
and Wilson, L. "IBMIntelligent Agent Strategy," working
paper, IBMCorporation(1995).
Pinson, S., Louca, J.A. and Moraltis, P. "A Distributed
Decision Support Systemfor Slrategic Planning," Decision
SupportSystems20 (1997), pp. 35-51.
Insurance. Insuranceonline description. Intemet address:
htlp://www.dmatters.co.uk
(1997).
PriceWatch.PriceWatchonline description. Interact address:
http:/Avww.pricewatch.com
(1997).
InterAp. "InterAp AssignsIntelligent Agentsto the Web,"
PCWeek
(12 June 1995).
Johar, H.V."SoftCord:an Intelligent Agentfor Coordination
in SoftwareDevelopment
Projects," DecisionSupportSystems
20 (1997),pp. 65-81.
Knobloch,C.A. and Ambite, J.L. "Agents for Information
Gathering," in J. Bradshaw(Ed.), Software Agents. AAAI
Press: MenloPark, CA(1997).
Krulwich, D. An Agent of Change. Andersen Consulting
Centerfor Strategic Technology
Research(n.d.).
Maes, P. "Agents that Reduce Workand Information
Overload,"Communications
of the ACM
37:7 (July 1994), pp.
30-40.
Porter, M.and MiUar.V. 1985.
Sen, S. "Developing an AutomatedDistributed Meeting
Scheduler,"IEEEExpert(July/August1997),pp. 41-45.
Sokol, P. FromED1to Electronic Commerce:A Bus~_ss
Initiative McGraw-Hill:
NewYork,NY(1996).
STSC.Guidelinesfor Successful Acquisition andManagement
of SoftwareIntensive SystemsSofl:wareTechnologySupport
Center: Hill AFB,UT(1996).
Sycara, K., Pannu, A., Williamson, M. and Zeng, D.
"DisWibutedIntelligent Agents," IEEEExpert (December
1996),pp. 36-46.
Sycara,K. and Zeng,D. "Coordinationof MultipleIntelligent
Software Agents," to appear in International Journal of
CooperativeInformationSystems(1996).
Maes,P. "Pattie Maeson SoftwareAgents: Humanizing
the
GlobalComputer,"Internet Computing
(July-August1997).
Verity. Verity online description.
http://www.verity.com
(1997).
Malone,T.W., Grant, K.R., Turbak, F.A., Brobst, S.A and
Cohen, M.D."Intelligent Information-Sharing Systems,"
Communications
of the ACM
30:5 (1987), pp. 390-402.
Walsh, W.E., Wellman,M.P., Wurman,P.R. and MacKieMason,J.K. "SomeEconomicsof Market-basedDisln"outed
Scheduling,Submitted
for publication(1997).
Intemet address:
Maturana,F.P. and Norrie, D.H."DistributedDecision-making
Using the Contract Net Within a Mediator Architecture,"
DecisionSupportSystems20 (1997), pp. 53-64.
Whitehead,SID. "Auto-faq: An Experimentin Cyberspace
Leveraging,: Proceedingsof the SecondInternational WWW
Conference
1 (1994), pp. 25-38.
Mullen,T. and Wellman,M.P."Market-basednegotiation for
digital library services," Second USENIX
Workshopon
Electronic Commerce
(November1996).
Zeng, D. and Sycara, K. "Cooperative Intelligent
Software Agents," Carnegie Mellon University
technical report no. CMU-RI-TR-95-14
(March 1995).
Nissen, M.E. "Measurement-Driven Inference for
ReengineeringSupport"; appearedin the Workshop
of AI in
Business Working Notes from the AAAI96 Conference
(1996).
Nissen, M.E. "TowardIntelligent Web-basedRedesign
Support," AAAI
Technical Report WS-97-02
(1997a).
10