Giter Site home page Giter Site logo

ucuapps / modelicagym Goto Github PK

View Code? Open in Web Editor NEW
74.0 74.0 25.0 26.06 MB

Modelica models integration with Open AI Gym

License: GNU General Public License v3.0

Python 78.60% Modelica 21.40%
modelica openai-gym reinforcement-learning reinforcement-learning-environments

modelicagym's People

Contributors

aviseknaug avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

modelicagym's Issues

Inconsistent return type in `modelica_base_env`

Hi,
the step() function usually returns a tuple which first argument is the state.
The state type turns out to be set, for the default case, by get_state(result) of the do_simulation() function and it is a tuple (modelica_base_env@241).

However, in case the step functions catches a done(), then the step function returns a np.array(self.state); thus being different from the previous case.

Am I correct?
And: why returning a tuple instead of an array which is much more comfortable to use? Is it because the FMU might return integers instead of all-reals?

Thanks!

Set options["result_handling"] = "memory" as default

Hi,
I would suggest to set options["result_handling"] = "memory" as default in modelica_base_env/do_simulation.
Writing to disk is a rather expensive operation (my code was running 15x slower because of this) and changing the setting would require overriding the do_simulation (I don't see any kwargs that passes such option to the underlying PyFMI model, right?)

While for PyFMI was making sense to leave a different default, I think that ModelicaGym users might not be interested in having a variable dump, especially if this comes at such an high performance cost.

new setup.py corrent with examples?

When running from the example dir I get ModuleNotFoundError: No module named 'gymalgs'
setup_test is working.
when changed back to ..gymalgs.rl I get
from ..gymalgs.rl import QLearner ValueError: attempted relative import beyond top-level package
can load modelicagym.gymalgs.rl but then I get ModuleNotFoundError: No module named 'examples' somewhere down the line

Simulation with multiple FMUs

As I understood by reading the tutorial on how to integrate FMU, it is only possible to use one FMU for control in this framework. My aim is to control a battery model exported as FMU, which is located in a large power network. For this purpose, I need my observation space to include quantities outside of the battery FMU. For example, if my battery is located in a bus with a photovoltaic connected (which is also another FMU) to be able to include its power in the observation space.

Is something like that possible? Would it be possible with some modifications?

Installation

The installation procedure is not working.

Mainly I guess because svn co https://svn.jmodelica.org/trunk JModelica is off.

Could you work it around? Im trying do it here too.

Another question, can this app run on windows?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.