• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Java的五子棋博弈平臺(tái)研究*

    2021-04-12 08:41:50曹風(fēng)云趙衛(wèi)華
    關(guān)鍵詞:五子棋落子棋局

    曹風(fēng)云,趙衛(wèi)華

    (1.合肥師范學(xué)院 計(jì)算機(jī)學(xué)院,合肥 230601;2.合肥師范學(xué)院 電子信息系統(tǒng)仿真設(shè)計(jì)安徽省重點(diǎn)實(shí)驗(yàn)室,合肥 230601)

    0 引 言

    針對(duì)當(dāng)前博弈比賽中的五子棋博弈平臺(tái)[1-8]諸多問(wèn)題,為五子棋算法設(shè)計(jì)實(shí)現(xiàn)一個(gè)完善的比賽平臺(tái)、平臺(tái)調(diào)用算法的接口及實(shí)現(xiàn)此接口的五子棋算法引擎。實(shí)現(xiàn)的五子棋算法運(yùn)行平臺(tái)能夠全程在沒(méi)有人工干預(yù)的情況下調(diào)用五子棋算法引擎完成多類別比賽規(guī)則的自動(dòng)對(duì)局。支持指定開(kāi)局、三手交換、五手N打、禁手等規(guī)則,另外具有控制對(duì)局的暫停、繼續(xù)與強(qiáng)制結(jié)束等功能,并附有多步悔棋的功能,同時(shí)開(kāi)啟限時(shí),可以在平臺(tái)界面實(shí)時(shí)顯示棋手單步和單局的耗時(shí),也可以保存和加載平臺(tái)保存的棋局文件恢復(fù)對(duì)局。另外,平臺(tái)具有簡(jiǎn)易的引擎接口函數(shù)并提供對(duì)應(yīng)的API、引擎框架及示例引擎,通過(guò)這些可以極大方便快速編寫出在此平臺(tái)下運(yùn)行的五子棋算法引擎。

    1 博弈平臺(tái)總體設(shè)計(jì)

    采用Java作為平臺(tái)編寫語(yǔ)言,可選Java、C或 C++ 作為算法引擎的編寫語(yǔ)言,采用JavaFX作為平臺(tái)界面的編寫框架,采用Maven作為此項(xiàng)目的構(gòu)建工具。另外,使用dom4j解析引擎配置文件,使用fastjson讀取存儲(chǔ)棋局、平臺(tái)設(shè)置,使用JNA調(diào)用動(dòng)態(tài)鏈接庫(kù)中的函數(shù)。

    設(shè)計(jì)主要分為平臺(tái)、引擎和公共類3部分,引擎可選Java、C或C++作為編寫語(yǔ)言,每個(gè)部分具有一個(gè)獨(dú)立的項(xiàng)目。平臺(tái)部分負(fù)責(zé)選擇對(duì)局引擎、設(shè)置五子棋對(duì)局規(guī)則、發(fā)送規(guī)則至引擎、計(jì)時(shí)、接收與發(fā)送引擎落子、判定引擎落子、控制對(duì)局等,引擎部分需要實(shí)現(xiàn)平臺(tái)調(diào)用引擎的接口,除了平臺(tái)內(nèi)已有的引擎,開(kāi)發(fā)者可以根據(jù)平臺(tái)的接口實(shí)現(xiàn)自己的引擎。引擎根據(jù)平臺(tái)發(fā)送的棋規(guī)及接收平臺(tái)發(fā)送過(guò)來(lái)的對(duì)方的落子或者整個(gè)棋局的所有落子決策出一個(gè)優(yōu)勢(shì)落子作為引擎執(zhí)子方的落子。公共類部分是將平臺(tái)與Java編寫的引擎中存在的都需要或者可以使用的類抽取出來(lái)單獨(dú)作為一個(gè)項(xiàng)目存在,在平臺(tái)及引擎的項(xiàng)目中引入項(xiàng)目作為依賴。這樣既簡(jiǎn)化引擎接口的參數(shù)及返回類型,也方便平臺(tái)直接調(diào)用引擎中的函數(shù),提高了調(diào)用引擎的性能。平臺(tái)架構(gòu)如圖1所示。

    圖1 博弈平臺(tái)架構(gòu)

    2 平臺(tái)主體設(shè)計(jì)

    2.1 平臺(tái)的界面

    界面采用JavaFX作為編寫框架,除棋盤面板外,其他面板均使用fxml來(lái)編寫界面達(dá)到快速編寫界面的目的且方便修改,另外使用CSS來(lái)渲染界面也達(dá)到美化的作用。主界面如圖2所示。

    圖2 平臺(tái)主界面

    平臺(tái)啟動(dòng)時(shí)會(huì)將各面板的。fxml文件加載到內(nèi)存并進(jìn)行唯一一次初始化,任何一個(gè)面板對(duì)應(yīng)的。fxml文件都需要一個(gè)對(duì)應(yīng)的控制類,通過(guò)這個(gè)控制類一方面實(shí)現(xiàn)各個(gè)界面的初始化與控件的調(diào)整和變化,另一方面與整個(gè)平臺(tái)運(yùn)行的邏輯控制類實(shí)現(xiàn)數(shù)據(jù)交互與傳遞。

    棋盤面板不借助fxml來(lái)實(shí)現(xiàn)界面顯示,完全通過(guò)一個(gè)專門的類來(lái)達(dá)到目的。在這個(gè)類中利用JavaFX中的畫布與圖形上下文來(lái)實(shí)現(xiàn)繪制網(wǎng)格和棋子。通過(guò)堆棧來(lái)順序存儲(chǔ)落子,方便實(shí)現(xiàn)撤回操作也方便獲取最后的一個(gè)落子,從而方便在界面中體現(xiàn)棋手的最后一個(gè)落子。

    2.2 對(duì)局的設(shè)計(jì)

    從點(diǎn)擊右面板的“新一局”按鈕到對(duì)局結(jié)束的簡(jiǎn)化流程如下:

    創(chuàng)建雙方棋手對(duì)象

    檢查規(guī)則

    if(時(shí)間限制){

    創(chuàng)建新的計(jì)時(shí)線程計(jì)時(shí)

    while(未超時(shí)){

    時(shí)間累加、更新界面時(shí)間顯示

    }

    to "end step"

    }

    創(chuàng)建新的對(duì)局線程

    if(正式比賽規(guī)則){

    向棋手請(qǐng)求五手N打打點(diǎn)數(shù)、請(qǐng)求開(kāi)局落子

    等待開(kāi)局落子后,向另一個(gè)棋手發(fā)送開(kāi)局落子并

    請(qǐng)求是否進(jìn)行三手交換

    if(交換){

    執(zhí)行交換過(guò)程

    } else {

    請(qǐng)求白四落子

    }

    請(qǐng)求黑五的幾個(gè)落子

    while(黑五落子無(wú)效){

    請(qǐng)求黑五的幾個(gè)落子

    }

    將黑五的所有落子發(fā)送給白手并獲取黑五的實(shí)際落子

    通知黑手黑五實(shí)際落子

    while(未定勝負(fù)){

    輪流向白黑手請(qǐng)茫落子

    while(落子無(wú)效){

    通知棋手棋子無(wú)效、同時(shí)請(qǐng)求新的落子

    }

    }

    } else {

    while(落子總數(shù)<9){

    輪流向黑白手請(qǐng)求落子

    while(落子無(wú)效){

    通知棋手棋子無(wú)效、同時(shí)請(qǐng)求新的落子

    }

    }

    while(未定勝負(fù)){

    向下一個(gè)落子棋手請(qǐng)求落子

    while(落子無(wú)效){

    通知棋手棋子無(wú)效、同時(shí)請(qǐng)求新的落子

    }

    }

    }

    end step: 停止向棋手請(qǐng)求落子、提示結(jié)束本局、保存結(jié)束信息、銷毀相關(guān)對(duì)象等

    點(diǎn)擊“新一局”按鈕后,利用平臺(tái)控制器中的監(jiān)聽(tīng)器通知棋盤面板控制器開(kāi)始新的一局,調(diào)用當(dāng)前對(duì)局狀態(tài)類中相應(yīng)函數(shù)恢復(fù)對(duì)局狀態(tài)類至新的一局初始狀態(tài);調(diào)用棋手庫(kù)類中創(chuàng)建棋手對(duì)象的函數(shù)依據(jù)當(dāng)前選定的黑白手棋手創(chuàng)建對(duì)應(yīng)的棋手對(duì)象;檢查棋規(guī),根據(jù)棋規(guī)決定是調(diào)用引擎中還是由棋手手動(dòng)選擇五手N打數(shù)量及開(kāi)局落子;利用監(jiān)聽(tīng)器通知UI控制器開(kāi)始新的一局,更新界面的一些控件狀態(tài),通過(guò)創(chuàng)建并啟動(dòng)一個(gè)GameThread線程對(duì)象來(lái)不斷進(jìn)行黑白手輪流落子;最后利用log4j輸出開(kāi)始新一局的通知信息。右面板接收到開(kāi)始新的一局的通知時(shí),會(huì)先更新相關(guān)控件的狀態(tài),根據(jù)是否限時(shí)設(shè)置右面板顯示時(shí)間的控件及設(shè)置計(jì)時(shí)類是否工作的標(biāo)志。在GameThread中使用JDK API中的ExecutorService配合Future來(lái)獲取棋手函數(shù)的執(zhí)行結(jié)果。

    2.3 引擎加載與調(diào)用

    平臺(tái)目前可加載實(shí)現(xiàn)平臺(tái)引擎規(guī)范和接口的.jar、.dll、.so文件。其中后兩者通過(guò)C/C++編寫項(xiàng)目并導(dǎo)出成.dll或.so文件,前者是利用Maven將Java引擎項(xiàng)目打包的.jar文件。

    對(duì)于.jar格式引擎,需要一個(gè)專門的Java引擎加載器來(lái)加載并創(chuàng)建對(duì)應(yīng)的引擎對(duì)象。引擎加載器首先獲取.jar文件中保存引擎配置信息文件EngineConfigs.xml的文件輸入流,接著使用dom4j解析文件生成所有的引擎配置信息對(duì)象。因?yàn)橐粋€(gè).jar引擎文件中的EngineConfigs.xml文件可能存儲(chǔ)多個(gè)引擎配置信息,所以一個(gè).jar文件可以被解析出多個(gè)可用的引擎配置信息。使用URLClassLoader類加載器加載引擎配置信息中存儲(chǔ)的引擎入口類并得到對(duì)應(yīng)的Class對(duì)象,并利用此Class對(duì)象和反射創(chuàng)建該引擎入口類的對(duì)象,因?yàn)槠脚_(tái)與引擎的項(xiàng)目都依賴公共類項(xiàng)目定義的棋手基類,所以平臺(tái)可以直接調(diào)用Jar引擎中引擎類的函數(shù)無(wú)需通過(guò)反射進(jìn)行間接調(diào)用。

    對(duì)于動(dòng)態(tài)鏈接庫(kù)格式引擎,規(guī)定動(dòng)態(tài)鏈接庫(kù)文件名必須規(guī)范化將其表示的引擎配置信息體現(xiàn)在其中,平臺(tái)通過(guò)解析文件名生成對(duì)應(yīng)的引擎配置信息,平臺(tái)通過(guò)此配置信息創(chuàng)建DllEngine類來(lái)表示動(dòng)態(tài)鏈接庫(kù)格式的引擎。具體來(lái)說(shuō)需要?jiǎng)?chuàng)建一個(gè)接口繼承com.sun.jna.Library類,在接口中添加動(dòng)態(tài)鏈接庫(kù)中需要被調(diào)用的函數(shù)的聲明,函數(shù)名必須與動(dòng)態(tài)鏈接庫(kù)中被調(diào)用的函數(shù)名完全一致。平臺(tái)調(diào)用DllEngine中接口函數(shù),DllEngine再調(diào)用接口中對(duì)應(yīng)的函數(shù),JNA在底層會(huì)自動(dòng)調(diào)用動(dòng)態(tài)鏈接庫(kù)中相應(yīng)函數(shù)。這樣就實(shí)現(xiàn)平臺(tái)調(diào)用外置C++引擎函數(shù)的目的。

    因?yàn)镴ava與C/C++在數(shù)據(jù)類型上無(wú)法通用,如果平臺(tái)直接把表示棋手落子的對(duì)象作為參數(shù)傳遞給動(dòng)態(tài)鏈接庫(kù)引擎中的函數(shù),函數(shù)是無(wú)法識(shí)別的,導(dǎo)致無(wú)法成功調(diào)用對(duì)應(yīng)函數(shù)的。所以在平臺(tái)內(nèi)和平臺(tái)外都需要對(duì)函數(shù)的參數(shù)類型和執(zhí)行結(jié)果進(jìn)行轉(zhuǎn)化,轉(zhuǎn)化的結(jié)果使兩者都可以識(shí)別,在已發(fā)布的C/C++引擎接口項(xiàng)目中具有相應(yīng)的函數(shù)直接供調(diào)用。上述過(guò)程如圖3所示。

    圖3 平臺(tái)與外置動(dòng)態(tài)鏈接庫(kù)引擎交互

    2.4 引擎框架設(shè)計(jì)

    平臺(tái)內(nèi)外都有一個(gè)實(shí)現(xiàn)引擎接口的引擎框架,在此框架的基礎(chǔ)上,可以減少算法外其他代碼的編寫,縮短編寫算法的時(shí)間,同時(shí)也減少實(shí)現(xiàn)引擎接口函數(shù)的數(shù)量。內(nèi)外引擎中的引擎框架在結(jié)構(gòu)和邏輯上是一樣的。引擎框架的架構(gòu)如圖4所示。

    圖4 引擎框架架構(gòu)

    在架構(gòu)中,BaseEngine預(yù)先實(shí)現(xiàn)好平臺(tái)規(guī)定的接口函數(shù),轉(zhuǎn)而只預(yù)留一個(gè)生成下一步落子的函數(shù)需要繼承BaseEngine的類去手動(dòng)實(shí)現(xiàn)。在自己實(shí)現(xiàn)的引擎類中可以覆蓋BaseEngine中接口函數(shù)中的獲取五手N打打點(diǎn)數(shù)的函數(shù)、獲取開(kāi)局落子的函數(shù)、獲取黑手引擎第五手的所有落子的函數(shù)和決定對(duì)方第五手落子的函數(shù)。BaseAnalyzer負(fù)責(zé)分析棋局產(chǎn)生值得落子、對(duì)我方具有威脅和我方有利的位置。BaseEvaluator負(fù)責(zé)對(duì)棋局上某個(gè)位置和整個(gè)棋局進(jìn)行評(píng)估。PredictedBoard表示預(yù)測(cè)的落子產(chǎn)生的新的棋局。BaseSearch負(fù)責(zé)搜索棋局,并將產(chǎn)生最佳落子發(fā)送給引擎。最后平臺(tái)通過(guò)接口函數(shù)獲取引擎的落子。

    當(dāng)接收到平臺(tái)發(fā)送過(guò)來(lái)的對(duì)方落子,首先根據(jù)存儲(chǔ)的所有落子列表,生成一個(gè)棋局狀態(tài),即BoardState對(duì)象,這個(gè)棋局狀態(tài)除了用一個(gè)二維數(shù)組來(lái)表示當(dāng)前的棋子分布情況,還需要用一個(gè)填滿64位隨機(jī)整數(shù)的三維數(shù)組,三維數(shù)組可看成由2層大小為15×15的二維數(shù)組組成,兩層分別表黑白棋,該數(shù)組就是Zobrist數(shù)組,另外還需要一個(gè)64位隨機(jī)值來(lái)唯一表示當(dāng)前棋局,可稱這隨機(jī)值為當(dāng)前棋局的ID。每下一步棋,則用當(dāng)前ID異或Zobrist數(shù)組里對(duì)應(yīng)位置的隨機(jī)數(shù),得到的結(jié)果即為新的ID。如果是刪除棋子或悔棋,則再異或一次即可。使用過(guò)Zobrist數(shù)組方便后面使用Zobrist緩存。生成棋局后,還需要給將當(dāng)前的棋局發(fā)送給棋盤分析器、估值類及博弈樹(shù)搜索引擎。另外還需要一個(gè)四維數(shù)組表示每個(gè)位置周圍落子情況。因?yàn)榭梢曰诳蚣芑A(chǔ)上實(shí)現(xiàn)的示例引擎,所以引擎中的棋局表示工作在框架中已經(jīng)做好了。

    算法開(kāi)始下子初,首先調(diào)用棋盤分析器分析棋局的形式。從棋盤的[A,1]位置開(kāi)始分析每個(gè)位置周圍的落子來(lái)填充那個(gè)表示每個(gè)位置周圍落子情況的四維數(shù)組,同時(shí),如果位置有落子,分析位置對(duì)我方及對(duì)方的有利及威脅程度,如對(duì)方的活三、沖四等,我方的活四、沖四、活三等。如果滿足條件,將對(duì)應(yīng)棋型的對(duì)策落子添加到一個(gè)列表中,并為之形成的新的預(yù)測(cè)棋局設(shè)置一個(gè)初始估值,分析完棋盤后直接將該列表返回做下一步處理。如果沒(méi)有上述棋型,再接著分析棋局上值得的落子的地方,這些地方首先一定是空位置并且不能離有落子地方太遠(yuǎn),否則要么落子無(wú)效要么落子的意義不是很大還會(huì)增大計(jì)算時(shí)間,只要分析以某個(gè)棋子為中心,周圍2個(gè)棋子范圍內(nèi)的位置即可。

    對(duì)每個(gè)值得分析的位置,需要評(píng)估出該位置的分?jǐn)?shù),等對(duì)棋盤上所有值得的位置做出評(píng)估得到對(duì)應(yīng)分?jǐn)?shù)后,默認(rèn)使用啟發(fā)式搜索,即將它們的評(píng)分從高到低進(jìn)行排序,認(rèn)為分?jǐn)?shù)越高對(duì)我方越有利就越先搜索,但是這個(gè)有利并不是絕對(duì)的。最后將得到的新的順序的落子產(chǎn)生的對(duì)應(yīng)預(yù)測(cè)棋局返回,到這里棋局分析的工作完成。同樣自己實(shí)現(xiàn)的引擎可以直接調(diào)用這一部分的函數(shù),也可以通過(guò)重寫框架中的棋局分析函數(shù)實(shí)現(xiàn)自己的棋局功能。

    2.5 示例引擎設(shè)計(jì)

    平臺(tái)中的默認(rèn)引擎在上述框架的基礎(chǔ)上進(jìn)行編寫的,引擎以廣泛使用的α-β剪枝算法為搜索博弈樹(shù)的基礎(chǔ)算法,并加上迭代加深、啟發(fā)式搜索、Zobrist緩存這些優(yōu)化方法,結(jié)構(gòu)如圖5所示。

    圖5 示例引擎結(jié)構(gòu)

    2.5.1 估 值

    對(duì)棋盤上某個(gè)位置估值時(shí),在分析有利威脅落子的時(shí)候,對(duì)應(yīng)的預(yù)測(cè)棋型根據(jù)產(chǎn)生棋局的棋子是活四、沖四還是活三分別設(shè)置固定的分?jǐn)?shù)。但是在分析值得落子位置時(shí),使用另一種估值的方法。

    方法簡(jiǎn)單來(lái)說(shuō)根據(jù)當(dāng)前被評(píng)估位置某個(gè)方向能形成連五的數(shù)量來(lái)評(píng)估該位置的分?jǐn)?shù)。如圖6所示,當(dāng)前的執(zhí)子顏色是黑色。估值開(kāi)始時(shí),獲取某位置某方向棋子數(shù)組的第i(1 >=i>=5)個(gè)棋子,然后再獲取該棋子后面的j(i+1 <=j<=i+4)棋子,根據(jù)是空位置還是當(dāng)前分析的棋手執(zhí)子顏色,如果是的,對(duì)應(yīng)的計(jì)數(shù)加一,再獲取j+1棋子顏色,重復(fù)上述操作,直到j(luò)+4棋子結(jié)束,如果空位置的數(shù)量和我方顏色為數(shù)量之和為5,則進(jìn)行一次計(jì)分,否則必定有對(duì)方棋子摻雜進(jìn)來(lái)一定無(wú)法構(gòu)成連五,所以不進(jìn)行計(jì)分。再獲取該方向棋子數(shù)i+2棋子,接著重復(fù)上述操作直至第五個(gè)棋子結(jié)束。如果是對(duì)方的棋子顏色,不用再繼續(xù)獲取下一個(gè)棋子,直接獲取方向棋子數(shù)i+2棋子,接著重復(fù)上述操作直至第五個(gè)棋子結(jié)束。

    圖6 估值計(jì)分

    2.5.2 基于啟發(fā)式α-β搜索算法

    α-β剪枝搜索和剪枝與子節(jié)點(diǎn)的排列順序有關(guān)。在MAX層節(jié)點(diǎn)的值是子節(jié)點(diǎn)中的最大值,按節(jié)點(diǎn)值從大到小的順序排列MIN層節(jié)點(diǎn)的話,計(jì)算第一個(gè)MIN層節(jié)點(diǎn)后會(huì)更新其父節(jié)點(diǎn)即MAX層的最大下屆,如果在計(jì)算后面MIN層更新其最小上屆的值比其父節(jié)點(diǎn)MAX層的最大下屆還要小,那么該MIN層后面的節(jié)點(diǎn)就沒(méi)有繼續(xù)搜索下去的必要了,因?yàn)镸IN層最大值都比MAX層的最小值還要小,直接觸發(fā)剪枝,沒(méi)有必要在繼續(xù)搜索下去。同理MAX層按子節(jié)點(diǎn)值從小到大排列也會(huì)有同樣的效果。

    如圖7中,第二層中的B和C節(jié)點(diǎn),按照現(xiàn)在的順序排列,因?yàn)锽節(jié)點(diǎn)的值3比較小,更新父節(jié)點(diǎn)A的最大下屆為3,而節(jié)點(diǎn)C第一個(gè)子節(jié)點(diǎn)的值是6比3大,還要繼續(xù)計(jì)算下一個(gè)子節(jié)點(diǎn)的值,也就是需要完整計(jì)算第二層C節(jié)點(diǎn)的所有子節(jié)點(diǎn)。如果將它們互換位置,因?yàn)榈谝粋€(gè)節(jié)點(diǎn)B的值6比3大,計(jì)算完后更新父節(jié)點(diǎn)A的最小下屆為6,計(jì)算C節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)后更新C節(jié)點(diǎn)的最大下屆為5,比父節(jié)點(diǎn)A的最大下屆還要小,那么C節(jié)點(diǎn)后面的子節(jié)點(diǎn)就沒(méi)有繼續(xù)搜素計(jì)算下去的必要了,觸發(fā)了剪枝。所以,α-β剪枝的效率和節(jié)點(diǎn)排序有很大關(guān)系,如果最優(yōu)的節(jié)點(diǎn)能排在前面,則能大幅提升剪枝效率。

    圖7 α-β剪枝

    但是節(jié)點(diǎn)的值是通過(guò)遞歸計(jì)算出來(lái)的,也就是在之前是無(wú)法精確對(duì)節(jié)點(diǎn)進(jìn)行排序的,對(duì)節(jié)點(diǎn)做出一個(gè)大致的排序。在博弈樹(shù)中,每個(gè)節(jié)點(diǎn)代表一個(gè)預(yù)測(cè)的棋局,節(jié)點(diǎn)的值是該棋局的評(píng)分,所以對(duì)節(jié)點(diǎn)排序時(shí),可以根據(jù)產(chǎn)生棋局的落子的評(píng)分進(jìn)行排序,雖然只是一個(gè)大概的排序,但是會(huì)很好的提升搜索的速度和剪枝的效率。在每次分析完棋局后,首先將值得落子的評(píng)分臨時(shí)設(shè)置為落子對(duì)應(yīng)的預(yù)測(cè)棋局評(píng)分,因?yàn)椴捎秘?fù)極大值的α-β剪枝搜索,所以這里將棋局按照其評(píng)分從大到小進(jìn)行排序得到一個(gè)新的預(yù)測(cè)棋局列表,再將這個(gè)列表送至搜索引擎使用α-β剪枝進(jìn)行搜索。

    3 結(jié) 論

    建立了通用五子棋博弈平臺(tái)。采用Java作為平臺(tái)主體的編寫語(yǔ)言,并附有Java和C/C++編寫的引擎接口。研究結(jié)果表明:

    (1)與現(xiàn)有的博弈平臺(tái)相比,使用者只需將自己編寫的引擎文件拷貝到自動(dòng)被加載的目錄或者通過(guò)平臺(tái)菜單欄中的“加載引擎”按鈕即可實(shí)現(xiàn)加載引擎。

    (2)平臺(tái)即可代替人工全自動(dòng)進(jìn)行五子棋算法間的對(duì)局,且提供調(diào)用引擎的接口和引擎設(shè)計(jì)的參考,及方便快速編寫出自己的五子棋算法引擎,也方便操作。且平臺(tái)完全支持正式五子棋比賽使用的禁手、指定開(kāi)局、三手交換等規(guī)則,在各類計(jì)算機(jī)博弈比賽五子棋賽中也具有較好的實(shí)用性。

    參考文獻(xiàn)(References):

    [1] 李卓軒,李媛,冉冠陽(yáng),等.基于PVS搜索算法的亞馬遜棋博弈系統(tǒng)的設(shè)計(jì)[J].智能計(jì)算機(jī)與應(yīng)用,2018,8(5):92—94

    LI Z X,LI Y,RAN G Y,et al.Amazons Game System Based on PVS Search Algorithm[J].Intelligent Computer and Application,2018,8(5):92—94(in Chinese)

    [2] 郭琴琴,李淑琴,包華.亞馬遜棋機(jī)器博弈系統(tǒng)中評(píng)估函數(shù)的研究[J].計(jì)算機(jī)工程與應(yīng)用,2012,48(34):50—54

    GUO Q Q,LI S Q,BAO H.Research on Evaluation Function Computer Game of Amazon.Computer Engineering and Applications,2012,48(34):50—54(in Chinese)

    [3] 涂智豪.人工智能五子棋系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].廣州:華南理工大學(xué),2016

    TU Z H.System Design and Implementation of Gobang Artificial Intelligence[D].Guangzhou:South China University of Technology,2016(in Chinese)

    [4] 王驕,徐心和.計(jì)算機(jī)博弈:人工智能的前沿領(lǐng)域—全國(guó)大學(xué)生計(jì)算機(jī)博弈大賽[J].計(jì)算機(jī)教育,2012,163(7):14—18

    WANG J,XU X H.Computer Game:The Frontier of Artificial Intelligence:National University Student Computer Game Contest[J].Computer Education,2012,163(7):14—18(in Chinese)

    [5] 張明亮,吳俊,李凡長(zhǎng).五子棋機(jī)器博弈系統(tǒng)評(píng)估函數(shù)的設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用,2012,32(7):1969—1972

    ZHANG M L,WU J,LI F Z.Design of Evaluation-function for Computer Gobang Game System[J].Journal of Computer Applications,2012,32(7):1969—1972(in Chinese)

    [6] 王云霞.智能五子棋博弈算法研究[J].江蘇技術(shù)師范學(xué)院學(xué)報(bào),2013(2):62—66

    WANG Y X.The Algorithm Research of Intelligent Gobang Playgame[J].Journal of Jiangsu Teachers University of Technology,2013(2):62—66(in Chinese)

    [7] 李虎陽(yáng),羅旭,常永虎.基于可信度的多次重復(fù)博弈研究[J].重慶工商大學(xué)學(xué)報(bào)(自然科學(xué)版),2016,33(1):70—72

    LI H Y,LUO X,CHANG Y H.Research on Multiple Repeat Games Based on Credibility[J].Journal of Chongqing Technology and Business University(Natural Science Edition),2016,33(1):70—72(in Chinese)

    [8] 周代平,李康奇,賀琳.誘導(dǎo)信息條件下車輛路徑選擇:基于有限理性模糊博弈[J].重慶工商大學(xué)學(xué)報(bào)(自然科學(xué)版),2015,32(12):31—35

    ZHOU D P,LI K Q,HE L.Research on the Model of Vehicle Routing Choice Based on the Condition of the Bounded Rationality Fuzzy Game with Inducing Information[J].Journal of Chongqing Technology and Business University(Natural Science Edition),2015,32(12):31—35(in Chinese)

    猜你喜歡
    五子棋落子棋局
    Sim Sim
    琴(外一首)
    詩(shī)選刊(2019年8期)2019-08-12 02:29:36
    傳祺海外新棋局
    汽車觀察(2018年10期)2018-11-06 07:05:16
    安凱運(yùn)游棋局
    汽車觀察(2018年9期)2018-10-23 05:46:46
    落子山東,意在全局
    金橋(2018年4期)2018-09-26 02:24:54
    西咸新棋局
    90后羅運(yùn)生:五子棋是我生命的一部分
    金色年華(2016年8期)2016-02-28 01:40:31
    90后唐丹:人生如棋,落子不悔
    金色年華(2016年8期)2016-02-28 01:40:30
    華林 國(guó)際大棋局
    財(cái)政部長(zhǎng)吳波的“五子棋局”
    在线亚洲精品国产二区图片欧美| 日本五十路高清| 久久精品国产a三级三级三级| 宅男免费午夜| 日韩大码丰满熟妇| 国产成人啪精品午夜网站| 黄色毛片三级朝国网站| 婷婷色av中文字幕| 亚洲精品美女久久久久99蜜臀| 亚洲av日韩在线播放| 精品久久久久久电影网| 免费一级毛片在线播放高清视频 | 老司机靠b影院| 久久精品熟女亚洲av麻豆精品| 黄色视频,在线免费观看| 国产黄频视频在线观看| 精品一区二区三区av网在线观看 | 欧美日韩黄片免| 国产免费av片在线观看野外av| 欧美xxⅹ黑人| 一本—道久久a久久精品蜜桃钙片| 男男h啪啪无遮挡| 精品国产超薄肉色丝袜足j| 国产av一区二区精品久久| 亚洲欧美一区二区三区黑人| 欧美另类亚洲清纯唯美| 欧美精品啪啪一区二区三区 | 一区在线观看完整版| 一级毛片电影观看| 亚洲欧美激情在线| 美女高潮喷水抽搐中文字幕| 欧美成狂野欧美在线观看| 伦理电影免费视频| 欧美成人午夜精品| 亚洲国产精品999| 中亚洲国语对白在线视频| 女人精品久久久久毛片| 亚洲av片天天在线观看| 在线观看人妻少妇| 欧美xxⅹ黑人| 久久久精品94久久精品| 人妻人人澡人人爽人人| av线在线观看网站| 中文字幕人妻丝袜制服| 可以免费在线观看a视频的电影网站| 精品卡一卡二卡四卡免费| 久久久久久久大尺度免费视频| 亚洲,欧美精品.| 视频在线观看一区二区三区| 国产精品一区二区免费欧美 | 老司机午夜十八禁免费视频| 夜夜骑夜夜射夜夜干| 亚洲精品一区蜜桃| 亚洲七黄色美女视频| 国产成人欧美在线观看 | 亚洲精品av麻豆狂野| 999久久久精品免费观看国产| 欧美激情 高清一区二区三区| 免费看十八禁软件| 男女高潮啪啪啪动态图| 另类精品久久| videosex国产| 狂野欧美激情性xxxx| 国产亚洲精品一区二区www | 亚洲伊人色综图| 90打野战视频偷拍视频| 久久久久国产一级毛片高清牌| 国产亚洲精品一区二区www | 天天躁狠狠躁夜夜躁狠狠躁| 欧美精品一区二区大全| 久久ye,这里只有精品| 国产日韩欧美视频二区| 欧美老熟妇乱子伦牲交| 亚洲人成电影免费在线| 欧美乱码精品一区二区三区| 天天躁狠狠躁夜夜躁狠狠躁| 男女边摸边吃奶| 多毛熟女@视频| 亚洲精品一卡2卡三卡4卡5卡 | 免费不卡黄色视频| 亚洲一区中文字幕在线| 国产又色又爽无遮挡免| 亚洲熟女精品中文字幕| 色播在线永久视频| 巨乳人妻的诱惑在线观看| 久久精品国产亚洲av高清一级| 777米奇影视久久| 国产老妇伦熟女老妇高清| 男女无遮挡免费网站观看| 国产精品久久久久久人妻精品电影 | 欧美日韩福利视频一区二区| 又黄又粗又硬又大视频| 少妇被粗大的猛进出69影院| 亚洲av国产av综合av卡| 一级毛片精品| 午夜福利视频在线观看免费| 日韩人妻精品一区2区三区| svipshipincom国产片| 亚洲精品第二区| 国产精品国产av在线观看| 日韩大码丰满熟妇| 精品高清国产在线一区| 日韩电影二区| 成年人黄色毛片网站| 亚洲欧美日韩高清在线视频 | 国产精品九九99| 麻豆国产av国片精品| av国产精品久久久久影院| 老司机靠b影院| 日韩熟女老妇一区二区性免费视频| 精品国产一区二区久久| 色婷婷久久久亚洲欧美| 欧美黄色片欧美黄色片| 99久久精品国产亚洲精品| 夜夜骑夜夜射夜夜干| 巨乳人妻的诱惑在线观看| 久久久久久久久久久久大奶| av在线播放精品| 午夜免费成人在线视频| 黄频高清免费视频| 久久ye,这里只有精品| 亚洲精品中文字幕在线视频| 精品久久久久久久毛片微露脸 | 每晚都被弄得嗷嗷叫到高潮| 叶爱在线成人免费视频播放| av一本久久久久| 日韩中文字幕欧美一区二区| 岛国毛片在线播放| 成年女人毛片免费观看观看9 | 亚洲国产中文字幕在线视频| 国产精品国产三级国产专区5o| 99re6热这里在线精品视频| 操出白浆在线播放| 久久久久网色| 亚洲国产日韩一区二区| 自拍欧美九色日韩亚洲蝌蚪91| 曰老女人黄片| 人妻一区二区av| 美女主播在线视频| 五月天丁香电影| 国产精品国产av在线观看| 欧美日韩视频精品一区| 咕卡用的链子| 久久亚洲国产成人精品v| 别揉我奶头~嗯~啊~动态视频 | 满18在线观看网站| 久久久精品94久久精品| 女人被躁到高潮嗷嗷叫费观| 91精品三级在线观看| 免费观看人在逋| 午夜日韩欧美国产| 亚洲欧美精品综合一区二区三区| 亚洲av成人不卡在线观看播放网 | 人妻久久中文字幕网| 欧美日韩国产mv在线观看视频| 动漫黄色视频在线观看| 国产又色又爽无遮挡免| 久久精品亚洲av国产电影网| 青青草视频在线视频观看| 亚洲国产欧美日韩在线播放| 欧美午夜高清在线| 色精品久久人妻99蜜桃| 免费av中文字幕在线| 欧美日韩av久久| 午夜福利乱码中文字幕| 亚洲七黄色美女视频| 国产精品亚洲av一区麻豆| 亚洲国产欧美一区二区综合| 久久人妻福利社区极品人妻图片| 国产国语露脸激情在线看| 天堂8中文在线网| 亚洲欧美日韩另类电影网站| 啦啦啦免费观看视频1| 欧美激情高清一区二区三区| 黄色片一级片一级黄色片| 一区二区三区四区激情视频| 亚洲欧美激情在线| av视频免费观看在线观看| 狠狠狠狠99中文字幕| 少妇人妻久久综合中文| 精品少妇久久久久久888优播| 老熟妇乱子伦视频在线观看 | 亚洲人成77777在线视频| 日韩制服骚丝袜av| 99久久99久久久精品蜜桃| 日韩制服丝袜自拍偷拍| 国产免费现黄频在线看| 18禁黄网站禁片午夜丰满| 亚洲精品av麻豆狂野| 久久久久久久国产电影| 日韩熟女老妇一区二区性免费视频| 精品一区二区三区四区五区乱码| 午夜91福利影院| 欧美精品高潮呻吟av久久| 精品免费久久久久久久清纯 | 美女高潮喷水抽搐中文字幕| 日韩人妻精品一区2区三区| 大码成人一级视频| 高清欧美精品videossex| 国产日韩欧美亚洲二区| 精品久久久久久久毛片微露脸 | 丰满少妇做爰视频| 国产深夜福利视频在线观看| 视频区欧美日本亚洲| 精品国产乱码久久久久久小说| 久久久久久久精品精品| 精品国产超薄肉色丝袜足j| 亚洲,欧美精品.| 国产精品成人在线| 黄片播放在线免费| 一级a爱视频在线免费观看| 亚洲精品国产精品久久久不卡| 成年女人毛片免费观看观看9 | av在线播放精品| 欧美97在线视频| 欧美人与性动交α欧美精品济南到| av电影中文网址| a级片在线免费高清观看视频| 日韩制服骚丝袜av| 美女视频免费永久观看网站| 亚洲av欧美aⅴ国产| 脱女人内裤的视频| 午夜福利乱码中文字幕| 国产一区二区在线观看av| 亚洲欧美日韩另类电影网站| 中文字幕另类日韩欧美亚洲嫩草| 日日爽夜夜爽网站| 另类亚洲欧美激情| 久久久久久亚洲精品国产蜜桃av| 少妇粗大呻吟视频| 母亲3免费完整高清在线观看| 国精品久久久久久国模美| avwww免费| 欧美日韩一级在线毛片| 国产精品一二三区在线看| 国产亚洲精品久久久久5区| 国产精品一区二区在线不卡| 国产淫语在线视频| 首页视频小说图片口味搜索| 成年av动漫网址| 亚洲激情五月婷婷啪啪| 搡老熟女国产l中国老女人| 宅男免费午夜| 免费久久久久久久精品成人欧美视频| 男人舔女人的私密视频| 亚洲美女黄色视频免费看| 人妻人人澡人人爽人人| 日韩熟女老妇一区二区性免费视频| 国产精品 欧美亚洲| av天堂在线播放| a在线观看视频网站| 欧美人与性动交α欧美软件| 色94色欧美一区二区| 中国国产av一级| 国产亚洲精品第一综合不卡| 99久久国产精品久久久| 黄色 视频免费看| 久久久久久久久久久久大奶| 欧美性长视频在线观看| 最近中文字幕2019免费版| 国产日韩一区二区三区精品不卡| 国产成人系列免费观看| 日本vs欧美在线观看视频| 一区二区三区激情视频| 欧美精品人与动牲交sv欧美| 欧美国产精品va在线观看不卡| 亚洲av美国av| 亚洲精品国产色婷婷电影| 日本五十路高清| 国产一区二区三区av在线| 欧美国产精品va在线观看不卡| 美女高潮到喷水免费观看| 久久久久精品国产欧美久久久 | 黄色片一级片一级黄色片| 亚洲熟女毛片儿| 男女免费视频国产| 国产成+人综合+亚洲专区| 91精品三级在线观看| 法律面前人人平等表现在哪些方面 | 欧美精品人与动牲交sv欧美| 亚洲专区字幕在线| 国产成人精品在线电影| 中文字幕av电影在线播放| 国产精品国产av在线观看| 老司机午夜福利在线观看视频 | 亚洲欧美色中文字幕在线| 女警被强在线播放| 三上悠亚av全集在线观看| 国产成人影院久久av| 色老头精品视频在线观看| 成在线人永久免费视频| 久久国产亚洲av麻豆专区| 热99久久久久精品小说推荐| 欧美另类一区| 在线观看免费视频网站a站| 日本vs欧美在线观看视频| 飞空精品影院首页| 欧美日韩视频精品一区| 激情视频va一区二区三区| 欧美精品一区二区大全| 色老头精品视频在线观看| 国产精品av久久久久免费| 一级毛片女人18水好多| 十八禁网站网址无遮挡| 两个人看的免费小视频| 亚洲第一青青草原| 国产高清国产精品国产三级| 日韩视频在线欧美| 国产一区二区三区av在线| 中文字幕精品免费在线观看视频| 国产精品av久久久久免费| 色视频在线一区二区三区| 国产av一区二区精品久久| 精品国产一区二区久久| 九色亚洲精品在线播放| 免费日韩欧美在线观看| 免费观看av网站的网址| 午夜福利影视在线免费观看| 丝袜美腿诱惑在线| 丰满少妇做爰视频| 叶爱在线成人免费视频播放| 人妻人人澡人人爽人人| 最近中文字幕2019免费版| 国产成人免费无遮挡视频| a级片在线免费高清观看视频| 国产成人啪精品午夜网站| 欧美精品高潮呻吟av久久| 国产麻豆69| 国产无遮挡羞羞视频在线观看| 人成视频在线观看免费观看| 不卡av一区二区三区| 国产成人精品在线电影| 王馨瑶露胸无遮挡在线观看| 亚洲av日韩精品久久久久久密| 午夜免费鲁丝| 十八禁网站网址无遮挡| 国产99久久九九免费精品| 精品乱码久久久久久99久播| 久久午夜综合久久蜜桃| 亚洲成人国产一区在线观看| 两个人看的免费小视频| 中文字幕人妻丝袜一区二区| 人人妻人人添人人爽欧美一区卜| 国产伦理片在线播放av一区| 久久人人爽av亚洲精品天堂| 99re6热这里在线精品视频| 青春草亚洲视频在线观看| 日韩精品免费视频一区二区三区| 大码成人一级视频| 精品视频人人做人人爽| 午夜久久久在线观看| 亚洲国产毛片av蜜桃av| 一本色道久久久久久精品综合| 精品人妻一区二区三区麻豆| 两性夫妻黄色片| 黄网站色视频无遮挡免费观看| 久久精品成人免费网站| 天堂俺去俺来也www色官网| 电影成人av| 欧美日韩精品网址| 免费看十八禁软件| 一级黄色大片毛片| 1024视频免费在线观看| 一二三四在线观看免费中文在| av网站免费在线观看视频| 美女国产高潮福利片在线看| 母亲3免费完整高清在线观看| 亚洲一区中文字幕在线| 最近最新免费中文字幕在线| 国产视频一区二区在线看| 啪啪无遮挡十八禁网站| 九色亚洲精品在线播放| 亚洲精品久久久久久婷婷小说| 国产精品免费视频内射| 欧美日韩成人在线一区二区| 婷婷色av中文字幕| 国产欧美日韩综合在线一区二区| 亚洲专区中文字幕在线| 国产一区二区在线观看av| 久久精品国产a三级三级三级| 亚洲欧美成人综合另类久久久| 18禁观看日本| 久久精品久久久久久噜噜老黄| 18禁观看日本| 亚洲av男天堂| 精品亚洲乱码少妇综合久久| 首页视频小说图片口味搜索| 青春草视频在线免费观看| 久久久久视频综合| 美女午夜性视频免费| 色综合欧美亚洲国产小说| 精品国产一区二区三区四区第35| 免费av中文字幕在线| 久久久欧美国产精品| 亚洲欧洲精品一区二区精品久久久| 亚洲视频免费观看视频| 久久久久久久精品精品| 久久精品人人爽人人爽视色| 欧美日韩国产mv在线观看视频| 久久国产精品大桥未久av| 午夜91福利影院| 中文字幕另类日韩欧美亚洲嫩草| 美女国产高潮福利片在线看| 中亚洲国语对白在线视频| 秋霞在线观看毛片| 久久久国产成人免费| 999久久久国产精品视频| 精品国产一区二区久久| 国产一区有黄有色的免费视频| 老司机午夜福利在线观看视频 | 美女高潮喷水抽搐中文字幕| 精品国产乱子伦一区二区三区 | 亚洲va日本ⅴa欧美va伊人久久 | 中文字幕精品免费在线观看视频| 欧美变态另类bdsm刘玥| 各种免费的搞黄视频| 日韩视频在线欧美| 国产成人啪精品午夜网站| 久久久欧美国产精品| 一级毛片电影观看| 午夜影院在线不卡| 亚洲国产av新网站| 99国产精品一区二区三区| 亚洲熟女毛片儿| 天堂中文最新版在线下载| 国产在视频线精品| 成年动漫av网址| 国产区一区二久久| 老司机靠b影院| 青草久久国产| 亚洲中文字幕日韩| 中亚洲国语对白在线视频| 日韩免费高清中文字幕av| 人人妻人人澡人人爽人人夜夜| 91老司机精品| 国产又色又爽无遮挡免| 男人操女人黄网站| 自拍欧美九色日韩亚洲蝌蚪91| 精品亚洲成a人片在线观看| 色婷婷av一区二区三区视频| 国产精品影院久久| 日本一区二区免费在线视频| 999久久久精品免费观看国产| 免费看十八禁软件| 国产精品1区2区在线观看. | 91国产中文字幕| 欧美 亚洲 国产 日韩一| 美女高潮到喷水免费观看| 久久人人爽av亚洲精品天堂| avwww免费| 日韩大片免费观看网站| 老熟女久久久| 中文字幕人妻熟女乱码| 韩国高清视频一区二区三区| 纵有疾风起免费观看全集完整版| 一区二区三区乱码不卡18| 日韩熟女老妇一区二区性免费视频| 久久人人爽av亚洲精品天堂| 一区二区日韩欧美中文字幕| 在线av久久热| 99国产极品粉嫩在线观看| 最黄视频免费看| 一区二区三区激情视频| 国产精品 国内视频| 色婷婷久久久亚洲欧美| 狠狠婷婷综合久久久久久88av| 看免费av毛片| 成年人免费黄色播放视频| 国产成人免费无遮挡视频| 久久久水蜜桃国产精品网| 久久国产精品人妻蜜桃| 亚洲av日韩精品久久久久久密| 亚洲欧美清纯卡通| a级毛片在线看网站| 国产精品久久久久久精品古装| 久久这里只有精品19| 一个人免费看片子| 久久久精品94久久精品| 国产欧美亚洲国产| 色婷婷久久久亚洲欧美| 欧美精品一区二区免费开放| 男女午夜视频在线观看| 久久久精品94久久精品| 五月开心婷婷网| 欧美国产精品va在线观看不卡| 国产成人影院久久av| 999久久久国产精品视频| 可以免费在线观看a视频的电影网站| 少妇被粗大的猛进出69影院| 国产免费视频播放在线视频| 日本五十路高清| 亚洲第一欧美日韩一区二区三区 | 欧美日本中文国产一区发布| 女人爽到高潮嗷嗷叫在线视频| 日韩人妻精品一区2区三区| 欧美亚洲日本最大视频资源| 亚洲精品乱久久久久久| 亚洲国产精品999| 9191精品国产免费久久| 欧美精品人与动牲交sv欧美| 午夜视频精品福利| 欧美黄色淫秽网站| a级片在线免费高清观看视频| 国产成人a∨麻豆精品| 国产成人精品久久二区二区91| 精品国产超薄肉色丝袜足j| 亚洲伊人久久精品综合| 日韩欧美一区视频在线观看| 黄色毛片三级朝国网站| cao死你这个sao货| 免费在线观看影片大全网站| 欧美一级毛片孕妇| 国产欧美日韩精品亚洲av| 欧美人与性动交α欧美软件| 国产精品偷伦视频观看了| av天堂在线播放| 久久久精品94久久精品| 午夜福利免费观看在线| 热99国产精品久久久久久7| 日韩大码丰满熟妇| av在线app专区| 国产精品 欧美亚洲| 国产精品.久久久| 老熟妇乱子伦视频在线观看 | 国产视频一区二区在线看| 久久这里只有精品19| 人妻 亚洲 视频| 免费一级毛片在线播放高清视频 | 人妻久久中文字幕网| 日韩欧美一区二区三区在线观看 | 日本vs欧美在线观看视频| 国产精品久久久人人做人人爽| 少妇猛男粗大的猛烈进出视频| 精品福利永久在线观看| 亚洲全国av大片| 午夜久久久在线观看| av有码第一页| 97人妻天天添夜夜摸| 国产国语露脸激情在线看| avwww免费| 国产免费视频播放在线视频| 啪啪无遮挡十八禁网站| 自线自在国产av| 黑人猛操日本美女一级片| 成人免费观看视频高清| 亚洲专区国产一区二区| 国产成人一区二区三区免费视频网站| av视频免费观看在线观看| 色播在线永久视频| a在线观看视频网站| 精品亚洲成国产av| 搡老乐熟女国产| 国产av精品麻豆| 黑人巨大精品欧美一区二区mp4| 日韩一卡2卡3卡4卡2021年| 国产不卡av网站在线观看| 久久精品国产综合久久久| 免费高清在线观看视频在线观看| 久久久国产欧美日韩av| 高潮久久久久久久久久久不卡| 男女免费视频国产| 三上悠亚av全集在线观看| 国产精品欧美亚洲77777| 午夜福利在线免费观看网站| 日韩一区二区三区影片| e午夜精品久久久久久久| 蜜桃在线观看..| 一本大道久久a久久精品| 国产欧美日韩一区二区精品| 一区福利在线观看| 久久 成人 亚洲| 免费看十八禁软件| 久久久国产欧美日韩av| xxxhd国产人妻xxx| 欧美精品一区二区大全| 国产精品影院久久| 9色porny在线观看| 天堂中文最新版在线下载| 国产高清视频在线播放一区 | 亚洲精品国产精品久久久不卡| 水蜜桃什么品种好| 免费不卡黄色视频| 99re6热这里在线精品视频| 色老头精品视频在线观看| 国产成人av教育| 宅男免费午夜| 在线十欧美十亚洲十日本专区| 69精品国产乱码久久久| 国产av一区二区精品久久| 一区二区三区乱码不卡18| 波多野结衣一区麻豆| av欧美777| 99九九在线精品视频| 香蕉国产在线看| 在线观看一区二区三区激情| 一级毛片精品| 亚洲精品久久久久久婷婷小说| 国产精品久久久av美女十八| 啦啦啦在线免费观看视频4| 国产精品 国内视频| 国产野战对白在线观看| 国产99久久九九免费精品| 麻豆av在线久日| 国产在线观看jvid| 黄色毛片三级朝国网站| 欧美日韩成人在线一区二区| 欧美在线黄色| 热re99久久国产66热| 久久九九热精品免费| 啦啦啦免费观看视频1| 丝袜美足系列| 如日韩欧美国产精品一区二区三区| 日韩精品免费视频一区二区三区| 黑人操中国人逼视频| 麻豆国产av国片精品|