mirror of
https://github.com/vale981/ray
synced 2025-03-06 10:31:39 -05:00

* wip * Sat Dec 30 15:07:28 PST 2017 * log video * video doesn't work well * scenario integration * Sat Dec 30 17:30:22 PST 2017 * Sat Dec 30 17:31:05 PST 2017 * Sat Dec 30 17:31:32 PST 2017 * Sat Dec 30 17:32:16 PST 2017 * Sat Dec 30 17:34:11 PST 2017 * Sat Dec 30 17:34:50 PST 2017 * Sat Dec 30 17:35:34 PST 2017 * Sat Dec 30 17:38:49 PST 2017 * Sat Dec 30 17:40:39 PST 2017 * Sat Dec 30 17:43:00 PST 2017 * Sat Dec 30 17:43:04 PST 2017 * Sat Dec 30 17:45:56 PST 2017 * Sat Dec 30 17:46:26 PST 2017 * Sat Dec 30 17:47:02 PST 2017 * Sat Dec 30 17:51:53 PST 2017 * Sat Dec 30 17:52:54 PST 2017 * Sat Dec 30 17:56:43 PST 2017 * Sat Dec 30 18:27:07 PST 2017 * Sat Dec 30 18:27:52 PST 2017 * fix train * Sat Dec 30 18:41:51 PST 2017 * Sat Dec 30 18:54:11 PST 2017 * Sat Dec 30 18:56:22 PST 2017 * Sat Dec 30 19:05:04 PST 2017 * Sat Dec 30 19:05:23 PST 2017 * Sat Dec 30 19:11:53 PST 2017 * Sat Dec 30 19:14:31 PST 2017 * Sat Dec 30 19:16:20 PST 2017 * Sat Dec 30 19:18:05 PST 2017 * Sat Dec 30 19:18:45 PST 2017 * Sat Dec 30 19:22:44 PST 2017 * Sat Dec 30 19:24:41 PST 2017 * Sat Dec 30 19:26:57 PST 2017 * Sat Dec 30 19:40:37 PST 2017 * wip models * reward bonus * test prep * Sun Dec 31 18:45:25 PST 2017 * Sun Dec 31 18:58:28 PST 2017 * Sun Dec 31 18:59:34 PST 2017 * Sun Dec 31 19:03:33 PST 2017 * Sun Dec 31 19:05:05 PST 2017 * Sun Dec 31 19:09:25 PST 2017 * fix train * kill * add tuple preprocessor * Sun Dec 31 20:38:33 PST 2017 * Sun Dec 31 22:51:24 PST 2017 * Sun Dec 31 23:14:13 PST 2017 * Sun Dec 31 23:16:04 PST 2017 * Mon Jan 1 00:08:35 PST 2018 * Mon Jan 1 00:10:48 PST 2018 * Mon Jan 1 01:08:31 PST 2018 * Mon Jan 1 14:45:44 PST 2018 * Mon Jan 1 14:54:56 PST 2018 * Mon Jan 1 17:29:29 PST 2018 * switch to euclidean dists * Mon Jan 1 17:39:27 PST 2018 * Mon Jan 1 17:41:47 PST 2018 * Mon Jan 1 17:44:18 PST 2018 * Mon Jan 1 17:47:09 PST 2018 * Mon Jan 1 20:31:02 PST 2018 * Mon Jan 1 20:39:33 PST 2018 * Mon Jan 1 20:40:55 PST 2018 * Mon Jan 1 20:55:06 PST 2018 * Mon Jan 1 21:05:52 PST 2018 * fix env path * merge richards fix * fix hash * Mon Jan 1 22:04:00 PST 2018 * Mon Jan 1 22:25:29 PST 2018 * Mon Jan 1 22:30:42 PST 2018 * simplified reward function * add framestack * add env configs * simplify speed reward * Tue Jan 2 17:36:15 PST 2018 * Tue Jan 2 17:49:16 PST 2018 * Tue Jan 2 18:10:38 PST 2018 * add lane keeping simple mode * Tue Jan 2 20:25:26 PST 2018 * Tue Jan 2 20:30:30 PST 2018 * Tue Jan 2 20:33:26 PST 2018 * Tue Jan 2 20:41:42 PST 2018 * ppo lane keep * simplify discrete actions * Tue Jan 2 21:41:05 PST 2018 * Tue Jan 2 21:49:03 PST 2018 * Tue Jan 2 22:12:23 PST 2018 * Tue Jan 2 22:14:42 PST 2018 * Tue Jan 2 22:20:59 PST 2018 * Tue Jan 2 22:23:43 PST 2018 * Tue Jan 2 22:26:27 PST 2018 * Tue Jan 2 22:27:20 PST 2018 * Tue Jan 2 22:44:00 PST 2018 * Tue Jan 2 22:57:58 PST 2018 * Tue Jan 2 23:08:51 PST 2018 * Tue Jan 2 23:11:32 PST 2018 * update dqn reward * Thu Jan 4 12:29:40 PST 2018 * Thu Jan 4 12:30:26 PST 2018 * Update train_dqn.py * fix
119 lines
4.1 KiB
Python
119 lines
4.1 KiB
Python
"""Collection of Carla scenarios, including those from the CoRL 2017 paper."""
|
|
|
|
|
|
TEST_WEATHERS = [0, 2, 5, 7, 9, 10, 11, 12, 13]
|
|
TRAIN_WEATHERS = [1, 3, 4, 6, 8, 14]
|
|
|
|
|
|
def build_scenario(
|
|
city, start, end, vehicles, pedestrians, max_steps, weathers):
|
|
return {
|
|
"city": city,
|
|
"num_vehicles": vehicles,
|
|
"num_pedestrians": pedestrians,
|
|
"weather_distribution": weathers,
|
|
"start_pos_id": start,
|
|
"end_pos_id": end,
|
|
"max_steps": max_steps,
|
|
}
|
|
|
|
|
|
# Simple scenario for Town02 that involves driving down a road
|
|
DEFAULT_SCENARIO = build_scenario(
|
|
city="Town02", start=36, end=40, vehicles=20, pedestrians=40,
|
|
max_steps=200, weathers=[0])
|
|
|
|
# Simple scenario for Town02 that involves driving down a road
|
|
LANE_KEEP = build_scenario(
|
|
city="Town02", start=36, end=40, vehicles=0, pedestrians=0,
|
|
max_steps=2000, weathers=[0])
|
|
|
|
# Scenarios from the CoRL2017 paper
|
|
POSES_TOWN1_STRAIGHT = [
|
|
[36, 40], [39, 35], [110, 114], [7, 3], [0, 4],
|
|
[68, 50], [61, 59], [47, 64], [147, 90], [33, 87],
|
|
[26, 19], [80, 76], [45, 49], [55, 44], [29, 107],
|
|
[95, 104], [84, 34], [53, 67], [22, 17], [91, 148],
|
|
[20, 107], [78, 70], [95, 102], [68, 44], [45, 69]]
|
|
|
|
|
|
POSES_TOWN1_ONE_CURVE = [
|
|
[138, 17], [47, 16], [26, 9], [42, 49], [140, 124],
|
|
[85, 98], [65, 133], [137, 51], [76, 66], [46, 39],
|
|
[40, 60], [0, 29], [4, 129], [121, 140], [2, 129],
|
|
[78, 44], [68, 85], [41, 102], [95, 70], [68, 129],
|
|
[84, 69], [47, 79], [110, 15], [130, 17], [0, 17]]
|
|
|
|
POSES_TOWN1_NAV = [
|
|
[105, 29], [27, 130], [102, 87], [132, 27], [24, 44],
|
|
[96, 26], [34, 67], [28, 1], [140, 134], [105, 9],
|
|
[148, 129], [65, 18], [21, 16], [147, 97], [42, 51],
|
|
[30, 41], [18, 107], [69, 45], [102, 95], [18, 145],
|
|
[111, 64], [79, 45], [84, 69], [73, 31], [37, 81]]
|
|
|
|
|
|
POSES_TOWN2_STRAIGHT = [
|
|
[38, 34], [4, 2], [12, 10], [62, 55], [43, 47],
|
|
[64, 66], [78, 76], [59, 57], [61, 18], [35, 39],
|
|
[12, 8], [0, 18], [75, 68], [54, 60], [45, 49],
|
|
[46, 42], [53, 46], [80, 29], [65, 63], [0, 81],
|
|
[54, 63], [51, 42], [16, 19], [17, 26], [77, 68]]
|
|
|
|
POSES_TOWN2_ONE_CURVE = [
|
|
[37, 76], [8, 24], [60, 69], [38, 10], [21, 1],
|
|
[58, 71], [74, 32], [44, 0], [71, 16], [14, 24],
|
|
[34, 11], [43, 14], [75, 16], [80, 21], [3, 23],
|
|
[75, 59], [50, 47], [11, 19], [77, 34], [79, 25],
|
|
[40, 63], [58, 76], [79, 55], [16, 61], [27, 11]]
|
|
|
|
POSES_TOWN2_NAV = [
|
|
[19, 66], [79, 14], [19, 57], [23, 1],
|
|
[53, 76], [42, 13], [31, 71], [33, 5],
|
|
[54, 30], [10, 61], [66, 3], [27, 12],
|
|
[79, 19], [2, 29], [16, 14], [5, 57],
|
|
[70, 73], [46, 67], [57, 50], [61, 49], [21, 12],
|
|
[51, 81], [77, 68], [56, 65], [43, 54]]
|
|
|
|
TOWN1_STRAIGHT = [
|
|
build_scenario("Town01", start, end, 0, 0, 300, TEST_WEATHERS)
|
|
for (start, end) in POSES_TOWN1_STRAIGHT]
|
|
|
|
TOWN1_ONE_CURVE = [
|
|
build_scenario("Town01", start, end, 0, 0, 600, TEST_WEATHERS)
|
|
for (start, end) in POSES_TOWN1_ONE_CURVE]
|
|
|
|
TOWN1_NAVIGATION = [
|
|
build_scenario("Town01", start, end, 0, 0, 900, TEST_WEATHERS)
|
|
for (start, end) in POSES_TOWN1_NAV]
|
|
|
|
TOWN1_NAVIGATION_DYNAMIC = [
|
|
build_scenario("Town01", start, end, 20, 50, 900, TEST_WEATHERS)
|
|
for (start, end) in POSES_TOWN1_NAV]
|
|
|
|
TOWN2_STRAIGHT = [
|
|
build_scenario("Town02", start, end, 0, 0, 300, TRAIN_WEATHERS)
|
|
for (start, end) in POSES_TOWN2_STRAIGHT]
|
|
|
|
TOWN2_STRAIGHT_DYNAMIC = [
|
|
build_scenario("Town02", start, end, 20, 50, 300, TRAIN_WEATHERS)
|
|
for (start, end) in POSES_TOWN2_STRAIGHT]
|
|
|
|
TOWN2_ONE_CURVE = [
|
|
build_scenario("Town02", start, end, 0, 0, 600, TRAIN_WEATHERS)
|
|
for (start, end) in POSES_TOWN2_ONE_CURVE]
|
|
|
|
TOWN2_NAVIGATION = [
|
|
build_scenario("Town02", start, end, 0, 0, 900, TRAIN_WEATHERS)
|
|
for (start, end) in POSES_TOWN2_NAV]
|
|
|
|
TOWN2_NAVIGATION_DYNAMIC = [
|
|
build_scenario("Town02", start, end, 20, 50, 900, TRAIN_WEATHERS)
|
|
for (start, end) in POSES_TOWN2_NAV]
|
|
|
|
TOWN1_ALL = (
|
|
TOWN1_STRAIGHT + TOWN1_ONE_CURVE + TOWN1_NAVIGATION +
|
|
TOWN1_NAVIGATION_DYNAMIC)
|
|
|
|
TOWN2_ALL = (
|
|
TOWN2_STRAIGHT + TOWN2_ONE_CURVE + TOWN2_NAVIGATION +
|
|
TOWN2_NAVIGATION_DYNAMIC)
|