Flatland issueshttps://gitlab.aicrowd.com/flatland/flatland/-/issues2019-11-27T15:05:30Zhttps://gitlab.aicrowd.com/flatland/flatland/-/issues/296Max_time_step not computable2019-11-27T15:05:30ZErik NygrenMax_time_step not computableIt is impossible for the participants to compute the max number of time steps from pickle files if they do not have the appropriate parameters used for generating the pickle file:
Actually, I find the max_time_steps formula to be a bit ...It is impossible for the participants to compute the max number of time steps from pickle files if they do not have the appropriate parameters used for generating the pickle file:
Actually, I find the max_time_steps formula to be a bit incorrect. When I generate local tests with different number of agents and different number of cities (starting from the example from the repository), I sometimes see the simulation ending earlier than expected. After running more such tests, it seems obvious that the actual formula is:
max_time_steps = int(4 * 2 * (env.width + env.height + number_of_agents / number_of_cities))
So the last term is only 20 when the ratio of agents to cities is 20. I don’t seem to find how to get the number of cities, and I also can’t find a function which returns the number of time steps (without being passed the actual ratio agents/cities as an argument).
I would really like to know the maximum number of time steps when making decisions - can you please suggest a way to achieve this?
We should update this funciton and/or pickle file saving to resolve this issue.https://gitlab.aicrowd.com/flatland/flatland/-/issues/286Establish FLATland for multi agent approaches different than RailEnv (not SBB...2019-11-06T15:17:42ZChristian EichenbergerEstablish FLATland for multi agent approaches different than RailEnv (not SBB, aicrowd)mohantymohantyhttps://gitlab.aicrowd.com/flatland/flatland/-/issues/266Malfunction Generators2021-06-30T15:08:19ZErik NygrenMalfunction GeneratorsIn the same manner as we use Rail and Schedule generators we should introduce a Malfunction Generator.
This will be help to easily test different malfunction models in the future. Here we can add more complex malfunction models then the...In the same manner as we use Rail and Schedule generators we should introduce a Malfunction Generator.
This will be help to easily test different malfunction models in the future. Here we can add more complex malfunction models then the currently implemented.
I suggest using the same setup as with the rail and schedule generators. This would also help resolve the problem with saving and loading different parameters from pickle files as we could also write generators for this.Christian EichenbergerChristian Eichenberger2019-11-06https://gitlab.aicrowd.com/flatland/flatland/-/issues/255Synchronization of agent steps2019-10-23T16:07:24ZErik NygrenSynchronization of agent steps### Story
As a Project Member, I want to discuss and update the way steps are executed in agents. Currently each agents action is executed squentially. This means that optimizers struggle to find optimal solutions as there is an asymmetr...### Story
As a Project Member, I want to discuss and update the way steps are executed in agents. Currently each agents action is executed squentially. This means that optimizers struggle to find optimal solutions as there is an asymmetry introduced by the agent index.
We want to change this behavior by removing this assymetry by either:
- There is a minimal release time of each cell (e.g. 1 step). This means that a new agent can only enter a cell when the previous cell has been empty for at least one time step.
- We test for all legal actions sequentially and only update the agent true position after all agents have performed their tests. This however will introduce potential conflicts where multiple agents want to enter the same cell at the same time. This could be regarded as a crash and environment would terminate. This is too much of a change for the current running challenge
### Acceptance Criteria
- We agree as a team on what way to go
- We open an issue to resolve the problem by implementing the discussed solutionhttps://gitlab.aicrowd.com/flatland/flatland/-/issues/252Update Parameters for Submissions2019-11-06T14:38:47ZErik NygrenUpdate Parameters for SubmissionsIf we can resolve the performance issues on the server we should update the parameters used for the submission again to reflect initial parameter set. This means more agents in particular.If we can resolve the performance issues on the server we should update the parameters used for the submission again to reflect initial parameter set. This means more agents in particular.Erik NygrenErik Nygrenhttps://gitlab.aicrowd.com/flatland/flatland/-/issues/244add new environments, like 2d maze , ... Multiagent and search student course...2019-10-22T18:51:46ZErik Nygrenadd new environments, like 2d maze , ... Multiagent and search student courses where it could be used as teaching toolhttps://gitlab.aicrowd.com/flatland/flatland/-/issues/223Update Editor2021-07-03T23:04:38ZErik NygrenUpdate EditorCheck the current state and reliability of the editor
- Update to work with current and future versions of flatland
- If this is too big a taks maybe remove?Check the current state and reliability of the editor
- Update to work with current and future versions of flatland
- If this is too big a taks maybe remove?hagrid67hagrid67https://gitlab.aicrowd.com/flatland/flatland/-/issues/218Release submission scoring generator2019-10-22T19:32:32ZErik NygrenRelease submission scoring generatorUpdate and clean up the submission level generator
Release a set of parameters such that local tests can be generated by participantsUpdate and clean up the submission level generator
Release a set of parameters such that local tests can be generated by participantshttps://gitlab.aicrowd.com/flatland/flatland/-/issues/208Departure and arrival times2019-11-15T19:10:18ZErik NygrenDeparture and arrival times**Story**
Introduce the following schedule parameters for each agent:
- Departure Time: Int latest time an agent should depart from deprature location
- Departure Location: Location where the agent enters the level
- Target Time: Lates...**Story**
Introduce the following schedule parameters for each agent:
- Departure Time: Int latest time an agent should depart from deprature location
- Departure Location: Location where the agent enters the level
- Target Time: Latest arrival time (used only later)
- Target Location: Location where agent leaves the level
These values should be provided by the schedule generator. Maybe it makes sense to store them in the agent itself
**Acceptance Criteria**
- 1v3Christian EichenbergerChristian Eichenbergerhttps://gitlab.aicrowd.com/flatland/flatland/-/issues/206reset() should take initial number of agents and not that of last generated rail2019-11-06T15:55:49ZErik Nygrenreset() should take initial number of agents and not that of last generated railIf we change number of agents, then a reset with new rail generation should try to reset the number of agents to the initial number of agents.If we change number of agents, then a reset with new rail generation should try to reset the number of agents to the initial number of agents.v3https://gitlab.aicrowd.com/flatland/flatland/-/issues/193Provide Information for to make reward shaping2019-10-22T19:34:21ZErik NygrenProvide Information for to make reward shapingI think the environment should return a dict with all (reward) relevant information, such as
agent tried to perform an illeagal move
agent tried to move to an occupied cell
agent reached goal
I think it would also be useful to provide s...I think the environment should return a dict with all (reward) relevant information, such as
agent tried to perform an illeagal move
agent tried to move to an occupied cell
agent reached goal
I think it would also be useful to provide some of the checks in env.step() as functions. for example
def is_valid_move(agent, action) --> boolv3https://gitlab.aicrowd.com/flatland/flatland/-/issues/148Refactoring: Incoming Transition Function for Rail env.2019-11-06T15:55:48ZErik NygrenRefactoring: Incoming Transition Function for Rail env.We need:
- Get incoming transitions for a cellWe need:
- Get incoming transitions for a cellv3https://gitlab.aicrowd.com/flatland/flatland/-/issues/96Should action_space and observation_space be instances of gym.spaces.Space?2019-10-22T19:32:38Zstefan_otteShould action_space and observation_space be instances of gym.spaces.Space?`action_space` and `observation_space` are currently (v0.2) not of type `gym.spaces.Space`. Also the `action_space` is always set to `[1]` which surprises me. Is this the intended behavior?
See https://gitlab.aicrowd.com/flatland/flatla...`action_space` and `observation_space` are currently (v0.2) not of type `gym.spaces.Space`. Also the `action_space` is always set to `[1]` which surprises me. Is this the intended behavior?
See https://gitlab.aicrowd.com/flatland/flatland/blob/master/flatland/envs/rail_env.py#L123v3https://gitlab.aicrowd.com/flatland/flatland/-/issues/17Observation rendering2019-10-22T18:50:47Zhagrid67Observation renderingIllustrate observation(s) for 1 or more agents in the environment "panel".
- Draw nodes/vertices and paths between nodes on the environment panel
- Also in a separate panel to illustrate the agent's view, as a tree or grid
* [ ] Provi...Illustrate observation(s) for 1 or more agents in the environment "panel".
- Draw nodes/vertices and paths between nodes on the environment panel
- Also in a separate panel to illustrate the agent's view, as a tree or grid
* [ ] Provide list of cells and colours how to visualize, should also work for local grid
* [ ] documentation for usersv3hagrid67hagrid67