亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 其他策略——主要變例的獲取.htm

?? 象棋程序設計全資料集(介紹編寫象棋程序的方法思路)
?? HTM
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0056)http://www.elephantbase.net/computer/other_pvcollect.htm -->
<HTML><HEAD><TITLE>其他策略——主要變例的獲取</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb_2312-80">
<META content="MSHTML 6.00.3790.2817" name=GENERATOR></HEAD>
<BODY background=其他策略——主要變例的獲取_files/background.gif>
<DL>
  <DIV align=center>
  <CENTER>
  <DT>《對弈程序基本技術》專題 </CENTER></DT></DIV>
  <DIV align=center>
  <CENTER>
  <DT>  </CENTER></DT></DIV>
  <DIV align=center>
  <CENTER>
  <DT><FONT face=隸書 size=6>獲取主要變例</FONT> </CENTER></DT></DIV>
  <DIV align=center>
  <CENTER>
  <DT>  </CENTER></DT></DIV>
  <DIV align=center>
  <CENTER>
  <DT><FONT face="Times New Roman">Bruce Moreland (</FONT><A 
  href="mailto:brucemo@seanet.com"><FONT 
  face="Times New Roman">brucemo@seanet.com</FONT></A><FONT 
  face="Times New Roman">) / </FONT>文 </CENTER></DT></DIV>
  <DT>  
  <DT><FONT face=楷體_GB2312 size=5><STRONG>要點</STRONG></FONT> 
  <DT>  
  <DT>  經常有人問,如何在搜索完成后提取主要變例。主要變例是程序認為的對雙方來說都是最好的著法線路。它不會由未修改的“<A 
  href="http://www.elephantbase.net/computer/search_alphabeta.htm" 
  target=_blank><FONT 
  face="Times New Roman">Alpha-Beta</FONT>函數</A>”來獲得,所有的<FONT 
  face="Times New Roman">Alpha-Beta</FONT>都只返回數值。 
  <DT>  我們需要做的是對普通的<FONT 
  face="Times New Roman">Alpha-Beta</FONT>搜索作修改,使得它能獲取主要變例。修改的部分用醒目的顏色標出: 
  <DD>  
  <DD><FONT color=#ff0000>typedef struct tagLINE {</FONT> 
  <DD><FONT color=#ff0000> int cmove;       // 路線中著法的數量;</FONT> 
  <DD><FONT color=#ff0000> MOVE argmove[moveMAX]; // 路線。</FONT> 
  <DD><FONT color=#ff0000>} LINE;</FONT> 
  <DD>  
  <DD>int AlphaBeta(int depth, int alpha, int beta<FONT color=#ff0000>, LINE 
  *pline</FONT>) { 
  <DD><FONT color=#ff0000> LINE line;</FONT> 
  <DD> if (depth == 0) { 
  <DD><FONT color=#ff0000>  pline-&gt;cmove = 0;</FONT> 
  <DD>  return Evaluate(); 
  <DD> } 
  <DD> GenerateLegalMoves(); 
  <DD> while (MovesLeft()) { 
  <DD>  MakeNextMove(); 
  <DD>  val = -AlphaBeta(depth - 1, -beta, -alpha<FONT color=#ff0000>, 
  &amp;line</FONT>); 
  <DD>  UnmakeMove(); 
  <DD>  if (val &gt;= beta) { 
  <DD>   return beta; 
  <DD>  } 
  <DD>  if (val &gt; alpha) { 
  <DD>   alpha = val; 
  <DD><FONT color=#ff0000>   pline-&gt;argmove[0] = ThisMove();</FONT> 
  <DD><FONT color=#ff0000>   memcpy(pline-&gt;argmove + 1, line.argmove, 
  line.cmove * sizeof(MOVE));</FONT> 
  <DD><FONT color=#ff0000>   pline-&gt;cmove = line.cmove + 1;</FONT> 
  <DD>  } 
  <DD> } 
  <DD> return alpha; 
  <DD>} 
  <DT>  
  <DT>  這個函數或許效率很低,因為它用到很多的堆棧空間,但是代碼工作起來并不慢。有了這些改動后,如果函數返回<FONT 
  face="Times New Roman">Alpha</FONT>和<FONT 
  face="Times New Roman">Beta</FONT>之間的值,那么它不僅僅返回一個值,還包括能產生這個值的路線<FONT 
  face="Times New Roman">(</FONT>一系列預測的著法<FONT 
  face="Times New Roman">)</FONT>。這對于搜索樹的任何結點都是有效的,包括根結點<FONT 
  face="Times New Roman">(</FONT>它是最值得這么做的<FONT 
  face="Times New Roman">)</FONT>。你可以這么來調用<FONT 
  face="Times New Roman">Alpha-Beta</FONT>: 
  <DD>  
  <DD>val = AlphaBeta(depth, -INFINITY, INFINITY, &amp;line); 
  <DT>  
  <DT>  你得到的是局面的值,以及在“<FONT 
  face="Times New Roman">line</FONT>”這個存儲區里保存的預測路線。“<FONT 
  face="Times New Roman">line</FONT>”的數據結構是一個著法數組,以構成一個路線,另有一個整數來告訴你路線中有多少著法。 
  <DT>  如果你用深度等于零去調用<FONT 
  face="Times New Roman">Alpha-Beta</FONT>,那么這個函數只調用“<FONT 
  face="Times New Roman">Evaluate()</FONT>”并返回它的值。一個著法也沒搜索,因此一個著法也沒選擇,從而和分值一起返回的路線其長度為零。 

  <DT>  如果你用某個深度調用這個搜索函數,那么你可以找到一個著法其值在<FONT 
  face="Times New Roman">Alpha</FONT>和<FONT 
  face="Times New Roman">Beta</FONT>之間,而你得到的不僅僅是分值,而且包括能產生這個值的一系列著法。為了在<FONT 
  face="Times New Roman">Alpha-Beta</FONT>過程中建立路線,你拿出這個搜索到的著法,把它存入傳遞的路線存儲區中<FONT 
  color=#0000ff>【譯注:即函數中的“</FONT><FONT face="Times New Roman" 
  color=#0000ff>*pline</FONT><FONT color=#0000ff>”】</FONT>,并把局部的路線存儲區<FONT 
  color=#0000ff>【即函數中的“</FONT><FONT face="Times New Roman" 
  color=#0000ff>line</FONT><FONT color=#0000ff>”】</FONT>也加到傳遞的存儲區中。 
  <DT>  你可能會問:“既然有傳過來的路線存儲區,為什么又要在每次遞歸的堆棧中新分配一個?”因為你在搜索樹中找到一個局部的線路,那么原來的線路被推翻了,但你不能毀壞已經建立好的線路。如果你找到某個返回值在<FONT 
  face="Times New Roman">Alpha</FONT>和<FONT 
  face="Times New Roman">Beta</FONT>之間的結點,你就認為這個結點在搜索樹的根結點的路線上,這是不對的。有很多零碎的主要變例是被丟棄的。 

  <DT>  讓你們感到驚訝的是,我在循環內用了“<FONT face="Times New Roman">memcpy</FONT>”這個函數<FONT 
  color=#0000ff>【事實上這也是個循環,因此可能會認為它的效率很低】</FONT>,它幾乎不花時間,因為它很少被執行。 
  <DT>  
  <DT><FONT face=楷體_GB2312 size=5><STRONG>另一個思想</STRONG></FONT> 
  <DT>  
  <DT>  另一個一目了然的方法,就是在搜索值返回后,從主置換表中提取主要變例。置換表項中有一個區域存放這局面的最佳著法。由于每個<FONT 
  face="Times New Roman">PV</FONT>結點都有一個值在<FONT 
  face="Times New Roman">Alpha</FONT>和<FONT 
  face="Times New Roman">Beta</FONT>之間,散列項中必定保存著“最佳著法”。 
  <DT>  從置換表中提取主要變例,可以沿著散列項組成的鏈來提取,這就像吃餡餅一樣簡單。 
  <DT>  我知道很多程序<FONT face="Times New Roman">(</FONT>包括一些專業程序<FONT 
  face="Times New Roman">)</FONT>是這樣做的,但是我沒有試過。 
  <DT><FONT 
  color=#0000ff>  【情況可能會比想象中的復雜,因為置換表中的數據會被覆蓋,這樣做就必須選擇合適的覆蓋策略。顯然根結點是不會被覆蓋的</FONT><FONT 
  face="Times New Roman" color=#0000ff>(</FONT><FONT 
  color=#0000ff>它總是最后一個寫入置換表</FONT><FONT face="Times New Roman" 
  color=#0000ff>)</FONT><FONT color=#0000ff>,因此至少能提取出一個著法</FONT><FONT 
  face="Times New Roman" color=#0000ff>(</FONT><FONT 
  color=#0000ff>即程序要走的那步棋</FONT><FONT face="Times New Roman" 
  color=#0000ff>)</FONT><FONT 
  color=#0000ff>,但是后續著法就很難保證了。深度優先的覆蓋策略會比較有利,除此之外,也可以考慮</FONT><FONT 
  face="Times New Roman" color=#0000ff>PV</FONT><FONT 
  color=#0000ff>結點優先的策略,因為</FONT><FONT face="Times New Roman" 
  color=#0000ff>PV</FONT><FONT color=#0000ff>結點的數量比</FONT><FONT 
  face="Times New Roman" color=#0000ff>Alpha</FONT><FONT 
  color=#0000ff>結點和</FONT><FONT face="Times New Roman" 
  color=#0000ff>Beta</FONT><FONT 
  color=#0000ff>結點少得多,所以這個覆蓋策略對置換表不會產生很大的影響。</FONT> 
  <DT><FONT color=#0000ff>  另外,直接從</FONT><FONT face="Times New Roman" 
  color=#0000ff>Alpha-Beta</FONT><FONT 
  color=#0000ff>函數提取的主要變例,會因為置換表的運用而中斷,除非置換表里有一項用來存儲主要變例</FONT><FONT 
  face="Times New Roman" color=#0000ff>(</FONT><FONT 
  color=#0000ff>這不是不可能的,因為</FONT><FONT face="Times New Roman" 
  color=#0000ff>PV</FONT><FONT color=#0000ff>結點的數量非常少</FONT><FONT 
  face="Times New Roman" color=#0000ff>)</FONT><FONT 
  color=#0000ff>。如果要得到完整的主要變例,可以考慮不在置換表中寫入</FONT><FONT face="Times New Roman" 
  color=#0000ff>PV</FONT><FONT color=#0000ff>結點</FONT><FONT 
  face="Times New Roman" color=#0000ff>(</FONT><FONT 
  color=#0000ff>某些程序甚至只在置換表中寫入</FONT><FONT face="Times New Roman" 
  color=#0000ff>Beta</FONT><FONT color=#0000ff>結點</FONT><FONT 
  face="Times New Roman" color=#0000ff>)</FONT><FONT color=#0000ff>。】</FONT> 
  <DT>  
  <DT>  原文:<A href="http://www.seanet.com/~brucemo/topics/pv.htm" 
  target=_blank><FONT 
  face="Times New Roman">http://www.seanet.com/~brucemo/topics/pv.htm</FONT></A> 

  <DT>  譯者:黃晨 <FONT face="Times New Roman">(</FONT><A 
  href="mailto:webmaster@elephantbase.net"><FONT 
  face="Times New Roman">webmaster@elephantbase.net</FONT></A><FONT 
  face="Times New Roman">)</FONT> 
  <DT>  類型:全譯加譯注 </DT></DL>
<DIR>
<LI>上一篇 <A 
href="http://www.elephantbase.net/computer/other_winning.htm">其他策略——勝利局面</A> 
<LI>下一篇 <A 
href="http://www.elephantbase.net/computer/other_repetition.htm">其他策略——重復檢測</A> 
<LI>返 回 <A href="http://www.elephantbase.net/computer.htm">象棋百科全書——電腦象棋</A> 
</LI></DIR>
<DIV align=center>
<CENTER>
<TABLE border=0>
  <TBODY>
  <TR>
    <TD>
      <P align=center><A href="http://www.elephantbase.net/" target=_blank><IMG 
      height=31 src="其他策略——主要變例的獲取_files/elephantbase.gif" width=88 
      border=0></A></P></TD></TR>
  <TR>
    <TD><A href="http://www.elephantbase.net/" target=_blank><FONT face=Arial 
      size=2><STRONG>www.elephantbase.net</STRONG></FONT></A></TD></TR></TBODY></TABLE></CENTER></DIV></BODY></HTML>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产传媒日韩欧美成人| 欧美刺激午夜性久久久久久久| 国产精品一区专区| 韩国毛片一区二区三区| 美女脱光内衣内裤视频久久网站| 视频在线观看一区二区三区| 亚洲国产精品一区二区久久| 亚洲v日本v欧美v久久精品| 亚洲一区二区av电影| 亚洲国产精品一区二区尤物区| 亚洲国产aⅴ成人精品无吗| 亚洲一区二区三区免费视频| 五月婷婷激情综合网| 日韩精品高清不卡| 毛片不卡一区二区| 国产成人一级电影| 99久久99久久精品免费观看| 一本久久a久久精品亚洲| 在线亚洲人成电影网站色www| 欧美三电影在线| 日韩女优av电影| 国产婷婷一区二区| 国产精品久久久久久久第一福利| 一区二区三区四区视频精品免费 | 成人午夜激情在线| av在线综合网| 欧美三级资源在线| 日韩欧美国产精品| 国产精品网站在线| 洋洋av久久久久久久一区| 无吗不卡中文字幕| 国产一区二区三区四区五区入口| 丁香婷婷深情五月亚洲| 色噜噜狠狠成人中文综合| 欧美美女视频在线观看| 久久在线免费观看| 亚洲精品一卡二卡| 久久国内精品自在自线400部| 国产白丝精品91爽爽久久| 色成年激情久久综合| 日韩视频一区二区在线观看| 中文字幕av一区二区三区| 亚洲在线免费播放| 99久久婷婷国产| 色婷婷综合久久久久中文| 日韩欧美精品在线视频| 亚洲同性同志一二三专区| 三级在线观看一区二区| 成人激情视频网站| 欧美男人的天堂一二区| 国产精品免费av| 麻豆91精品视频| 一本一道久久a久久精品综合蜜臀| 日韩欧美一二三| 亚洲精品日韩专区silk| 精品在线免费观看| 欧美午夜电影一区| 中文一区在线播放| 免费成人在线网站| 色综合色狠狠天天综合色| 精品久久久久久久一区二区蜜臀| 亚洲女与黑人做爰| 国产麻豆精品在线| 91精品中文字幕一区二区三区| 国产精品乱码妇女bbbb| 久久精品国产免费看久久精品| 91福利资源站| 国产精品国产三级国产普通话99| 日本在线观看不卡视频| 欧美在线一区二区| 中文字幕在线观看一区| 国产真实乱对白精彩久久| 欧美影院精品一区| 亚洲欧美日韩一区| 国产成人午夜精品影院观看视频 | 国产人成一区二区三区影院| 亚洲a一区二区| 91在线观看污| 欧美激情在线一区二区三区| 久久国产乱子精品免费女| 欧美午夜精品一区二区蜜桃| 中文字幕中文字幕在线一区| 经典三级在线一区| 91精品国产综合久久婷婷香蕉 | 日本aⅴ亚洲精品中文乱码| 色婷婷久久99综合精品jk白丝| 国产精品丝袜在线| 国产精品18久久久久久久网站| 欧美大胆一级视频| 秋霞午夜av一区二区三区| 欧美午夜寂寞影院| 一区二区国产视频| 一本久久a久久精品亚洲| 亚洲视频免费在线观看| 成人午夜电影小说| 国产精品私人自拍| jvid福利写真一区二区三区| 中文字幕一区av| 波多野结衣中文一区| 国产精品毛片久久久久久| 成人午夜在线播放| 成人欧美一区二区三区黑人麻豆| gogo大胆日本视频一区| 国产精品传媒在线| 91女人视频在线观看| 亚洲欧美一区二区三区国产精品 | 久久精品日韩一区二区三区| 狠狠狠色丁香婷婷综合激情| 日韩欧美美女一区二区三区| 久久精品国产澳门| 久久综合九色综合97婷婷女人 | 麻豆精品一区二区综合av| 日韩精品中午字幕| 国产在线播放一区三区四| 26uuu精品一区二区| 国产福利精品一区二区| 国产精品久久久一区麻豆最新章节| 成人国产亚洲欧美成人综合网| 最新日韩av在线| 在线视频欧美精品| 日韩制服丝袜av| 久久一二三国产| 成人激情电影免费在线观看| 亚洲视频香蕉人妖| 欧美日韩中文另类| 久久精品国产99国产精品| 欧美韩国日本综合| 日本丰满少妇一区二区三区| 无码av中文一区二区三区桃花岛| 日韩免费成人网| 成人黄色小视频| 亚洲国产视频在线| 精品国产第一区二区三区观看体验| 国产iv一区二区三区| 亚洲少妇屁股交4| 欧美人体做爰大胆视频| 久久99精品久久久| 亚洲欧美综合另类在线卡通| 欧美电影在线免费观看| 国产美女久久久久| 夜夜亚洲天天久久| 2021国产精品久久精品| 91在线看国产| 麻豆精品一区二区三区| 国产精品久久久久久久久搜平片 | 欧美三级乱人伦电影| 韩国毛片一区二区三区| 综合久久一区二区三区| 91麻豆精品国产91久久久使用方法| 国产精品一区在线观看乱码 | 在线观看视频一区| 国产资源在线一区| 亚洲小说欧美激情另类| 久久久精品免费免费| 欧美日韩一区二区在线观看视频| 精品亚洲成av人在线观看| 亚洲最快最全在线视频| 久久久久国产免费免费| 欧美最新大片在线看| 国产福利一区二区| 热久久国产精品| 久久国内精品视频| 综合在线观看色| 337p粉嫩大胆噜噜噜噜噜91av| 在线一区二区视频| 成人手机在线视频| 蜜臀精品久久久久久蜜臀| 洋洋av久久久久久久一区| 欧美激情在线看| 日韩一区国产二区欧美三区| 在线免费不卡视频| 国产91丝袜在线观看| 久久精品国产一区二区三区免费看| 艳妇臀荡乳欲伦亚洲一区| 国产精品久久777777| 精品久久久久久久一区二区蜜臀| 欧美性受极品xxxx喷水| 91免费观看视频在线| 国产精品911| 韩国理伦片一区二区三区在线播放| 亚洲v精品v日韩v欧美v专区| 亚洲欧美日本在线| 国产精品乱人伦| 国产欧美综合在线| 久久综合九色综合97婷婷女人 | 国产精品亲子伦对白| 精品成人一区二区| 欧美一级黄色片| 777奇米四色成人影色区| 在线精品视频免费播放| 色综合欧美在线视频区| 99久久久精品| www.欧美亚洲| 成人手机在线视频| 成人高清免费观看| 久久久久久久综合| 欧美无砖专区一中文字| 色综合久久久久综合99| 91免费看`日韩一区二区| 成人性视频网站|