A Multi-Agent System Architecture for Coordination of Just- In-Time Production and Distribution Paul Davidsson and Fredrik Wernstedt Department of Software Engineering and Computer Science Blekinge Institute of Technology SWEDEN
Jan 11, 2016
A Multi-Agent System Architecture for Coordination of Just-In-TimeProduction and Distribution
Paul Davidsson and Fredrik WernstedtDepartment of Software Engineering and Computer Science
Blekinge Institute of Technology
SWEDEN
Overview
Characterization of problem MAS architecture Case study: District Heating Systems Simulation experiments Conclusions
The Problem: Just-In-Time Production and Distribution
A set of producers of resources (P1,…, Pn)
A set of consumers of resources (C1,…, Cm)
P1
P2P3
C1
C6
C4
C5
C7
C10C8 C9
C2
C3
The Problem: Just-In-Time Production and Distribution
We can control how much resources are produced We cannot control the demands of the consumers We do not know future consumer demands We can monitor the actual consumption
P1
P2P3
C1
C6
C4
C5
C7
C10C8 C9
C2
C3
The Problem: Just-In-Time Production and Distribution
The Production time (PT) and/or the Distribution time (DT) is relatively long
Resources must be consumed relatively soon– limited storage capacity, or– quality of resources degrades quickly, etc
P1
P2P3
C1
C6
C4
C5
C7
C10C8 C9
DTC2
C3
The Problem: Just-In-Time Production and Distribution
It is possible to redistribute resources between consumers that are close in proximity relatively cheap and fast
P1
P2P3
C1
C6
C2
C3
C4
C5
C7
C10C8 C9
The Problem: Just-In-Time Production and Distribution
There is a single “owner” of the producers, i.e., no competition between the producers
There is a long term “contract” between producers and consumers (about the prize of resources etc.)
P1
P2P3
C1
C6
C2
C3
C4
C5
C7
C10C8 C9
The Problem: Just-In-Time Production and Distribution
Examples:
– car production (the retailers are the consumers)
– iron and steel production
– district heating
P1
P2P3
C1
C6
C4
C5
C7
C10C8 C9
C2
C3
The Problem: Just-In-Time Production and Distribution
Sub-problem 1: produce the right amount of resources at the right time
Sub-problem 2: distribute these resources to the right consumers
P1
P2P3
C1
C6
C4
C5
C7
C10C8 C9
C2
C3
The Problem: Just-In-Time Production and Distribution
Conflicting goals!1. Produce as little resources as possible
2. Satisfy the demands of all consumers
P1
P2P3
C1
C6
C4
C5
C7
C10C8 C9
C2
C3
Solution: Just-In-TimeProduction and Distribution
Increase the knowledge about the current and the future states of the system (i.e., a decision support system at the producer side)
Redistribution of resources between consumers
P1
P2P3
C1
C6
C4
C5
C7
C10C8 C9
C2
C3
Producer agent
Redistribution agents
Consumer agents
MAS architecture
Each consumer has a consumer agent Consumers that are ”close” forms a cluster and
each cluster has a redistribution agent One producer agent (interacts with all plants)
Consumer agents
MAS architecture
Make predictions of future demands Monitor the actual consumption Communicate this to the redistribution agent Perform received redistribution instructions
Redistribution agents
MAS architecture
Make predictions for the whole cluster Monitor the actual consumption of the cluster Communicate this to the producer agent Compute and send redistribution instructions
Producer agent
MAS architecture
Interacts with production operators Compiles predictions for the whole system Compiles consumption for the whole system Informs redistributor if demands cannot be met
Case study: District heating
Production plants heat water (cheaply) Distribute hot water to consumer substations Substations exchange heat to secondary flows
within buildings (both radiator and tap water) Cold water is returned to plant in separate pipes Long distribution time, up to 24 hours!
Substation
Radiator water
Cold water
Hot tap water
Control unit
Outdoor temperature sensor
Hot water, in
Return water
New type of substation is being developed by Cetetherm that programmable and supports two-way communication
Example: the total consumption in a network serving 500 households
Time [h]
Total consumption [kW]
0
200
400
600
800
1000
1200
0 6 12 18 24
P
R
C
C
C
C
C
C
R
Multi-Agent System
Redistribution is done by issuing “restrictions” (upper limits for consumption)
Tap water has higher priority than radiator water
P
R
C
C
C
C
C
C
R
Multi-Agent System
Predictions are made for each 10 min interval
– Each C computes the average consumption for the corresponding interval over the last 5 days
SimulatorSIMULATOR
MASCG
PG PC
C
C
R
C
C
C
R CG
CG
CG
CG
CG
Consumption generated using a statistical model Both MAS and simulator implemented in JADE
Experiment I: Quality of Service vs. Surplus production
0
20
40
60
80
100
120
140
0 1 2 3 4Surplus production (%)
Num
ber
of R
estr
ictio
ns(o
ne m
inut
e at
one
sub
stat
ion)
5
radiator water
tap water
Cluster has 10 substations (5*40 and 5*60 households) Reference: 7% surplus needed to get 0 restrictions
Experiment II: Quality of Service vs. Size of cluster
0
50
100
150
200
250
300
2 4 8 16Cluster size
Num
ber
of r
estr
ictio
ns
Note: the cluster size is often limited by factors beyond our control, e.g., proximity of consumers
Conclusions
Suggested MAS approach makes it possible to control the trade-off between Quality of Service and the degree of surplus production
Possible to reduce the amount of production while maintaining the same Quality of Service
The larger the cluster size, the higher is the Quality of Service that can be achieved
– However, cluster size is often limited by factors beyond our control, e.g., proximity of consumers
Future work
Improve the prediction mechanism Improve the simulation environment Extend experiments to several producers Perform actual field tests Evaluate the generality of the result in other
just-in-time domains Test other restriction policies than fairness,
e.g., based on priorities between consumers
Software architecture
Different approaches possible
– centralized, semi-distributed and distributed
– agent-based and traditional approaches We have chosen a semi-distributed agent-based
approach…
Why a semi-distributed approach? District heating systems are distributed per se
– at least sensor reading and heat exchanger control must be distributed
Possible to centralize all computation, but– communication bottleneck at the central computer– computational bottleneck at the central computer
(e.g., for computing the forecasts)– complex (many different types of substations etc)– private information should be kept locally
Possible to distribute all computation, but– increase the number of messages sent
Why an agent-based approach? District heating systems have all the character-
istics of the ”perfect” agent application [Parunak]:
– modular
– decentralized
– changeble
– ill-structured
– complex More general arguments include increased:
– robustness, efficiency, flexibilty, openness, scalability, and economy
TP = production time TD = distribution time
t0 = the start time of the actual consumption interval
during each “prediction interval” the consumption is reported n times
t0-(TP+TD)
Consumer Producer agent Producer
total predicted demand
production
total consumtion
t0-TD
t0+1
t0+n
Consumer agent Redistribution agent
future restriction future restriction
consumption
redistribute
consumption
redistribute
predicted demandpredicted
cluster demand
cluster consumption
production
t0+2
Interaction protocol
total consumtionconsumption
redistribute
consumption
redistribute
cluster consumption
Reference production
0
200
400
600
800
1000
1200
0 4 8 12 16 20
time [h]
consumption [kW]
24
7% surplus production needed to get 0 restrictions