Spaces:
Sleeping
Sleeping
File size: 2,807 Bytes
6e124c0 a884bba 6e124c0 a884bba 6e124c0 a884bba 6e124c0 f12b6ac 6e124c0 a884bba 6e124c0 f12b6ac 6e124c0 a884bba 6e124c0 b24b865 f12b6ac b24b865 a884bba b24b865 f12b6ac 6e124c0 a884bba 6e124c0 f12b6ac 6e124c0 a884bba 6e124c0 f12b6ac 6e124c0 cff7f74 6e124c0 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
{
"cells": [
{
"cell_type": "code",
"execution_count": null,
"id": "0",
"metadata": {},
"outputs": [],
"source": [
"%load_ext autoreload\n",
"%autoreload 2"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "1",
"metadata": {},
"outputs": [],
"source": [
"import copy\n",
"\n",
"import torch"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "2",
"metadata": {},
"outputs": [],
"source": [
"from rubik.cube import Cube\n",
"from rubik.action import build_actions_tensor\n",
"from rubik.interface.plot import CubeVisualizer"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "3",
"metadata": {},
"outputs": [],
"source": [
"size = 3\n",
"\n",
"actions = build_actions_tensor(size)\n",
"\n",
"cube = Cube(size)\n",
"print(cube)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "4",
"metadata": {},
"outputs": [],
"source": [
"cubis = copy.deepcopy(cube)\n",
"cubis.rotate(\"X2 X1i Y1i Z1i Y0 Z0i X2 X1i Y1i Z1i Y0 Z0i \")\n",
"\n",
"print(cubis)\n",
"print(cubis.history)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "5",
"metadata": {},
"outputs": [],
"source": [
"visualizer = CubeVisualizer(size=cubis.size)\n",
"layout_args = {\"autosize\": False, \"width\": 600, \"height\": 600}\n",
"\n",
"visualizer(cubis.coordinates, cubis.state, cubis.size).update_layout(**layout_args).show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "6",
"metadata": {},
"outputs": [],
"source": [
"cubis = copy.deepcopy(cube)\n",
"cubis.scramble(2000, seed=0)\n",
"print(cubis)\n",
"print(cubis.history)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "7",
"metadata": {},
"outputs": [],
"source": [
"cubis = copy.deepcopy(cube)\n",
"cubis.rotate(\"X2 X1i Y1i Z1i Y0 Z0i X2 X1i Y1i Z1i Y0 Z0i \" * 1000)\n",
"print(cubis)\n",
"print(cubis.history)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "8",
"metadata": {},
"outputs": [],
"source": [
"(actions[0, 2, 0].type(torch.float32) @ actions[0, 1, 1].type(torch.float32)).type(torch.int8)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Rubik-Tensor",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.13"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
|