From 49310d4b7dd21978fa328ae9076f88ce83858c10 Mon Sep 17 00:00:00 2001 From: "Egli Adrian (IT-SCI-API-PFI)" <adrian.egli@sbb.ch> Date: Thu, 22 Aug 2019 23:46:20 +0200 Subject: [PATCH] inital postion / target not equal --- flatland/envs/generators.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/flatland/envs/generators.py b/flatland/envs/generators.py index 712debda..127e8790 100644 --- a/flatland/envs/generators.py +++ b/flatland/envs/generators.py @@ -543,7 +543,8 @@ def random_rail_generator(cell_type_relative_proportion=[1.0] * 11): return generator -def realistic_rail_generator(nr_start_goal=1, seed=0, add_max_dead_end=4, two_track_back_bone=True): +def realistic_rail_generator(nr_start_goal=1, seed=0, add_max_dead_end=4, goals_only_in_dead_end=False, + two_track_back_bone=True): """ Parameters ------- @@ -728,7 +729,8 @@ def realistic_rail_generator(nr_start_goal=1, seed=0, add_max_dead_end=4, two_tr int((start_track[0] + goal_track[0]) / 2), int((start_track[1] + goal_track[1]) / 2)) agents_positions.append(add_pos) agents_directions.append(([1, 3][off_set_loop % 2])) - agents_targets.append(add_pos) + if not goals_only_in_dead_end: + agents_targets.append(add_pos) add_rail(width, height, grid_map, (x_offsets[off_set_loop - 1] + int(two_track_back_bone_loop), @@ -779,7 +781,8 @@ def realistic_rail_generator(nr_start_goal=1, seed=0, add_max_dead_end=4, two_tr int((start_track[0] + goal_track[0]) / 2), int((start_track[1] + goal_track[1]) / 2)) agents_positions.append(add_pos) agents_directions.append(([1, 3][off_set_loop % 2])) - agents_targets.append(add_pos) + if not goals_only_in_dead_end: + agents_targets.append(add_pos) add_rail(width, height, grid_map, (x_offsets[off_set_loop - 1] + int(two_track_back_bone_loop), @@ -843,7 +846,8 @@ def realistic_rail_generator(nr_start_goal=1, seed=0, add_max_dead_end=4, two_tr agents_positions.append(add_pos) agents_directions.append(([1, 3][off_set_loop % 2])) add_pos = (int((start[0] + goal[0]) / 2), int((2 * start[1] + goal[1]) / 3)) - agents_targets.append(add_pos) + if not goals_only_in_dead_end: + agents_targets.append(add_pos) for off_set_loop in range(len(x_offsets)): off_set = x_offsets[off_set_loop] -- GitLab