一些笔记自己备忘,魔方最少步数的起点:Thistlethwaite‘s algorithm算法的引理。

本文主要是介绍一些笔记自己备忘,魔方最少步数的起点:Thistlethwaite‘s algorithm算法的引理。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前置:

1. w : 是一个映射,(但是不满足同态性质),类型是:H→ C2^(12), w(g)第i个分量wi表示:

在第i位置的原坐标下,按逆时针计算的方向数为Fi,这个棱块x,经过某{F,B,L,R,U,D}某复合一个操作后,到达了第j位置

在新的第j位置的坐标下,按逆时针计算的方向数Fj,则这两个数之间的关系是:(Fi + wi) 再mod 3 , 就等于 Fj。也就是Fi+wi=Fj (mod 2环境下)

换句话说wi是一个过程量,原位置下计数为Fi,新位置下计数为(Fi+wi) (mod2)。

换句话说,我在未变换前的方向数知道了Fi,然后查表找到这个变换前位置的分量wi,就知道了变换后原方块在新位置的方向数是多少了。

2. v : 是一个映射,(但是不满足同态性质),类型是:H→ C3^(8) , v(g)第i个分量vi表示:

在第i位置的原坐标下,按逆时针计算的方向数为Fi,这个棱块x,经过某{F,B,L,R,U,D}某复合一个操作后,到达了第j位置

在新的第j位置的坐标下,按逆时针计算的方向数Fj,则这两个数之间的关系是:(Fi + vi) 再mod 3 , 就等于 Fj。也就是Fi+vi=Fj (mod 3环境下)

换句话说vi是一个过程量,原位置下计数为Fi,新位置下计数为(Fi+vi) (mod3)。

换句话说,我在未变换前的方向数知道了Fi,然后查表找到这个变换前位置的分量vi,就知道了变换后原方块在新位置的方向数是多少了。

3.v : 不是同态,代表方向 H→ C3^(8)

4.ρ : 是一个同态映射,代表位置 类型是:H→ SV

5.w : 不是同态,代表方向 H→ C2^(12)

6.σ : 是一个同态映射,代表位置 类型是:H→ SE

7. H:是全体魔方状态的集合,不同于魔方群G,群H包括不可还原和可还原的状态。(换句话说,可以拆开魔方,但是不能撕贴纸!)

8.SE :是一个群,里面的元素是12排列代表的向量,代表棱块的位置变换的全体, 由于E代表棱块一共12个,所以SE等价于S12。

9.SV :是一个群,里面的元素是8排列代表的向量,代表角块的位置变换的全体, 由于V代表棱块一共8个,所以SV等价于S8。

命题:

w(gh) := w(g) + σ(g)^(-1)·w(h)

v(gh) := v(g) + ρ(g)^(-1)·v(h)

 

证明:(思路是一般化某个任意分量来做变化,是否成立。再推广到所有分量。)

已知g:{

方向过程量:w(g)= (p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12)

位置过程量:σ(g)

}

已知h:{

方向过程量:w(h)= (q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12)

位置过程量:σ(h)

}

1.先证明第一条公式:

对于某个状态Sta1:

方向绝对量:Sta1 = (j1,j2,j3,j4,j5,j6,j7,j8,j9,j10,j11,j12)

位置绝对量:(k1,k2,k3,k4,k5,k6,k7,k8,k9,k10,k11,k12)

1.经过g作用后:{

方向绝对量错误:(j1+p1,j2+p2,j3+p3,j4+p4,j5+p5,j6+p6,j7+p7,j8+p8,j9+p9,j10+p10,j11+p11,j12+p12)

方向过程量:Sta1 → (Sta1作用g以后) = w(g)

位置:σ(g)·(k1,k2,k3,k4,k5,k6,k7,k8,k9,k10,k11,k12)= ?

方向绝对量 : σ(g)·(j1+p1,j2+p2,j3+p3,j4+p4,j5+p5,j6+p6,j7+p7,j8+p8,j9+p9,j10+p10,j11+p11,j12+p12)

}

2.再经过h作用后:{

方向绝对量:σ(h)( σ(g)·(j1+p1,j2+p2,j3+p3,j4+p4,j5+p5,j6+p6,j7+p7,j8+p8,j9+p9,j10+p10,j11+p11,j12+p12) + (q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12) )

方向过程量:(Sta1作用g以后)→ (Sta1作用g以后,再作用h以后) = ?

位置:σ(h)·σ(g)·(k1,k2,k3,k4,k5,k6,k7,k8,k9,k10,k11,k12)= ?

}

小引理:绝对方向量A1 经过x→, 绝对方向量为A2, 和w(x)有什么关系,如何表达w(x):

σ(x)·(A1 + w(x)) = A2

所以,w(x) = (σ(x))^(-1)·A2 - A1

分析初始方向绝对量和最后2次作用后的方向绝对量,后者是按定义算出来的值。

(j1,j2,j3,j4,j5,j6,j7,j8,j9,j10,j11,j12) = "A1"

σ(h)( σ(g)·(j1+p1,j2+p2,j3+p3,j4+p4,j5+p5,j6+p6,j7+p7,j8+p8,j9+p9,j10+p10,j11+p11,j12+p12) + (q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12) )

= σ(h)·σ(g)·(j1+p1,j2+p2,j3+p3,j4+p4,j5+p5,j6+p6,j7+p7,j8+p8,j9+p9,j10+p10,j11+p11,j12+p12) + σ(h)·(q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12)

= "A2"

所以复合的方向过程量:

w(gh) := (σ(gh))^(-1)·A2 - A1 = (σ(g))^(-1)·σ(h)^(-1) · A2 - A1

= (j1+p1,j2+p2,j3+p3,j4+p4,j5+p5,j6+p6,j7+p7,j8+p8,j9+p9,j10+p10,j11+p11,j12+p12) +

(σ(g))^(-1)·(q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12) - (j1,j2,j3,j4,j5,j6,j7,j8,j9,j10,j11,j12)

= (p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12) + (σ(g))^(-1)·(q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12)

 

试着列举一下:

w(g) = (p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12)

σ(g)·w(h) =  σ(g)·(q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12)

w(g) + σ(g)·w(h) = (p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12) + (σ(g))^(-1)·(q1,q2,q3,q4,q5,q6,q7,q8,q9,q10,q11,q12)

 

举例说明:

g=F,h=R,

经过gh后,

已知:

因为g换位效果是:

{1,2,3,4,5,6,7,8}

{8,2,1,4,3,6,7,5}

因为h换位效果是:

{1,2,3,4,5,6,7,8}

{2,4,1,3,5,6,7,8}

gh复合换位:

{1,2,3,4,5,6,7,8}

{2,4,8,1,3,6,7,5}

v(g) = {2,0,1,0,2,0,0,1}

v(h) = {1,2,2,1,0,0,0,0}

-- 首先根据等式左边算一下,也就是根据定义算一下:

gh变换后绝对位置 =(0先经过g操作:加v(g),然后被ρ(g)作用) = {2,0,1,0,2,0,0,1} = {1,0,2,0,1,0,0,2}

=(经过h操作:加v(h),然后被ρ(h)作用) = {2,2,1,1,1,0,0,2} = {2,1,2,1,1,0,0,2}

v(gh) = (σ(gh))^(-1)·A2 - A1 = ?

这里A1 = 0, A2 = {2,1,2,1,1,0,0,2} ,

σ(gh) = {2,4,8,1,3,6,7,5} ,

σ(gh)^(-1) = {4,1,5,2,8,6,7,3}

v(gh) = {4,1,5,2,8,6,7,3} · {2,1,2,1,1,0,0,2} - 0

= {1,2,1,1,2,0,0,2}!!!对啦!!

-- 下面通过等式右边算一下:

σ(g)(v)(h)= σ(g)·v(h) = 就是按照g的换位来更改这些v(h)中的分量,

= {0,2,1,1,2,0,0,0}

v(g) + σ(g)(v)(h)= σ(g)·v(h) = {2,0,1,0,2,0,0,1} +

{0,2,1,1,2,0,0,0}

=  {2,2,2,1,1,0,0,1}

(σ(g))^(-1)·v(h) = {2,2,0,1,0,0,0,1}

v(g) + (σ(g))^(-1)·v(h) = {2,0,1,0,2,0,0,1} +

{2,2,0,1,0,0,0,1}

= {1,2,1,1,2,0,0,2}!!!对啦!!

 

这篇关于一些笔记自己备忘,魔方最少步数的起点:Thistlethwaite‘s algorithm算法的引理。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/665253

相关文章

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

康拓展开(hash算法中会用到)

康拓展开是一个全排列到一个自然数的双射(也就是某个全排列与某个自然数一一对应) 公式: X=a[n]*(n-1)!+a[n-1]*(n-2)!+...+a[i]*(i-1)!+...+a[1]*0! 其中,a[i]为整数,并且0<=a[i]<i,1<=i<=n。(a[i]在不同应用中的含义不同); 典型应用: 计算当前排列在所有由小到大全排列中的顺序,也就是说求当前排列是第

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

【数据结构】——原来排序算法搞懂这些就行,轻松拿捏

前言:快速排序的实现最重要的是找基准值,下面让我们来了解如何实现找基准值 基准值的注释:在快排的过程中,每一次我们要取一个元素作为枢纽值,以这个数字来将序列划分为两部分。 在此我们采用三数取中法,也就是取左端、中间、右端三个数,然后进行排序,将中间数作为枢纽值。 快速排序实现主框架: //快速排序 void QuickSort(int* arr, int left, int rig

poj 3974 and hdu 3068 最长回文串的O(n)解法(Manacher算法)

求一段字符串中的最长回文串。 因为数据量比较大,用原来的O(n^2)会爆。 小白上的O(n^2)解法代码:TLE啦~ #include<stdio.h>#include<string.h>const int Maxn = 1000000;char s[Maxn];int main(){char e[] = {"END"};while(scanf("%s", s) != EO

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

【学习笔记】 陈强-机器学习-Python-Ch15 人工神经网络(1)sklearn

系列文章目录 监督学习:参数方法 【学习笔记】 陈强-机器学习-Python-Ch4 线性回归 【学习笔记】 陈强-机器学习-Python-Ch5 逻辑回归 【课后题练习】 陈强-机器学习-Python-Ch5 逻辑回归(SAheart.csv) 【学习笔记】 陈强-机器学习-Python-Ch6 多项逻辑回归 【学习笔记 及 课后题练习】 陈强-机器学习-Python-Ch7 判别分析 【学

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

dp算法练习题【8】

不同二叉搜索树 96. 不同的二叉搜索树 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: 输入:n = 3输出:5 示例 2: 输入:n = 1输出:1 class Solution {public int numTrees(int n) {int[] dp = new int