Kernelized Q-learning with invariances (IQL) is an implementation of LSVI algorithm designed to incorporate invariance properties into the kernel function. This can improve sample efficiency and generalization, especially in structured environments.
To run synthetic experiments:
python script.pyIt will run the KRVI algorithm with the invariant kernel on the synthetically generated reward and transition dynamics functions, for T=1000 episodes, using the UCB coefficient
To run experiments on the Frozen Lake environment with a fixed layout:
python KRVI_algo_test_rotated_invariant_fulloptim.pyYou can specify hyperparparameters as arguments.
We used the following hyperparameters in our experiments:
For the invariant kernel:
--kernel invariant_kernel --beta 0.01 --len_scale 0.5 --noise_reg 0.1 --optim_botorch 1 --iterations 1500 For the RBF kernel:
--kernel RBF --beta 0.01 --len_scale 0.1 --noise_reg 0.1 --optim_botorch 1 --iterations 1500To run experiments on the Frozen Lake environment with random layouts:
python KRVI_algo_test_rotated_invariant_fulloptim_eval.pyWe used the following hyperparameters in our experiments:
For the invariant kernel:
--kernel invariant_kernel --beta 0.01 --len_scale 0.5 --noise_reg 0.1 --optim_botorch 1 --iterations 2000For the RBF kernel:
--kernel RBF --beta 0.01 --len_scale 1 --noise_reg 0.1 --optim_botorch 1 --iterations 2000