pyRDDLGym-jax 2.0__tar.gz → 2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/PKG-INFO +43 -30
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/README.md +42 -29
- pyrddlgym_jax-2.2/pyRDDLGym_jax/__init__.py +1 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/compiler.py +85 -190
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/logic.py +313 -56
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/planner.py +274 -200
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/visualization.py +7 -8
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/run_tune.py +10 -6
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax.egg-info/PKG-INFO +43 -30
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/setup.py +1 -1
- pyrddlgym_jax-2.0/pyRDDLGym_jax/__init__.py +0 -1
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/LICENSE +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/__init__.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/assets/__init__.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/assets/favicon.ico +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/simulator.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/core/tuning.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/entry_point.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/__init__.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Cartpole_Continuous_gym_drp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Cartpole_Continuous_gym_replan.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Cartpole_Continuous_gym_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/HVAC_ippc2023_drp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/HVAC_ippc2023_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/MountainCar_Continuous_gym_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/MountainCar_ippc2023_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/PowerGen_Continuous_drp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/PowerGen_Continuous_replan.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/PowerGen_Continuous_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Quadcopter_drp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Quadcopter_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Reservoir_Continuous_drp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Reservoir_Continuous_replan.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Reservoir_Continuous_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/UAV_Continuous_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_drp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_replan.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/__init__.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/default_drp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/default_replan.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/default_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/tuning_drp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/tuning_replan.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/configs/tuning_slp.cfg +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/run_gradient.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/run_gym.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/run_plan.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax/examples/run_scipy.py +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax.egg-info/SOURCES.txt +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax.egg-info/dependency_links.txt +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax.egg-info/entry_points.txt +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax.egg-info/requires.txt +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/pyRDDLGym_jax.egg-info/top_level.txt +0 -0
- {pyrddlgym_jax-2.0 → pyrddlgym_jax-2.2}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.2
|
|
2
2
|
Name: pyRDDLGym-jax
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.2
|
|
4
4
|
Summary: pyRDDLGym-jax: automatic differentiation for solving sequential planning problems in JAX.
|
|
5
5
|
Home-page: https://github.com/pyrddlgym-project/pyRDDLGym-jax
|
|
6
6
|
Author: Michael Gimelfarb, Ayal Taitler, Scott Sanner
|
|
@@ -58,18 +58,21 @@ Dynamic: summary
|
|
|
58
58
|
|
|
59
59
|
Purpose:
|
|
60
60
|
|
|
61
|
-
1. automatic translation of
|
|
62
|
-
2.
|
|
61
|
+
1. automatic translation of RDDL description files into differentiable JAX simulators
|
|
62
|
+
2. implementation of (highly configurable) operator relaxations for working in discrete and hybrid domains
|
|
63
|
+
3. flexible policy representations and automated Bayesian hyper-parameter tuning
|
|
64
|
+
4. interactive dashboard for dyanmic visualization and debugging
|
|
65
|
+
5. hybridization with parameter-exploring policy gradients.
|
|
63
66
|
|
|
64
67
|
Some demos of solved problems by JaxPlan:
|
|
65
68
|
|
|
66
69
|
<p align="middle">
|
|
67
|
-
<img src="Images/intruders.gif" width="120" height="120" margin=0/>
|
|
68
|
-
<img src="Images/marsrover.gif" width="120" height="120" margin=0/>
|
|
69
|
-
<img src="Images/pong.gif" width="120" height="120" margin=0/>
|
|
70
|
-
<img src="Images/quadcopter.gif" width="120" height="120" margin=0/>
|
|
71
|
-
<img src="Images/reacher.gif" width="120" height="120" margin=0/>
|
|
72
|
-
<img src="Images/reservoir.gif" width="120" height="120" margin=0/>
|
|
70
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/intruders.gif" width="120" height="120" margin=0/>
|
|
71
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/marsrover.gif" width="120" height="120" margin=0/>
|
|
72
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/pong.gif" width="120" height="120" margin=0/>
|
|
73
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/quadcopter.gif" width="120" height="120" margin=0/>
|
|
74
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/reacher.gif" width="120" height="120" margin=0/>
|
|
75
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/reservoir.gif" width="120" height="120" margin=0/>
|
|
73
76
|
</p>
|
|
74
77
|
|
|
75
78
|
> [!WARNING]
|
|
@@ -219,7 +222,7 @@ Since version 1.0, JaxPlan has an optional dashboard that allows keeping track o
|
|
|
219
222
|
and visualization of the policy or model, and other useful debugging features.
|
|
220
223
|
|
|
221
224
|
<p align="middle">
|
|
222
|
-
<img src="Images/dashboard.png" width="480" height="248" margin=0/>
|
|
225
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/dashboard.png" width="480" height="248" margin=0/>
|
|
223
226
|
</p>
|
|
224
227
|
|
|
225
228
|
To run the dashboard, add the following entry to your config file:
|
|
@@ -235,8 +238,23 @@ More documentation about this and other new features will be coming soon.
|
|
|
235
238
|
|
|
236
239
|
## Tuning the Planner
|
|
237
240
|
|
|
238
|
-
|
|
239
|
-
|
|
241
|
+
A basic run script is provided to run automatic Bayesian hyper-parameter tuning for the most sensitive parameters of JaxPlan:
|
|
242
|
+
|
|
243
|
+
```shell
|
|
244
|
+
jaxplan tune <domain> <instance> <method> <trials> <iters> <workers> <dashboard>
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
where:
|
|
248
|
+
- ``domain`` is the domain identifier as specified in rddlrepository
|
|
249
|
+
- ``instance`` is the instance identifier
|
|
250
|
+
- ``method`` is the planning method to use (i.e. drp, slp, replan)
|
|
251
|
+
- ``trials`` is the (optional) number of trials/episodes to average in evaluating each hyper-parameter setting
|
|
252
|
+
- ``iters`` is the (optional) maximum number of iterations/evaluations of Bayesian optimization to perform
|
|
253
|
+
- ``workers`` is the (optional) number of parallel evaluations to be done at each iteration, e.g. the total evaluations = ``iters * workers``
|
|
254
|
+
- ``dashboard`` is whether the optimizations are tracked in the dashboard application.
|
|
255
|
+
|
|
256
|
+
It is easy to tune a custom range of the planner's hyper-parameters efficiently.
|
|
257
|
+
First create a config file template with patterns replacing concrete parameter values that you want to tune, e.g.:
|
|
240
258
|
|
|
241
259
|
```ini
|
|
242
260
|
[Model]
|
|
@@ -260,7 +278,7 @@ train_on_reset=True
|
|
|
260
278
|
|
|
261
279
|
would allow to tune the sharpness of model relaxations, and the learning rate of the optimizer.
|
|
262
280
|
|
|
263
|
-
Next, you must link the patterns in the config with concrete hyper-parameter ranges the tuner will understand:
|
|
281
|
+
Next, you must link the patterns in the config with concrete hyper-parameter ranges the tuner will understand, and run the optimizer:
|
|
264
282
|
|
|
265
283
|
```python
|
|
266
284
|
import pyRDDLGym
|
|
@@ -292,21 +310,7 @@ tuning = JaxParameterTuning(env=env,
|
|
|
292
310
|
gp_iters=iters)
|
|
293
311
|
tuning.tune(key=42, log_file='path/to/log.csv')
|
|
294
312
|
```
|
|
295
|
-
|
|
296
|
-
A basic run script is provided to run the automatic hyper-parameter tuning for the most sensitive parameters of JaxPlan:
|
|
297
|
-
|
|
298
|
-
```shell
|
|
299
|
-
jaxplan tune <domain> <instance> <method> <trials> <iters> <workers>
|
|
300
|
-
```
|
|
301
|
-
|
|
302
|
-
where:
|
|
303
|
-
- ``domain`` is the domain identifier as specified in rddlrepository
|
|
304
|
-
- ``instance`` is the instance identifier
|
|
305
|
-
- ``method`` is the planning method to use (i.e. drp, slp, replan)
|
|
306
|
-
- ``trials`` is the (optional) number of trials/episodes to average in evaluating each hyper-parameter setting
|
|
307
|
-
- ``iters`` is the (optional) maximum number of iterations/evaluations of Bayesian optimization to perform
|
|
308
|
-
- ``workers`` is the (optional) number of parallel evaluations to be done at each iteration, e.g. the total evaluations = ``iters * workers``.
|
|
309
|
-
|
|
313
|
+
|
|
310
314
|
|
|
311
315
|
## Simulation
|
|
312
316
|
|
|
@@ -344,7 +348,16 @@ The [following citation](https://ojs.aaai.org/index.php/ICAPS/article/view/31480
|
|
|
344
348
|
```
|
|
345
349
|
|
|
346
350
|
Some of the implementation details derive from the following literature, which you may wish to also cite in your research papers:
|
|
347
|
-
- [A Distributional Framework for Risk-Sensitive End-to-End Planning in Continuous MDPs](https://ojs.aaai.org/index.php/AAAI/article/view/21226)
|
|
351
|
+
- [A Distributional Framework for Risk-Sensitive End-to-End Planning in Continuous MDPs, AAAI 2022](https://ojs.aaai.org/index.php/AAAI/article/view/21226)
|
|
348
352
|
- [Deep reactive policies for planning in stochastic nonlinear domains, AAAI 2019](https://ojs.aaai.org/index.php/AAAI/article/view/4744)
|
|
353
|
+
- [Stochastic Planning with Lifted Symbolic Trajectory Optimization, AAAI 2019](https://ojs.aaai.org/index.php/ICAPS/article/view/3467/3335)
|
|
349
354
|
- [Scalable planning with tensorflow for hybrid nonlinear domains, NeurIPS 2017](https://proceedings.neurips.cc/paper/2017/file/98b17f068d5d9b7668e19fb8ae470841-Paper.pdf)
|
|
350
|
-
|
|
355
|
+
- [Baseline-Free Sampling in Parameter Exploring Policy Gradients: Super Symmetric PGPE, ANN 2015](https://link.springer.com/chapter/10.1007/978-3-319-09903-3_13)
|
|
356
|
+
|
|
357
|
+
The model relaxations in JaxPlan are based on the following works:
|
|
358
|
+
- [Poisson Variational Autoencoder, NeurIPS 2025](https://proceedings.neurips.cc/paper_files/paper/2024/file/4f3cb9576dc99d62b80726690453716f-Paper-Conference.pdf)
|
|
359
|
+
- [Analyzing Differentiable Fuzzy Logic Operators, AI 2022](https://www.sciencedirect.com/science/article/pii/S0004370221001533)
|
|
360
|
+
- [Learning with algorithmic supervision via continuous relaxations, NeurIPS 2021](https://proceedings.neurips.cc/paper_files/paper/2021/file/89ae0fe22c47d374bc9350ef99e01685-Paper.pdf)
|
|
361
|
+
- [Universally quantized neural compression, NeurIPS 2020](https://papers.nips.cc/paper_files/paper/2020/file/92049debbe566ca5782a3045cf300a3c-Paper.pdf)
|
|
362
|
+
- [Generalized Gumbel-Softmax Gradient Estimator for Generic Discrete Random Variables, 2020](https://arxiv.org/pdf/2003.01847)
|
|
363
|
+
- [Categorical Reparametrization with Gumbel-Softmax, ICLR 2017](https://openreview.net/pdf?id=rkE3y85ee)
|
|
@@ -12,18 +12,21 @@
|
|
|
12
12
|
|
|
13
13
|
Purpose:
|
|
14
14
|
|
|
15
|
-
1. automatic translation of
|
|
16
|
-
2.
|
|
15
|
+
1. automatic translation of RDDL description files into differentiable JAX simulators
|
|
16
|
+
2. implementation of (highly configurable) operator relaxations for working in discrete and hybrid domains
|
|
17
|
+
3. flexible policy representations and automated Bayesian hyper-parameter tuning
|
|
18
|
+
4. interactive dashboard for dyanmic visualization and debugging
|
|
19
|
+
5. hybridization with parameter-exploring policy gradients.
|
|
17
20
|
|
|
18
21
|
Some demos of solved problems by JaxPlan:
|
|
19
22
|
|
|
20
23
|
<p align="middle">
|
|
21
|
-
<img src="Images/intruders.gif" width="120" height="120" margin=0/>
|
|
22
|
-
<img src="Images/marsrover.gif" width="120" height="120" margin=0/>
|
|
23
|
-
<img src="Images/pong.gif" width="120" height="120" margin=0/>
|
|
24
|
-
<img src="Images/quadcopter.gif" width="120" height="120" margin=0/>
|
|
25
|
-
<img src="Images/reacher.gif" width="120" height="120" margin=0/>
|
|
26
|
-
<img src="Images/reservoir.gif" width="120" height="120" margin=0/>
|
|
24
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/intruders.gif" width="120" height="120" margin=0/>
|
|
25
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/marsrover.gif" width="120" height="120" margin=0/>
|
|
26
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/pong.gif" width="120" height="120" margin=0/>
|
|
27
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/quadcopter.gif" width="120" height="120" margin=0/>
|
|
28
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/reacher.gif" width="120" height="120" margin=0/>
|
|
29
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/reservoir.gif" width="120" height="120" margin=0/>
|
|
27
30
|
</p>
|
|
28
31
|
|
|
29
32
|
> [!WARNING]
|
|
@@ -173,7 +176,7 @@ Since version 1.0, JaxPlan has an optional dashboard that allows keeping track o
|
|
|
173
176
|
and visualization of the policy or model, and other useful debugging features.
|
|
174
177
|
|
|
175
178
|
<p align="middle">
|
|
176
|
-
<img src="Images/dashboard.png" width="480" height="248" margin=0/>
|
|
179
|
+
<img src="https://github.com/pyrddlgym-project/pyRDDLGym-jax/blob/main/Images/dashboard.png" width="480" height="248" margin=0/>
|
|
177
180
|
</p>
|
|
178
181
|
|
|
179
182
|
To run the dashboard, add the following entry to your config file:
|
|
@@ -189,8 +192,23 @@ More documentation about this and other new features will be coming soon.
|
|
|
189
192
|
|
|
190
193
|
## Tuning the Planner
|
|
191
194
|
|
|
192
|
-
|
|
193
|
-
|
|
195
|
+
A basic run script is provided to run automatic Bayesian hyper-parameter tuning for the most sensitive parameters of JaxPlan:
|
|
196
|
+
|
|
197
|
+
```shell
|
|
198
|
+
jaxplan tune <domain> <instance> <method> <trials> <iters> <workers> <dashboard>
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
where:
|
|
202
|
+
- ``domain`` is the domain identifier as specified in rddlrepository
|
|
203
|
+
- ``instance`` is the instance identifier
|
|
204
|
+
- ``method`` is the planning method to use (i.e. drp, slp, replan)
|
|
205
|
+
- ``trials`` is the (optional) number of trials/episodes to average in evaluating each hyper-parameter setting
|
|
206
|
+
- ``iters`` is the (optional) maximum number of iterations/evaluations of Bayesian optimization to perform
|
|
207
|
+
- ``workers`` is the (optional) number of parallel evaluations to be done at each iteration, e.g. the total evaluations = ``iters * workers``
|
|
208
|
+
- ``dashboard`` is whether the optimizations are tracked in the dashboard application.
|
|
209
|
+
|
|
210
|
+
It is easy to tune a custom range of the planner's hyper-parameters efficiently.
|
|
211
|
+
First create a config file template with patterns replacing concrete parameter values that you want to tune, e.g.:
|
|
194
212
|
|
|
195
213
|
```ini
|
|
196
214
|
[Model]
|
|
@@ -214,7 +232,7 @@ train_on_reset=True
|
|
|
214
232
|
|
|
215
233
|
would allow to tune the sharpness of model relaxations, and the learning rate of the optimizer.
|
|
216
234
|
|
|
217
|
-
Next, you must link the patterns in the config with concrete hyper-parameter ranges the tuner will understand:
|
|
235
|
+
Next, you must link the patterns in the config with concrete hyper-parameter ranges the tuner will understand, and run the optimizer:
|
|
218
236
|
|
|
219
237
|
```python
|
|
220
238
|
import pyRDDLGym
|
|
@@ -246,21 +264,7 @@ tuning = JaxParameterTuning(env=env,
|
|
|
246
264
|
gp_iters=iters)
|
|
247
265
|
tuning.tune(key=42, log_file='path/to/log.csv')
|
|
248
266
|
```
|
|
249
|
-
|
|
250
|
-
A basic run script is provided to run the automatic hyper-parameter tuning for the most sensitive parameters of JaxPlan:
|
|
251
|
-
|
|
252
|
-
```shell
|
|
253
|
-
jaxplan tune <domain> <instance> <method> <trials> <iters> <workers>
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
where:
|
|
257
|
-
- ``domain`` is the domain identifier as specified in rddlrepository
|
|
258
|
-
- ``instance`` is the instance identifier
|
|
259
|
-
- ``method`` is the planning method to use (i.e. drp, slp, replan)
|
|
260
|
-
- ``trials`` is the (optional) number of trials/episodes to average in evaluating each hyper-parameter setting
|
|
261
|
-
- ``iters`` is the (optional) maximum number of iterations/evaluations of Bayesian optimization to perform
|
|
262
|
-
- ``workers`` is the (optional) number of parallel evaluations to be done at each iteration, e.g. the total evaluations = ``iters * workers``.
|
|
263
|
-
|
|
267
|
+
|
|
264
268
|
|
|
265
269
|
## Simulation
|
|
266
270
|
|
|
@@ -298,7 +302,16 @@ The [following citation](https://ojs.aaai.org/index.php/ICAPS/article/view/31480
|
|
|
298
302
|
```
|
|
299
303
|
|
|
300
304
|
Some of the implementation details derive from the following literature, which you may wish to also cite in your research papers:
|
|
301
|
-
- [A Distributional Framework for Risk-Sensitive End-to-End Planning in Continuous MDPs](https://ojs.aaai.org/index.php/AAAI/article/view/21226)
|
|
305
|
+
- [A Distributional Framework for Risk-Sensitive End-to-End Planning in Continuous MDPs, AAAI 2022](https://ojs.aaai.org/index.php/AAAI/article/view/21226)
|
|
302
306
|
- [Deep reactive policies for planning in stochastic nonlinear domains, AAAI 2019](https://ojs.aaai.org/index.php/AAAI/article/view/4744)
|
|
307
|
+
- [Stochastic Planning with Lifted Symbolic Trajectory Optimization, AAAI 2019](https://ojs.aaai.org/index.php/ICAPS/article/view/3467/3335)
|
|
303
308
|
- [Scalable planning with tensorflow for hybrid nonlinear domains, NeurIPS 2017](https://proceedings.neurips.cc/paper/2017/file/98b17f068d5d9b7668e19fb8ae470841-Paper.pdf)
|
|
304
|
-
|
|
309
|
+
- [Baseline-Free Sampling in Parameter Exploring Policy Gradients: Super Symmetric PGPE, ANN 2015](https://link.springer.com/chapter/10.1007/978-3-319-09903-3_13)
|
|
310
|
+
|
|
311
|
+
The model relaxations in JaxPlan are based on the following works:
|
|
312
|
+
- [Poisson Variational Autoencoder, NeurIPS 2025](https://proceedings.neurips.cc/paper_files/paper/2024/file/4f3cb9576dc99d62b80726690453716f-Paper-Conference.pdf)
|
|
313
|
+
- [Analyzing Differentiable Fuzzy Logic Operators, AI 2022](https://www.sciencedirect.com/science/article/pii/S0004370221001533)
|
|
314
|
+
- [Learning with algorithmic supervision via continuous relaxations, NeurIPS 2021](https://proceedings.neurips.cc/paper_files/paper/2021/file/89ae0fe22c47d374bc9350ef99e01685-Paper.pdf)
|
|
315
|
+
- [Universally quantized neural compression, NeurIPS 2020](https://papers.nips.cc/paper_files/paper/2020/file/92049debbe566ca5782a3045cf300a3c-Paper.pdf)
|
|
316
|
+
- [Generalized Gumbel-Softmax Gradient Estimator for Generic Discrete Random Variables, 2020](https://arxiv.org/pdf/2003.01847)
|
|
317
|
+
- [Categorical Reparametrization with Gumbel-Softmax, ICLR 2017](https://openreview.net/pdf?id=rkE3y85ee)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = '2.2'
|