Skip to content
Snippets Groups Projects
Commit 84854ef8 authored by u229589's avatar u229589
Browse files

Merge branch '188_refining_generator' of gitlab.aicrowd.com:flatland/flatland...

Merge branch '188_refining_generator' of gitlab.aicrowd.com:flatland/flatland into 188_refining_generator
parents b5a6c56a a7e149a4
No related branches found
No related tags found
No related merge requests found
"""Rail generators (infrastructure manager, "Infrastrukturbetreiber").""" """Rail generators (infrastructure manager, "Infrastrukturbetreiber")."""
import time
import warnings import warnings
from typing import Callable, Tuple, Optional, Dict, List, Any from typing import Callable, Tuple, Optional, Dict, List
import msgpack import msgpack
import numpy as np import numpy as np
...@@ -593,7 +592,7 @@ def sparse_rail_generator(max_num_cities: int = 5, grid_mode: bool = False, max_ ...@@ -593,7 +592,7 @@ def sparse_rail_generator(max_num_cities: int = 5, grid_mode: bool = False, max_
return grid_map, {'agents_hints': { return grid_map, {'agents_hints': {
'num_agents': num_agents, 'num_agents': num_agents,
'agent_start_targets_nodes': agent_start_targets_cities, 'agent_start_targets_cities': agent_start_targets_cities,
'train_stations': train_stations, 'train_stations': train_stations,
'city_orientations': city_orientations 'city_orientations': city_orientations
}} }}
......
...@@ -61,7 +61,7 @@ def sparse_schedule_generator(speed_ratio_map: Mapping[float, float] = None) -> ...@@ -61,7 +61,7 @@ def sparse_schedule_generator(speed_ratio_map: Mapping[float, float] = None) ->
def generator(rail: GridTransitionMap, num_agents: int, hints: Any = None): def generator(rail: GridTransitionMap, num_agents: int, hints: Any = None):
train_stations = hints['train_stations'] train_stations = hints['train_stations']
agent_start_targets_nodes = hints['agent_start_targets_nodes'] agent_start_targets_cities = hints['agent_start_targets_cities']
max_num_agents = hints['num_agents'] max_num_agents = hints['num_agents']
city_orientations = hints['city_orientations'] city_orientations = hints['city_orientations']
if num_agents > max_num_agents: if num_agents > max_num_agents:
...@@ -73,8 +73,8 @@ def sparse_schedule_generator(speed_ratio_map: Mapping[float, float] = None) -> ...@@ -73,8 +73,8 @@ def sparse_schedule_generator(speed_ratio_map: Mapping[float, float] = None) ->
agents_direction = [] agents_direction = []
for agent_idx in range(num_agents): for agent_idx in range(num_agents):
# Set target for agent # Set target for agent
start_city = agent_start_targets_nodes[agent_idx][0] start_city = agent_start_targets_cities[agent_idx][0]
target_city = agent_start_targets_nodes[agent_idx][1] target_city = agent_start_targets_cities[agent_idx][1]
start = random.choice(train_stations[start_city]) start = random.choice(train_stations[start_city])
target = random.choice(train_stations[target_city]) target = random.choice(train_stations[target_city])
while start[1] % 2 != 0: while start[1] % 2 != 0:
...@@ -82,7 +82,7 @@ def sparse_schedule_generator(speed_ratio_map: Mapping[float, float] = None) -> ...@@ -82,7 +82,7 @@ def sparse_schedule_generator(speed_ratio_map: Mapping[float, float] = None) ->
while target[1] % 2 != 1: while target[1] % 2 != 1:
target = random.choice(train_stations[target_city]) target = random.choice(train_stations[target_city])
agent_orientation = (agent_start_targets_nodes[agent_idx][2] + 2 * start[1]) % 4 agent_orientation = (agent_start_targets_cities[agent_idx][2] + 2 * start[1]) % 4
if not rail.check_path_exists(start[0], agent_orientation, target[0]): if not rail.check_path_exists(start[0], agent_orientation, target[0]):
agent_orientation = (agent_orientation + 2) % 4 agent_orientation = (agent_orientation + 2) % 4
if not (rail.check_path_exists(start[0], agent_orientation, target[0])): if not (rail.check_path_exists(start[0], agent_orientation, target[0])):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment