Util

Utilities for all integration and example projects

License

License

GroupId

GroupId

io.github.agentsoz
ArtifactId

ArtifactId

util
Last Version

Last Version

3.0.0
Release Date

Release Date

Type

Type

jar
Description

Description

Util
Utilities for all integration and example projects

Download util

How to add to project

<!-- https://jarcasting.com/artifacts/io.github.agentsoz/util/ -->
<dependency>
    <groupId>io.github.agentsoz</groupId>
    <artifactId>util</artifactId>
    <version>3.0.0</version>
</dependency>
// https://jarcasting.com/artifacts/io.github.agentsoz/util/
implementation 'io.github.agentsoz:util:3.0.0'
// https://jarcasting.com/artifacts/io.github.agentsoz/util/
implementation ("io.github.agentsoz:util:3.0.0")
'io.github.agentsoz:util:jar:3.0.0'
<dependency org="io.github.agentsoz" name="util" rev="3.0.0">
  <artifact name="util" type="jar" />
</dependency>
@Grapes(
@Grab(group='io.github.agentsoz', module='util', version='3.0.0')
)
libraryDependencies += "io.github.agentsoz" % "util" % "3.0.0"
[io.github.agentsoz/util "3.0.0"]

Dependencies

compile (5)

Group / Artifact Type Version
org.matsim » matsim jar 0.10.0
ch.qos.logback : logback-classic jar 1.2.3
com.google.code.gson : gson jar 2.8.2
junit : junit jar 4.12
com.google.inject : guice jar 4.1.0

Project Modules

There are no modules declared in this project.

BDI-ABM Integration Package

This software realises a mechanism for integrating Belief-Desire-Intention (BDI) reasoning into agents within an agent-based simulation (ABM). The concept is described in the following papers papers:

  1. Dhirendra Singh, Lin Padgham, Brian Logan. Integrating BDI agents with Agent Based Simulation Platforms. Autonomous Agents and Multi-agent Systems, 2016.

  2. Lin Padgham, Dhirendra Singh. Making MATSim Agents Smarter with the Belief-Desire-Intention Framework Horni, A., Nagel, K. and Axhausen, K.W. (eds.) The Multi-Agent Transport Simulation MATSim, pages 201-210, 2016. Ubiquity Press London.

  3. Lin Padgham, Kai Nagel, Dhirendra Singh, Qingyu Chen. Integrating BDI Agents into a MATSim Simulation. Frontiers in Artificial Intelligence and Applications 263 (ECAI 2014), pages 681-686, 2014.

How to use this software

Examples of BDI-ABM applications are provided in the ./examples directory.

Any BDI-ABM application consists of three layers. A generic first layer (./integrations/bdi-abm) manages the high level interaction and message passing between the BDI and the ABM system. A second platform specific layer realises the connection between a specific BDI platform (such as JACK, i.e., ./integrations/abm-jack), and a specific ABM system (such as MATSim, i.e., ./integrations/bdi-matsim). Finally, a third application layer puts these together along with domain specific code (for instance `./examples/bushfire).

Overall, the repository consists of integrations and examples. Integrations are platform specific and live in ./integrations. Examples are domain specific, and live in ./examples. The following integrations are provided:

Integration Directory Description
BDI-ABM ./integrations/bdi-abm BDI-ABM communication and data layer
BDI-GAMS ./integrations/bdi-gams Integration for GAMS (www.gams.com)
BDI-MATSim ./integrations/bdi-matsim Integration for MATSim (www.matsim.org)
ABM-JACK ./integrations/abm-jack Integration for JACK (aosgrp.com/products/jack)
ABM-Jill ./integrations/abm-jill Integration for Jill (http://agentsoz.github.io/jill)
ABM-Jadex ./integrations/abm-jadex Integration for Jadex (http://www.activecomponents.org/bin/view/About/Features)

Integrations are pulled together to build application examples. The following examples are provided:

Example Directory Description
Bushfire ./examples/bushfire Uses Jill and MATSim
Bushfire Tutorial ./examples/bushfire-tutorial Uses JACK and MATSim
Conservation Ethics ./examples/conservation Uses Jill and GAMS
Child Vaccination ./examples/vaccination Uses JACK and a custom Python-based ABM

In addition to above, the repository consists of an util project. It lives in ./util and contains the utility classes used by integration libraries and example applications in the repository.

Project Directory Description
Util ./util Contains utility classes for integration libraries and example applications

Build Dependencies

  • Java Development Kit 1.8 http://en.wikipedia.org/wiki/Java_Development_Kit

  • Apache Maven 3.3.* http://maven.apache.org

  • Some of the integrations (e.g., JACK, GAMS) require third-party libraries to be installed in your local Maven repository. See the respective READMEs (./integrations/*/README.md) for details. The project will not build unless these dependencies have been resolved.

Compiling

Bushfire example

See examples/bushfire/README.md.

Conservation Example

  1. Build the bdi-abm-integration layer: In the source repository /, do mvn clean install -N
  2. Build the BDI-ABM library: See /integrations/bdi-abm/README.md for instructions
  3. Build the BDI-GAMS library: See /integrations/bdi-gams/README.md for instructions
  4. Build the ABM-Jill library: See /integrations/abm-jill/README.md for instructions
  5. Build the Conservation application: In /examples/conservation, do mvn clean install

Vaccination Example (probably outdated as of 11/Sep/2018)

  1. Build the bdi-abm-integration layer: In the source repository /, do mvn clean install -N
  2. Build the BDI-ABM library: See /integrations/bdi-abm/README.md for instructions
  3. Build the ABM-JACK library: See /integrations/abm-jack/README.md for instructions
  4. Build the Bushfire application: In /examples/vaccination, do mvn clean install

License

BDI-ABM Integration Package Copyright (C) 2014, 2015 by its authors. See AUTHORS file.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.

For contact information, see AUTHORS file.

io.github.agentsoz

Versions

Version
3.0.0
2.0.1
2.0.0
1.0.0