Comments (2)
As we discussed today:
- Let's have a
Simulation
class which is the main MDP environment (ie. implementsgym.Env
) Simulation
contains anArena
object and one or moreNeuroMechFly
instances- The
dm_control.mjcf.physics.Physics
instance will belong toSimulation
instead ofNeuroMechFly
The advantages are:
- If we need to modify the arena (eg. change the object position in an arena with a moving object), we don't need to do it strangely by accessing the arena through the fly.
- A cleaner interface for simulations with multiple flies (useful for social behaviors).
Questions:
- Do the
NeuroMechFly
andArena
need an inverse link to theSimulation
that they belong to? I don't like this because it makes the UML diagram messy and recurrent, but it might be necessary if we want to have an interface for the user to do things with the arena or the flies that would require access to thePhysics
instance.
@tkclam: Look at Barbara and Florian's semester project, they've done something like this already.
I don't think this is urgent but I do think it's better to do this now than later, as this is a major API change. If maintaining backward compatibility is too complicated, we can also forget about it and make a non-backward-compatible version as the paper is updated for revision. I think it's a reasonable thing to do.
from flygym.
This is being implemented in https://github.com/NeLy-EPFL/flygym/tree/new-api
from flygym.
Related Issues (20)
- MuJoCo breaking change HOT 5
- Release checklist
- Bug in mask indicating whether visual input is refereshed at each step. HOT 1
- Remove randomness in visual renderinng HOT 9
- Refactor/clean the xml HOT 3
- Find a better way to convert notebooks to tutorial pages HOT 9
- In the long term, should we move away from dm_control and use just the mujoco binding for the core simulation?
- Increase modularity and facilitate inheritance
- Doc: Move docs for observation/action spaces to a separate page
- TODO: Main tasks for v1.0.0 HOT 1
- Merge new-api-grooming into dev-v1.0.0
- Fly-to-fly tracking: leading fly sinks underground HOT 1
- Discrepancies in contact force visualization
- Refactor flygym/examples HOT 1
- Make sure existing tutorials are consistent with the new API
- Add tutorial on plume tracking
- Add tutorial on connectome-constrained vision model
- Add tutorial on head stabilization
- Add tutorial on path integration
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from flygym.