魔方吧·中文魔方俱乐部

 找回密码
 注册
搜索
热搜: 魔方
楼主: aubell
打印 上一主题 下一主题

讨论:魔方状态的最小表示方法 [复制链接]

Rank: 4

积分
1843
帖子
1468
精华
1
UID
79281
性别

四年元老

11#
发表于 2010-5-1 23:24:02 |只看该作者
不过这个48同态用起来不知道怎么样。
对于一些自同够(感觉叫同构合理些),例如对称棋盘的状态,不管怎么用旋转,镜像,取逆,都是它本身,这样就是在压缩后还是占1种状态。而对于一些不具有对称性的状态,96种可以压缩到一种。
实际操作起来应该很复杂。

这点在OLL,PLL中也能够体现出来。

使用道具 举报

红魔

All Blue

Rank: 4

积分
1196
帖子
999
精华
2
UID
38845
性别
12#
发表于 2011-5-26 20:30:17 |只看该作者
我不是很懂优化,但我会以打乱步骤表示状态。
公式D F2 U L2 U B2 U R2 U R' F2 R L U L' R' U R L' U L U L U2 L' U' L U2 L'
数列11121131221231321332223233311

使用道具 举报

Rank: 1

积分
48
帖子
16
精华
1
UID
107440
性别
保密
13#
发表于 2011-6-27 21:18:48 |只看该作者

实战经验

我的魔方还原软件用了6个Int32来表示,每个Int32表示一个面:每个面有8个可动的块,每个色块可以有6种颜色,因此4位表示一个色块的颜色。这样都是半字节,处理起来很快速,所以我用穷举能够非常快速地搜索。
http://www.telossoft.com.cn/OtherRubikCube.aspx

对于4阶魔方我也考虑过了,可以用6个Int64表示,同样每个色块半字节。
4阶魔方旋转估计需要通过查表处理,3阶我通过位运算在处理。

使用道具 举报

铜魔

QQ群打乱机器人

Rank: 8Rank: 8

积分
24444
帖子
678
精华
0
UID
99999
性别
保密

两年元老

14#
发表于 2011-6-28 15:59:11 |只看该作者

回复 13# 的帖子

是否考虑过预处理?

另外你的非常快速。。有多快?
我也开网店了= =囧shop61450023.taobao.com

使用道具 举报

Rank: 1

积分
48
帖子
16
精华
1
UID
107440
性别
保密
15#
发表于 2011-7-7 22:04:15 |只看该作者

熵的概念

单纯讨论最少多少位能记录魔方的所有状态是没有任何意义, 关于熵信息论有全套的计算公式

使用道具 举报

Rank: 4

积分
1022
帖子
801
精华
0
UID
1278144
性别
16#
发表于 2011-7-7 22:18:37 |只看该作者
看不懂啊...我还以为讨论魔方的最少状态呢
高考要加油~~

使用道具 举报

铜魔

QQ群打乱机器人

Rank: 8Rank: 8

积分
24444
帖子
678
精华
0
UID
99999
性别
保密

两年元老

17#
发表于 2011-7-7 22:19:15 |只看该作者

回复 15# 的帖子

请教楼上,你说的你的软件计算速度极快,有多快,每秒可以搜索到多少个状态?
我也开网店了= =囧shop61450023.taobao.com

使用道具 举报

Rank: 1

积分
48
帖子
16
精华
1
UID
107440
性别
保密
18#
发表于 2011-7-8 09:46:40 |只看该作者

回17楼

去我网站上下一个跑下就晓得了,PC机上可以搜索到千万级别,你也可以下载源代码,设置为.net 4.0性能又可以提高50%,如果平台设为Intel 64能够搜索更多节点。通常得到的解在30步以内,三分钟以内搜到,和参数设置相关,单纯追求快速,可以在数秒内得到解,只是这时质量比较差,50步左右

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|魔方吧·中文魔方俱乐部

GMT+8, 2024-11-22 00:33

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部