Add Rubik's Cube environment and simple config

Add Rubik's Cube environment. Needs cleanup before merging. Mostly based on https://github.com/do-not-be-hasty/gym-rubik forked from https://github.com/yoavain/gym-rubik. Contains config file for sample run.

Consists of 4 main parts:

  • Cube - taken from https://github.com/davidwhogg/MagicCube
  • CubeConverter - for observation encoding, namely converting between 'sticker' (one-hot colour for all the 633 stickers) and 'cubelet' (one-hot positions of 8 corner and 12 edge cubelets, as used in https://arxiv.org/pdf/1805.07470.pdf)
  • Rubik - main environment
  • GoalRubik - GoalEnv interface for goal-oriented algorithms, such as HER, not usable in alpacka yet

Code for Cube class can be removed and imported instead, but that requires updating the requirements.

Edited by Piotr Miłoś

Merge request reports

Loading