7. Transport simulation
Every car is an agent with a specific behaviour
The objective is to assert urban decisions and
road infrastructure
MATSim Singapore
7
8. Platform for modelling multi-modal transportation
Here, the Great London with an OSM map
http://www.youtube.com/watch?feature=player_embedded&v=R164GYhj8Qs
8
10. Agents are used to model and
simulate production in a corrugated
box factory, with the on time in full schema
http://www.eurobios.com/fr/an-agent-based-model-of-a-corrugated-box-factory
10
11. Agent are frequently used in biological and social sciences
•Understanding social networks
•Simulating ants, herds and crowds
•Understanding micro- and macro- economies
Here, simulating ant nests
11
12. Finding the “best” position for pylons based on several conflicting opinions
[Ferrand 97]
12
13. Timetable scheduling
Every agent has user availability and
constraints, altogether they are able
to provide a coherent view
Acklin companies: the KIR system
Agents support communication between the consortium
for insurance claims
http://www.staff.science.uu.nl/~dasta101/tfg/romefiles/Aart.pdf
http://www.agentlink.org/resources/webCS/AL3_CS_004_Acklin.pdf
13
17. http://joram.ow2.org
Asynchronous messaging, part of JBoss,
Agents inside for scalability issues
Plastic interfaces
Agents inside to propose
GUI based on SW/HW
requirements
Self-* systems
Autonomic Computing
Agents can be used for dynamic adaptation
and without control duties
17
20. Two domains of use
• Simulation
• (Distributed-) Problem Solving
20
21. One important thing to bear in mind
Multiagent systems will never be better than algorithms
If you have an algorithm, go for it
If you only have heuristics, well, there is room for agents…
21
22. Some words to qualify multiagent
systems
Local
Global
Local behaviours into agents
Individual centered
Collective behaviours as a result of
Individual behaviours
Community centered
Multiagent systems may scale to millions
of agents if needed. The dynamic feature
Allows them to adapt to new dimensions
Intelligent behaviours
Machine learning
Cooperation (and coordination)
between (heterogeneous) entities
22
23. Some other words
Autonomy: agents do not accept orders from others either agents or users
Decentralisation: this is not a master/slave architecture, related to autonomy
Distribution: agents are naturally distributed over a network
Proactive: agents take into consideration modifications to achieve their goals
Rationality: agents use beliefs, desires and intentions for deciding upon next actions
Context-based: agents perceive the environment to adapt their behaviours
Social: agents are organised into groups
High-level interaction: agents use protocols to interact and coordinate
Planning-based systems: agents elaborate plans to achieve their goals
Adaptive: agents adapt themselves from modifications from the environment
Mobile: agents can hop from platform to platform to be close to data
23
25. JADE
Java Agent DEvelopment framework
The de facto standard for agent development
A middleware for the development and runtime execution of peer-to-peer intelligentagent applications
Runs seamlessly in the mobile and in the fixed
environments
Agent-based
Workflow-based task description
Mobile version
FIPA based
http://jade.tilab.com
25
26. Madkit
MaDKit is an open source modular and scalable
multiagent platform written in Java
http://www.madkit.org
26
28. What is a multiagent system?
A multiagent system is a
set of real or virtual autonomous entities
(called agents)
which are pro-active or reactive (depending
on needs)
and interact together so as to achieve an
activity which is of its own, or shared between
entities
28
31. But an agent, this is
an object, right?
First answer:
31
32. But an agent, this is
an object, right?
Definitely NO
Right, an agent like objects has a state and a behaviour
BUT
– Agents have control over their behaviours, they may decide
whether to answer positively or not to a call from another
agent. As a consequence, they can refuse to do something
– Interactions between agents are richer than method calls
between objects. Agents exchange goals, plans, actions,
hypotheses, beliefs
– Agents have different ways to behave: reactive one, goal-driven,
social one
32
34. So you mean an agent
is an expert system
Well, this is partly right
For experts, behaviour is IF THEN ELSE
Dumb agents may have this behaviour
BUT more complex behaviours are possible, and
the social dimension has to take into account
34
35. Do I need to learn a new
programming language?
35
36. Do I need to learn a new
programming language?
NO
Agents are frequently/easily programmed with
object-oriented languages, Java is the most
used one
Scala can be considered too, especially with the
notion of actors, or with the Akka project
36