Ingen beskrivning

Claudio Gomes 36d27b0913 updates instructions to avoid using maven 6 år sedan
.settings 4c9bea782d updated contral lang classes 6 år sedan
HintCOEngine d6b2751b48 release 0.0.2 6 år sedan
HintConfiguration d6b2751b48 release 0.0.2 6 år sedan
HintConfiguration.edit d6b2751b48 release 0.0.2 6 år sedan
HintConfiguration.editor d6b2751b48 release 0.0.2 6 år sedan
be.uantwerpen.cosys.ContractLang a6460bd560 added powerbonds and editor to solve crashing reflective editor 6 år sedan
deploy d6b2751b48 release 0.0.2 6 år sedan
.gitignore d6b2751b48 release 0.0.2 6 år sedan
.gitlab-ci.yml 513e016204 Try caching Maven dir. 6 år sedan
CONTRIBUTING.md 6d6eb16c48 Add readme and contributing 6 år sedan
LICENSE 49126b5ca2 Initial commit 6 år sedan
README.md 36d27b0913 updates instructions to avoid using maven 6 år sedan
deploy_examples.ps1 d6b2751b48 release 0.0.2 6 år sedan
pom.xml a6460bd560 added powerbonds and editor to solve crashing reflective editor 6 år sedan
test.sh cba2da2982 major refactoring for hierarchical cosim support (needed for multirate) 6 år sedan

README.md

HintCO

This framework is a automated co-simulation program which is based on hints. The co-simulation user define some hints in the framework, then the framework automatically try to find best master algorithm in order to satisfy user hints. It runs numerous simulations, using the past results to improve next simulation with new master algorithm.

Download

The latest precompiled binaries for windows are available for download in the releases.

For Linux and macOS platforms, see Getting Started in Development.

Usage Instructions

There are two main tasks in running a co-simulation with HintCO:

  1. Configure a co-simulation scenario file. This is an xml file that can be easily edited with Eclipse and the editor plugin shipped with HintCO.
  2. Compute the co-simulation results.

Configuring Co-simulation Scenarios

Co-simulation scenario are just xml files. See watertanks.xmi for an example.

HintCO provides EMF Editor Plugins to edit such files. To use them, install the HintCO.edit_*.jar and HintCO.editor_*.jar files into your favorite eclipse distribution.

Running Co-simulations

HintCO provides some example co-simulations. The scenario files are available in the [examples](HintCO\examples) directory and the FMUs are available in the [resources](HintCO\resources) directory.

If hintco denotes the HintCO binary, then run

hintco -s .\examples\watertanks.xmi -o output -n 1

Where .\examples\watertanks.xmi can be found in [examples](HintCO\examples), and output is where the results will be generated. The fmus are assumed to be in a resources folder, in the same directory as the binary hintco. A helper script under [scripts](HintCO\scripts) is provided, to create pdfs for the plots produced:

python plot_results.py ./output/0_1

To get help on the API:

hintco -h

Getting Started in Development

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Windows/Linux platform.

Installing

In order to setup the framework, you need follow these steps:

  1. Install Eclipse IDE for RCP and RAP Developers. Version: Photon Release (4.8.0)
  2. Install Xtend (Version 2.16 or 2.17). Using Install new software in Help tab of eclipse.
  3. Install Xcore (Version 1.6). Using Install new software in Help tab of eclipse. Xcore will be part of the Xtend. The Xtend repository should be available in the "Work with" dropdown. Either enter "Xcore" in the filter field or locate "Modeling → EMF - Eclipse Modeling Framework Xcore SDK" in the content and check mark it.

Building and Testing

Building and testing is done in eclipse.

Exporting an Application

Ese eclipse to export the eclipse product with the HintCO.product file.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Paper

If you use the HintCO, please cite our paper.

HintCO – Hint-Based Configuration of Co-Simulations. Cláudio Gomes, Bentley James Oakes, Mehrdad Moradi, Alejandro Torres Gámiz, Juan Carlos Mendo, Stefan Dutré, Joachim Denil, Hans Vangheluwe. SIMULTECH 2019.

@inproceedings{Gomes2019,
  address = {{Prague, Czech Republic}},
  title = {{{HintCO}} - {{Hint}}-{{Based Configuration}} of {{Co}}-{{Simulations}}},
  booktitle = {International {{Conference}} on {{Simulation}} and {{Modeling Methodologies}}, {{Technologies}} and {{Applications}}},
  author = {Gomes, Cl{\'a}udio and Oakes, Bentley James and Moradi, Mehrdad and Gamiz, Alejandro Torres and Mendo, Juan Carlos and Dutre, Stefan and Denil, Joachim and Vangheluwe, Hans},
  year = {2019},
  pages = {accepted},
}