buh
This commit is contained in:
@ -20,10 +20,10 @@ from scorer import (
|
|||||||
import heapq
|
import heapq
|
||||||
from typing import List, Any, Generator, Dict
|
from typing import List, Any, Generator, Dict
|
||||||
|
|
||||||
SOLUTIONS_TO_EVAL = 1000
|
SOLUTIONS_TO_EVAL = 100
|
||||||
SOLUTIONS_TO_SHOW = 3
|
SOLUTIONS_TO_SHOW = 3
|
||||||
|
|
||||||
PRUNE = 11
|
PRUNE = 9
|
||||||
SOLVE = 7
|
SOLVE = 7
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
26
moves.yaml
26
moves.yaml
@ -65,7 +65,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
index: B
|
index: B
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 5
|
score: 1001
|
||||||
- name: "U flick"
|
- name: "U flick"
|
||||||
move: "U"
|
move: "U"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -74,7 +74,7 @@ finger_tricks:
|
|||||||
# TODO: rethink this parameter
|
# TODO: rethink this parameter
|
||||||
index: LB
|
index: LB
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 4
|
score: 1001
|
||||||
- name: "U' push"
|
- name: "U' push"
|
||||||
move: "U'"
|
move: "U'"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -82,7 +82,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
index: F
|
index: F
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 5
|
score: 1000
|
||||||
- name: "U' flick"
|
- name: "U' flick"
|
||||||
move: "U'"
|
move: "U'"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -90,7 +90,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
index: LF
|
index: LF
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 3
|
score: 1000
|
||||||
- name: "U2' feido"
|
- name: "U2' feido"
|
||||||
move: "U2"
|
move: "U2"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -98,7 +98,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
index: F
|
index: F
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 5
|
score: 1002
|
||||||
- name: "U2 double flick"
|
- name: "U2 double flick"
|
||||||
move: "U2"
|
move: "U2"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -106,7 +106,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
index: LF
|
index: LF
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 6
|
score: 1002
|
||||||
- name: "U2' double flick"
|
- name: "U2' double flick"
|
||||||
move: "U2"
|
move: "U2"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -114,7 +114,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
index: BL
|
index: BL
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 9
|
score: 1002
|
||||||
- name: "U2 beido"
|
- name: "U2 beido"
|
||||||
move: "U2"
|
move: "U2"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -122,7 +122,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
index: B
|
index: B
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 5
|
score: 1002
|
||||||
- name: "M' ring flick"
|
- name: "M' ring flick"
|
||||||
move: "M'"
|
move: "M'"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -130,7 +130,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
ring: DF
|
ring: DF
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 3
|
score: 1000
|
||||||
- name: "M' pinky flick"
|
- name: "M' pinky flick"
|
||||||
move: "M'"
|
move: "M'"
|
||||||
# I can't do M' after finishing beido
|
# I can't do M' after finishing beido
|
||||||
@ -142,7 +142,7 @@ finger_tricks:
|
|||||||
index:
|
index:
|
||||||
- BL
|
- BL
|
||||||
- UF
|
- UF
|
||||||
score: 6
|
score: 1000
|
||||||
- name: "M push"
|
- name: "M push"
|
||||||
move: "M"
|
move: "M"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -150,7 +150,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
pinky: DB
|
pinky: DB
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 5
|
score: 1001
|
||||||
- name: "M index push"
|
- name: "M index push"
|
||||||
move: "M"
|
move: "M"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -158,7 +158,7 @@ finger_tricks:
|
|||||||
grip_post:
|
grip_post:
|
||||||
index: UF
|
index: UF
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 6
|
score: 1001
|
||||||
- name: "M2 double flick"
|
- name: "M2 double flick"
|
||||||
move: "M2"
|
move: "M2"
|
||||||
grip_pre:
|
grip_pre:
|
||||||
@ -168,4 +168,4 @@ finger_tricks:
|
|||||||
pinky: F floating
|
pinky: F floating
|
||||||
ring: DB
|
ring: DB
|
||||||
grip_pre_blacklist: {}
|
grip_pre_blacklist: {}
|
||||||
score: 7
|
score: 1002
|
||||||
|
|||||||
149
roux_7_movers.txt
Normal file
149
roux_7_movers.txt
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
U' M U' M' U' M' U' M' U' M2
|
||||||
|
M' U' M' U M U2 M U'
|
||||||
|
U M' U2 M U M' U M U'
|
||||||
|
M' U' M' U' M U2 M U'
|
||||||
|
U' M' U2 M U' M' U' M U'
|
||||||
|
M' U' M' U' M' U2 M U M2
|
||||||
|
M' U' M' U2 M' U2 M U M2
|
||||||
|
M' U' M U2 M' U2 M' U' M2
|
||||||
|
M' U' M' U' M U2 M' U' M2
|
||||||
|
M' U' M' U' M' U2 M' U
|
||||||
|
M' U' M' U2 M U2 M' U M2
|
||||||
|
U M U M' U M' U M U'
|
||||||
|
M' U' M' U2 M' U2 M' U'
|
||||||
|
U' M U' M' U' M' U' M U
|
||||||
|
M' U' M' U M' U2 M' U
|
||||||
|
M' U' M' U M U2 M' U' M2
|
||||||
|
M' U' M U' M' U2 M' U' M2
|
||||||
|
M' U' M U' M U2 M' U
|
||||||
|
M' U' M U M' U2 M U
|
||||||
|
U' M U' M' U' M' U M' U' M2
|
||||||
|
M' U' M U' M U2 M U' M2
|
||||||
|
M' U' M U' M' U2 M U
|
||||||
|
U' M' U2 M U' M' U M' U' M2
|
||||||
|
M' U' M U M U2 M' U
|
||||||
|
M' U' M U M' U2 M' U' M2
|
||||||
|
M' U M' U2 M' U2 M U' M2
|
||||||
|
U M' U M' U' M' U' M' U'
|
||||||
|
U2 M U' M U M' U2 M' U
|
||||||
|
U2 M U' M' U2 M' U2 M U'
|
||||||
|
U2 M U M' U2 M' U2 M U'
|
||||||
|
U M' U2 M' U M' U M U' M2
|
||||||
|
U2 M U' M U' M' U2 M' U
|
||||||
|
U' M' U2 M' U' M' U' M U' M2
|
||||||
|
U2 M U' M U' M U2 M' U' M2
|
||||||
|
U2 M U' M U' M' U2 M U M2
|
||||||
|
U' M' U2 M' U' M' U M'
|
||||||
|
U2 M U' M' U2 M U2 M' U'
|
||||||
|
U' M' U M U M U M' U
|
||||||
|
U2 M U M' U2 M' U2 M' U' M2
|
||||||
|
U M' U' M U' M U' M' U'
|
||||||
|
U M' U M' U' M' U' M U' M2
|
||||||
|
U2 M U M' U M U2 M' U'
|
||||||
|
U2 M U' M' U' M U2 M U M2
|
||||||
|
U2 M U' M' U' M' U2 M U'
|
||||||
|
U2 M U' M' U M U2 M' U'
|
||||||
|
U' M' U' M' U M' U M U' M2
|
||||||
|
U2 M U' M' U' M U2 M' U'
|
||||||
|
U M' U' M U' M U M'
|
||||||
|
U2 M U' M' U M U2 M U' M2
|
||||||
|
U2 M U' M' U M' U2 M U
|
||||||
|
U2 M U' M U M' U2 M U' M2
|
||||||
|
M' U2 M U2 M' U' M' M2
|
||||||
|
M' U2 M' U2 M' U' M' U2
|
||||||
|
U M' U2 M' U2 M' U' M U M2
|
||||||
|
U M' U2 M' U2 M' U M U' M2
|
||||||
|
M U' M U' M' U' M U' M2
|
||||||
|
M' U' M U' M' U M U
|
||||||
|
M U' M U' M' U M U' M2
|
||||||
|
M' U' M U' M' U' M' U' M2
|
||||||
|
M' U M U M' U M' U' M2
|
||||||
|
M' U M U M' U' M' U2 M2
|
||||||
|
M U' M U' M' U M' U'
|
||||||
|
U M U' M' U2 M' U M U
|
||||||
|
M' U' M U' M' U' M U
|
||||||
|
U M U' M U2 M' U M' U
|
||||||
|
M U M U M' U' M' U2
|
||||||
|
M' U' M U' M' U M' U' M2
|
||||||
|
M U M U M' U M' U
|
||||||
|
M U' M U' M' U' M' U
|
||||||
|
U M U' M' U2 M' U M' U2 M2
|
||||||
|
U M U' M' U2 M' U' M' U' M2
|
||||||
|
M' U M U M' U M U
|
||||||
|
U' M U M' U2 M' U M U'
|
||||||
|
U2 M' U' M' U' M U' M' U M2
|
||||||
|
U' M' U' M' U2 M U' M' U M2
|
||||||
|
U M' U M' U2 M U M' U M2
|
||||||
|
U2 M U' M' U' M U M' U'
|
||||||
|
U2 M' U' M' U' M U M' U M2
|
||||||
|
U2 M U M' U M U' M'
|
||||||
|
U2 M' U' M' U' M U M U
|
||||||
|
U' M' U' M U2 M U M' U'
|
||||||
|
U' M' U' M' U2 M U M U'
|
||||||
|
U2 M' U M' U M U' M' M2
|
||||||
|
U2 M U' M' U' M U M U M2
|
||||||
|
U2 M U' M' U' M U' M' U'
|
||||||
|
U2 M' U M' U M U M U'
|
||||||
|
U' M' U' M' U2 M U M' U2 M2
|
||||||
|
U2 M' U' M' U' M U' M U'
|
||||||
|
U2 M' U M' U M U' M U
|
||||||
|
U2 M U M' U M U' M U M2
|
||||||
|
U M' U M U2 M U M' U
|
||||||
|
U2 M U M' U M U M' U'
|
||||||
|
U' M2 U' M U' M2 U M' U2
|
||||||
|
U' M2 U' M U2 M2 U M' U2
|
||||||
|
M' U' M' U' M' U M'
|
||||||
|
U2 M' U2 M' U' M U M U
|
||||||
|
M' U M U' M U' M' U'
|
||||||
|
U M' U2 M' U M U M' M2
|
||||||
|
U2 M U M' U' M' U' M U
|
||||||
|
U' M' U M' U M' U' M' U
|
||||||
|
U' M' U2 M U' M U' M' U'
|
||||||
|
M' U' M' U' M' U' M' U'
|
||||||
|
U M' U2 M' U M U' M U'
|
||||||
|
U2 M' U2 M' U' M U M' M2
|
||||||
|
U' M' U' M U M U M' U'
|
||||||
|
U M U' M' U M' U M U
|
||||||
|
U2 M' U2 M' U' M U' M' U M2
|
||||||
|
M' U2 M U M U M' U
|
||||||
|
U M' U2 M' U M U' M' M2
|
||||||
|
M' U' M' U' M' U' M U' M2
|
||||||
|
U M U M U M U M' U' M2
|
||||||
|
U2 M U' M U' M U' M' U' M2
|
||||||
|
U' M' U M' U M' U M U' M2
|
||||||
|
U' M' U M' U2 M' U M' U
|
||||||
|
U M U M' U2 M U' M' U
|
||||||
|
M' U' M' U2 M' U M' U
|
||||||
|
U' M' U M U2 M' U M' U2 M2
|
||||||
|
M' U' M' U2 M' U' M' U
|
||||||
|
U2 M U' M' U2 M U M' U
|
||||||
|
U2 M U' M' U2 M U M U M2
|
||||||
|
M' U' M U2 M' U M' U' M2
|
||||||
|
U M U M U2 M U M' U' M2
|
||||||
|
U' M' U M' U2 M' U M U M2
|
||||||
|
U M U M' U2 M U M U' M2
|
||||||
|
M' U' M' U2 M' U M U M2
|
||||||
|
U2 M U' M U2 M U M' U M2
|
||||||
|
U' M U2 M' U2 M' U' M' U' M2
|
||||||
|
U' M' U2 M' U2 M U M U'
|
||||||
|
U M' U2 M' U2 M U' M' U M2
|
||||||
|
U2 M' U M U' M' U' M U'
|
||||||
|
M' U' M U M' U' M U
|
||||||
|
M' U M U' M' U M U
|
||||||
|
U2 M U' M' U M U M U M2
|
||||||
|
U2 M U M' U' M U' M U M2
|
||||||
|
M' U' M U M' U M' U' M2
|
||||||
|
M' U M U' M' U' M' U' M2
|
||||||
|
M' U' M U M' U M U
|
||||||
|
U2 M' U' M U M' U' M' U2 M2
|
||||||
|
M U M' U' M U M U M2
|
||||||
|
M U' M' U M U' M'
|
||||||
|
U2 M U M' U' M U' M'
|
||||||
|
U M' U' M' U M U' M' M2
|
||||||
|
U2 M' U M' U' M U' M' U2 M2
|
||||||
|
U M' U' M' U M U M
|
||||||
|
U2 M U' M U M' U M' U
|
||||||
|
U2 M U M U' M' U' M' U
|
||||||
|
U' M U M U' M' U' M U M2
|
||||||
|
M' U M' U' M U' M U'
|
||||||
|
U2
|
||||||
24
roux_trainer.py
Normal file
24
roux_trainer.py
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
import json
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
with open("./output.json") as f:
|
||||||
|
data = json.loads(f.read())
|
||||||
|
covered_cases = set()
|
||||||
|
for case, scrambles in data.items():
|
||||||
|
if not scrambles:
|
||||||
|
continue
|
||||||
|
scramble = scrambles[0]
|
||||||
|
if scramble["raw_alg"] in covered_cases:
|
||||||
|
continue
|
||||||
|
if scramble["stm"] != 7:
|
||||||
|
continue
|
||||||
|
if case.startswith("Solved"):
|
||||||
|
continue
|
||||||
|
print(scramble["alg"])
|
||||||
|
covered_cases.add(scramble["raw_alg"])
|
||||||
|
print("U2")
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
@ -56,11 +56,16 @@ def create_eolrb_prune_table(prune_depth: int):
|
|||||||
|
|
||||||
generator = lse_brute_force_generator(prune_depth)
|
generator = lse_brute_force_generator(prune_depth)
|
||||||
|
|
||||||
|
pruned = 0
|
||||||
|
|
||||||
# TODO: for every solved state (pre auf), we can apply the generator's moves and save to prune table?
|
# TODO: for every solved state (pre auf), we can apply the generator's moves and save to prune table?
|
||||||
for alg in generator:
|
for alg in generator:
|
||||||
cube.reset()
|
cube.reset()
|
||||||
cube.alg(" ".join(alg))
|
cube.alg(" ".join(alg))
|
||||||
prune_table[cube.eolrb_hash()].append(reverse_algorithm(alg))
|
prune_table[cube.eolrb_hash()].append(reverse_algorithm(alg))
|
||||||
|
pruned += 1
|
||||||
|
if pruned % 1000 == 0:
|
||||||
|
print(pruned)
|
||||||
|
|
||||||
return prune_table
|
return prune_table
|
||||||
|
|
||||||
|
|||||||
171
weighted_moves.yaml
Normal file
171
weighted_moves.yaml
Normal file
@ -0,0 +1,171 @@
|
|||||||
|
fingers:
|
||||||
|
- name: index
|
||||||
|
default_score: 1
|
||||||
|
home_grips:
|
||||||
|
- BL
|
||||||
|
- LB
|
||||||
|
# TODO: change to grip_set
|
||||||
|
grips:
|
||||||
|
side:
|
||||||
|
- B
|
||||||
|
- BL
|
||||||
|
- LB
|
||||||
|
- LF
|
||||||
|
- FL
|
||||||
|
- F
|
||||||
|
top:
|
||||||
|
- UF
|
||||||
|
regrips:
|
||||||
|
- start: UF
|
||||||
|
end: BL
|
||||||
|
score: 3
|
||||||
|
# TODO: this doesn't need to be here
|
||||||
|
finger: index
|
||||||
|
- start: UF
|
||||||
|
end: LB
|
||||||
|
score: 3
|
||||||
|
# TODO: this doesn't need to be here
|
||||||
|
finger: index
|
||||||
|
- name: ring
|
||||||
|
default_score: 1
|
||||||
|
home_grips:
|
||||||
|
- B
|
||||||
|
- DB
|
||||||
|
grips:
|
||||||
|
slice:
|
||||||
|
- B
|
||||||
|
- DB
|
||||||
|
- DF
|
||||||
|
- F
|
||||||
|
regrips: []
|
||||||
|
- name: pinky
|
||||||
|
default_score: 1
|
||||||
|
home_grips:
|
||||||
|
- DB
|
||||||
|
- DF
|
||||||
|
grips:
|
||||||
|
slice:
|
||||||
|
- B
|
||||||
|
- DB
|
||||||
|
- DF
|
||||||
|
- F
|
||||||
|
- F floating
|
||||||
|
regrips:
|
||||||
|
- start: F floating
|
||||||
|
end: F
|
||||||
|
score: 2
|
||||||
|
# F floating is hard
|
||||||
|
# TODO: this doesn't need to be here
|
||||||
|
finger: pinky
|
||||||
|
finger_tricks:
|
||||||
|
- name: "U push"
|
||||||
|
move: "U"
|
||||||
|
grip_pre:
|
||||||
|
index: LB
|
||||||
|
grip_post:
|
||||||
|
index: B
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 5
|
||||||
|
- name: "U flick"
|
||||||
|
move: "U"
|
||||||
|
grip_pre:
|
||||||
|
index: F
|
||||||
|
grip_post:
|
||||||
|
# TODO: rethink this parameter
|
||||||
|
index: LB
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 4
|
||||||
|
- name: "U' push"
|
||||||
|
move: "U'"
|
||||||
|
grip_pre:
|
||||||
|
index: LF
|
||||||
|
grip_post:
|
||||||
|
index: F
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 5
|
||||||
|
- name: "U' flick"
|
||||||
|
move: "U'"
|
||||||
|
grip_pre:
|
||||||
|
index: BL
|
||||||
|
grip_post:
|
||||||
|
index: LF
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 3
|
||||||
|
- name: "U2' feido"
|
||||||
|
move: "U2"
|
||||||
|
grip_pre:
|
||||||
|
index: BL
|
||||||
|
grip_post:
|
||||||
|
index: F
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 5
|
||||||
|
- name: "U2 double flick"
|
||||||
|
move: "U2"
|
||||||
|
grip_pre:
|
||||||
|
index: BL
|
||||||
|
grip_post:
|
||||||
|
index: LF
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 6
|
||||||
|
- name: "U2' double flick"
|
||||||
|
move: "U2"
|
||||||
|
grip_pre:
|
||||||
|
index: F
|
||||||
|
grip_post:
|
||||||
|
index: BL
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 9
|
||||||
|
- name: "U2 beido"
|
||||||
|
move: "U2"
|
||||||
|
grip_pre:
|
||||||
|
index: F
|
||||||
|
grip_post:
|
||||||
|
index: B
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 5
|
||||||
|
- name: "M' ring flick"
|
||||||
|
move: "M'"
|
||||||
|
grip_pre:
|
||||||
|
ring: B
|
||||||
|
grip_post:
|
||||||
|
ring: DF
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 3
|
||||||
|
- name: "M' pinky flick"
|
||||||
|
move: "M'"
|
||||||
|
# I can't do M' after finishing beido
|
||||||
|
grip_pre:
|
||||||
|
pinky: B
|
||||||
|
grip_post:
|
||||||
|
pinky: F floating
|
||||||
|
grip_pre_blacklist:
|
||||||
|
index:
|
||||||
|
- BL
|
||||||
|
- UF
|
||||||
|
score: 6
|
||||||
|
- name: "M push"
|
||||||
|
move: "M"
|
||||||
|
grip_pre:
|
||||||
|
pinky: F
|
||||||
|
grip_post:
|
||||||
|
pinky: DB
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 5
|
||||||
|
- name: "M index push"
|
||||||
|
move: "M"
|
||||||
|
grip_pre:
|
||||||
|
index: B
|
||||||
|
grip_post:
|
||||||
|
index: UF
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 6
|
||||||
|
- name: "M2 double flick"
|
||||||
|
move: "M2"
|
||||||
|
grip_pre:
|
||||||
|
pinky: B
|
||||||
|
ring: B
|
||||||
|
grip_post:
|
||||||
|
pinky: F floating
|
||||||
|
ring: DB
|
||||||
|
grip_pre_blacklist: {}
|
||||||
|
score: 7
|
||||||
Reference in New Issue
Block a user