当前位置: 首页 > news >正文

【代数学】置换群的正规子群与猜拳游戏

猜拳策略

在猜拳游戏中,每个置换 σ∈S3\sigma \in S_3σS3 可以解释为一个策略函数:当玩家1出动作 A∈XA \in XAX 时,玩家2出 σ(A)\sigma(A)σ(A)。在人 v.s. 人环境下上述策略属于作弊,但是部分电子游戏就是机器接收到人类的猜拳结果后才给出相应结果的,为了提高玩家的兴趣而设计的,并非必赢策略,而是动态可找规律策略,一旦学得策略可在本时段一直赢,换时段时需要重新学习策略。 输赢规则固定为:

  • 石头赢剪刀(石 > 刀)
  • 剪刀赢布(刀 > 布)
  • 布赢石头(布 > 石)

因此有以下6种策略映射,注意

  1. σ1(石,刀,布)=(石,刀,布)\sigma_1(石,刀,布)=(石,刀,布)σ1(石,刀,布)=(,,) 可视为必平策略
  2. σ2(石,刀,布)=(刀,布,石)\sigma_2(石,刀,布)=(刀,布,石)σ2(石,刀,布)=(,,) 可视为必赢策略
  3. σ3(石,刀,布)=(布,石,刀)\sigma_3(石,刀,布)=(布,石,刀)σ3(石,刀,布)=(,,) 可视为必输策略
  4. σ4(石,刀,布)=(石,布,刀)\sigma_4(石,刀,布)=(石,布,刀)σ4(石,刀,布)=(,,) 可视为平石策略
  5. σ5(石,刀,布)=(布,刀,石)\sigma_5(石,刀,布)=(布,刀,石)σ5(石,刀,布)=(,,) 可视为平刀策略
  6. σ6(石,刀,布)=(刀,石,布)\sigma_6(石,刀,布)=(刀,石,布)σ6(石,刀,布)=(,,) 可视为平布策略

机器策略构成群

观察映射的复合
σ1∘σi=σi∘σ1=σi\sigma_1\circ \sigma_i =\sigma_i\circ \sigma_1=\sigma_iσ1σi=σiσ1=σi, 因此 σ1\sigma_1σ1 就是单位元。

σ1−1=σ1\sigma_1^{-1}=\sigma_1σ11=σ1
σ2−1=σ3\sigma_2^{-1}=\sigma_3σ21=σ3
σ3−1=σ2\sigma_3^{-1}=\sigma_2σ31=σ2
σ4−1=σ4\sigma_4^{-1}=\sigma_4σ41=σ4
σ5−1=σ5\sigma_5^{-1}=\sigma_5σ51=σ5
σ6−1=σ6\sigma_6^{-1}=\sigma_6σ61=σ6

因此每个策略都有其逆元。 结合律显然,因此 S3={σ1,σ2,σ3,σ4,σ5,σ6}S_3=\{\sigma_1,\sigma_2,\sigma_3,\sigma_4,\sigma_5,\sigma_6\}S3={σ1,σ2,σ3,σ4,σ5,σ6} 构成群。

S3S_3S3 正规子群

给定 SSS 的子群 AAA,如果任意 σi∈S\sigma_i\in SσiS 满足 σiA=Aσi\sigma_iA=A\sigma_iσiA=Aσi, 则称 AAASSS 的正规子群。

针对 S3S_3S3 而言 其子群 A3={σ1,σ2,σ3}A_3=\{\sigma_1,\sigma_2,\sigma_3\}A3={σ1,σ2,σ3} 就是一个正规子群, 恰好是必平,必胜,必输策略构成的。 验证 A3A_3A3 是否为 S3S_3S3 的正规子群,我们让 python 来验证。

import numpy as np
import numpy.linalg as ladef pmt_oe(a):# 判断元素 a 是奇置换还是偶置换, 如果是奇置换输出-1, 如果是偶置换输出1m,n=a.shapes=1for i in range(n-1):for j in range(i,n):if a[1,i]> a[1,j]:s=-sc=a[1,i]a[1,i]=a[1,j]a[1,j]=c                return(s)def mult_pmt(a,b):# 置换群的乘法运算m,n=b.shapeif len(a) == len(b):c=np.array(a)for j in range(n):c[0,j]=jd=int(b[1,j])c[1,j]=a[1,d]else: print('error: length a does not equal to length b')return(c)n=3
print(pmt_oe(np.array([[0,1,2],[0,1,2]])))
print(pmt_oe(np.array([[0,1,2],[1,2,0]])))
print(pmt_oe(np.array([[0,1,2],[2,0,1]])))
def L_coset(S,a):  # 计算左陪集 aSlth=len(S)C=[[]]*lthfor j in range(lth):C[j]=mult_pmt(a,S[j])return(C)def R_coset(S,a):  # 计算右陪集 Salth=len(S)C=[[]]*lthfor j in range(lth):C[j]=mult_pmt(S[j],a)return(C)def ele_grp(S,a): # 判断元素a是否在群S中lth=len(S)y=Falsefor i in range(lth):if la.norm(a-S[i],ord='fro')==0:y=Truereturn(y)def is_equal(S1,S2): # 判断集合S1与S2是否相同if not(len(S1)==len(S2)):return(False)else:s=Truelth=len(S1)for i in range(lth):if not ele_grp(S2,S1[i]):s=Falseif not ele_grp(S1,S2[i]):s=Falsereturn(s)def is_abel_vrt(S,G):# 判断 S是否是G的正规子群rt=Truelth=len(G)for i in range(lth):cL=L_coset(S,G[i])cR=R_coset(S,G[i])if not is_equal(cL,cR):rt=Falsereturn(rt)
def quot_grp(S,G):  # 求置换群G的模掉正规子群S的商群lth=len(G)lsh=len(S)qt=[G[0]]for i in range(lth):lqh=len(qt)GL=L_coset(S,G[i])idx=1for j in range(lqh):            qL=L_coset(S,qt[j])if is_equal(GL,qL):idx=0if idx:qt=qt+[G[i]]return(qt)

案例

def pmt_grp(arr,n):v=np.ones([2,n])v[0,:]=np.arange(0,n,1)v[1,:]=np.arange(0,n,1)lth=len(arr)for i in range(lth):if i==lth-1:a=arr[i]b=arr[0]            v[1,a]=belse:                a=arr[i]b=arr[i+1]v[1,a]=b       return(v)
n=3
a0=pmt_grp(np.array([0]),n) 
a1=pmt_grp(np.array([0,1]),n) 
a2=pmt_grp(np.array([0,2]),n) 
a3=pmt_grp(np.array([1,2]),n) 
a4=pmt_grp(np.array([0,1,2]),n) 
a5=pmt_grp(np.array([0,2,1]),n) 
S3=[a0,a1,a2,a3,a4,a5]
S2=[a0,a1]
A3=[a0,a4,a5]CL=L_coset(S2,a2)
CR=R_coset(S2,a2)
print(CL)
print(CR)
print('判断a1是否为CL的元素',ele_grp(CL, a1))
print('判断a2是否为CL的元素',ele_grp(CL, a2))print('观察CL集合与CL集合是否相等', is_equal(CL,CL))
print('观察CL集合与CR集合是否相等', is_equal(CL,CR))
print('观察集合A3是否为S3的正规子群', is_abel_vrt(A3,S3))
print('观察集合S2是否为S3的正规子群', is_abel_vrt(S2,S3))print('求解S3/A3的商群=',quot_grp(A3,S3))

在这里插入图片描述

http://www.dtcms.com/a/558533.html

相关文章:

  • 南京做网站南京乐识权威京东购物网站怎么做
  • 3.5 介质访问控制【2010统考真题】
  • 网站导航条用什么做邢台123最新事件
  • 网站建设模板免费下载万联芯城网站建设
  • 电商网站 性能目标有哪些桂阳网站制作
  • 百度有网站建设吗cn网站
  • 利用选择法对数据排序
  • django网站开发源代码企业画册图片
  • 什么颜色做网站显的大气网站开发流程分为哪三个阶段
  • tomcat启动web项目使用debug,无法进行下一步
  • 网站后台中文模板电话营销网站建设
  • dede模板网站如何搭建网站子目录怎么做的
  • 网站建设需要钱吗网页制作手机版
  • etcd安装与配置完全指南
  • 一个基于深度学习文本分析与格式识别技术开发的不同版本Word文档对比工具
  • 3.4 流量控制与可靠传输机制【2017统考真题】
  • 做外国网用哪些网站广州头条新闻最新
  • 网站建设设计公司类网站织梦模板 带手机端国内公关公司
  • 用老域名重新做个网站广东集团网站建设
  • 在自己网站建立自己的外链主流的网站开发技术有
  • World of Warcraft [CLASSIC] Icecrown Citadel (ICC)12H [Shushia]
  • 网站页面 原则东光做淘宝网站
  • 怎么做pp网站网站开发员纵向发展
  • 如何创作网站与众不同的网站
  • 9.9网站怎么做怎样做企业营销网站
  • 任务计算和计算图优化
  • 郑州网站推广免费网站模版建设
  • gogs 被攻击,数据库 CPU 占用 100%
  • java企业OA自动化办公源码
  • 平凉网站建设redu做网站 图片格式