<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">DYNCNET: A PROTOCOL FOR FLEXIBLE TASK ASSIGNMENT APPLIED IN AN AGV TRANSPORTATION SYSTEM 1</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Danny</forename><surname>Weyns</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Katholieke Universiteit Leuven</orgName>
								<address>
									<addrLine>Celestijnenlaan 200A</addrLine>
									<postCode>3001</postCode>
									<settlement>Leuven</settlement>
									<country key="BE">Belgium</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Nelis</forename><surname>Boucké</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Katholieke Universiteit Leuven</orgName>
								<address>
									<addrLine>Celestijnenlaan 200A</addrLine>
									<postCode>3001</postCode>
									<settlement>Leuven</settlement>
									<country key="BE">Belgium</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Kurt</forename><surname>Schelfthout</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Katholieke Universiteit Leuven</orgName>
								<address>
									<addrLine>Celestijnenlaan 200A</addrLine>
									<postCode>3001</postCode>
									<settlement>Leuven</settlement>
									<country key="BE">Belgium</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Tom</forename><surname>Holvoet</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Katholieke Universiteit Leuven</orgName>
								<address>
									<addrLine>Celestijnenlaan 200A</addrLine>
									<postCode>3001</postCode>
									<settlement>Leuven</settlement>
									<country key="BE">Belgium</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">DYNCNET: A PROTOCOL FOR FLEXIBLE TASK ASSIGNMENT APPLIED IN AN AGV TRANSPORTATION SYSTEM 1</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">EF18FCB1DF80B5507F01BB8051A2301C</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T14:54+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>2.2 Basic Software Architecture</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>The work presented in this paper is part of an ongoing effort to study suitable task assignment mechanisms for decentralized MAS. Our focus is on systems that are characterized by tasks with delayed commencement. Such a task requires a preceding effort before the agent can start executing the task. An example is a robot that first has to move to the location of a task before it can start executing that task. Important quality requirements for assigning tasks with delayed commencement are flexibility (enable agents to adapt task assignment with changing circumstances) and openness (enable agents to take into account other agents that come and go during the process of task assignment).</p><p>In previous work, we have studied Contract Net (CNET) and a field-based approach for task assignment (FiTA). CNET does not provide the required flexibility and openness. FiTA satisfies the required qualities, however, the field-based approach provides an emergent solution for task assignment. It is well known that emergent solutions are difficult to engineer and reason about. This raises the question whether it is not easier to extend CNET to take dynamics and changes into account.</p><p>This paper presents the DynCNET protocol. DynCNET is an extention of CNET, with "Dyn" referring to support for dynamic task assignment. DynCNET provides flexibility and openness for assigning tasks with delayed commencement. We compare the DynCNET protocol with CNET and FiTA in an AGV transportation system. Our experiences in this real-world setting show that: (1) the performance of DynCNET and FiTA are similar, while both outperform CNET; (2) extending CNET to deal with delayed commencement of tasks is not obvious; the complexity to engineer DynCNET is similar to FiTA but much more complex than CNET; (3) whereas task assignment with FiTA is an emergent solution, DynCNET explicitly specifies the interaction among agents allowing engineers to reason on the assignment of tasks. This latter property may be of overriding importance in the selection of an agent-based approach for task assignment in practice.</p><p>This paper presents the DynCNET protocol. DynCNET is an extention of CNET, with "Dyn" referring to support for dynamic task assignment, i.e. DynCNET supports flexibility and openness for assigning tasks with delayed commencement.</p><p>Overview. In the next section, we give a brief overview of the decentralized architecture of the AGV transportation system. Section 3 introduces the DynCNET protocol. In section 4, we discuss test results obtained from applying DynCNET in an AGV transportation system, and we compare DynCNET with standard CNET and FiTA. Section 5 discusses related work. Finally, in section 6 we draw conclusions.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">The AGV Transportation System</head><p>An AGV transportation system is a fully automated industrial transport system, that uses multiple AGVs to transport loads (raw materials, finished products, etc.) in an industrial environment such as a warehouse. In this section we give a brief overview of the AGV transportation application and the basic software architecture.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.1">AGVs and Transports</head><p>AGVs. An AGV is a unmanned, battery powered vehicle, capable of picking up loads, driving around and dropping them. AGVs can communicate by means of a wireless LAN. The AGVs are restricted to follow a predefined layout in the environment. The layout is defined in a map that consists of a network of stations and segments. AGVs are equipped with low-level control software that provides an interface to command the AGV; example commands are move(segment), pick(load), etc. The low-level control software uses sensors and actuators, and beacons in the environment to stay on track, turn, pick and drop loads, and determine the current position.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Transports.</head><p>A transport represents a task to move a load from a pick location to a drop location. Transports are generated by an external system, typically a warehouse management system. Each transport has a priority that increases over time, e.g. as a result of long waiting times. The execution of a transport starts when an AGV picks the load and it terminates when that AGV drops the load at the drop location.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Task assignment in multiagent systems (MAS) is complex, especially in systems characterized by highly dynamic and changing operating conditions. The work presented in this paper is part of an ongoing effort of our research group to study suitable task assigning mechanisms for decentralized MAS. Our focus is on MAS with the following characteristics:</p><p>• The system is subject to highly dynamic and changing operating conditions. Examples are continuous changes in availability of resources, particular failure modes, variations in network traffic, etc.</p><p>• Agents can dynamically join and leave the system. Agents may be removed from the system at runtime, new agents may join, or agents may leave the system temporarily.</p><p>• The task stream is dynamic and irregular. Examples are dynamically changing workloads, unpredictable peaks in demand, etc.</p><p>• Tasks are characterized by delayed commencement, i.e. the execution of a task requires a preceding effort of an agent before the task can actually be executed.</p><p>A typical example application in the domain of manufacturing control is described in <ref type="bibr" target="#b3">[4]</ref>. In this system, workpieces move on a conveyor belt along a set of machines. Workpieces have to pass through a series of operations. Some of the machines can perform the next operation on the workpieces. <ref type="bibr" target="#b3">[4]</ref> proposes a approach where workpieces select the next machine based on a first-price, single-round auction. However, several kinds of dynamics may arise while a workpiece moves towards the assigned machine. A machine may finish an operation on another workpiece, making the machine available for the next workpiece. Such machine may be more suitable to execute the next operation on a workpiece that is on its way to its assigned machine. Machines can be added and removed from the system, or can be temporarily unavailable due to a breakdown or maintenance. Task assignment with a first-price single round auction is not able to deal with such kinds of dynamics.</p><p>A second typical domain that complies with the problem characteristics are automated transportation systems. In this paper we, use an industrial AGV transportation system as an example. An AGV transportation system consists of a set of automatic guided vehicles (AGVs) that transport loads in a warehouse. AGV transportation systems have to deal with dynamic operation conditions. Production machines may have variable waiting times, certain routes may be blocked, etc. AGVs can leave and re-enter the system, for example for maintenance. The stream of transport tasks that enter the system is typically irregular and unpredictable. Tasks in an AGV transportation system are characterized by delayed commencement. To execute a task, an AGV first has to drive to a load before it can pick the load and transport it to the destination. While driving towards the load all kinds of changes in the system may occur. New tasks may enter the system that are more suitable for the AGV to execute, new AGVs may become available that are more suitable to perform the task, etc.</p><p>Quality Requirements for Dynamic Task Assignment. In order to deal with the problem characteristics mentioned above, two important quality requirements for task assignment are flexibility and openness. <ref type="bibr" target="#b18">[19]</ref> denotes flexibility as "the quality of being adaptable, i.e. being able to change to fit changed circumstances." For task assignment, flexibility denotes that agents are able to adapt task assignment with changing circumstances during the process of task assignment. Openness is defined as "the quality of being open, i.e. characterized by an attitude of ready accessibility, affording unobstructed entrance and exit." For task assignment, openness denotes that agents take into account other agents that enter and leave during the process of task assignment.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Previous Work.</head><p>In a joint R &amp; D project (EMC 2 <ref type="bibr" target="#b5">[6]</ref>), the DistriNet research group and Egemin have developed a decentralized architecture for an AGV transportation system. This architecture is structured as a MAS where an agent is associated with each AGV and each task in the system. An important goal of the new architecture is to improve flexibility and openness of the system.</p><p>In previous work, we have applied two approaches for task assignment in AGV transportation systems. First, we have applied the well-known Contract-Net protocol (CNET <ref type="bibr" target="#b14">[15]</ref>). In CNET, an initiator calls for proposals and participants offer proposals to perform the task. When the initiator has received the proposals from all participants, it evaluates the proposals and assigns the task to the participant with the best offer. CNET is a simple protocol, but does not offer flexibility and openness with respect to delayed commencement, i.e. the protocol does not consider opportunities that occur in the period between the entry of a task in the system and the actual execution of the task.</p><p>As a second approach, we have developed a field-based approach for task assignment (FiTA <ref type="bibr" target="#b17">[18]</ref>). In FiTA, transport agents emit fields that attract idle AGVs. To avoid multiple AGVs driving to the same transport, AGV agents emit repulsive fields. AGV agents follow the gradient of the combined field that guide the AGVs towards pick locations of loads. The AGV agents continuously reconsider the situation and definitive assignment of a transport is delayed until the load is finally picked, which benefits the flexibility and openness of the system. In <ref type="bibr" target="#b17">[18]</ref> is demonstrated that FiTA outperforms CNET; the cost is only a small increase of bandwidth usage. Moreover, FiTA turned out to be highly robust with respect to the loss of messages.</p><p>Motivations for DynCNET. Standard CNET does not provide the required flexibility and openness to cope with the system characteristics mentioned above. FiTA satisfies the required quality goals, however, the field-based approach provides an emergent solution for task assignment. It is well known that emergent approaches are difficult to engineer and reason about. Egemin engineers as well as colleague researchers and reviewers therefore raised the question whether it is not easier to adapt standard CNET to take dynamics and changes in the system into account. Fig. <ref type="figure" target="#fig_0">1</ref> shows the deployment view of the AGV transportation system. Each AGV is equipped with a computer containing an AGV Control System. The AGV control system contains a single AGV agent that is responsible for obtaining and executing transports, and ensuring that the AGV gets maintenance on time (such as charging the AGV's battery). As such, an AGV becomes an autonomous entity that can take advantage of opportunities that occur in its vicinity, and that can enter/leave the system without interrupting the rest of the system.</p><formula xml:id="formula_0">¢¡ ¡ £ ¥¤ ¤ §¦ © ¥ ¥ ! §" $# £ % '&amp; '( 0) 01 2 3 £ $4 65 £ 7 8¥ 9 2 3 £ @ £ $¤ ¤ §A B $£ ¥ £ $ A C £ ¥ ¥@ ¤ £ ¥! $ £ $¡ ¥ D FE FG 6H I P Q R I S T ¥U V Q W X D E G 6H I P Q R I S T ¥U V Q W X D FE FG 6H I P Q R I S T ¥U V Q W X D FE G YH I P Q R I S T ¥U V Q W X D FE FG 6H I P Q R I S T U V Q W X R a P V b I R Q c ¥a V W 0T U V Q W X d 6a R W e I f V W g 0a P a h W X ¢W P Q T ¥U V Q W X ¢i $£</formula><p>Each transport in the system is represented by a transport agent. Transport agents are part of the Transport Base System that is deployed on a stationary computer located in the warehouse. A transport agent is responsible for assigning the transport to an AGV and reporting the status and completion of the transport to the warehouse management system. Transport agents are autonomous entities that interact with AGV agents to find suitable AGVs to execute the transports.</p><p>All the subsystems can communicate via a wireless network. The warehouse management system interacts with the AGV transportation system via a wired network.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">DynCNET Protocol</head><p>We start by explaining a number of general properties of the DynCNET protocol. Then we give an overview of the default sequence of the protocol. Next we explain how the agents involved in a protocol can switch the assignment of tasks. We will use the AGV transportation scenario depicted in Fig. <ref type="figure">3</ref> to illustrate the steps of the protocol.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>General Properties.</head><p>DynCNET is an m × n protocol. An initiator that offers a task can interact with m participants, i.e. the candidate agents that can execute the task. On the other hand, each participant can interact with n initiators that offer tasks. As an example, consider the scenario shown in Fig. <ref type="figure">3</ref>. In the AGV transportation system, an initiator corresponds with a transport agent that represents a task in the system and the participant corresponds with an AGV agent that can execute tasks. We denote the area where an initiator (or participant) searches for participants (or initiators) the area of interest of the initiator (or participant). The dotted circles in Fig. <ref type="figure">3</ref> show the current areas of interest of AGV A (top) and task x (bottom). For task x, there are currently two candidate AGVs to execute the task: F and G. For AGV A on the other hand, there are three possible tasks to execute: u, v, and w.</p><p>Due to the dynamics in the system, the set of candidate tasks (initiators) and agents that can execute a task (participants) can change over time. E.g., in the right part of Fig. <ref type="figure">4</ref>, AGV E has just dropped its load and becomes a candidate to execute task x. Default Sequence. Fig. <ref type="figure" target="#fig_1">2</ref> shows an AUML interaction diagram with the default message sequence of DynCNET. The default protocol consists of four steps: (1) the initiator sends a call for proposals; (2) the participants respond with proposals; (3) the initiator notifies the provisional winner; and finally, (4) the selected participant informs the initiator that the task is started. These four steps are basically the same as in the standard CNET protocol. The flexibility of DynCNET is based on the possible revision of the provisional task assignment between the third and fourth step of the protocol. sentation of the behavior of the initiator and participant agents in the protocol<ref type="foot" target="#foot_1">2</ref> . First we look at the protocol from the perspective of the participant, then we look from the point of view of the initiator.</p><formula xml:id="formula_1">¡ ¢ £ ¢ ¤ £ ¥ ¦ § ¤ ¦ £ ¢ ¨¢ © ¤ ¡ £ ! " # $ % &amp; ! ' ( ) " 0 1# 2 3 4 5 6 5 $ 7 $ % &amp; ! ) 8 ) 8 5 " 9 1# $ % &amp; ! ) 8 3 4 4 8 % 5 ' ' $ ) " @ A# 2 $ &amp; 7 $ % &amp; ! 6 8 B % &amp; " C AD % E GF GH I QP A 4 ' SR A 8 8 ' 8 5</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Switching Initiators and</head><p>Switching Initiators. Consider the situation in Fig. <ref type="figure">3</ref> where AGV A has a provisional agreement to execute task w. While AGV A drives towards the pick location of task w, a new task p enters the system, see the left part of Fig. <ref type="figure">4</ref>. This new task is an opportunity for AGV A.</p><p>DynCNET enables participants to switch initiators and exploit such opportunities. When a participant is ready to execute a task, it enters the Voting state where it answers cfp's with proposals. When the participant receives a provisional-accept message (step 3 in Fig. <ref type="figure" target="#fig_1">2</ref>), it enters the Intentional state, see Fig. <ref type="figure" target="#fig_3">5</ref>. As soon as the participant starts the task, it sends a bound message to the initiator to inform this latter that the execution of the task is started. The participant is then committed to execute the task. However, if a new opportunity occurs before the task is started, i.e. the participant receives a better offer, the participant changes to the Switch Initiator state. In this state the participant retracts from the provisional task assignment and switches to the more suitable task.</p><p>Switching Participants. Consider the situation in Fig. <ref type="figure">3</ref> where the task x has a provisional agreement with AGV G. While AGV G drives towards the pick location of task x, AGV E becomes available, see the right part of Fig. <ref type="figure">4</ref>. This new AGV is an opportunity for transport x. DynCNET enables initiators to switch participants and exploit such opportunities. When an initiator has sent a cpf and received the proposals from the participants, it sends a provisional-accept message (step 3 in Fig. <ref type="figure" target="#fig_1">2</ref>) and enters the Assigned state, see Fig. <ref type="figure" target="#fig_3">5</ref>. As soon as the initiator receives a bound message from the selected participant it enters the state Executing in which the task is effectively started. However, if a new opportunity occurs before the task is started, i.e. the initiator receives a better offer from a participant, the initiator changes to the Switch Participant state. In this state the initiator sends an abort to the provisionally assigned participant and switches to the more suitable participant.</p><formula xml:id="formula_2">¡ £¢ ¤ ¥¢ ¦ £¤ § ©¨ ¥ ¥ ! " # $ % £&amp; ' ( # $ ) # "( 0 ¥1 2 3 4 % £ 5 76 &amp; ' ¥ 2 &amp; # ) ¥) $ # ( ) # ( 0 2 ' 8 ) 8 # &amp; 9 @ &amp; ¥ 2 3 A ' ' &amp; ( "B ) # ( 0 ¥1 2 3 C D8 ' E # "$ F 8 # $ ) # "( 0 2 ' 8 2 8 ) &amp; 9 3 G # # 8 # &amp; 9 4 % £ 5 ©G # &amp; 8 ' ) # ( 0 2 ' 8 2 8 ) &amp; 9 3 ) # ( 0 H 8 ! # ( "3 A 2 ' 8 ) 8 # &amp; 9 ¥&amp; ¥ 2 B 4 % £ 5 I P&amp; ) E 0 3 I P&amp; ) E ¥G # 4 ¥8 2 0 3 QI P&amp; ) E ¥R S! R S1 4 ¥8 2 0 3 ¥ ! T £¦ U¨¤ ¥¢ V W¢ X Y¦ U¡ Y¤ 6 &amp; ' ¥ 2 &amp; "# G # 4 ¥8 2 0 3 `6 &amp; ' ¥ 2 &amp; # R a! R a1 4 ¥8 2 0 3 ) # ( 0 ' ' &amp; ¥ 3 A H 8 ! # ( ( B A H ' P8 1 1 ' B A H ' 2 &amp; ' 2 &amp; # B ) # ( 0 &amp; H 8 ' 3 ) # ( 0 2 ' 8 ) 8 # &amp; 9 @ &amp; ¥ 2 " 3 ) &amp; ' 0 3 b dc We f ©g ih ip dq r sq t Wu v Wr Ww q A &amp; ) E S' &amp; ( x ¥B A ' "&amp; ( x S 8 ©% £8 "' E ¥B A ' &amp; ( x ¥B A &amp; ) E a 8 y 72 9 ( B A &amp; H 8 ' ( B</formula><p>TaskInScope() and TaskOutScope() are functions that notify the participant when new tasks enter and leave its area of interest. Such functionality can be provided by the perception module of the participant that monitors the area of interest of the agent in the environment, or it can be provided as a notification service by the environment. Similarly, the functions ParticipantInScope() and ParticipantOutOf-Scope() notify the initiator when new participants enter and leave its area of interest. <ref type="bibr" target="#b2">[3]</ref> elaborates on these functions in the AGV application.</p><p>Discussion. Contrary to the suggestions of Egemin engineers and colleague researchers and reviewers, extending standard CNET to take dynamism and change into account is not obvious. Enabling the agents to switch the assignment of tasks increases the complexity of the protocol significantly. Since AUML diagrams do not support the specification of dynamic m × n protocols, we used state diagrams to describe DynCNET. However, these diagrams are not simple and becomes even more complex when synchronization is taken into account. In addition, DynCNET requires the tuning of various parameters. Examples are the range of interest of both types of agents, the growth rate to extend this range when no suitable candidates are found, the pace to send call for proposals, etc. Parameter tuning is typically associated with emergent solutions such as FiTA. This paper indicates that a flexible agent-interaction protocol that deals with dynamism and change in the system also requires considerable efforts to tune parameters.</p><p>Contrary to FiTA, DynCNET explicitly defines the various communicative actions, the points of choice, and the internal state of the agents in the protocol. The protocol precisely specifies which participants are involved in the assignment of a task, when a task is provisionally assigned, when the assignment switches, and when a participant becomes committed to execute the task. The explicit specification of the protocol allows engineers to reason on the assignment of tasks and it helps them to debug the system.</p><p>DynCNET (as FiTA) supports openness during delayed commencement. Whereas FiTA inherently supports openness, the DynCNET protocol requires specific functionality for openness. In FiTA, a participant is guided by the combination of sensed fields. A field that disappears or a new field that appears will affect the combination of sensed fields. DynCNET includes specific functionality to notify agents when other agents enter and leave its current area of interest (ParticipantInScope, ParticipantOutOfScope, InitiatorInScope, and InitiatorOutOfScope).</p><p>The flexibility of DynCNET is provided by the points of choice for each agent (Switch Participant and Switch Initiator). The points of choice are abstractly defined in the protocol and need to be instantiated according to the requirements of an application at hand. In the AGV application (discussed in the next section), agents use the priorities of tasks and the distance between AGVs and loads to switch tasks. More advanced approaches can be considered, e.g., participants may (to some extent) favour tasks that are located near to other tasks increasing the change to find a closely located task when the original assignment of tasks for some reason switches.</p><p>A final remark concerns the convergence of the protocol. A potential risk of DynCNET is that the assignment of tasks oscillates between participants and no tasks are executed. In the AGV application, oscillations were avoided by: (1) limiting the areas of interest of the agents, and (2) choosing different areas of interest for initiators (task agents) and participants (AGV agents). In particular, the area of interests of AGV agents covered up to 1/10th of the total area of the map and the area of transport agents was 4 times smaller as that of AGV agents.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Applying DynCNET in Practice</head><p>This section discusses the test results obtained from applying DynCNET in a simulated AGV transportation system. The section starts by explaining the test setting. Subsequently, we present the results of the various tests and we reflect on the test results. Due to space limitation only the main test results are presented. For a detailed discussion of the remaining test results we refer to <ref type="bibr" target="#b4">[5]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">Setting</head><p>AGV Transportation System. All tests are performed on the map of an AGV transportation system that is implemented by Egemin at EuroBaltic. The size of the physical layout is 134 m x 134 m. The map has 56 pick and 50 drop locations. We used a standard transport profile that is used by Egemin for testing purposes. This profile generates 140 transports with a random pick location and a random drop location per hour real time. Each transport is assigned a random priority that increases over time. In the simulation, we used 14 AGVs just as in the real application. The average speed of driving AGVs is 0.7 m/s, while pick and drop actions take an average amount of time of 5 s.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Infrastructure.</head><p>For the tests, we used an AGV simulator <ref type="bibr" target="#b0">[1]</ref>. The simulator uses a framework for time management <ref type="bibr" target="#b8">[9]</ref> to ensure that the simulation results are independent of performance characteristics of the execution platform, working load of the processor, and memory size. Tests where executed on a cluster of 40 machines: P4 2Ghz, 512MB RAM, Debian Stable 3.0. For a detailed discussion of the AGV simulator, we refer to <ref type="bibr" target="#b0">[1]</ref>.</p><p>Metrics. Every simulation was run for 200.000 timesteps, corresponding to approximately 4 hours real time, i.e. one timestep represents 20 ms in real time. All test results displayed in the paper are average values over 20 simulation runs. Performance is measured in terms of throughput (number of finished transports as a function of simulated timesteps) and reaction time (average waiting time per transport as a function of simulated timesteps). Additionally, the amount of communication needed is measured (number of messages sent per transport).</p><p>Reference Algorithms. We compared DynCNET with standard CNET and FiTA. With CNET each transport that enters the system is assigned as soon as possible to the most suitable AGV, i.e., an idle AGV for which the cost to reach the pick location is minimal. When transports can not be assigned immediately, they enter a waiting status. All waiting transports are ordered by priority, and this priority determines the order in which transports are assigned. With FiTA, AGVs combine fields that guide them toward pick locations of transports. Transport agents emit fields that attract idle AGVs. The strength (and thus the range) of the fields of transport agents that attract AGVs depends on the priority of the task and increases over time. The strength of the repulsive fields emitted by the AGVs is fixed.</p><p>Parameter Settings. Preceding to the tests, we determined the most suitable set of values for the parameters of the three tested protocols. Parameter tuning is a labour-intensive job. For most of the parameters, for FiTA as well as for DynCNET, we were able to determine a range of values from which we could select one without significantly affecting the performance of the protocol. We suspect that the constrained nature of the problem (such as the restrictions imposed by the layout) accounts for this relaxation. A thorough discussion of parameter tuning however, is not feasible within the limited space of this paper, for a detailed overview we refer to <ref type="bibr" target="#b4">[5]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.2">Test Results</head><p>We have measured communication load, average waiting time, and the number of finished transports. In addition, we have performed a stress test in which AGVs have to handle as quickly as possible a fixed number of transports from a limited number of locations.</p><p>Communication Load. To compare the communication load, we have measured the average number of messages sent per finished transport. The left part of Fig. <ref type="figure" target="#fig_5">6</ref> shows the results of the test.  The number of messages of DynCNET is approximately the same as for FiTA, while the communication load of CNET is about half of the load of the dynamic mechanisms. However, an important difference exists between the type of messages sent. Fig. <ref type="figure" target="#fig_7">7</ref> summarizes the number of unicast and broadcast messages sent by the three mechanisms.  For CNET, more than 90 % of the communication are unicast messages. For DynCNET the balance unicast-broadcast messages is about 75-25, yet, for the field-based approach this balance is about 25-75, thus the opposite. This difference is an important factor for selecting appropriate communication infrastructure for a particular task assignment mechanism and vice versa.</p><p>Average Waiting Time. The left part of Fig. <ref type="figure" target="#fig_5">6</ref> shows the test results for average waiting time for transports. Average waiting time is expressed as the number of timesteps a transport has to wait before an AGV picks up the load. After a transition period (around 20.000 timesteps), DynCNET outperforms CNET. The difference increases when time elapses. On the other hand, FiTA is slightly better than DynCNET over the full test range. A possible explanation is that idle AGVs in FiTA immediately start moving when they sense a field of a task, while in DynCNET AGVs only start moving after they are provisionally accepted as a winner. The fact that DynCNET is not able to outperform FiTA came as a surprise to us. Since every aspect in DynCNET is explicitly specified, we expected that if fine tuned well DynCNET could perform better than FiTA.</p><p>Number of Finished Transports. The right part of Fig. <ref type="figure" target="#fig_9">8</ref> shows the number of transports finished by each of the protocols during the test run.  The results confirm the measures of the average waiting time per finished transport. DynCNET handles more transports than CNET, but less than the field-based protocol. After four hours in real-time, CNET has handled 380 transports, DynCNET has handled 467 transports, and the field-based approach 515 transports. For the 467 executed transports of DynCNET, we measured an average of 414 switches of transport assignments performed by transport agents and AGV agents.</p><p>Stress Test. In addition to the standard transport test profile, we have performed a stress test in which 45 transports are created at a limited number of locations in the beginning of the test. These transports have to be dropped at a particular set of destinations. The test simulates for example the arrival of a truck with loads that have to be distributed in a warehouse. The task of the AGVs is to bring the loads as quickly as possible to the right destinations. The transport test profiles for the three mechanisms was identical. The left part of Fig. <ref type="figure" target="#fig_9">8</ref> shows the test results.</p><p>The slopes of the curves of FiTA and DynCNET are similar but much steeper than the curve of CNET. The results demonstrate that CNET requires about 2.5 times more time to complete the 45 transports than the dynamic protocols.</p><p>In the stress test, the communication load of FiTA is slightly higher as for DynCNET during the full test. In the initial phase of the test, the dynamic protocol requires much more bandwidth as CNET (about factor four), later the difference converges to the difference we have measured for the standard test profiles (about factor two).</p><p>Variance. The tests we have discussed are non-deterministic. Orders are generated randomly and priorities are assigned randomly. To verify the statistic significance of the mean values of the test results we have calculated the 95 % confidence interval <ref type="bibr" target="#b16">[17]</ref>. The results show confidence intervals between 5 and 10 % variance relative to the mean values, meaning that the variance of the test results is small. For details we refer to <ref type="bibr" target="#b4">[5]</ref>.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.3">Summary</head><p>DynCNET outperforms CNET on all performance measures, the cost is a doubling of required bandwidth. Contrary to our expectations, DynCNET is in general not able to outperform FiTA. At best DynCNET is able to equal the performance of FiTA. Fig. <ref type="figure" target="#fig_11">9</ref> compares several quality attributes and engineering aspects of the three mechanisms.  Robustness. In FiTA, the freshness of the received fields is taken into account to determine the attraction and repulsion of fields. When an agent misses an update of a field due to the loss of a message, the previous value of the field is used. Yet, to determine the combined field that guides the agent, less importance is given to older field values. As such, FiTA is (to some degree) robust to message loss. CNET and DynCNET on the other hand fail when a message gets lost and the prescribed sequence of messages is disrupted. As such, the contract-net based mechanisms require additional support for robustness to message loss.</p><formula xml:id="formula_3">C W 9 4R Q 85 8C A 8W 1 ©7 5 8D C A 8C W C F W 5 D ¢F A 8E Q F 8D W C 9 4C Q 8F 8A W 1 f 3 81 4V 9 45 8@ 6U C A 8F W C 5 8A 65 87 7 C 3 8T E 1 ©E 3 8W 3 8D @ 6C A 83 6W R 83 Q 8F D W C 9 4C Q 8F A 8W 1 4i 9 4R 5 8C 9 43 1 p C @ 6C W 3 E 6A 8q 8@ 6U 3 8D 5 87 Q F 8D F @ 63 8W 3 8D 1 4r W q A 8C A 8B 6C 1 ¤3 8F 1 4s 4t u 2! ¢&amp; ! H e b &amp; b d I v F D C 5 8q 1 ¤Q 8F 8D F @ 63 8W 3 8D 1 4r W q 8A 8C A 8B</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Mechanism Engineering.</head><p>No common engineering approaches are available for the design and development of FiTA. On the other hand, DynCNET allows to specify the behavior of the agents by means of common engineering diagrams such as interaction diagrams and state charts. We used UniMod <ref type="bibr" target="#b15">[16]</ref> to design the DynCNET protocol as a state machine. UniMod enables to draw the state machine and export the diagram to an XML file. This XML file was used to interpret the state machine in the agent program.</p><p>Parameter Tuning. CNET does not require much parameter tuning. The designer has only to define a criterion that determines which participants are considered by the initiators. To deal with dynamism and change in the system, DynCNET (as FiTA) requires considerable efforts to tune parameters.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Type of Communication.</head><p>A significant difference exists in the ratio unicast-broadcast messages that are used in the three task assignment mechanisms. This difference is important for selecting appropriate communication infrastructure for a specific task assignment mechanism and vice versa. Further research is needed to investigate the implications of the type of communication of the different mechanisms.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Related Work</head><p>Task assignment is an extensive domain of research. Here we focus on mechanisms that are based CNET.</p><p>CNET is a widely known and extensively used protocol that uses an auction-like mechanism to achieve task assignment. CNET was originally proposed by Smith and Davis <ref type="bibr" target="#b14">[15]</ref> and is included in a FIPAstandard <ref type="bibr" target="#b6">[7]</ref>. The DynCNET protocol is an extension to CNET with two distinctive characteristics: (1) it enables m × n negotiations, i.e. a participant can manage concurrently multiple negotiation processes with the initiators and the initiator can manage negotiation processes with multiple participants; (2) it supports changes on the initiator and the participant side and delays the definitive assignment until the task is effectively started. In this section, we list several variants to CNET and show how they relate to DynCNET.</p><p>Several extensions of CNET exist that support m × n negotiations. <ref type="bibr" target="#b9">[10]</ref> describes a protocol that allows a bidder to place bids for multiple unassigned tasks. This is achieved by giving the bidder the option to refuse the task in step 3 of the original protocol (compare Fig. <ref type="figure" target="#fig_1">2</ref>). The manager will then award the contract to the second best bidder, who can again accept or refuse it, etc. This protocol does not supports changes at both sides or delayed commencement.</p><p>The protocol in <ref type="bibr" target="#b1">[2]</ref> focusses on self-interested agents supporting several negotiation processes in parallel. The approach introduces two levels of bidding, i.e. a pre-bidding phase in which the participants can still change their commitment and a definitive bidding phase in which the task is effectively assigned to a single participant. The protocol allows to reconsider commitments during the pre-bidding phase, but the window in which commitments can be changed is small. As soon as all agents answered in the pre-bidding phase, the definitive bidding phase starts and the participants can no longer change their commitment. An interesting contribution of <ref type="bibr" target="#b1">[2]</ref> is that the authors formally prove the converge of the protocol.</p><p>FIPA proposes the Iterated CNET protocol, allowing multi-round iterative bidding <ref type="bibr" target="#b7">[8]</ref>. The protocol is multi-round in the sense that the initiator can decide to issue a new call for proposals (and thus start a new round) after the bidding phase instead of accepting a proposal. There is no partial commitment during the iterations and the protocol does not allow to reconsider the situation once a proposal is accepted.</p><p>Related to the Iterated CNET protocol are levelled-commitment contracts <ref type="bibr" target="#b12">[13]</ref>. The idea of a levelledcommitment contract is that any of the agents in a contract can decommit by paying an agreed decommitting penalty to the other agent(s) in the contract. A leveled-commitment contract is not a protocol on itself, but this type of contracts can used in negotiation protocols between self-interesting agents.</p><p>Finally, there are several researchers who use the original CNET protocol in combination with other strategies to provide support for dynamism. Maturana et al. <ref type="bibr" target="#b10">[11]</ref> use a mediator pattern for dynamic scheduling, combining mediation and sub-tasking using CNET to produce a schedule. Mediator agents are used to coordinate the resource agents using the CNET protocol. In case of breakdowns, the system is rescheduled by re-running the CNET protocol for the task to find available slots in the schedule. Shen et al. <ref type="bibr" target="#b13">[14]</ref> and Ouelhadj et al. <ref type="bibr" target="#b11">[12]</ref> also use a combination of the mediator architecture and the CNET protocol, but introduce different re-schedule techniques for different real-time events. For example, the re-scheduling technique for rush orders (try to replace a task by another task) differs from a machine breakdowns (find the nearest free slot in the schedule). These mechanisms using CNET in combination with schedules allow for some flexibility, but rescheduling the tasks takes a lot of time. Thus this type of architectures is more suited for relatively stable schedules and a limited amount of changes.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">Conclusions</head><p>The work presented in this paper is part of an ongoing effort to study suitable task assignment mechanisms for decentralized MAS. Our focus in on the assignment of tasks with delayed commencement. In previous work, we studied two mechanisms for task assignment: standard CNET and FiTA, a field based approach for task assignment. In this paper, we presented the DynCNET protocol, an extension to standard CNET that supports dynamic task assignment.</p><p>We compared DynCNET with CNET and FiTA in a real-world test setting. DynCNET (as FiTA) outperforms CNET on all performance measures. The cost is a doubling of required bandwidth. However, contrary to suggestions made by engineers and colleague researchers, extending standard CNET to take dynamism and change into account is not obvious. Enabling the agents to switch the assignment of tasks increases the complexity of the protocol significantly.</p><p>Our experiences with DynCNET with FiTA yield the following conclusions:</p><p>• Contrary to our expectations, DynCNET was not able to outperform FiTA, both mechanisms have similar performance characteristics.</p><p>• Parameter tuning for DynCNET has similar complexity as for FiTA.</p><p>• Whereas FiTA is inherently robust to message loss, DynCNET is not and requires additional functionality to deal with message loss.</p><p>• FiTA mainly uses broadcast messages, while DynCNET mainly uses unicast message.</p><p>• DynCNET explicitly defines the task assignment process among the agents while in FiTA everything is implicitly enclosed in the fields.</p><p>Egemin, our partner in the EMC 2 project, currently considers to apply an agent-based approach for task assignment in one of its AGV transportation systems. Due to the explicit specification of the protocol the engineers tend to prefer DynCNET over FiTA. The fact that DynCNET allows engineers to reason on the assignment of tasks may be of overriding importance in the selection of a mechanism for task assignment in practice. Still, extensive tests are necessary before an eventual decision can be made.</p><p>DynCNET is a promising protocol for task assignment in decentralized MAS. Yet, before any claim can be made about its general applicability, the protocol needs further tests in different application domains.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: Deployment view of AGV transportation system.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 2 :</head><label>2</label><figDesc>Figure 2: High-level AUML diagram of the DynCNET protocol. Dark zones in the activation boxes represent periods in the protocol when agents can switch the provisional agreement.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 3 :Figure 4 :</head><label>34</label><figDesc>Figure 3: Example scenario in an AGV transportation system to illustrate DynCNET.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Figure 5 :</head><label>5</label><figDesc>Figure 5: High-level description of the DynCNET protocol</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_5"><head>Figure 6 :</head><label>6</label><figDesc>Figure 6: Left: amount of messages being sent per finished transport. Right: average waiting time</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_7"><head>Figure 7 :</head><label>7</label><figDesc>Figure 7: Left: number of unicast messages. Right: number of broadcast messages</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_9"><head>Figure 8 :</head><label>8</label><figDesc>Figure 8: Left: number of finished transports. Right: number of finished transports in the stress test</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_10"><head>Flexibility</head><label></label><figDesc>and Openness. Both DynCNET and FiTA support flexible assigning of tasks with delayed commencement. In FiTA, the choices of the participant agents are implicitly determined by the combination of ¢¡ ¤£ ¦¥ § © ¢¡ ©£ ¦¥ ¢ 8C A 83 3 8D C A B F 8Q Q 8D 5 8F 9 4R 83 81 ¤F S 4F 8C T F 8U 8T 3 0 "1 43 65 7 89 45 @ 6@ 65 8A 3 8A 8B C A 83 3 8D C A B 6E 8C F 8B 8D F @ 61 P "5 8V 5 8A 3 61 4R 85 8W F 81 41 4C B 8A 8@ X3 8A 8W 5 87 8W F 81 4Y 41 a ¢ b c d &amp; I ! ( ' H eH ¦ ( H e b f 3 81 4V 83 g 4Q 8T C 9 4C W 1 4h "</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_11"><head>Figure 9 :</head><label>9</label><figDesc>Figure 9: Summary of quality attributes and engineering aspects of the three mechanisms</figDesc></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">The research of the first author is supported by the the Research Fund K.U.Leuven. The research of the second author is supported by the Institute for the Promotion of Innovation through Science and Technology in Flanders (IWT).</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="2" xml:id="foot_1">We have made abstraction of a number of synchronization issues in the description of the state diagrams. An example is the situation where an initiator has not yet received the bound message from the provisionally assigned participant that has started a task, while this initiator switches participants. To deal with such synchronization problems, confirmation messages are used. However, to avoid overloaded diagrams, we have omitted these messages. For more details, see<ref type="bibr" target="#b4">[5]</ref>.</note>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<ptr target="www.cs.kuleuven.ac.be/∼distrinet/taskforces/agentwise/agvsimulator/" />
		<title level="m">DistriNet AGV Simulator</title>
				<imprint>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">An Extended Multi-Agent Negotiation Protocol</title>
		<author>
			<persName><forename type="first">Samir</forename><surname>Aknine</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Suzanne</forename><surname>Pinson</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Melvin</forename><forename type="middle">F</forename><surname>Shakun</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal on Autonomous Agents and Multi-Agent Systems (JAAMAS)</title>
		<imprint>
			<biblScope unit="volume">8</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="5" to="45" />
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Applying the ATAM to an Architecture for Decentralized Contol of a AGV Transportation System</title>
		<author>
			<persName><forename type="first">N</forename><surname>Boucké</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Weyns</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Schelfthout</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Holvoet</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">2nd International Conference on Quality of Software Architecture</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Self-organizing manufacturing control: An industrial application of agent technology</title>
		<author>
			<persName><forename type="first">S</forename><surname>Bussmann</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Schild</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">4th International Conference on Multi-Agent Systems</title>
				<imprint>
			<date type="published" when="2000">2000</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<title level="m" type="main">DynCNET: A Protocol for Flexible Transport Assignment in AGV Transportation Systems</title>
		<author>
			<persName><forename type="first">B</forename><surname>Demarsin</surname></persName>
		</author>
		<ptr target="http://www.cs.kuleuven.be/∼danny/DynCNET.pdf" />
		<imprint>
			<date type="published" when="2006">2006</date>
			<pubPlace>Belgium</pubPlace>
		</imprint>
		<respStmt>
			<orgName>Katholieke Universiteit Leuven</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Thesis Master of Artificial Intelligence</note>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<ptr target="http://emc2.egemin.com/" />
		<title level="m">Egemin Modular Controls Concept</title>
				<meeting><address><addrLine>IWT, Belgium</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2005">2005</date>
		</imprint>
	</monogr>
	<note>EMC 2 project</note>
</biblStruct>

<biblStruct xml:id="b6">
	<monogr>
		<author>
			<persName><surname>Fipa Tc Communication</surname></persName>
		</author>
		<title level="m">FIPA Contract Net Interaction Protocol Specification</title>
				<imprint>
			<publisher>FIPA-Standard</publisher>
			<date type="published" when="2002">SC00029. 2002</date>
		</imprint>
	</monogr>
	<note type="report_type">Doc</note>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<title level="m" type="main">FIPA Iterated Contract Net Interaction Protocol Specification</title>
		<author>
			<persName><surname>Fipa Tc Communication</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2002">SC00030. 2002</date>
			<publisher>FIPA-Standard</publisher>
		</imprint>
	</monogr>
	<note type="report_type">Doc</note>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Extending time management support for multiagent systems</title>
		<author>
			<persName><forename type="first">A</forename><surname>Helleboogh</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Holvoet</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Weyns</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Berbers</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Multiagent and Multiagent-based Simulation</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<meeting><address><addrLine>New York, USA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2005">2005</date>
			<biblScope unit="volume">3415</biblScope>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Improvements to the fipa contract net protocol for performance increase and cascading applications</title>
		<author>
			<persName><forename type="first">T</forename><surname>Knabe</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Schillo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Fischer</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Workshop on Multiagent Interoperability</title>
				<imprint>
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Metamorph: An adaptive agent-based architecture for intelligent manufacturing</title>
		<author>
			<persName><forename type="first">F</forename><surname>Maturana</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Shen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Norrie</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">nternational Journal of Production Research</title>
		<imprint>
			<biblScope unit="volume">37</biblScope>
			<biblScope unit="issue">10</biblScope>
			<biblScope unit="page" from="2159" to="2174" />
			<date type="published" when="1999">1999</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<monogr>
		<title level="m" type="main">Book of Intelligent Systems Design and Applications, chapter Contract Net Protocol for Cooperative Optimisation and Dynamic Scheduling of Steel Production</title>
		<author>
			<persName><forename type="first">D</forename><surname>Ouelhadj</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Cowling</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Petrovic</surname></persName>
		</author>
		<imprint>
			<date type="published" when="2003">2003</date>
			<publisher>Springer-Verlag</publisher>
			<biblScope unit="page" from="457" to="470" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Levelled-commitment contracting: A backtracking instrument for multiagent systems</title>
		<author>
			<persName><forename type="first">T</forename><surname>Sandholm</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Lesser</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">AI Magazine</title>
		<imprint>
			<biblScope unit="volume">23</biblScope>
			<biblScope unit="issue">3</biblScope>
			<biblScope unit="page" from="89" to="100" />
			<date type="published" when="2002">2002</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">An agent-based approach for dynamic manufacturing scheduling</title>
		<author>
			<persName><forename type="first">W</forename><surname>Shen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">H</forename><surname>Norrie</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Agent-Based Manufacturing Workshop</title>
				<meeting><address><addrLine>Minneapolis</addrLine></address></meeting>
		<imprint>
			<date type="published" when="1998">1998</date>
			<biblScope unit="page" from="117" to="128" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<analytic>
		<title level="a" type="main">The contract net protocol: High level communication and control in a distributed problem solver</title>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">G</forename><surname>Smith</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Transactions on Computers, C</title>
		<imprint>
			<biblScope unit="volume">29</biblScope>
			<biblScope unit="issue">12</biblScope>
			<date type="published" when="1980">1980</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<monogr>
		<title/>
		<author>
			<persName><surname>Unimod</surname></persName>
		</author>
		<ptr target="http://unimod.sourgeforce.net" />
		<imprint>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b16">
	<monogr>
		<author>
			<persName><forename type="first">E</forename><surname>Weisstein</surname></persName>
		</author>
		<title level="m">Confidence Interval, Probability and Statistics</title>
				<imprint>
			<publisher>MathWorld</publisher>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">Gradient Field Based Transport Assignment in AGV Systems</title>
		<author>
			<persName><forename type="first">D</forename><surname>Weyns</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Boucké</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Holvoet</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">5th International Joint Conference on Autonomous Agents and Multi-Agent Systems</title>
				<meeting><address><addrLine>Hakodate, Japan</addrLine></address></meeting>
		<imprint>
			<publisher>AAMAS</publisher>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<monogr>
		<ptr target="http://wordnet.princeton.edu/" />
		<title level="m">WordNet 2</title>
				<imprint>
			<date type="published" when="2006">2006</date>
		</imprint>
		<respStmt>
			<orgName>Princeton University Cognitive Science Library</orgName>
		</respStmt>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
