pyRDDLGym-jax 0.1__py3-none-any.whl → 0.2__py3-none-any.whl
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/core/compiler.py +445 -221
- pyRDDLGym_jax/core/logic.py +129 -62
- pyRDDLGym_jax/core/planner.py +699 -332
- pyRDDLGym_jax/core/simulator.py +5 -7
- pyRDDLGym_jax/core/tuning.py +23 -12
- pyRDDLGym_jax/examples/configs/{Cartpole_Continuous_drp.cfg → Cartpole_Continuous_gym_drp.cfg} +2 -3
- pyRDDLGym_jax/examples/configs/{HVAC_drp.cfg → HVAC_ippc2023_drp.cfg} +2 -2
- pyRDDLGym_jax/examples/configs/MountainCar_ippc2023_slp.cfg +19 -0
- pyRDDLGym_jax/examples/configs/Quadcopter_drp.cfg +18 -0
- pyRDDLGym_jax/examples/configs/Reservoir_Continuous_drp.cfg +18 -0
- pyRDDLGym_jax/examples/configs/Reservoir_Continuous_slp.cfg +1 -1
- pyRDDLGym_jax/examples/configs/UAV_Continuous_slp.cfg +1 -1
- pyRDDLGym_jax/examples/configs/default_drp.cfg +19 -0
- pyRDDLGym_jax/examples/configs/default_replan.cfg +20 -0
- pyRDDLGym_jax/examples/configs/default_slp.cfg +19 -0
- pyRDDLGym_jax/examples/run_gradient.py +1 -1
- pyRDDLGym_jax/examples/run_gym.py +1 -2
- pyRDDLGym_jax/examples/run_plan.py +7 -0
- pyRDDLGym_jax/examples/run_tune.py +6 -0
- {pyRDDLGym_jax-0.1.dist-info → pyRDDLGym_jax-0.2.dist-info}/METADATA +1 -1
- pyRDDLGym_jax-0.2.dist-info/RECORD +46 -0
- {pyRDDLGym_jax-0.1.dist-info → pyRDDLGym_jax-0.2.dist-info}/WHEEL +1 -1
- pyRDDLGym_jax-0.1.dist-info/RECORD +0 -40
- /pyRDDLGym_jax/examples/configs/{Cartpole_Continuous_replan.cfg → Cartpole_Continuous_gym_replan.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{Cartpole_Continuous_slp.cfg → Cartpole_Continuous_gym_slp.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{HVAC_slp.cfg → HVAC_ippc2023_slp.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{MarsRover_drp.cfg → MarsRover_ippc2023_drp.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{MarsRover_slp.cfg → MarsRover_ippc2023_slp.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{MountainCar_slp.cfg → MountainCar_Continuous_gym_slp.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{Pendulum_slp.cfg → Pendulum_gym_slp.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{PowerGen_drp.cfg → PowerGen_Continuous_drp.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{PowerGen_replan.cfg → PowerGen_Continuous_replan.cfg} +0 -0
- /pyRDDLGym_jax/examples/configs/{PowerGen_slp.cfg → PowerGen_Continuous_slp.cfg} +0 -0
- {pyRDDLGym_jax-0.1.dist-info → pyRDDLGym_jax-0.2.dist-info}/LICENSE +0 -0
- {pyRDDLGym_jax-0.1.dist-info → pyRDDLGym_jax-0.2.dist-info}/top_level.txt +0 -0
pyRDDLGym_jax/core/simulator.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import jax
|
|
2
2
|
import time
|
|
3
|
-
from typing import Dict
|
|
3
|
+
from typing import Dict, Optional
|
|
4
4
|
|
|
5
5
|
from pyRDDLGym.core.compiler.model import RDDLLiftedModel
|
|
6
6
|
from pyRDDLGym.core.debug.exception import (
|
|
@@ -20,9 +20,9 @@ Args = Dict[str, Value]
|
|
|
20
20
|
class JaxRDDLSimulator(RDDLSimulator):
|
|
21
21
|
|
|
22
22
|
def __init__(self, rddl: RDDLLiftedModel,
|
|
23
|
-
key: jax.random.PRNGKey=None,
|
|
23
|
+
key: Optional[jax.random.PRNGKey]=None,
|
|
24
24
|
raise_error: bool=True,
|
|
25
|
-
logger: Logger=None,
|
|
25
|
+
logger: Optional[Logger]=None,
|
|
26
26
|
keep_tensors: bool=False,
|
|
27
27
|
**compiler_args) -> None:
|
|
28
28
|
'''Creates a new simulator for the given RDDL model with Jax as a backend.
|
|
@@ -56,10 +56,8 @@ class JaxRDDLSimulator(RDDLSimulator):
|
|
|
56
56
|
rddl = self.rddl
|
|
57
57
|
|
|
58
58
|
# compilation
|
|
59
|
-
if self.logger is not None:
|
|
60
|
-
self.logger.clear()
|
|
61
59
|
compiled = JaxRDDLCompiler(rddl, logger=self.logger, **self.compiler_args)
|
|
62
|
-
compiled.compile(log_jax_expr=True)
|
|
60
|
+
compiled.compile(log_jax_expr=True, heading='SIMULATION MODEL')
|
|
63
61
|
|
|
64
62
|
self.init_values = compiled.init_values
|
|
65
63
|
self.levels = compiled.levels
|
|
@@ -96,7 +94,7 @@ class JaxRDDLSimulator(RDDLSimulator):
|
|
|
96
94
|
self.precond_names = [f'Precondition {i}' for i in range(len(rddl.preconditions))]
|
|
97
95
|
self.terminal_names = [f'Termination {i}' for i in range(len(rddl.terminations))]
|
|
98
96
|
|
|
99
|
-
def handle_error_code(self, error, msg) -> None:
|
|
97
|
+
def handle_error_code(self, error: int, msg: str) -> None:
|
|
100
98
|
if self.raise_error:
|
|
101
99
|
errors = JaxRDDLCompiler.get_error_messages(error)
|
|
102
100
|
if errors:
|
pyRDDLGym_jax/core/tuning.py
CHANGED
|
@@ -8,7 +8,9 @@ from multiprocessing import get_context
|
|
|
8
8
|
import numpy as np
|
|
9
9
|
import os
|
|
10
10
|
import time
|
|
11
|
-
from typing import Callable, Dict, Tuple
|
|
11
|
+
from typing import Any, Callable, Dict, Optional, Tuple
|
|
12
|
+
|
|
13
|
+
Kwargs = Dict[str, Any]
|
|
12
14
|
|
|
13
15
|
import warnings
|
|
14
16
|
warnings.filterwarnings("ignore")
|
|
@@ -45,15 +47,15 @@ class JaxParameterTuning:
|
|
|
45
47
|
timeout_tuning: float=np.inf,
|
|
46
48
|
eval_trials: int=5,
|
|
47
49
|
verbose: bool=True,
|
|
48
|
-
planner_kwargs:
|
|
49
|
-
plan_kwargs:
|
|
50
|
+
planner_kwargs: Optional[Kwargs]=None,
|
|
51
|
+
plan_kwargs: Optional[Kwargs]=None,
|
|
50
52
|
pool_context: str='spawn',
|
|
51
53
|
num_workers: int=1,
|
|
52
54
|
poll_frequency: float=0.2,
|
|
53
55
|
gp_iters: int=25,
|
|
54
|
-
acquisition=None,
|
|
55
|
-
gp_init_kwargs:
|
|
56
|
-
gp_params:
|
|
56
|
+
acquisition: Optional[UtilityFunction]=None,
|
|
57
|
+
gp_init_kwargs: Optional[Kwargs]=None,
|
|
58
|
+
gp_params: Optional[Kwargs]=None) -> None:
|
|
57
59
|
'''Creates a new instance for tuning hyper-parameters for Jax planners
|
|
58
60
|
on the given RDDL domain and instance.
|
|
59
61
|
|
|
@@ -93,13 +95,21 @@ class JaxParameterTuning:
|
|
|
93
95
|
self.timeout_tuning = timeout_tuning
|
|
94
96
|
self.eval_trials = eval_trials
|
|
95
97
|
self.verbose = verbose
|
|
98
|
+
if planner_kwargs is None:
|
|
99
|
+
planner_kwargs = {}
|
|
96
100
|
self.planner_kwargs = planner_kwargs
|
|
101
|
+
if plan_kwargs is None:
|
|
102
|
+
plan_kwargs = {}
|
|
97
103
|
self.plan_kwargs = plan_kwargs
|
|
98
104
|
self.pool_context = pool_context
|
|
99
105
|
self.num_workers = num_workers
|
|
100
106
|
self.poll_frequency = poll_frequency
|
|
101
107
|
self.gp_iters = gp_iters
|
|
108
|
+
if gp_init_kwargs is None:
|
|
109
|
+
gp_init_kwargs = {}
|
|
102
110
|
self.gp_init_kwargs = gp_init_kwargs
|
|
111
|
+
if gp_params is None:
|
|
112
|
+
gp_params = {'n_restarts_optimizer': 10}
|
|
103
113
|
self.gp_params = gp_params
|
|
104
114
|
|
|
105
115
|
# create acquisition function
|
|
@@ -109,7 +119,7 @@ class JaxParameterTuning:
|
|
|
109
119
|
acquisition, self.acq_args = JaxParameterTuning._annealing_utility(num_samples)
|
|
110
120
|
self.acquisition = acquisition
|
|
111
121
|
|
|
112
|
-
def summarize_hyperparameters(self):
|
|
122
|
+
def summarize_hyperparameters(self) -> None:
|
|
113
123
|
print(f'hyperparameter optimizer parameters:\n'
|
|
114
124
|
f' tuned_hyper_parameters ={self.hyperparams_dict}\n'
|
|
115
125
|
f' initialization_args ={self.gp_init_kwargs}\n'
|
|
@@ -150,8 +160,9 @@ class JaxParameterTuning:
|
|
|
150
160
|
pid = os.getpid()
|
|
151
161
|
return index, pid, params, target
|
|
152
162
|
|
|
153
|
-
def tune(self, key: jax.random.PRNGKey,
|
|
154
|
-
|
|
163
|
+
def tune(self, key: jax.random.PRNGKey,
|
|
164
|
+
filename: str,
|
|
165
|
+
save_plot: bool=False) -> Dict[str, Any]:
|
|
155
166
|
'''Tunes the hyper-parameters for Jax planner, returns the best found.'''
|
|
156
167
|
self.summarize_hyperparameters()
|
|
157
168
|
|
|
@@ -364,7 +375,7 @@ def objective_slp(params, kwargs, key, index):
|
|
|
364
375
|
env = RDDLEnv(domain=kwargs['domain'],
|
|
365
376
|
instance=kwargs['instance'],
|
|
366
377
|
vectorized=True,
|
|
367
|
-
enforce_action_constraints=
|
|
378
|
+
enforce_action_constraints=False)
|
|
368
379
|
|
|
369
380
|
# perform training
|
|
370
381
|
average_reward = 0.0
|
|
@@ -495,7 +506,7 @@ def objective_replan(params, kwargs, key, index):
|
|
|
495
506
|
env = RDDLEnv(domain=kwargs['domain'],
|
|
496
507
|
instance=kwargs['instance'],
|
|
497
508
|
vectorized=True,
|
|
498
|
-
enforce_action_constraints=
|
|
509
|
+
enforce_action_constraints=False)
|
|
499
510
|
|
|
500
511
|
# perform training
|
|
501
512
|
average_reward = 0.0
|
|
@@ -622,7 +633,7 @@ def objective_drp(params, kwargs, key, index):
|
|
|
622
633
|
env = RDDLEnv(domain=kwargs['domain'],
|
|
623
634
|
instance=kwargs['instance'],
|
|
624
635
|
vectorized=True,
|
|
625
|
-
enforce_action_constraints=
|
|
636
|
+
enforce_action_constraints=False)
|
|
626
637
|
|
|
627
638
|
# perform training
|
|
628
639
|
average_reward = 0.0
|
pyRDDLGym_jax/examples/configs/{Cartpole_Continuous_drp.cfg → Cartpole_Continuous_gym_drp.cfg}
RENAMED
|
@@ -8,12 +8,11 @@ tnorm_kwargs={}
|
|
|
8
8
|
method='JaxDeepReactivePolicy'
|
|
9
9
|
method_kwargs={'topology': [32, 32]}
|
|
10
10
|
optimizer='rmsprop'
|
|
11
|
-
optimizer_kwargs={'learning_rate': 0.
|
|
11
|
+
optimizer_kwargs={'learning_rate': 0.005}
|
|
12
12
|
batch_size_train=1
|
|
13
13
|
batch_size_test=1
|
|
14
|
-
clip_grad=1.0
|
|
15
14
|
|
|
16
15
|
[Training]
|
|
17
16
|
key=42
|
|
18
|
-
epochs=
|
|
17
|
+
epochs=2000
|
|
19
18
|
train_seconds=30
|
|
@@ -8,11 +8,11 @@ tnorm_kwargs={}
|
|
|
8
8
|
method='JaxDeepReactivePolicy'
|
|
9
9
|
method_kwargs={'topology': [128, 128]}
|
|
10
10
|
optimizer='rmsprop'
|
|
11
|
-
optimizer_kwargs={'learning_rate': 0.
|
|
11
|
+
optimizer_kwargs={'learning_rate': 0.001}
|
|
12
12
|
batch_size_train=1
|
|
13
13
|
batch_size_test=1
|
|
14
14
|
|
|
15
15
|
[Training]
|
|
16
16
|
key=42
|
|
17
|
-
epochs=
|
|
17
|
+
epochs=3000
|
|
18
18
|
train_seconds=30
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
[Model]
|
|
2
|
+
logic='FuzzyLogic'
|
|
3
|
+
logic_kwargs={'weight': 10}
|
|
4
|
+
tnorm='ProductTNorm'
|
|
5
|
+
tnorm_kwargs={}
|
|
6
|
+
|
|
7
|
+
[Optimizer]
|
|
8
|
+
method='JaxStraightLinePlan'
|
|
9
|
+
method_kwargs={}
|
|
10
|
+
optimizer='rmsprop'
|
|
11
|
+
optimizer_kwargs={'learning_rate': 1.0}
|
|
12
|
+
batch_size_train=1
|
|
13
|
+
batch_size_test=1
|
|
14
|
+
clip_grad=1.0
|
|
15
|
+
|
|
16
|
+
[Training]
|
|
17
|
+
key=42
|
|
18
|
+
epochs=1000
|
|
19
|
+
train_seconds=30
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
[Model]
|
|
2
|
+
logic='FuzzyLogic'
|
|
3
|
+
logic_kwargs={'weight': 100}
|
|
4
|
+
tnorm='ProductTNorm'
|
|
5
|
+
tnorm_kwargs={}
|
|
6
|
+
|
|
7
|
+
[Optimizer]
|
|
8
|
+
method='JaxDeepReactivePolicy'
|
|
9
|
+
method_kwargs={'topology': [256, 128], 'activation': 'tanh'}
|
|
10
|
+
optimizer='rmsprop'
|
|
11
|
+
optimizer_kwargs={'learning_rate': 0.001}
|
|
12
|
+
batch_size_train=1
|
|
13
|
+
batch_size_test=1
|
|
14
|
+
|
|
15
|
+
[Training]
|
|
16
|
+
key=42
|
|
17
|
+
epochs=100000
|
|
18
|
+
train_seconds=360
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
[Model]
|
|
2
|
+
logic='FuzzyLogic'
|
|
3
|
+
logic_kwargs={'weight': 10}
|
|
4
|
+
tnorm='ProductTNorm'
|
|
5
|
+
tnorm_kwargs={}
|
|
6
|
+
|
|
7
|
+
[Optimizer]
|
|
8
|
+
method='JaxDeepReactivePolicy'
|
|
9
|
+
method_kwargs={'topology': [64, 32]}
|
|
10
|
+
optimizer='rmsprop'
|
|
11
|
+
optimizer_kwargs={'learning_rate': 0.0002}
|
|
12
|
+
batch_size_train=32
|
|
13
|
+
batch_size_test=32
|
|
14
|
+
|
|
15
|
+
[Training]
|
|
16
|
+
key=42
|
|
17
|
+
epochs=5000
|
|
18
|
+
train_seconds=60
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
[Model]
|
|
2
|
+
logic='FuzzyLogic'
|
|
3
|
+
logic_kwargs={'weight': 20}
|
|
4
|
+
tnorm='ProductTNorm'
|
|
5
|
+
tnorm_kwargs={}
|
|
6
|
+
|
|
7
|
+
[Optimizer]
|
|
8
|
+
method='JaxDeepReactivePolicy'
|
|
9
|
+
method_kwargs={}
|
|
10
|
+
optimizer='rmsprop'
|
|
11
|
+
optimizer_kwargs={'learning_rate': 0.0001}
|
|
12
|
+
batch_size_train=32
|
|
13
|
+
batch_size_test=32
|
|
14
|
+
|
|
15
|
+
[Training]
|
|
16
|
+
key=42
|
|
17
|
+
epochs=30000
|
|
18
|
+
train_seconds=90
|
|
19
|
+
policy_hyperparams=2.0
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
[Model]
|
|
2
|
+
logic='FuzzyLogic'
|
|
3
|
+
logic_kwargs={'weight': 20}
|
|
4
|
+
tnorm='ProductTNorm'
|
|
5
|
+
tnorm_kwargs={}
|
|
6
|
+
|
|
7
|
+
[Optimizer]
|
|
8
|
+
method='JaxStraightLinePlan'
|
|
9
|
+
method_kwargs={}
|
|
10
|
+
optimizer='rmsprop'
|
|
11
|
+
optimizer_kwargs={'learning_rate': 0.01}
|
|
12
|
+
batch_size_train=32
|
|
13
|
+
batch_size_test=32
|
|
14
|
+
rollout_horizon=5
|
|
15
|
+
|
|
16
|
+
[Training]
|
|
17
|
+
key=42
|
|
18
|
+
epochs=2000
|
|
19
|
+
train_seconds=1
|
|
20
|
+
policy_hyperparams=2.0
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
[Model]
|
|
2
|
+
logic='FuzzyLogic'
|
|
3
|
+
logic_kwargs={'weight': 20}
|
|
4
|
+
tnorm='ProductTNorm'
|
|
5
|
+
tnorm_kwargs={}
|
|
6
|
+
|
|
7
|
+
[Optimizer]
|
|
8
|
+
method='JaxStraightLinePlan'
|
|
9
|
+
method_kwargs={}
|
|
10
|
+
optimizer='rmsprop'
|
|
11
|
+
optimizer_kwargs={'learning_rate': 0.01}
|
|
12
|
+
batch_size_train=32
|
|
13
|
+
batch_size_test=32
|
|
14
|
+
|
|
15
|
+
[Training]
|
|
16
|
+
key=42
|
|
17
|
+
epochs=30000
|
|
18
|
+
train_seconds=90
|
|
19
|
+
policy_hyperparams=2.0
|
|
@@ -91,7 +91,7 @@ def main():
|
|
|
91
91
|
my_args = [jax.random.PRNGKey(42), params, None, subs, compiler.model_params]
|
|
92
92
|
|
|
93
93
|
# print the fluents over the trajectory, return and gradient
|
|
94
|
-
print(step_fn(*my_args)['
|
|
94
|
+
print(step_fn(*my_args)['fluents'])
|
|
95
95
|
print(sum_of_rewards(*my_args))
|
|
96
96
|
print(jax.grad(sum_of_rewards, argnums=1)(*my_args))
|
|
97
97
|
|
|
@@ -25,13 +25,12 @@ def main(domain, instance, episodes=1, seed=42):
|
|
|
25
25
|
# create the environment
|
|
26
26
|
env = pyRDDLGym.make(domain, instance, enforce_action_constraints=True,
|
|
27
27
|
backend=JaxRDDLSimulator)
|
|
28
|
-
env.seed(seed)
|
|
29
28
|
|
|
30
29
|
# set up a random policy
|
|
31
30
|
agent = RandomAgent(action_space=env.action_space,
|
|
32
31
|
num_actions=env.max_allowed_actions,
|
|
33
32
|
seed=seed)
|
|
34
|
-
agent.evaluate(env, episodes=episodes, verbose=True, render=True)
|
|
33
|
+
agent.evaluate(env, episodes=episodes, verbose=True, render=True, seed=seed)
|
|
35
34
|
|
|
36
35
|
# important when logging to save all traces
|
|
37
36
|
env.close()
|
|
@@ -18,6 +18,8 @@ import os
|
|
|
18
18
|
import sys
|
|
19
19
|
|
|
20
20
|
import pyRDDLGym
|
|
21
|
+
from pyRDDLGym.core.debug.exception import raise_warning
|
|
22
|
+
|
|
21
23
|
from pyRDDLGym_jax.core.planner import (
|
|
22
24
|
load_config, JaxBackpropPlanner, JaxOfflineController, JaxOnlineController
|
|
23
25
|
)
|
|
@@ -31,6 +33,11 @@ def main(domain, instance, method, episodes=1):
|
|
|
31
33
|
# load the config file with planner settings
|
|
32
34
|
abs_path = os.path.dirname(os.path.abspath(__file__))
|
|
33
35
|
config_path = os.path.join(abs_path, 'configs', f'{domain}_{method}.cfg')
|
|
36
|
+
if not os.path.isfile(config_path):
|
|
37
|
+
raise_warning(f'Config file {domain}_{method}.cfg was not found, '
|
|
38
|
+
f'using default config (parameters could be suboptimal).',
|
|
39
|
+
'red')
|
|
40
|
+
config_path = os.path.join(abs_path, 'configs', f'default_{method}.cfg')
|
|
34
41
|
planner_args, _, train_args = load_config(config_path)
|
|
35
42
|
|
|
36
43
|
# create the planning algorithm
|
|
@@ -20,6 +20,7 @@ import os
|
|
|
20
20
|
import sys
|
|
21
21
|
|
|
22
22
|
import pyRDDLGym
|
|
23
|
+
from pyRDDLGym.core.debug.exception import raise_warning
|
|
23
24
|
|
|
24
25
|
from pyRDDLGym_jax.core.tuning import (
|
|
25
26
|
JaxParameterTuningDRP, JaxParameterTuningSLP, JaxParameterTuningSLPReplan
|
|
@@ -35,6 +36,11 @@ def main(domain, instance, method, trials=5, iters=20, workers=4):
|
|
|
35
36
|
# load the config file with planner settings
|
|
36
37
|
abs_path = os.path.dirname(os.path.abspath(__file__))
|
|
37
38
|
config_path = os.path.join(abs_path, 'configs', f'{domain}_{method}.cfg')
|
|
39
|
+
if not os.path.isfile(config_path):
|
|
40
|
+
raise_warning(f'Config file {domain}_{method}.cfg was not found, '
|
|
41
|
+
f'using default config (parameters could be suboptimal).',
|
|
42
|
+
'red')
|
|
43
|
+
config_path = os.path.join(abs_path, 'configs', f'default_{method}.cfg')
|
|
38
44
|
planner_args, plan_args, train_args = load_config(config_path)
|
|
39
45
|
|
|
40
46
|
# define algorithm to perform tuning
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pyRDDLGym-jax
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2
|
|
4
4
|
Summary: pyRDDLGym-jax: JAX compilation of RDDL description files, and a differentiable planner in JAX.
|
|
5
5
|
Home-page: https://github.com/pyrddlgym-project/pyRDDLGym-jax
|
|
6
6
|
Author: Michael Gimelfarb, Ayal Taitler, Scott Sanner
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
pyRDDLGym_jax/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
+
pyRDDLGym_jax/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
+
pyRDDLGym_jax/core/compiler.py,sha256=K1p99rKdx2PMdsN1jq6ZEtSANUWACWmOzJrGirj5wq8,89176
|
|
4
|
+
pyRDDLGym_jax/core/logic.py,sha256=zujSHiR5KhTO81E5Zn8Gy_xSzVzfDskFCGvZygFRdMI,21930
|
|
5
|
+
pyRDDLGym_jax/core/planner.py,sha256=vEc-Um_3q1QGhlqk-6oq0eGW7iFAbu-6kpSnyKYS9tI,91731
|
|
6
|
+
pyRDDLGym_jax/core/simulator.py,sha256=fp6bep3XwwBWED0w7_4qhiwDjkSka6B2prwdNcPRCMc,8329
|
|
7
|
+
pyRDDLGym_jax/core/tuning.py,sha256=uhpL3UCfSIgxDEvKI8PibwgTafCMLR_8LrRj5cBKLWE,29466
|
|
8
|
+
pyRDDLGym_jax/examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
+
pyRDDLGym_jax/examples/run_gradient.py,sha256=KhXvijRDZ4V7N8NOI2WV8ePGpPna5_vnET61YwS7Tco,2919
|
|
10
|
+
pyRDDLGym_jax/examples/run_gym.py,sha256=tY6xvLCX9gLCYLK2o0gr44j26SHEwOrhyEQF0wNNIWY,1639
|
|
11
|
+
pyRDDLGym_jax/examples/run_plan.py,sha256=Z40aoikg_mN3rXPl-EGU-BQ9QdHl96P1Qvp4GNZeo5c,2499
|
|
12
|
+
pyRDDLGym_jax/examples/run_tune.py,sha256=N3mMCiRsxWtb94xfk6-v2nelkL5VekneeDmaLxPJND4,3318
|
|
13
|
+
pyRDDLGym_jax/examples/configs/Cartpole_Continuous_gym_drp.cfg,sha256=pbkz6ccgk5dHXp7cfYbZNFyJobpGyxUZleCy4fvlmaU,336
|
|
14
|
+
pyRDDLGym_jax/examples/configs/Cartpole_Continuous_gym_replan.cfg,sha256=OswO9YD4Xh1pw3R3LkUBb67WLtj5XlE3qnMQ5CKwPsM,332
|
|
15
|
+
pyRDDLGym_jax/examples/configs/Cartpole_Continuous_gym_slp.cfg,sha256=FxZ4xcg2j2PzeH-wUseRR280juQN5bJjoyt6PtI1W7c,329
|
|
16
|
+
pyRDDLGym_jax/examples/configs/HVAC_ippc2023_drp.cfg,sha256=FZSZc93617oglT66U80vF2QAPv18tHR1NqTbVJRjlfs,338
|
|
17
|
+
pyRDDLGym_jax/examples/configs/HVAC_ippc2023_slp.cfg,sha256=wjtz86_Gz0RfQu3bbrz56PTXL8JMernINx7AtJuZCPs,314
|
|
18
|
+
pyRDDLGym_jax/examples/configs/MarsRover_ippc2023_drp.cfg,sha256=MGLcEIixCzdR_UHR4Ydr8hjB1-lff7U2Zj_cZ0iuPqo,335
|
|
19
|
+
pyRDDLGym_jax/examples/configs/MarsRover_ippc2023_slp.cfg,sha256=Yb4tFzUOj4epCCsofXAZo70lm5C2KzPIzI5PQHsa_Vk,429
|
|
20
|
+
pyRDDLGym_jax/examples/configs/MountainCar_Continuous_gym_slp.cfg,sha256=e7j-1Z66o7F-KZDSf2e8TQRWwkXOPRwrRFkIavK8G7g,327
|
|
21
|
+
pyRDDLGym_jax/examples/configs/MountainCar_ippc2023_slp.cfg,sha256=Z6CxaOxHv4oF6nW7SfSn_HshlQGDlNCPGASTnDTdL7Q,327
|
|
22
|
+
pyRDDLGym_jax/examples/configs/Pendulum_gym_slp.cfg,sha256=gS66TWLSWL9D2DSRU9XK_5geEz2Nq0aBkoF9Oi2tTkc,315
|
|
23
|
+
pyRDDLGym_jax/examples/configs/Pong_slp.cfg,sha256=S45mBj5hTEshdeJ4rdRaty6YliggtEMkLQV6IYxEkyU,315
|
|
24
|
+
pyRDDLGym_jax/examples/configs/PowerGen_Continuous_drp.cfg,sha256=SM5_U4RwvvucHVAOdMG4vqH0Eg43f3WX9ZlV6aFPgTw,341
|
|
25
|
+
pyRDDLGym_jax/examples/configs/PowerGen_Continuous_replan.cfg,sha256=lcqQ7P7X4qAbMlpkKKuYGn2luSZH-yFB7oi-eHj9Qng,332
|
|
26
|
+
pyRDDLGym_jax/examples/configs/PowerGen_Continuous_slp.cfg,sha256=kG1-02ScmwsEwX7QIAZTD7si90Mb06b79G5oqcMQ9Hg,316
|
|
27
|
+
pyRDDLGym_jax/examples/configs/Quadcopter_drp.cfg,sha256=yGMBWiVZT8KdZ1PhQ4kIxPvnjht1ss0UheTV-Nt9oaA,364
|
|
28
|
+
pyRDDLGym_jax/examples/configs/Quadcopter_slp.cfg,sha256=9QNl58PyoJYhmwvrhzUxlLEy8vGbmwE6lRuOdvhLjGQ,317
|
|
29
|
+
pyRDDLGym_jax/examples/configs/Reservoir_Continuous_drp.cfg,sha256=rrubYvC1q7Ff0ADV0GXtLw-rD9E4m7qfR66qxdYNTD8,339
|
|
30
|
+
pyRDDLGym_jax/examples/configs/Reservoir_Continuous_replan.cfg,sha256=DAb-J2KwvJXViRRSHZe8aJwZiPljC28HtrKJPieeUCY,331
|
|
31
|
+
pyRDDLGym_jax/examples/configs/Reservoir_Continuous_slp.cfg,sha256=QwKzCAFaErrTCHaJwDPLOxPHpNGNuAKMUoZjLLnMrNc,314
|
|
32
|
+
pyRDDLGym_jax/examples/configs/SupplyChain_slp.cfg,sha256=vU_m6KjfNfaPuYosFdAWeYiV1zQGd6eNA17Yn5QB_BI,319
|
|
33
|
+
pyRDDLGym_jax/examples/configs/Traffic_slp.cfg,sha256=03scuHAl6032YhyYy0w5MLMbTibhdbUZFHLhH2WWaPI,370
|
|
34
|
+
pyRDDLGym_jax/examples/configs/UAV_Continuous_slp.cfg,sha256=QiJCJYOrdXXZfOTuPleGswREFxjGlqQSA0rw00YJWWI,318
|
|
35
|
+
pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_drp.cfg,sha256=PGkgll7h5vhSF13JScKoQ-vpWaAGNJ_PUEhK7jEjNx4,340
|
|
36
|
+
pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_replan.cfg,sha256=kEDAwsJQ_t9WPzPhIxfS0hRtgOhtFdJFfmPtTTJuwUE,454
|
|
37
|
+
pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_slp.cfg,sha256=w2wipsA8PE5OBkYVIKajjtCOtiHqmMeY3XQVPAApwFk,371
|
|
38
|
+
pyRDDLGym_jax/examples/configs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
|
+
pyRDDLGym_jax/examples/configs/default_drp.cfg,sha256=AtHBy2G9xXTWb6CfDGeKrC2tycwhe2u-JjLnAVLTugQ,344
|
|
40
|
+
pyRDDLGym_jax/examples/configs/default_replan.cfg,sha256=VWWPhOYBRq4cWwtrChw5pPqRmlX_nHbMvwciHd9hoLc,357
|
|
41
|
+
pyRDDLGym_jax/examples/configs/default_slp.cfg,sha256=iicFMK1XJRo1OnLPPY9DKKHgt8T0FttZxRT5UYMJCRE,340
|
|
42
|
+
pyRDDLGym_jax-0.2.dist-info/LICENSE,sha256=Y0Gi6H6mLOKN-oIKGZulQkoTJyPZeAaeuZu7FXH-meg,1095
|
|
43
|
+
pyRDDLGym_jax-0.2.dist-info/METADATA,sha256=sXEBaZx1czXcRRMj0vXyJrtJUJHnkorsWgqrWU9axV0,1085
|
|
44
|
+
pyRDDLGym_jax-0.2.dist-info/WHEEL,sha256=y4mX-SOX4fYIkonsAGA5N0Oy-8_gI4FXw5HNI1xqvWg,91
|
|
45
|
+
pyRDDLGym_jax-0.2.dist-info/top_level.txt,sha256=n_oWkP_BoZK0VofvPKKmBZ3NPk86WFNvLhi1BktCbVQ,14
|
|
46
|
+
pyRDDLGym_jax-0.2.dist-info/RECORD,,
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
pyRDDLGym_jax/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
pyRDDLGym_jax/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
|
-
pyRDDLGym_jax/core/compiler.py,sha256=gN1WKgFUc8NzMH685ykbDMEM9gwdYtGnaNfEKHkEoCQ,78496
|
|
4
|
-
pyRDDLGym_jax/core/logic.py,sha256=pxq28iuohphDlsDiE5ZuwNpjXOW7vrUdyjwQq9Xd3zM,19431
|
|
5
|
-
pyRDDLGym_jax/core/planner.py,sha256=j4kKa23dj4dm-zhlbZ67-_Kqpj1sTlkhElnVc5EEV5I,75387
|
|
6
|
-
pyRDDLGym_jax/core/simulator.py,sha256=xYu_WbQTaDI0NGnma0Q1W6CurFAQFR0FMmw2XfouTg4,8331
|
|
7
|
-
pyRDDLGym_jax/core/tuning.py,sha256=W-lEnpm4zDHy0DyHwrPbeI4L-ZIisS9j_RXnwqnumXQ,29058
|
|
8
|
-
pyRDDLGym_jax/examples/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
-
pyRDDLGym_jax/examples/run_gradient.py,sha256=YKcDIVaC9DUy86QDizen9DDpSrw2pREo3BY3WWybgb8,2916
|
|
10
|
-
pyRDDLGym_jax/examples/run_gym.py,sha256=IrFblP7q-xywcenbtDhuBNuCMxSYVjTQ7VOOft0nPr8,1648
|
|
11
|
-
pyRDDLGym_jax/examples/run_plan.py,sha256=gzr1uZif0hbHd7zLxH3TZkk0ajEUuejTVRVOB3CXIgA,2126
|
|
12
|
-
pyRDDLGym_jax/examples/run_tune.py,sha256=vm6PHnCRgfPRdbfSI-IzL_APkA9Cx8s0lGvAZaVxpy4,2947
|
|
13
|
-
pyRDDLGym_jax/examples/configs/Cartpole_Continuous_drp.cfg,sha256=fSdRmJfMyGiONlcMHBV9dg0iGWuHq9P3F6Bg-O-On08,351
|
|
14
|
-
pyRDDLGym_jax/examples/configs/Cartpole_Continuous_replan.cfg,sha256=OswO9YD4Xh1pw3R3LkUBb67WLtj5XlE3qnMQ5CKwPsM,332
|
|
15
|
-
pyRDDLGym_jax/examples/configs/Cartpole_Continuous_slp.cfg,sha256=FxZ4xcg2j2PzeH-wUseRR280juQN5bJjoyt6PtI1W7c,329
|
|
16
|
-
pyRDDLGym_jax/examples/configs/HVAC_drp.cfg,sha256=peHBd2AP0GbMwygVDhahuVp11_38PgjMeAwkjJ_sU4k,339
|
|
17
|
-
pyRDDLGym_jax/examples/configs/HVAC_slp.cfg,sha256=wjtz86_Gz0RfQu3bbrz56PTXL8JMernINx7AtJuZCPs,314
|
|
18
|
-
pyRDDLGym_jax/examples/configs/MarsRover_drp.cfg,sha256=MGLcEIixCzdR_UHR4Ydr8hjB1-lff7U2Zj_cZ0iuPqo,335
|
|
19
|
-
pyRDDLGym_jax/examples/configs/MarsRover_slp.cfg,sha256=Yb4tFzUOj4epCCsofXAZo70lm5C2KzPIzI5PQHsa_Vk,429
|
|
20
|
-
pyRDDLGym_jax/examples/configs/MountainCar_slp.cfg,sha256=e7j-1Z66o7F-KZDSf2e8TQRWwkXOPRwrRFkIavK8G7g,327
|
|
21
|
-
pyRDDLGym_jax/examples/configs/Pendulum_slp.cfg,sha256=gS66TWLSWL9D2DSRU9XK_5geEz2Nq0aBkoF9Oi2tTkc,315
|
|
22
|
-
pyRDDLGym_jax/examples/configs/Pong_slp.cfg,sha256=S45mBj5hTEshdeJ4rdRaty6YliggtEMkLQV6IYxEkyU,315
|
|
23
|
-
pyRDDLGym_jax/examples/configs/PowerGen_drp.cfg,sha256=SM5_U4RwvvucHVAOdMG4vqH0Eg43f3WX9ZlV6aFPgTw,341
|
|
24
|
-
pyRDDLGym_jax/examples/configs/PowerGen_replan.cfg,sha256=lcqQ7P7X4qAbMlpkKKuYGn2luSZH-yFB7oi-eHj9Qng,332
|
|
25
|
-
pyRDDLGym_jax/examples/configs/PowerGen_slp.cfg,sha256=kG1-02ScmwsEwX7QIAZTD7si90Mb06b79G5oqcMQ9Hg,316
|
|
26
|
-
pyRDDLGym_jax/examples/configs/Quadcopter_slp.cfg,sha256=9QNl58PyoJYhmwvrhzUxlLEy8vGbmwE6lRuOdvhLjGQ,317
|
|
27
|
-
pyRDDLGym_jax/examples/configs/Reservoir_Continuous_replan.cfg,sha256=DAb-J2KwvJXViRRSHZe8aJwZiPljC28HtrKJPieeUCY,331
|
|
28
|
-
pyRDDLGym_jax/examples/configs/Reservoir_Continuous_slp.cfg,sha256=D0Ly_luPnyOEzONJeUT3SOVWlzCBpJrF-SF4bLPx6KE,314
|
|
29
|
-
pyRDDLGym_jax/examples/configs/SupplyChain_slp.cfg,sha256=vU_m6KjfNfaPuYosFdAWeYiV1zQGd6eNA17Yn5QB_BI,319
|
|
30
|
-
pyRDDLGym_jax/examples/configs/Traffic_slp.cfg,sha256=03scuHAl6032YhyYy0w5MLMbTibhdbUZFHLhH2WWaPI,370
|
|
31
|
-
pyRDDLGym_jax/examples/configs/UAV_Continuous_slp.cfg,sha256=-E8tRxsYl67BoEWv4pxV0meanwHajzeiPnOhTLJOuAM,315
|
|
32
|
-
pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_drp.cfg,sha256=PGkgll7h5vhSF13JScKoQ-vpWaAGNJ_PUEhK7jEjNx4,340
|
|
33
|
-
pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_replan.cfg,sha256=kEDAwsJQ_t9WPzPhIxfS0hRtgOhtFdJFfmPtTTJuwUE,454
|
|
34
|
-
pyRDDLGym_jax/examples/configs/Wildfire_MDP_ippc2014_slp.cfg,sha256=w2wipsA8PE5OBkYVIKajjtCOtiHqmMeY3XQVPAApwFk,371
|
|
35
|
-
pyRDDLGym_jax/examples/configs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
36
|
-
pyRDDLGym_jax-0.1.dist-info/LICENSE,sha256=Y0Gi6H6mLOKN-oIKGZulQkoTJyPZeAaeuZu7FXH-meg,1095
|
|
37
|
-
pyRDDLGym_jax-0.1.dist-info/METADATA,sha256=YKrnTVgud9MfECSD9Hnpu6k8sW8FfCZUsWPrftF9YEI,1085
|
|
38
|
-
pyRDDLGym_jax-0.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
39
|
-
pyRDDLGym_jax-0.1.dist-info/top_level.txt,sha256=n_oWkP_BoZK0VofvPKKmBZ3NPk86WFNvLhi1BktCbVQ,14
|
|
40
|
-
pyRDDLGym_jax-0.1.dist-info/RECORD,,
|
|
File without changes
|
/pyRDDLGym_jax/examples/configs/{Cartpole_Continuous_slp.cfg → Cartpole_Continuous_gym_slp.cfg}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|