Skip to content
Snippets Groups Projects
Commit 1663b732 authored by li213's avatar li213
Browse files

fixing dependencies for repeatability package

parent cfd2cc30
No related branches found
No related tags found
2 merge requests!9Tutorial,!8Simple sim
......@@ -17,3 +17,5 @@ map_package/
**/output.json
docs/build/
docs/source/_autosummary/
**.whl
**.tar.gz
\ No newline at end of file
# Verse Core Library
Verse is a library for creating, simulating, and verifying uni*verses* or scenarios with intelligent and interacting autonomous agents.
## Installation
The package requires python 3.8+. The package can be installed using pip
```
python3 -m pip install -e .
```
To update the dependencies, setup.py or requirement.txt can be used.
```
python3 setup.py install
```
or
```
pip install -r requirements.txt
```
## Demos
The package comes with several examples in the ```demo/``` folder. Run these as:
```
python3 demo/vehicle/demo2.py
```
Read the comments in ```demo/ball/ball_bounces.py``` to learn how to create new agents and scenarios. More detailed tutorials will be provided later.
## Library structure
The source code of the package is contained in the verse folder, which contains the following sub-directories.
- **verse**, which contains building blocks for creating and analyzing scenarios.
- **verse/scenario** contains code for the scenario base class. A scenario is constructed by several **agents** with continuous dynamics and controller, a **map** and a **sensor** defining how different agents interact with each other.
- **verse/agents** contains code for the agent base class in the scenario.
- **verse/map** contains code for the lane map base class and corresponding utilities in the scenario.
- **verse/code_parser** contains code for converting the controller code to ASTs.
- **verse/automaton** contains code implementing components in hybrid-automaton
- **verse/analysis** contains the **Simulator** and **Verifier** and related utilities for doing analysis of the scenario
- **verse/dryvr** dryvr for computing reachable sets
- **example** contains example map, sensor and agents that we provided
- **plotter** contains code for visualizing the computed results
......@@ -18,7 +18,10 @@ The run-time for regenerating data in Reach section of Table 2 in the paper is a
###########################
The first step for replicating the experiments in the paper is to install Verse. Verse can be installed using command
The first step for replicating the experiments in the paper is to install Verse and its dependencies.
The dependencies for Verse can be installed using following command in the root directory of artifact
python3 -m pip install -r requirements_local.txt
Verse can be installed using following command in the root directory of artifact
python3 -m pip install -e .
To replicate our experiments from the paper, please run following commands from the root directory of the artifact.
......
......@@ -27,7 +27,7 @@ else:
rslts = []
for xprm in xprms:
cmd = Popen(f"/usr/bin/time -v -- python3.8 demo/tacas2023/exp11/inc-expr.py {xprm}", stdout=PIPE, stderr=PIPE, shell=True)
cmd = Popen(f"/usr/bin/time -v -- python3 demo/tacas2023/exp11/inc-expr.py {xprm}", stdout=PIPE, stderr=PIPE, shell=True)
print(f"run '{xprm}', pid={cmd.pid}")
ret = cmd.wait()
stderr = cmd.stderr.readlines()
......@@ -62,4 +62,4 @@ for i in range(0, len(rslts), 2):
cache_hit_rate = inc.cache_hits[0] / (inc.cache_hits[0] + inc.cache_hits[1]) if "v" not in var else (inc.cache_hits[0][0] + inc.cache_hits[1][0]) / (inc.cache_hits[0][0] + inc.cache_hits[0][1] + inc.cache_hits[1][0] + inc.cache_hits[1][1])
print(" & " + " & ".join([name] + [str(i) for i in [inc.node_count[1], round(no.duration, 2), round(no.max_mem), round(inc.duration, 2), round(inc.max_mem), round(inc.cache_size, 2), round(cache_hit_rate * 100, 2)]]) + " \\\\")
print(">>>>>>>>>", time.time()-start_time)
\ No newline at end of file
print(">>>>>>>>>", time.time()-start_time)
numpy~=1.22.1
scipy~=1.8.1
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
plotly~=5.8.0
beautifulsoup4~=4.11.1
lxml~=4.9.1
numpy
scipy
matplotlib
polytope
pyvista
networkx
sympy
six
astunparse
z3-solver
plotly
beautifulsoup4
lxml
torch
tqdm
\ No newline at end of file
tqdm
intervaltree
Pympler
requirements/tqdm-4.64.1-py2.py3-none-any.whl
requirements/wheel-0.37.1-py2.py3-none-any.whl
requirements/z3_solver-4.11.2.0-py2.py3-none-manylinux1_x86_64.whl
requirements/vtk-9.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
requirements/treelib-1.6.1.tar.gz
requirements/soupsieve-2.3.2.post1-py3-none-any.whl
requirements/cycler-0.11.0-py3-none-any.whl
requirements/imageio-2.22.2-py3-none-any.whl
requirements/packaging-21.3-py3-none-any.whl
requirements/frozenlist-1.3.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
requirements/sortedcontainers-2.4.0-py2.py3-none-any.whl
requirements/six-1.16.0-py2.py3-none-any.whl
requirements/scipy-1.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
requirements/kiwisolver-1.4.4-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
requirements/charset_normalizer-2.1.1-py3-none-any.whl
requirements/networkx-2.8.7-py3-none-any.whl
requirements/aiosignal-1.2.0-py3-none-any.whl
requirements/idna-3.4-py3-none-any.whl
requirements/astunparse-1.6.3-py2.py3-none-any.whl
requirements/plotly-5.10.0-py2.py3-none-any.whl
requirements/sympy-1.11.1-py3-none-any.whl
requirements/future-0.18.2.tar.gz
requirements/typing_extensions-4.4.0-py3-none-any.whl
requirements/beautifulsoup4-4.11.1-py3-none-any.whl
requirements/python_dateutil-2.8.2-py2.py3-none-any.whl
requirements/contourpy-1.0.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
requirements/tenacity-8.1.0-py3-none-any.whl
requirements/Pympler-1.0.1-py3-none-any.whl
requirements/pyparsing-3.0.9-py3-none-any.whl
requirements/scooby-0.6.0-py3-none-any.whl
requirements/attrs-22.1.0-py2.py3-none-any.whl
requirements/torch-1.12.1-cp310-cp310-manylinux1_x86_64.whl
requirements/lxml-4.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl
requirements/multidict-6.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
requirements/fonttools-4.38.0-py3-none-any.whl
requirements/aiohttp-3.8.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
requirements/intervaltree-3.1.0.tar.gz
requirements/wslink-1.9.0-py3-none-any.whl
requirements/pyvista-0.36.1-py3-none-any.whl
requirements/async_timeout-4.0.2-py3-none-any.whl
requirements/yarl-1.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
requirements/polytope-0.2.3.tar.gz
requirements/appdirs-1.4.4-py2.py3-none-any.whl
requirements/mpmath-1.2.1-py3-none-any.whl
requirements/Pillow-9.2.0-cp310-cp310-manylinux_2_28_x86_64.whl
requirements/matplotlib-3.6.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
requirements/numpy-1.23.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
......@@ -21,7 +21,6 @@ setup(
"sympy",
"six",
"astunparse",
"treelib",
"z3-solver",
"plotly",
"beautifulsoup4",
......@@ -29,6 +28,7 @@ setup(
"torch",
"tqdm",
"intervaltree",
"Pympler",
],
classifiers=[
'Development Status :: 2 - Pre-Alpha',
......
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