Getting started
What you can do with this
library
The Modelica HVACAgentBasedControl presents a set of agents
which can control building energy systems and systems of similar
characteristics (e.g. district heating networks or electrical
smart-grids). It offers a plug&play solution to control systems
with multiple energy suppliers. With the help of a market-based
communication mechanism and cost functions for each energy
supplier, the most cost effective supplier in the system is always
chosen. With the help of individual cost functions the "costs" that
should be minimized can be defined individually by the developer
(e.g. money, primary energy, exergy destruction).
How you set up your system with
agent-based control
If you want to control a building energy system with multiple
heat/cold suppliers and multiple heat/cold consumers here is how
you set up the system:
- Equip each thermal zone with a RoomAgent just by placing an
agent close to the zone in your model. The input of the room agent
needs to be connected to a temperature sensor of the thermal
zone
- Equip each heat/cold supplier with a Heat/ColdProducerAgent and
a corresponding CostFunction. Make sure that the heat supplier is
able to use the demanded capacity from the "setCapacity" output of
the agent.
- Place a MessageNotification and a Broker anywhere in the
model.
- Give each agent an individual five-digit number in the
parameters under "name"(e.g. 1000X for the consumers, 20001 for the
broker, 3000X for the producers)
- Write down all names of the ProducerAgents in the "startTable"
of the broker. Delete or add more lines if necessary.
The system is now ready to go.
If you used older versions of this library, please add a
MessageNotification agent to your agent-based systems in order to
make them work. For more information please refer to MessageNotification
model.
What can a building energy system
with agent-based control look like?
Below you see an example building energy system which can be
found
here. The system consists of two thermal zones (or rooms) and
two heat producers e.g. a heat pump and a boiler. The system is set
up as described in the section above. For a more detailed
description please refer to the
model itself. There are more examples available in the Example
package if you need further input.

- December 2016, by Roozbeh Sangi:
Revised.
- November 2016, by Felix Bünning:
Original implementation
Generated at 2026-04-10T18:18:38Z by OpenModelicaOpenModelica 1.26.3 using
GenerateDoc.mos