(IF rule Tree) 1文法定义与演化方式2Weight的设定3基因函式库4.PPT

(IF rule Tree) 1文法定义与演化方式2Weight的设定3基因函式库4.PPT

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(IF rule Tree) 1文法定义与演化方式2Weight的设定3基因函式库4

五子棋棋略的演化學習法 Introduction 基本演算結構 五子棋策略搜尋樹(IF rule Tree) 1.文法定義與演化方式 2.Weight的設定 3.基因函式庫 4.Crossover 五子棋策略搜尋樹(SWITCH tree) 演化完成後的去蕪存菁 實驗數據 Introduction 利用基因演算法,建立一個能自我學習的五子棋程式 建立系統後,更改以下基因演算法的控制參數,以期找到最佳設定 ◎母體大小(Population Size) ◎交配率(Crossover Rate) ◎突變率(Mutation Rate) ◎適應度函數(Fitness fumction) 基本演算結構 棋盤資料結構:table [size] [size] 0:空位 X,*:各代表其中一方的棋子 評估棋型表:雙方各建立一張棋型表 int computer [size] [size] [4] 0:表直線 1:表橫線 2:表左斜 3:表右斜 例如 computer[4][6][0]=2 computer[4][6][1]=1 computer[4][6][2]=2 computer[4][6][3]=-3 以上即表示在座標(4 , 6)的點,在直方向有己方2子相連,橫方向有1己方子, 左斜方向有己方3 子相連, 右斜方向有己方2 子相連,但其末端有對方子阻擋,所以為負值。 五子棋策略搜尋樹(IF rule Tree) Definition of Functional argument: Definition of Terminal node: SET_WEIGHT : 對棋盤上的一點設定weight L1 : 探測棋盤上一點的四個方向, 存在1 個己方棋子的數目 L2 : 探測棋盤上一點的四個方向, 存在2 相鄰己方棋子的數目 L3 : 探測棋盤上一點的四個方向, 存在3 相鄰己方棋子的數目 L4 : 探測棋盤上一點的四個方向, 存在4 相鄰己方棋子的數目 L5 : 探測棋盤上一點的四個方向, 存在5 相鄰己方棋子的數目 D1 : 探測棋盤上一點的四個方向, 存在1 相鄰己方棋子的數目(末端有 對方的子阻擋) D2 : 探測棋盤上一點的四個方向, 存在2 相鄰己方棋子的數目(末端有 對方的子阻擋) D3 : 探測棋盤上一點的四個方向, 存在3 相鄰己方棋子的數目(末端有對 方的子阻擋) D4 : 探測棋盤上一點的四個方向, 存在4 相鄰己方棋子的數目(末端有 對方的子阻擋) D5 : 探測棋盤上一點的四個方向, 存在5 相鄰己方棋子的數目(末端有 對方的子阻擋) IF rule tree 演化方式: Gene node 的節構定義: class Gene { int symbolic; int type; // function or terminal Gene* child; //只有function node 才有child Gene* next; // child-next 便是其第2 個子結點 . . . . } Weight值設定: 3 維陣列構成了五子棋的基本資料骨架,之後再加入一些輔助評估的weight變數便可以處裡各種棋盤的局勢!!! 。 Integer weight[size][size] //initial all value in array to 0 for( I = 0 to size-1 ) { for( J = 0 to size-1) { for( K = 0 to 4) { switch(computer[I][J][K]) { case 1 weight[I][J]+10 case 2 weight[I][J]+15 case 3 weight[I][J]+40 case 4 weight[I][J]+20000 case -1 weight[I][J]+5 case -2 weight[I][J]+10 case -3 weight[I][J]+35 case -4 weight[I][J]+20000 基因函式庫: 利用偵測無用或多餘的sub espression避免演化後的expression 數量過大造成使用過多的記憶體用量和執行效率減低。

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档