FAME-Core

FAME-Core: An open Framework for distributed Agent-based Modelling of Energy systems - Published in JOSS (2023)

https://gitlab.com/fame-framework/fame-core

Science Score: 89.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README and JOSS metadata
  • Academic publication links
  • Committers with academic emails
    7 of 7 committers (100.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

FAME

Keywords from Contributors

agent-based-modeling electricity market modelling energy transition

Scientific Fields

Engineering Computer Science - 32% confidence
Last synced: 6 months ago · JSON representation

Repository

Core library of FAME written in Java

Basic Info
  • Host: gitlab.com
  • Owner: fame-framework
  • License: other
  • Default Branch: dev
Statistics
  • Stars: 5
  • Forks: 1
  • Open Issues: 22
  • Releases: 0
Topics
FAME
Created almost 6 years ago

https://gitlab.com/fame-framework/fame-core/blob/dev/


# FAME-Core
FAME's core library written in Java. 
Minimum required JDK version is 11.

## What is FAME?
FAME is an open **F**ramework for distributed **A**gent-based **M**odels of **E**nergy systems.
Its purpose is to support the rapid development and fast execution of complex agent-based energy system simulations.
All components of FAME are open source.
These components are:
- **FAME-Core**: A Java library that provides classes and methods to create and run your own agent-based simulations in single-core or multi-core mode.
- **FAME-Io**: A set of Python tools that enable you to feed input data to your simulations and to extract simulation results in a convenient way.
- **FAME-Gui**: A graphical user interface for convenient configuration of FAME-based models.
- **FAME-Protobuf**: Basic definitions for input and output formats of FAME-Core.
- **FAME-Demo**: A simplistic FAME-based simulation demonstrating the most important features of FAME and their application in energy systems analysis.
- **FAME-Mpi**: Components for parallelisation of FAME-Core applications.

Please visit the [FAME-Wiki](https://gitlab.com/fame-framework/wiki/-/wikis/home) to access detailed manuals and explanations of these FAME-components.

## Statement of need
FAME is a general framework intended for, but not exclusive to, energy systems analysis.
It facilitates the development of complex agent-based simulations.
FAME enables parallel execution of simulations without any prior knowledge about parallelisation techniques.
Models built with FAME can be executed on computer systems of any capacity  from your laptop to high-performance computing clusters.
Furthermore, FAME applications are binary data files that are portable across Windows and Linux systems.
FAME's highly adaptable contracting system offers broad configuration options to control simulations without changing its code.

FAME-Core has been thoroughly tested to fulfil the demand of scientific rigor and to provide a stable and reliable simulation framework.
It provides thoroughly tested functionality common to all simulations (e.g. input, output, scheduling, communication), resulting in

1. less code → less errors → less maintenance, 
2. higher transparency of existing models due to common interfaces and concepts of the respective framework, and 
3. a lower threshold for developing new models by providing a well-defined starting point.

## Installation instructions
FAME-Core can be installed easily by using [Apache Maven](https://maven.apache.org/).
In your Java project, just add the FAME-Core dependency to your `pom.xml`:

```

    de.dlr.gitlab.fame
    core
    2.0.0

```

Please see [Maven-central](https://mvnrepository.com/artifact/de.dlr.gitlab.fame/core) for the latest version.
Have a look at the [Getting Started](https://gitlab.com/fame-framework/wiki/-/wikis/GetStarted/Getting-started) section in the Wiki to understand how to set up a model using FAME-Core.  

## Available Support
This is a purely scientific project, hence there will be no paid technical support.
Limited support is available, e.g. to enhance FAME, fix bugs, etc. 
To report bugs or pose enhancement requests, please file issues following the provided templates (see also [CONTRIBUTING.md](CONTRIBUTING.md))
For substantial enhancements, contact us via [fame@dlr.de](mailto:fame@dlr.de) for working together on the code in joint projects or towards collaborative publications.

## Citing FAME-Core
If you use FAME-Core in your scientific work please cite:

Christoph Schimeczek, Marc Deissenroth-Uhrig, Ulrich Frey, Benjamin Fuchs, A. Achraf El Ghazi, Manuel Wetzel & Kristina Nienhaus (2023).
FAME-Core: An open Framework for distributed Agent-based Modelling of Energy systems.
Journal of Open Source Software. [doi: 10.21105/joss.05087](https://doi.org/10.21105/joss.05087)

JOSS Publication

FAME-Core: An open Framework for distributed Agent-based Modelling of Energy systems
Published
April 17, 2023
Volume 8, Issue 84, Page 5087
Authors
Christoph Schimeczek ORCID
German Aerospace Center (DLR), Institute of Networked Energy Systems, Curiestr. 4, 70563 Stuttgart, Germany
Marc Deissenroth-Uhrig ORCID
German Aerospace Center (DLR), Institute of Networked Energy Systems, Curiestr. 4, 70563 Stuttgart, Germany, School of Engineering, University of Applied Sciences Saarbrücken, Goebenstr. 40, 66117 Saarbrücken, Germany
Ulrich Frey ORCID
German Aerospace Center (DLR), Institute of Networked Energy Systems, Curiestr. 4, 70563 Stuttgart, Germany
Benjamin Fuchs ORCID
German Aerospace Center (DLR), Institute of Networked Energy Systems, Curiestr. 4, 70563 Stuttgart, Germany
A. Achraf El Ghazi ORCID
German Aerospace Center (DLR), Institute of Networked Energy Systems, Curiestr. 4, 70563 Stuttgart, Germany
Manuel Wetzel ORCID
German Aerospace Center (DLR), Institute of Networked Energy Systems, Curiestr. 4, 70563 Stuttgart, Germany
Kristina Nienhaus ORCID
German Aerospace Center (DLR), Institute of Networked Energy Systems, Curiestr. 4, 70563 Stuttgart, Germany
Editor
Frauke Wiese ORCID
Tags
agent-based energy systems modelling framework parallelisation

Committers

Last synced: 6 months ago

All Time
  • Total Commits: 514
  • Total Committers: 7
  • Avg Commits per committer: 73.429
  • Development Distribution Score (DDS): 0.262
Past Year
  • Commits: 158
  • Committers: 3
  • Avg Commits per committer: 79.0
  • Development Distribution Score (DDS): 0.07
Top Committers
Name Email Commits
Christoph Schimeczek C****k@d****e 407
Christoph Schimeczek c****k@d****e 52
Aboubakr Achraf El Ghazi a****i@d****e 29
schi_co s****o@T****e 19
frey_ul f****l@T****e 4
Felix Nitsch f****h@d****e 2
Frey U****y@d****e 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 3
  • Total versions: 13
repo1.maven.org: de.dlr.gitlab.fame:core

An open framework for distributed agent-based modeling of energy systems

  • Versions: 13
  • Dependent Packages: 0
  • Dependent Repositories: 3
Rankings
Dependent repos count: 13.8%
Average: 43.8%
Dependent packages count: 50.1%
Stargazers count: 52.7%
Forks count: 58.6%
Last synced: 6 months ago

Dependencies

pom.xml maven
  • com.google.protobuf:protobuf-java-util 3.18.1
  • de.dlr.gitlab.fame:mpi-api 1.0.1
  • de.dlr.gitlab.fame:mpi-singlecore-impl 1.0.1
  • de.dlr.gitlab.fame:protobuf 1.2.0
  • info.picocli:picocli 4.6.1
  • org.apache.commons:commons-lang3 3.12.0
  • org.reflections:reflections 0.9.12
  • org.slf4j:slf4j-api 1.7.25
  • org.yaml:snakeyaml 1.29
  • io.github.hakky54:logcaptor 2.6.1 test
  • junit:junit 4.13.2 test
  • org.mockito:mockito-inline 3.12.4 test