From ce5519fc107f0d7d8f6b923915eeafb675b85cea Mon Sep 17 00:00:00 2001 From: Yangge Li <li213@illinois.edu> Date: Thu, 19 May 2022 18:59:13 -0500 Subject: [PATCH] setting up pip installation for project --- .gitignore | 1 + demo.py | 30 +++++++------- demo2.py | 30 +++++++------- {src => dryvr_plus_plus}/__init__.py | 0 {src => dryvr_plus_plus}/example/__init__.py | 0 .../example/example_agent/__init__.py | 0 .../example/example_agent/car_agent.py | 4 +- .../example/example_agent/sign_agent.py | 2 +- .../example/example_map/__init__.py | 0 .../example/example_map/simple_map.py | 4 +- .../example/example_map/simple_map2.py | 6 +-- .../example/example_sensor/__init__.py | 0 .../example/example_sensor/fake_sensor.py | 0 {src => dryvr_plus_plus}/plotter/__init__.py | 0 {src => dryvr_plus_plus}/plotter/parser.py | 0 {src => dryvr_plus_plus}/plotter/plotter2D.py | 40 +++++++++++++++---- {src => dryvr_plus_plus}/plotter/plotter3D.py | 0 .../scene_verifier/__init__.py | 0 .../scene_verifier/agents/__init__.py | 0 .../scene_verifier/agents/base_agent.py | 2 +- .../scene_verifier/analysis/__init__.py | 0 .../analysis/analysis_tree_node.py | 0 .../scene_verifier/analysis/simulator.py | 8 ++-- .../scene_verifier/analysis/verifier.py | 8 ++-- .../scene_verifier/automaton/__init__.py | 0 .../scene_verifier/automaton/guard.py | 6 +-- .../automaton/hybrid_automaton.py | 0 .../automaton/hybrid_io_automaton.py | 2 +- .../scene_verifier/automaton/reset.py | 0 .../scene_verifier/code_parser/__init__.py | 0 .../code_parser/pythonparser.py | 0 .../scene_verifier/dryvr/__init__.py | 0 .../scene_verifier/dryvr/common/__init__.py | 0 .../scene_verifier/dryvr/common/config.py | 0 .../scene_verifier/dryvr/common/constant.py | 0 .../scene_verifier/dryvr/common/io.py | 2 +- .../scene_verifier/dryvr/common/utils.py | 0 .../scene_verifier/dryvr/core/__init__.py | 0 .../scene_verifier/dryvr/core/distance.py | 0 .../scene_verifier/dryvr/core/dryvrcore.py | 14 +++---- .../scene_verifier/dryvr/core/dryvrmain.py | 30 +++++++------- .../scene_verifier/dryvr/core/goalchecker.py | 2 +- .../scene_verifier/dryvr/core/graph.py | 0 .../scene_verifier/dryvr/core/guard.py | 2 +- .../scene_verifier/dryvr/core/initialset.py | 0 .../dryvr/core/initialsetstack.py | 0 .../scene_verifier/dryvr/core/reachtube.py | 0 .../scene_verifier/dryvr/core/reset.py | 2 +- .../dryvr/core/uniformchecker.py | 4 +- .../dryvr/discrepancy/Global_Disc.py | 0 .../dryvr/discrepancy/PW_Discrepancy.py | 0 .../dryvr/discrepancy/__init__.py | 0 .../scene_verifier/map/__init__.py | 0 .../scene_verifier/map/lane.py | 2 +- .../scene_verifier/map/lane_map.py | 4 +- .../scene_verifier/map/lane_segment.py | 2 +- .../scene_verifier/scenario/__init__.py | 0 .../scene_verifier/scenario/scenario.py | 16 ++++---- .../scene_verifier/utils/__init__.py | 0 .../scene_verifier/utils/utils.py | 0 example_controller1.py | 2 +- example_controller2.py | 2 +- example_controller3.py | 2 +- example_two_car_sign_lane_switch.py | 14 +++---- setup.py | 35 ++++++++++++++++ tests/testdpp.py | 8 ++-- 66 files changed, 172 insertions(+), 114 deletions(-) rename {src => dryvr_plus_plus}/__init__.py (100%) rename {src => dryvr_plus_plus}/example/__init__.py (100%) rename {src => dryvr_plus_plus}/example/example_agent/__init__.py (100%) rename {src => dryvr_plus_plus}/example/example_agent/car_agent.py (97%) rename {src => dryvr_plus_plus}/example/example_agent/sign_agent.py (88%) rename {src => dryvr_plus_plus}/example/example_map/__init__.py (100%) rename {src => dryvr_plus_plus}/example/example_map/simple_map.py (89%) rename {src => dryvr_plus_plus}/example/example_map/simple_map2.py (95%) rename {src => dryvr_plus_plus}/example/example_sensor/__init__.py (100%) rename {src => dryvr_plus_plus}/example/example_sensor/fake_sensor.py (100%) rename {src => dryvr_plus_plus}/plotter/__init__.py (100%) rename {src => dryvr_plus_plus}/plotter/parser.py (100%) rename {src => dryvr_plus_plus}/plotter/plotter2D.py (87%) rename {src => dryvr_plus_plus}/plotter/plotter3D.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/agents/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/agents/base_agent.py (77%) rename {src => dryvr_plus_plus}/scene_verifier/analysis/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/analysis/analysis_tree_node.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/analysis/simulator.py (94%) rename {src => dryvr_plus_plus}/scene_verifier/analysis/verifier.py (94%) rename {src => dryvr_plus_plus}/scene_verifier/automaton/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/automaton/guard.py (99%) rename {src => dryvr_plus_plus}/scene_verifier/automaton/hybrid_automaton.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/automaton/hybrid_io_automaton.py (90%) rename {src => dryvr_plus_plus}/scene_verifier/automaton/reset.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/code_parser/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/code_parser/pythonparser.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/common/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/common/config.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/common/constant.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/common/io.py (97%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/common/utils.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/distance.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/dryvrcore.py (94%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/dryvrmain.py (96%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/goalchecker.py (98%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/graph.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/guard.py (99%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/initialset.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/initialsetstack.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/reachtube.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/reset.py (99%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/core/uniformchecker.py (98%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/discrepancy/Global_Disc.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/discrepancy/PW_Discrepancy.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/dryvr/discrepancy/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/map/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/map/lane.py (96%) rename {src => dryvr_plus_plus}/scene_verifier/map/lane_map.py (96%) rename {src => dryvr_plus_plus}/scene_verifier/map/lane_segment.py (98%) rename {src => dryvr_plus_plus}/scene_verifier/scenario/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/scenario/scenario.py (96%) rename {src => dryvr_plus_plus}/scene_verifier/utils/__init__.py (100%) rename {src => dryvr_plus_plus}/scene_verifier/utils/utils.py (100%) create mode 100644 setup.py diff --git a/.gitignore b/.gitignore index 67933087..5bba7af9 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ __pycache__/ .idea/ venv/ .DS_Store +**.egg-info/ \ No newline at end of file diff --git a/demo.py b/demo.py index c0a62d94..c27601c9 100644 --- a/demo.py +++ b/demo.py @@ -1,8 +1,8 @@ -from src.example.example_agent.car_agent import CarAgent -from src.scene_verifier.scenario.scenario import Scenario -from src.example.example_map.simple_map2 import SimpleMap2, SimpleMap3, SimpleMap5, SimpleMap6 -from src.plotter.plotter2D import * -from src.example.example_sensor.fake_sensor import FakeSensor2 +from dryvrpy.example.example_agent.car_agent import CarAgent +from dryvrpy.scene_verifier.scenario.scenario import Scenario +from dryvrpy.example.example_map.simple_map2 import SimpleMap2, SimpleMap3, SimpleMap5, SimpleMap6 +from dryvrpy.plotter.plotter2D import * +from dryvrpy.example.example_sensor.fake_sensor import FakeSensor2 import matplotlib.pyplot as plt import numpy as np @@ -51,16 +51,16 @@ if __name__ == "__main__": (VehicleMode.Normal, LaneMode.Lane1), ] ) - res_list = scenario.simulate_multi(40,1) - # traces = scenario.verify(40) + # res_list = scenario.simulate_multi(40,1) + traces = scenario.verify(40) - # fig = plt.figure(2) - # fig,x_lim,y_lim = plot_map(tmp_map, 'g', fig) - # fig = plot_reachtube_tree(traces, 'car1', 1, [2], 'b', fig) - # fig = plot_reachtube_tree(traces, 'car2', 1, [2], 'r', fig) - for traces in res_list: - generate_simulation_anime(traces, tmp_map) - # fig,x_lim,y_lim = plot_simulation_tree(traces, 'car1', 1, [2], 'b', fig,x_lim,y_lim) - # fig,x_lim,y_lim = plot_simulation_tree(traces, 'car2', 1, [2], 'r', fig,x_lim,y_lim) + fig = plt.figure(2) + fig = plot_map(tmp_map, 'g', fig) + fig = plot_reachtube_tree(traces, 'car1', 1, [2], 'b', fig) + fig = plot_reachtube_tree(traces, 'car2', 1, [2], 'r', fig) + # for traces in res_list: + # generate_simulation_anime(traces, tmp_map) + # # fig,x_lim,y_lim = plot_simulation_tree(traces, 'car1', 1, [2], 'b', fig,x_lim,y_lim) + # # fig,x_lim,y_lim = plot_simulation_tree(traces, 'car2', 1, [2], 'r', fig,x_lim,y_lim) plt.show() diff --git a/demo2.py b/demo2.py index 4ec0bec8..795e1508 100644 --- a/demo2.py +++ b/demo2.py @@ -1,8 +1,8 @@ -from src.example.example_agent.car_agent import CarAgent, NPCAgent -from src.scene_verifier.scenario.scenario import Scenario -from src.example.example_map.simple_map2 import SimpleMap2, SimpleMap3, SimpleMap5, SimpleMap6 -from src.plotter.plotter2D import * -from src.example.example_sensor.fake_sensor import FakeSensor2 +from dryvrpy.example.example_agent.car_agent import CarAgent, NPCAgent +from dryvrpy.scene_verifier.scenario.scenario import Scenario +from dryvrpy.example.example_map.simple_map2 import SimpleMap2, SimpleMap3, SimpleMap5, SimpleMap6 +from dryvrpy.plotter.plotter2D import * +from dryvrpy.example.example_sensor.fake_sensor import FakeSensor2 import matplotlib.pyplot as plt import numpy as np @@ -51,17 +51,17 @@ if __name__ == "__main__": (VehicleMode.Normal, LaneMode.Lane1), ] ) - res_list = scenario.simulate_multi(10,1) - # traces = scenario.verify(10) + # res_list = scenario.simulate_multi(10,10) + traces = scenario.verify(10) - # fig = plt.figure(2) - # fig,x_lim,y_lim = plot_map(tmp_map, 'g', fig) - # fig,x_lim,y_lim = plot_reachtube_tree(traces, 'car1', 0, [1], 'b', fig) - # fig,x_lim,y_lim = plot_reachtube_tree(traces, 'car2', 0, [1], 'r', fig,x_lim,y_lim) - for traces in res_list: - # fig,x_lim,y_lim = plot_simulation_tree(traces, 'car1', 0, [1], 'b', fig) - # fig,x_lim,y_lim = plot_simulation_tree(traces, 'car2', 0, [1], 'r', fig, x_lim, y_lim) - generate_simulation_anime(traces, tmp_map) + fig = plt.figure(2) + # fig = plot_map(tmp_map, 'g', fig) + fig = plot_reachtube_tree(traces, 'car1', 0, [1], 'b', fig, (1000,-1000), (1000,-1000)) + fig = plot_reachtube_tree(traces, 'car2', 0, [1], 'r', fig) + # for traces in res_list: + # fig = plot_simulation_tree(traces, 'car1', 0, [1], 'b', fig, (1000,-1000), (1000,-1000)) + # fig = plot_simulation_tree(traces, 'car2', 0, [1], 'r', fig) + # # generate_simulation_anime(traces, tmp_map) diff --git a/src/__init__.py b/dryvr_plus_plus/__init__.py similarity index 100% rename from src/__init__.py rename to dryvr_plus_plus/__init__.py diff --git a/src/example/__init__.py b/dryvr_plus_plus/example/__init__.py similarity index 100% rename from src/example/__init__.py rename to dryvr_plus_plus/example/__init__.py diff --git a/src/example/example_agent/__init__.py b/dryvr_plus_plus/example/example_agent/__init__.py similarity index 100% rename from src/example/example_agent/__init__.py rename to dryvr_plus_plus/example/example_agent/__init__.py diff --git a/src/example/example_agent/car_agent.py b/dryvr_plus_plus/example/example_agent/car_agent.py similarity index 97% rename from src/example/example_agent/car_agent.py rename to dryvr_plus_plus/example/example_agent/car_agent.py index cd7e94c2..8079e4b6 100644 --- a/src/example/example_agent/car_agent.py +++ b/dryvr_plus_plus/example/example_agent/car_agent.py @@ -3,8 +3,8 @@ from typing import Tuple, List import numpy as np from scipy.integrate import ode -from src.scene_verifier.agents.base_agent import BaseAgent -from src.scene_verifier.map.lane_map import LaneMap +from dryvrpy.scene_verifier.agents.base_agent import BaseAgent +from dryvrpy.scene_verifier.map.lane_map import LaneMap class NPCAgent(BaseAgent): def __init__(self, id, code = None, file_name = None): diff --git a/src/example/example_agent/sign_agent.py b/dryvr_plus_plus/example/example_agent/sign_agent.py similarity index 88% rename from src/example/example_agent/sign_agent.py rename to dryvr_plus_plus/example/example_agent/sign_agent.py index fe7af499..c9fa9c1b 100644 --- a/src/example/example_agent/sign_agent.py +++ b/dryvr_plus_plus/example/example_agent/sign_agent.py @@ -1,4 +1,4 @@ -from src.scene_verifier.agents.base_agent import BaseAgent +from dryvrpy.scene_verifier.agents.base_agent import BaseAgent import numpy as np class SignAgent(BaseAgent): diff --git a/src/example/example_map/__init__.py b/dryvr_plus_plus/example/example_map/__init__.py similarity index 100% rename from src/example/example_map/__init__.py rename to dryvr_plus_plus/example/example_map/__init__.py diff --git a/src/example/example_map/simple_map.py b/dryvr_plus_plus/example/example_map/simple_map.py similarity index 89% rename from src/example/example_map/simple_map.py rename to dryvr_plus_plus/example/example_map/simple_map.py index 1ebe33d0..dca31777 100644 --- a/src/example/example_map/simple_map.py +++ b/dryvr_plus_plus/example/example_map/simple_map.py @@ -1,5 +1,5 @@ -from src.scene_verifier.map.lane_map import LaneMap -from src.scene_verifier.map.lane_segment import LaneSegment +from dryvrpy.scene_verifier.map.lane_map import LaneMap +from dryvrpy.scene_verifier.map.lane_segment import LaneSegment class SimpleMap(LaneMap): def __init__(self): diff --git a/src/example/example_map/simple_map2.py b/dryvr_plus_plus/example/example_map/simple_map2.py similarity index 95% rename from src/example/example_map/simple_map2.py rename to dryvr_plus_plus/example/example_map/simple_map2.py index b23d73ed..ce5ffc21 100644 --- a/src/example/example_map/simple_map2.py +++ b/dryvr_plus_plus/example/example_map/simple_map2.py @@ -1,6 +1,6 @@ -from src.scene_verifier.map.lane_map import LaneMap -from src.scene_verifier.map.lane_segment import LaneSegment, StraightLane, CircularLane -from src.scene_verifier.map.lane import Lane +from dryvrpy.scene_verifier.map.lane_map import LaneMap +from dryvrpy.scene_verifier.map.lane_segment import LaneSegment, StraightLane, CircularLane +from dryvrpy.scene_verifier.map.lane import Lane import numpy as np diff --git a/src/example/example_sensor/__init__.py b/dryvr_plus_plus/example/example_sensor/__init__.py similarity index 100% rename from src/example/example_sensor/__init__.py rename to dryvr_plus_plus/example/example_sensor/__init__.py diff --git a/src/example/example_sensor/fake_sensor.py b/dryvr_plus_plus/example/example_sensor/fake_sensor.py similarity index 100% rename from src/example/example_sensor/fake_sensor.py rename to dryvr_plus_plus/example/example_sensor/fake_sensor.py diff --git a/src/plotter/__init__.py b/dryvr_plus_plus/plotter/__init__.py similarity index 100% rename from src/plotter/__init__.py rename to dryvr_plus_plus/plotter/__init__.py diff --git a/src/plotter/parser.py b/dryvr_plus_plus/plotter/parser.py similarity index 100% rename from src/plotter/parser.py rename to dryvr_plus_plus/plotter/parser.py diff --git a/src/plotter/plotter2D.py b/dryvr_plus_plus/plotter/plotter2D.py similarity index 87% rename from src/plotter/plotter2D.py rename to dryvr_plus_plus/plotter/plotter2D.py index a89c77c1..68364c7d 100644 --- a/src/plotter/plotter2D.py +++ b/dryvr_plus_plus/plotter/plotter2D.py @@ -17,12 +17,18 @@ def plot( y_dim_list: List[int] = [1], color = 'b', fig = None, - x_lim = (float('inf'), -float('inf')), - y_lim = (float('inf'), -float('inf')) + x_lim = None, + y_lim = None ): if fig is None: fig = plt.figure() + ax = fig.gca() + if x_lim is None: + x_lim = ax.get_xlim() + if y_lim is None: + y_lim = ax.get_ylim() + x_min, x_max = x_lim y_min, y_max = y_lim for rect in data: @@ -40,10 +46,16 @@ def plot( ax.set_ylim([y_min-1, y_max+1]) return fig, (x_min, x_max), (y_min, y_max) -def plot_reachtube_tree(root, agent_id, x_dim: int=0, y_dim_list: List[int]=[1], color='b', fig = None, x_lim = (float('inf'),-float('inf')),y_lim = (float('inf'),-float('inf'))): +def plot_reachtube_tree(root, agent_id, x_dim: int=0, y_dim_list: List[int]=[1], color='b', fig = None, x_lim = None, y_lim = None): if fig is None: fig = plt.figure() + ax = fig.gca() + if x_lim is None: + x_lim = ax.get_xlim() + if y_lim is None: + y_lim = ax.get_ylim() + queue = [root] while queue != []: node = queue.pop(0) @@ -56,12 +68,18 @@ def plot_reachtube_tree(root, agent_id, x_dim: int=0, y_dim_list: List[int]=[1], queue += node.child - return fig,x_lim,y_lim + return fig -def plot_map(map, color = 'b', fig = None, x_lim = (float('inf'),-float('inf')),y_lim = (float('inf'),-float('inf'))): +def plot_map(map, color = 'b', fig = None, x_lim = None,y_lim = None): if fig is None: fig = plt.figure() + ax = fig.gca() + if x_lim is None: + x_lim = ax.get_xlim() + if y_lim is None: + y_lim = ax.get_ylim() + for lane_idx in map.lane_dict: lane = map.lane_dict[lane_idx] for lane_seg in lane.segment_list: @@ -74,12 +92,18 @@ def plot_map(map, color = 'b', fig = None, x_lim = (float('inf'),-float('inf')), ax.plot(x,y,color) else: raise ValueError(f'Unknown lane segment type {lane_seg.type}') - return fig, ax.get_xlim(), ax.get_ylim() + return fig -def plot_simulation_tree(root, agent_id, x_dim: int=0, y_dim_list: List[int]=[1], color='b', fig = None, x_lim = (float('inf'),-float('inf')),y_lim = (float('inf'),-float('inf'))): +def plot_simulation_tree(root, agent_id, x_dim: int=0, y_dim_list: List[int]=[1], color='b', fig = None, x_lim = None, y_lim = None): if fig is None: fig = plt.figure() + ax = fig.gca() + if x_lim is None: + x_lim = ax.get_xlim() + if y_lim is None: + y_lim = ax.get_ylim() + x_min, x_max = x_lim y_min, y_max = y_lim @@ -100,7 +124,7 @@ def plot_simulation_tree(root, agent_id, x_dim: int=0, y_dim_list: List[int]=[1] ax.set_xlim([x_min-1, x_max+1]) ax.set_ylim([y_min-1, y_max+1]) - return fig, ax.get_xlim(), ax.get_ylim() + return fig def generate_simulation_anime(root, map): timed_point_dict = {} diff --git a/src/plotter/plotter3D.py b/dryvr_plus_plus/plotter/plotter3D.py similarity index 100% rename from src/plotter/plotter3D.py rename to dryvr_plus_plus/plotter/plotter3D.py diff --git a/src/scene_verifier/__init__.py b/dryvr_plus_plus/scene_verifier/__init__.py similarity index 100% rename from src/scene_verifier/__init__.py rename to dryvr_plus_plus/scene_verifier/__init__.py diff --git a/src/scene_verifier/agents/__init__.py b/dryvr_plus_plus/scene_verifier/agents/__init__.py similarity index 100% rename from src/scene_verifier/agents/__init__.py rename to dryvr_plus_plus/scene_verifier/agents/__init__.py diff --git a/src/scene_verifier/agents/base_agent.py b/dryvr_plus_plus/scene_verifier/agents/base_agent.py similarity index 77% rename from src/scene_verifier/agents/base_agent.py rename to dryvr_plus_plus/scene_verifier/agents/base_agent.py index e0044528..ef0ec627 100644 --- a/src/scene_verifier/agents/base_agent.py +++ b/dryvr_plus_plus/scene_verifier/agents/base_agent.py @@ -1,4 +1,4 @@ -from src.scene_verifier.code_parser.pythonparser import ControllerAst +from dryvrpy.scene_verifier.code_parser.pythonparser import ControllerAst class BaseAgent: def __init__(self, id, code = None, file_name = None): diff --git a/src/scene_verifier/analysis/__init__.py b/dryvr_plus_plus/scene_verifier/analysis/__init__.py similarity index 100% rename from src/scene_verifier/analysis/__init__.py rename to dryvr_plus_plus/scene_verifier/analysis/__init__.py diff --git a/src/scene_verifier/analysis/analysis_tree_node.py b/dryvr_plus_plus/scene_verifier/analysis/analysis_tree_node.py similarity index 100% rename from src/scene_verifier/analysis/analysis_tree_node.py rename to dryvr_plus_plus/scene_verifier/analysis/analysis_tree_node.py diff --git a/src/scene_verifier/analysis/simulator.py b/dryvr_plus_plus/scene_verifier/analysis/simulator.py similarity index 94% rename from src/scene_verifier/analysis/simulator.py rename to dryvr_plus_plus/scene_verifier/analysis/simulator.py index 95532b12..a112ab32 100644 --- a/src/scene_verifier/analysis/simulator.py +++ b/dryvr_plus_plus/scene_verifier/analysis/simulator.py @@ -3,8 +3,8 @@ import copy import numpy as np -from src.scene_verifier.agents.base_agent import BaseAgent -from src.scene_verifier.analysis.analysis_tree_node import AnalysisTreeNode +from dryvrpy.scene_verifier.agents.base_agent import BaseAgent +from dryvrpy.scene_verifier.analysis.analysis_tree_node import AnalysisTreeNode class Simulator: def __init__(self): @@ -22,9 +22,7 @@ class Simulator: ) for i, agent in enumerate(agent_list): root.init[agent.id] = init_list[i] - init_mode = init_mode_list[i][0].name - for j in range(1, len(init_mode_list[i])): - init_mode += (','+init_mode_list[i][j].name) + init_mode = [elem.name for elem in init_mode_list[i]] root.mode[agent.id] = init_mode root.agent[agent.id] = agent root.type = 'simtrace' diff --git a/src/scene_verifier/analysis/verifier.py b/dryvr_plus_plus/scene_verifier/analysis/verifier.py similarity index 94% rename from src/scene_verifier/analysis/verifier.py rename to dryvr_plus_plus/scene_verifier/analysis/verifier.py index 6854579b..0135cf6e 100644 --- a/src/scene_verifier/analysis/verifier.py +++ b/dryvr_plus_plus/scene_verifier/analysis/verifier.py @@ -3,10 +3,10 @@ import copy import numpy as np -from src.scene_verifier.agents.base_agent import BaseAgent -from src.scene_verifier.analysis.analysis_tree_node import AnalysisTreeNode -from src.scene_verifier.dryvr.core.dryvrcore import calc_bloated_tube -import src.scene_verifier.dryvr.common.config as userConfig +from dryvrpy.scene_verifier.agents.base_agent import BaseAgent +from dryvrpy.scene_verifier.analysis.analysis_tree_node import AnalysisTreeNode +from dryvrpy.scene_verifier.dryvr.core.dryvrcore import calc_bloated_tube +import dryvrpy.scene_verifier.dryvr.common.config as userConfig class Verifier: def __init__(self): diff --git a/src/scene_verifier/automaton/__init__.py b/dryvr_plus_plus/scene_verifier/automaton/__init__.py similarity index 100% rename from src/scene_verifier/automaton/__init__.py rename to dryvr_plus_plus/scene_verifier/automaton/__init__.py diff --git a/src/scene_verifier/automaton/guard.py b/dryvr_plus_plus/scene_verifier/automaton/guard.py similarity index 99% rename from src/scene_verifier/automaton/guard.py rename to dryvr_plus_plus/scene_verifier/automaton/guard.py index b3a2ebe7..4e7202c3 100644 --- a/src/scene_verifier/automaton/guard.py +++ b/dryvr_plus_plus/scene_verifier/automaton/guard.py @@ -12,9 +12,9 @@ import sympy import astunparse import numpy as np -from src.scene_verifier.map.lane_map import LaneMap -from src.scene_verifier.map.lane_segment import AbstractLane -from src.scene_verifier.utils.utils import * +from dryvrpy.scene_verifier.map.lane_map import LaneMap +from dryvrpy.scene_verifier.map.lane_segment import AbstractLane +from dryvrpy.scene_verifier.utils.utils import * class LogicTreeNode: def __init__(self, data, child = [], val = None, mode_guard = None): self.data = data diff --git a/src/scene_verifier/automaton/hybrid_automaton.py b/dryvr_plus_plus/scene_verifier/automaton/hybrid_automaton.py similarity index 100% rename from src/scene_verifier/automaton/hybrid_automaton.py rename to dryvr_plus_plus/scene_verifier/automaton/hybrid_automaton.py diff --git a/src/scene_verifier/automaton/hybrid_io_automaton.py b/dryvr_plus_plus/scene_verifier/automaton/hybrid_io_automaton.py similarity index 90% rename from src/scene_verifier/automaton/hybrid_io_automaton.py rename to dryvr_plus_plus/scene_verifier/automaton/hybrid_io_automaton.py index 74f2c963..44d07477 100644 --- a/src/scene_verifier/automaton/hybrid_io_automaton.py +++ b/dryvr_plus_plus/scene_verifier/automaton/hybrid_io_automaton.py @@ -1,4 +1,4 @@ -from src.scene_verifier.automaton.hybrid_automaton import HybridAutomaton +from dryvrpy.scene_verifier.automaton.hybrid_automaton import HybridAutomaton class HybridIoAutomaton(HybridAutomaton): def __init__( diff --git a/src/scene_verifier/automaton/reset.py b/dryvr_plus_plus/scene_verifier/automaton/reset.py similarity index 100% rename from src/scene_verifier/automaton/reset.py rename to dryvr_plus_plus/scene_verifier/automaton/reset.py diff --git a/src/scene_verifier/code_parser/__init__.py b/dryvr_plus_plus/scene_verifier/code_parser/__init__.py similarity index 100% rename from src/scene_verifier/code_parser/__init__.py rename to dryvr_plus_plus/scene_verifier/code_parser/__init__.py diff --git a/src/scene_verifier/code_parser/pythonparser.py b/dryvr_plus_plus/scene_verifier/code_parser/pythonparser.py similarity index 100% rename from src/scene_verifier/code_parser/pythonparser.py rename to dryvr_plus_plus/scene_verifier/code_parser/pythonparser.py diff --git a/src/scene_verifier/dryvr/__init__.py b/dryvr_plus_plus/scene_verifier/dryvr/__init__.py similarity index 100% rename from src/scene_verifier/dryvr/__init__.py rename to dryvr_plus_plus/scene_verifier/dryvr/__init__.py diff --git a/src/scene_verifier/dryvr/common/__init__.py b/dryvr_plus_plus/scene_verifier/dryvr/common/__init__.py similarity index 100% rename from src/scene_verifier/dryvr/common/__init__.py rename to dryvr_plus_plus/scene_verifier/dryvr/common/__init__.py diff --git a/src/scene_verifier/dryvr/common/config.py b/dryvr_plus_plus/scene_verifier/dryvr/common/config.py similarity index 100% rename from src/scene_verifier/dryvr/common/config.py rename to dryvr_plus_plus/scene_verifier/dryvr/common/config.py diff --git a/src/scene_verifier/dryvr/common/constant.py b/dryvr_plus_plus/scene_verifier/dryvr/common/constant.py similarity index 100% rename from src/scene_verifier/dryvr/common/constant.py rename to dryvr_plus_plus/scene_verifier/dryvr/common/constant.py diff --git a/src/scene_verifier/dryvr/common/io.py b/dryvr_plus_plus/scene_verifier/dryvr/common/io.py similarity index 97% rename from src/scene_verifier/dryvr/common/io.py rename to dryvr_plus_plus/scene_verifier/dryvr/common/io.py index bf864448..c0662420 100644 --- a/src/scene_verifier/dryvr/common/io.py +++ b/dryvr_plus_plus/scene_verifier/dryvr/common/io.py @@ -4,7 +4,7 @@ This file contains IO functions for DryVR import six -from src.scene_verifier.dryvr.common.utils import DryVRInput, RrtInput, checkVerificationInput, checkSynthesisInput +from dryvrpy.scene_verifier.dryvr.common.utils import DryVRInput, RrtInput, checkVerificationInput, checkSynthesisInput def writeReachTubeFile(result, path): diff --git a/src/scene_verifier/dryvr/common/utils.py b/dryvr_plus_plus/scene_verifier/dryvr/common/utils.py similarity index 100% rename from src/scene_verifier/dryvr/common/utils.py rename to dryvr_plus_plus/scene_verifier/dryvr/common/utils.py diff --git a/src/scene_verifier/dryvr/core/__init__.py b/dryvr_plus_plus/scene_verifier/dryvr/core/__init__.py similarity index 100% rename from src/scene_verifier/dryvr/core/__init__.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/__init__.py diff --git a/src/scene_verifier/dryvr/core/distance.py b/dryvr_plus_plus/scene_verifier/dryvr/core/distance.py similarity index 100% rename from src/scene_verifier/dryvr/core/distance.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/distance.py diff --git a/src/scene_verifier/dryvr/core/dryvrcore.py b/dryvr_plus_plus/scene_verifier/dryvr/core/dryvrcore.py similarity index 94% rename from src/scene_verifier/dryvr/core/dryvrcore.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/dryvrcore.py index dfdefb73..188e1e6b 100644 --- a/src/scene_verifier/dryvr/core/dryvrcore.py +++ b/dryvr_plus_plus/scene_verifier/dryvr/core/dryvrcore.py @@ -9,10 +9,10 @@ import numpy as np import igraph -from src.scene_verifier.dryvr.common.constant import * -from src.scene_verifier.dryvr.common.io import writeReachTubeFile -from src.scene_verifier.dryvr.common.utils import randomPoint, calcDelta, calcCenterPoint, trimTraces -from src.scene_verifier.dryvr.discrepancy.Global_Disc import get_reachtube_segment +from dryvrpy.scene_verifier.dryvr.common.constant import * +from dryvrpy.scene_verifier.dryvr.common.io import writeReachTubeFile +from dryvrpy.scene_verifier.dryvr.common.utils import randomPoint, calcDelta, calcCenterPoint, trimTraces +from dryvrpy.scene_verifier.dryvr.discrepancy.Global_Disc import get_reachtube_segment # from scene_verifier.dryvr.tube_computer.backend.reachabilityengine import ReachabilityEngine # from scene_verifier.dryvr.tube_computer.backend.initialset import InitialSet @@ -134,9 +134,9 @@ def simulate(g, init_condition, time_horizon, guard, sim_func, reset, init_verte g (obj): graph object init_condition (list): initial point time_horizon (float): time horizon to simulate - guard (src.core.guard.Guard): list of guard string corresponding to each transition + guard (dryvr_plus_plus.core.guard.Guard): list of guard string corresponding to each transition sim_func (function): simulation function - reset (src.core.reset.Reset): list of reset corresponding to each transition + reset (dryvr_plus_plus.core.reset.Reset): list of reset corresponding to each transition init_vertex (int): initial vertex that simulation starts deterministic (bool) : enable or disable must transition @@ -264,7 +264,7 @@ def calc_bloated_tube( bloating_method (str): determine the bloating method for reach tube, either GLOBAL or PW sim_trace_num (int): number of simulations used to calculate the discrepancy kvalue (list): list of float used when bloating method set to PW - guard_checker (src.core.guard.Guard or None): guard check object + guard_checker (dryvr_plus_plus.core.guard.Guard or None): guard check object guard_str (str): guard string Returns: diff --git a/src/scene_verifier/dryvr/core/dryvrmain.py b/dryvr_plus_plus/scene_verifier/dryvr/core/dryvrmain.py similarity index 96% rename from src/scene_verifier/dryvr/core/dryvrmain.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/dryvrmain.py index 7b085aab..7b0fc072 100644 --- a/src/scene_verifier/dryvr/core/dryvrmain.py +++ b/dryvr_plus_plus/scene_verifier/dryvr/core/dryvrmain.py @@ -4,21 +4,21 @@ This file contains a single function that verifies model from __future__ import print_function import time -import src.common.config as userConfig -from src.common.io import parseVerificationInputFile, parseRrtInputFile, writeRrtResultFile -from src.common.utils import buildModeStr, isIpynb, overloadConfig -from src.core.distance import DistChecker -from src.core.dryvrcore import * -from src.core.goalchecker import GoalChecker -from src.core.graph import Graph -from src.core.guard import Guard -from src.core.initialset import InitialSet -from src.core.initialsetstack import InitialSetStack, GraphSearchNode -from src.core.reachtube import ReachTube -from src.core.reset import Reset -from src.core.uniformchecker import UniformChecker -# from src.tube_computer.backend.reachabilityengine import ReachabilityEngine -# from src.tube_computer.backend.initialset import InitialSet +import dryvrpy.common.config as userConfig +from dryvrpy.common.io import parseVerificationInputFile, parseRrtInputFile, writeRrtResultFile +from dryvrpy.common.utils import buildModeStr, isIpynb, overloadConfig +from dryvrpy.core.distance import DistChecker +from dryvrpy.core.dryvrcore import * +from dryvrpy.core.goalchecker import GoalChecker +from dryvrpy.core.graph import Graph +from dryvrpy.core.guard import Guard +from dryvrpy.core.initialset import InitialSet +from dryvrpy.core.initialsetstack import InitialSetStack, GraphSearchNode +from dryvrpy.core.reachtube import ReachTube +from dryvrpy.core.reset import Reset +from dryvrpy.core.uniformchecker import UniformChecker +# from dryvr_plus_plus.tube_computer.backend.reachabilityengine import ReachabilityEngine +# from dryvr_plus_plus.tube_computer.backend.initialset import InitialSet def verify(data, sim_function, param_config=None): """ diff --git a/src/scene_verifier/dryvr/core/goalchecker.py b/dryvr_plus_plus/scene_verifier/dryvr/core/goalchecker.py similarity index 98% rename from src/scene_verifier/dryvr/core/goalchecker.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/goalchecker.py index ba84296c..93c354eb 100644 --- a/src/scene_verifier/dryvr/core/goalchecker.py +++ b/dryvr_plus_plus/scene_verifier/dryvr/core/goalchecker.py @@ -2,7 +2,7 @@ This file contains uniform checker class for DryVR """ -from src.common.utils import handleReplace, neg +from dryvrpy.common.utils import handleReplace, neg from z3 import * diff --git a/src/scene_verifier/dryvr/core/graph.py b/dryvr_plus_plus/scene_verifier/dryvr/core/graph.py similarity index 100% rename from src/scene_verifier/dryvr/core/graph.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/graph.py diff --git a/src/scene_verifier/dryvr/core/guard.py b/dryvr_plus_plus/scene_verifier/dryvr/core/guard.py similarity index 99% rename from src/scene_verifier/dryvr/core/guard.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/guard.py index 76e7e823..03e810d2 100644 --- a/src/scene_verifier/dryvr/core/guard.py +++ b/dryvr_plus_plus/scene_verifier/dryvr/core/guard.py @@ -7,7 +7,7 @@ import random import sympy from z3 import * -from src.common.utils import handleReplace +from dryvrpy.common.utils import handleReplace class Guard: diff --git a/src/scene_verifier/dryvr/core/initialset.py b/dryvr_plus_plus/scene_verifier/dryvr/core/initialset.py similarity index 100% rename from src/scene_verifier/dryvr/core/initialset.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/initialset.py diff --git a/src/scene_verifier/dryvr/core/initialsetstack.py b/dryvr_plus_plus/scene_verifier/dryvr/core/initialsetstack.py similarity index 100% rename from src/scene_verifier/dryvr/core/initialsetstack.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/initialsetstack.py diff --git a/src/scene_verifier/dryvr/core/reachtube.py b/dryvr_plus_plus/scene_verifier/dryvr/core/reachtube.py similarity index 100% rename from src/scene_verifier/dryvr/core/reachtube.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/reachtube.py diff --git a/src/scene_verifier/dryvr/core/reset.py b/dryvr_plus_plus/scene_verifier/dryvr/core/reset.py similarity index 99% rename from src/scene_verifier/dryvr/core/reset.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/reset.py index 684b9c5e..f6ed8f6b 100644 --- a/src/scene_verifier/dryvr/core/reset.py +++ b/dryvr_plus_plus/scene_verifier/dryvr/core/reset.py @@ -4,7 +4,7 @@ This file contains reset class for DryVR import sympy -from src.common.utils import randomPoint +from dryvrpy.common.utils import randomPoint class Reset: diff --git a/src/scene_verifier/dryvr/core/uniformchecker.py b/dryvr_plus_plus/scene_verifier/dryvr/core/uniformchecker.py similarity index 98% rename from src/scene_verifier/dryvr/core/uniformchecker.py rename to dryvr_plus_plus/scene_verifier/dryvr/core/uniformchecker.py index 57641ad6..f85fe792 100644 --- a/src/scene_verifier/dryvr/core/uniformchecker.py +++ b/dryvr_plus_plus/scene_verifier/dryvr/core/uniformchecker.py @@ -4,8 +4,8 @@ This file contains uniform checker class for DryVR import sympy from z3 import * -from src.common.constant import * -from src.common.utils import handleReplace, neg +from dryvrpy.common.constant import * +from dryvrpy.common.utils import handleReplace, neg class UniformChecker: diff --git a/src/scene_verifier/dryvr/discrepancy/Global_Disc.py b/dryvr_plus_plus/scene_verifier/dryvr/discrepancy/Global_Disc.py similarity index 100% rename from src/scene_verifier/dryvr/discrepancy/Global_Disc.py rename to dryvr_plus_plus/scene_verifier/dryvr/discrepancy/Global_Disc.py diff --git a/src/scene_verifier/dryvr/discrepancy/PW_Discrepancy.py b/dryvr_plus_plus/scene_verifier/dryvr/discrepancy/PW_Discrepancy.py similarity index 100% rename from src/scene_verifier/dryvr/discrepancy/PW_Discrepancy.py rename to dryvr_plus_plus/scene_verifier/dryvr/discrepancy/PW_Discrepancy.py diff --git a/src/scene_verifier/dryvr/discrepancy/__init__.py b/dryvr_plus_plus/scene_verifier/dryvr/discrepancy/__init__.py similarity index 100% rename from src/scene_verifier/dryvr/discrepancy/__init__.py rename to dryvr_plus_plus/scene_verifier/dryvr/discrepancy/__init__.py diff --git a/src/scene_verifier/map/__init__.py b/dryvr_plus_plus/scene_verifier/map/__init__.py similarity index 100% rename from src/scene_verifier/map/__init__.py rename to dryvr_plus_plus/scene_verifier/map/__init__.py diff --git a/src/scene_verifier/map/lane.py b/dryvr_plus_plus/scene_verifier/map/lane.py similarity index 96% rename from src/scene_verifier/map/lane.py rename to dryvr_plus_plus/scene_verifier/map/lane.py index cdc2551f..b482debd 100644 --- a/src/scene_verifier/map/lane.py +++ b/dryvr_plus_plus/scene_verifier/map/lane.py @@ -2,7 +2,7 @@ from typing import List import numpy as np -from src.scene_verifier.map.lane_segment import AbstractLane +from dryvrpy.scene_verifier.map.lane_segment import AbstractLane class Lane(): COMPENSATE = 3 diff --git a/src/scene_verifier/map/lane_map.py b/dryvr_plus_plus/scene_verifier/map/lane_map.py similarity index 96% rename from src/scene_verifier/map/lane_map.py rename to dryvr_plus_plus/scene_verifier/map/lane_map.py index e63fe31b..658c49dc 100644 --- a/src/scene_verifier/map/lane_map.py +++ b/dryvr_plus_plus/scene_verifier/map/lane_map.py @@ -4,8 +4,8 @@ from enum import Enum import numpy as np -from src.scene_verifier.map.lane_segment import AbstractLane -from src.scene_verifier.map.lane import Lane +from dryvrpy.scene_verifier.map.lane_segment import AbstractLane +from dryvrpy.scene_verifier.map.lane import Lane class LaneMap: def __init__(self, lane_seg_list:List[Lane] = []): diff --git a/src/scene_verifier/map/lane_segment.py b/dryvr_plus_plus/scene_verifier/map/lane_segment.py similarity index 98% rename from src/scene_verifier/map/lane_segment.py rename to dryvr_plus_plus/scene_verifier/map/lane_segment.py index 3b841ae8..0c20dc9a 100644 --- a/src/scene_verifier/map/lane_segment.py +++ b/dryvr_plus_plus/scene_verifier/map/lane_segment.py @@ -3,7 +3,7 @@ import numpy as np from abc import ABCMeta, abstractmethod from typing import Tuple, List, Optional, Union -from src.scene_verifier.utils.utils import wrap_to_pi, Vector, get_class_path, class_from_path,to_serializable +from dryvrpy.scene_verifier.utils.utils import wrap_to_pi, Vector, get_class_path, class_from_path,to_serializable class LineType: diff --git a/src/scene_verifier/scenario/__init__.py b/dryvr_plus_plus/scene_verifier/scenario/__init__.py similarity index 100% rename from src/scene_verifier/scenario/__init__.py rename to dryvr_plus_plus/scene_verifier/scenario/__init__.py diff --git a/src/scene_verifier/scenario/scenario.py b/dryvr_plus_plus/scene_verifier/scenario/scenario.py similarity index 96% rename from src/scene_verifier/scenario/scenario.py rename to dryvr_plus_plus/scene_verifier/scenario/scenario.py index 49453404..09554295 100644 --- a/src/scene_verifier/scenario/scenario.py +++ b/dryvr_plus_plus/scene_verifier/scenario/scenario.py @@ -5,14 +5,14 @@ import warnings import numpy as np -from src.scene_verifier.agents.base_agent import BaseAgent -from src.scene_verifier.automaton.guard import GuardExpressionAst -from src.scene_verifier.automaton.reset import ResetExpression -from src.scene_verifier.code_parser.pythonparser import Guard, Reset -from src.scene_verifier.analysis.simulator import Simulator -from src.scene_verifier.analysis.verifier import Verifier -from src.scene_verifier.map.lane_map import LaneMap -from src.scene_verifier.utils.utils import * +from dryvrpy.scene_verifier.agents.base_agent import BaseAgent +from dryvrpy.scene_verifier.automaton.guard import GuardExpressionAst +from dryvrpy.scene_verifier.automaton.reset import ResetExpression +from dryvrpy.scene_verifier.code_parser.pythonparser import Guard, Reset +from dryvrpy.scene_verifier.analysis.simulator import Simulator +from dryvrpy.scene_verifier.analysis.verifier import Verifier +from dryvrpy.scene_verifier.map.lane_map import LaneMap +from dryvrpy.scene_verifier.utils.utils import * class Scenario: def __init__(self): diff --git a/src/scene_verifier/utils/__init__.py b/dryvr_plus_plus/scene_verifier/utils/__init__.py similarity index 100% rename from src/scene_verifier/utils/__init__.py rename to dryvr_plus_plus/scene_verifier/utils/__init__.py diff --git a/src/scene_verifier/utils/utils.py b/dryvr_plus_plus/scene_verifier/utils/utils.py similarity index 100% rename from src/scene_verifier/utils/utils.py rename to dryvr_plus_plus/scene_verifier/utils/utils.py diff --git a/example_controller1.py b/example_controller1.py index 5a870473..d2064d0f 100644 --- a/example_controller1.py +++ b/example_controller1.py @@ -1,6 +1,6 @@ from enum import Enum, auto import copy -from src.scene_verifier.map.lane_map import LaneMap +from dryvrpy.scene_verifier.map.lane_map import LaneMap class LaneObjectMode(Enum): Vehicle = auto() diff --git a/example_controller2.py b/example_controller2.py index 0c09ce25..4738b101 100644 --- a/example_controller2.py +++ b/example_controller2.py @@ -1,6 +1,6 @@ from enum import Enum, auto import copy -from src.scene_verifier.map.lane_map import LaneMap +from dryvrpy.scene_verifier.map.lane_map import LaneMap class VehicleMode(Enum): Normal = auto() diff --git a/example_controller3.py b/example_controller3.py index 504995e3..d162f143 100644 --- a/example_controller3.py +++ b/example_controller3.py @@ -1,6 +1,6 @@ from enum import Enum, auto import copy -from src.scene_verifier.map.lane_map import LaneMap +from dryvrpy.scene_verifier.map.lane_map import LaneMap class VehicleMode(Enum): Normal = auto() diff --git a/example_two_car_sign_lane_switch.py b/example_two_car_sign_lane_switch.py index a18b874c..cc895f1d 100644 --- a/example_two_car_sign_lane_switch.py +++ b/example_two_car_sign_lane_switch.py @@ -68,12 +68,12 @@ def controller(ego: State, other: State, sign: State, lane_map): return output -from src.example.example_agent.car_agent import CarAgent -from src.example.example_agent.sign_agent import SignAgent -from src.scene_verifier.scenario.scenario import Scenario -from src.example.example_map.simple_map2 import SimpleMap3 -from src.plotter.plotter2D import plot_reachtube_tree, plot_simulation_tree -from src.example.example_sensor.fake_sensor import FakeSensor2 +from dryvrpy.example.example_agent.car_agent import CarAgent +from dryvrpy.example.example_agent.sign_agent import SignAgent +from dryvrpy.scene_verifier.scenario.scenario import Scenario +from dryvrpy.example.example_map.simple_map2 import SimpleMap3 +from dryvrpy.plotter.plotter2D import plot_reachtube_tree, plot_simulation_tree +from dryvrpy.example.example_sensor.fake_sensor import FakeSensor2 import matplotlib.pyplot as plt @@ -92,7 +92,7 @@ if __name__ == "__main__": scenario.set_init( [ [[10, 0, 0, 0.5],[10, 0, 0, 0.5]], - [[0, -0.2, 0, 1.0],[0.2, -0.2, 0, 1.0]], + [[0, -0.2, 0, 1.0],[0.2, 0.2, 0, 1.0]], [[20, 0, 0, 0],[20, 0, 0, 0]], ], [ diff --git a/setup.py b/setup.py new file mode 100644 index 00000000..25e99f51 --- /dev/null +++ b/setup.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python3 +from setuptools import setup + +setup( + name='dryvr_plus_plus', + version='0.1', + description='DryVR++', + author='MaybeShewill-CV', + maintainer='Chiao Hsieh', + maintainer_email='chsieh16@illinois.edu', + license='Apache-2.0', + packages=["dryvr_plus_plus"], + python_requires='>=3.6', + install_requires=[ + "numpy~=1.22.1", + "scipy~=1.8.0", + "matplotlib~=3.4.2", + "polytope~=0.2.3", + "pyvista~=0.32.1", + "networkx~=2.2", + "sympy~=1.6.2", + "six~=1.14.0", + "astunparse~=1.6.3", + "treelib~=1.6.1", + "z3-solver~=4.8.17.0", + "igraph~=0.9.10", + ], + classifiers=[ + 'Development Status :: 2 - Pre-Alpha', + 'Intended Audience :: Science/Research', + 'Topic :: Scientific/Engineering', + 'License :: OSI Approved :: Apache License 2.0', + 'Programming Language :: Python :: 3.8', + ] +) \ No newline at end of file diff --git a/tests/testdpp.py b/tests/testdpp.py index e544e049..c425ca1d 100644 --- a/tests/testdpp.py +++ b/tests/testdpp.py @@ -47,10 +47,10 @@ def controller(ego:State): return output_vehicle_mode, output_lane_mode -from src.example.example_agent.car_agent import CarAgent -from src.scene_verifier.scenario.scenario import Scenario -from src.example.example_map.simple_map import SimpleMap2 -from src.example.example_sensor.fake_sensor import FakeSensor1 +from dryvrpy.example.example_agent.car_agent import CarAgent +from dryvrpy.scene_verifier.scenario.scenario import Scenario +from dryvrpy.example.example_map.simple_map import SimpleMap2 +from dryvrpy.example.example_sensor.fake_sensor import FakeSensor1 import matplotlib.pyplot as plt import numpy as np -- GitLab