cli
AlphaCubeソルバーのコマンドラインインターフェース。
このモジュールは、コマンドラインユーティリティのエントリーポイントを提供し、ユーザーがターミナルから直接ルービックキューブを解くことを可能にします。モデル選択、スクランブル入力、探索パラメータ、詳細出力などの引数を解析し、コアソルバーを呼び出して結果を出力します。
main
def main()
AlphaCubeを使用してルービックキューブを解くためのコマンドラインユーティリティ。
引数:
--model_id
/-m
(str): 解法に使用する特定のモデルを選択します(デフォルト: CPUでは'small'、それ以外ではlarge
。他にbase
も選択可能です)。--format
/-f
(str): 入力形式を'moves'または'stickers'で指定します。--scramble
/-s
(str): キューブの初期状態を、手順のシーケンスまたは文字列化されたJSON辞書で定義します。--beam_width
/-bw
(int): 探索のビーム幅を設定します(デフォルト: 1024)。--extra_depths
/-ex
(int): 追加の探索深度を指定します(デフォルト: 0)。--verbose
/-v
: デバッグと進捗追跡のために詳細な出力を有効にします。
戻り値:
None
使用例:
構文
alphacube [--model_id MODEL_ID] [--format FORMAT] [--scramble SCRAMBLE]
[--beam_width BEAM_WIDTH] [--extra_depths EXTRA_DEPTHS]
1. デフォルト設定でキューブを解く
alphacube --scramble "R U R' U'"
2. カスタム設定でキューブを解く
alphacube --model_id large --beam_width 128 --extra_depths 2 \
--scramble "R U2 F' R2 B R' U' L B2 D' U2 R F L"
3. ステッカー表現を使用してキューブをD解く
alphacube --format stickers \
--scramble '{ \
"U": [0, 0, 5, 5, 0, 5, 5, 4, 0], \
"D": [1, 3, 3, 4, 1, 1, 4, 1, 3], \
"L": [4, 5, 1, 0, 2, 2, 0, 1, 4], \
"R": [5, 2, 0, 2, 3, 3, 2, 0, 2], \
"F": [4, 3, 2, 4, 5, 1, 1, 4, 3], \
"B": [1, 5, 5, 0, 4, 3, 3, 2, 2] \
}' \
--beam_width 64