![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
加密貨幣新聞文章
Solving a Rubik's Cube with Supervised Learning — Intuitively and Exhaustively Explained
2025/01/10 23:05
Solving a Rubik's Cube with Deep Learning
A step-by-step guide to building a model that can solve a Rubik's Cube
Daniel Warfield
Follow
Towards Data Science
--
Share
In this article we’ll build a deep learning model that can solve a Rubik's Cube. We’ll define our own dataset, make a transformer style model that can learn based on that dataset, and use that model to solve new and randomly shuffled Rubik's Cubes.
In tackling this problem we’ll discuss practical problems which come up frequently in data science, and the techniques data scientists use to solve those problems.
Who is this useful for? Anyone interested in achieving mastery of modern AI.
How advanced is this post? This post covers advanced modeling strategies intuitively, and is appropriate for readers of all levels.
Pre-requisites: There are no prerequisites for this article, though an understanding of transformer style models may be useful for some of the later, code heavy sections.
References: A link to the code and supporting resources can be found in the reference section at the end of this article.
Defining a Rubik's Cube as a Modeling Problem
As you likely know, the Rubik's Cube is a geometric game featuring a 3x3x3 cube with different colored squares on each of its six faces. The goal of the game is to manipulate the cube in order to return it to its original state, with each face displaying a single, uniform color.
We can define a Rubik's Cube in terms of a sequence of moves. Each move corresponds to a 90-degree rotation of one of the cube's six faces. We can represent a move using a single character, where F corresponds to a clockwise rotation of the front face, B corresponds to a clockwise rotation of the back face, L corresponds to a clockwise rotation of the left face, R corresponds to a clockwise rotation of the right face, U corresponds to a clockwise rotation of the upper face, and D corresponds to a clockwise rotation of the lower face.
For example, the sequence of moves "FRUR'D'" corresponds to a clockwise rotation of the front face, followed by a clockwise rotation of the right face, followed by a counter-clockwise rotation of the upper face, and finally followed by a counter-clockwise rotation of the lower face.
We can use this notation to define any possible state of a Rubik's Cube. For example, the starting state of a Rubik's Cube can be represented by the following sequence of moves:
```
UUUUUUUUURRRRRRRRRFFFFFFFFFDDDDDDDDDLLLLLLLLLLBBBBBBBBB
```
This sequence of moves corresponds to the following sequence of rotations:
```
U -> R -> U -> R -> U -> R -> U -> R -> U -> U -> U -> U -> U -> U -> U
```
We can apply this sequence of rotations to a scrambled Rubik's Cube in order to return it to its starting state.
We can now define the modeling problem as follows: given a scrambled Rubik's Cube, we want to predict the sequence of moves that will return the cube to its starting state.
免責聲明:info@kdj.com
所提供的資訊並非交易建議。 kDJ.com對任何基於本文提供的資訊進行的投資不承擔任何責任。加密貨幣波動性較大,建議您充分研究後謹慎投資!
如果您認為本網站使用的內容侵犯了您的版權,請立即聯絡我們(info@kdj.com),我們將及時刪除。
-
-
-
-
-
-
-
- Ruvi AI:經過審核的令牌設置為超出什葉派INU?
- 2025-07-01 03:55:12
- Ruvi AI是下一個大事嗎?側重於公用事業和審核的智能合約,它可以超過加密競賽中的shiba inu嗎?
-
- Bonk的雙底舞:關鍵支持會舉行嗎?
- 2025-07-01 04:00:22
- Bonk正在測試關鍵的支持水平,暗示了潛在的雙底部。公牛會捍衛它,還是熊會控制?
-