【正文】
機去做那些過去只能靠人的智力才能 做 的 工 作 。 關(guān)鍵詞: 人工智能 ; 計算人機對弈;五子棋 。 J a v a 語 言 易 學(xué) 易 用 , 對 學(xué) 習(xí) 者 掌 握 技 能 , 開 拓 思 維 都 有 很 大 的幫助。 技術(shù)上的可行性 技術(shù)上的可行性分析主要技術(shù)條件是否順利完成開發(fā)工作,硬、軟件是否滿足開發(fā)者的需要等。 東北林業(yè)大學(xué)本科畢業(yè)論文 4 3 JAVA 五子棋對弈現(xiàn) 的需求分析 本系統(tǒng)主要根據(jù)根據(jù)老師提出的要求進行的需求分析: 用戶需求分析 根據(jù)老師提出的要求 ,我們把系統(tǒng)的用戶分為兩類:普通用戶、 系統(tǒng) 管理員用戶,下面是我們對兩種用戶的需求進行的分析: 普通用戶主要需要 根據(jù)分析,普通用戶 具有的功能: ( 1)用戶登錄:用戶根據(jù)自己的密碼登錄本系統(tǒng)。 東北林業(yè)大學(xué)本科畢業(yè)論文 5 ( 4) 悔 棋 功 能 : 在 下 棋 過 程 中 , 用 戶 根 據(jù) 自 己 的 需 求 , 選 擇 悔棋。 名字:用戶每次游戲信息表 描述:用于記錄用戶每次玩游戲的信息。 數(shù) 據(jù) 流 圖 ( 圖 3 3) 如 下 用戶棋局回放 數(shù)據(jù)流圖( DFD) 知道用戶權(quán)限后,通過查詢用戶游戲信息和所有普通用戶信用戶 接受權(quán)限信息 處理信息 用 戶 每 次 游 戲 信 息( U s e r D is h) 產(chǎn)生結(jié)果 用戶 權(quán)限 查詢信息 游戲信息 游戲信息 用 戶 信 息 表( UserInfo) 用戶 接受權(quán)限信息 處理信息 用 戶 每 次 游 戲 信 息( U s e r D is h) 產(chǎn)生結(jié)果 用戶 權(quán)限 查詢信息 游戲信息 游戲信息 圖 3 2 普 通 用 戶 數(shù) 據(jù) 顯 示 數(shù)據(jù)流圖 圖 3 3 管理員用戶數(shù)據(jù)顯示數(shù)據(jù)流圖 東北林業(yè)大學(xué)本科畢業(yè)論文 10 息,顯示用戶游戲信息。 用戶 接受 數(shù)據(jù) 處理信息 用 戶 該 盤 棋 該 步 棋 信 息( UserStep) 產(chǎn)生結(jié)果 用戶 數(shù)據(jù) 查詢信息 游戲信息 游戲信息 圖 3 4 用戶棋局回放數(shù)據(jù)流圖 東北林業(yè)大學(xué)本科畢業(yè)論文 11 五子棋人機對弈 系統(tǒng)的 ER 模型 經(jīng)過對 系統(tǒng)的分析,我們將系統(tǒng)劃分出了 用戶 信息 、 用戶棋局信息、用戶棋盤信息、用戶下棋信息 等 幾 個 實 體 , 其 各 個 實 體 的 屬性如下: 用戶信息:用戶名、用戶密碼、用戶權(quán)限 用戶棋局信息:用戶名、棋局編號、棋局創(chuàng)建時間 用戶棋盤信息:棋局編號、 X 軸坐標(biāo)、 Y 軸坐標(biāo)、棋子狀態(tài) 用戶下棋信息:棋局編號、用戶 X 坐標(biāo)、用戶 Y 坐標(biāo)、電腦 X坐標(biāo)、電腦 Y 坐標(biāo) 本系統(tǒng)的具體 ER 模型 如下 : 棋局 用戶名 棋局編號 創(chuàng)建時間 用戶 用戶名 用戶密碼 用戶權(quán)限 圖 41 用戶 ER圖 圖 42 用戶 棋局ER 圖 東北林業(yè)大學(xué)本科畢業(yè)論文 12 下棋 棋局編號 用戶 Y坐標(biāo) 用戶 X坐標(biāo) 電腦 X坐標(biāo) 電腦 X坐標(biāo) 棋盤 棋局編號 X 軸坐標(biāo) Y 軸坐標(biāo) 棋子狀態(tài) 圖 43 用戶 棋盤ER 圖 圖 44 用戶 棋盤ER 圖 東北林業(yè)大學(xué)本科畢業(yè)論文 13 JAVA 五子棋對弈 系統(tǒng)結(jié)構(gòu)、功能設(shè)計 系統(tǒng)結(jié)構(gòu)設(shè)計 本系統(tǒng)主要針對用戶提出的要求業(yè)務(wù)開發(fā)的系統(tǒng) , 其結(jié)構(gòu)設(shè)計情況如圖 ( 圖 4 6) 所示 : 用戶 用戶密碼 用戶名 用戶權(quán)限 棋局 棋局編號 創(chuàng)建時間 創(chuàng)建 棋盤 X軸坐標(biāo) Y軸坐標(biāo) 棋子狀態(tài) 下棋 屬于 屬于 用戶 X坐標(biāo) 用戶 Y坐標(biāo) 電腦 X坐標(biāo) 電腦 X坐標(biāo) 1 N 1 N 1 1 每 步 棋編號 圖 45 整體 ER圖 東北林業(yè)大學(xué)本科畢業(yè)論文 14 系統(tǒng)功能模塊設(shè)計 該款游戲主要由一下幾個模塊組成 (圖 4 7) : 用戶登錄注冊:在玩五子棋之前,用戶要先登錄游戲,未注冊的用戶應(yīng)該先注冊,如果登錄成功會跳到用戶管理頁面,登錄信息用戶前臺 注冊 登錄 數(shù)據(jù)顯示 五子棋 棋盤回放 悔棋 游戲 五 子 棋游戲 用戶登錄注冊 人機對弈模式 具有悔棋功能 棋局回放功能 圖 47 五子棋功能模塊圖 圖 4 6 系 統(tǒng) 結(jié) 構(gòu)圖 東北林業(yè)大學(xué)本科畢業(yè)論文 15 錯誤會提示密碼用戶名錯誤。 于 下 棋 的 操 作 , 通 過 對 該 層 鼠 標(biāo) 事 件 監(jiān) 聽 器 o nc l i c k, 每 次當(dāng)用戶點擊鼠標(biāo)時,先取得點擊的坐標(biāo)值,然后換算成對應(yīng)棋盤上(即棋盤數(shù)組)的位置(數(shù)組的下標(biāo))。 4. 棋 盤 處 于 鼠 標(biāo) 監(jiān) 聽 狀 態(tài) , 當(dāng) 鼠 標(biāo) 在 棋 盤 上 有 點 擊 操 作 的 時候,程序會獲得鼠標(biāo)點擊的坐標(biāo)然后換算成對應(yīng)的棋盤的位置,再判斷此處是否有棋子,假如沒有,那么在此處畫出對應(yīng)顏色的實心棋子,假如已經(jīng)有棋子了,則提示玩家此處已經(jīng)有棋子請重新下棋。五子棋的名稱:日文亦有“連五子、五子連、串珠、五目、五目碰、五格、五石、五法、五聯(lián)、京棋”等多種稱謂,英文則稱之為 F IR ( F i v e I n A R o w 的縮寫 )、 G o mo k u(日語“五目”的羅馬拼音 )、 G o b a n g、 c o n ne c t mo r p hi o n。 若 白 方 未發(fā)現(xiàn)黑方禁手存在而繼續(xù)應(yīng)子,其后指出黑方禁手不能判黑方負。 11 . 超 過 比 賽 規(guī) 定 所 用 時 間 限 制 , 將 被 判 為 負 : 正 式 比 賽 期 間 ,遲到 時間超過比賽容許時間將被判負。 :對方必須應(yīng)答的著法,如對方形成活三 必 須 阻 止 其 形 成活四。 東北林業(yè)大學(xué)本科畢業(yè)論文 27 :追下取勝以外的取勝 方法,即未利用黑棋禁手戰(zhàn)術(shù)而取勝。 13. 禁手:對局中禁止使用的戰(zhàn)術(shù)或被判為負的行棋手段。既合乎邏輯又出人意料,有使局面頓時改觀的效果,對局勢的發(fā)展及對局的質(zhì)量都有重大影響。 23. 廢著:也稱“空著”。 東北林業(yè)大學(xué)本科畢業(yè)論文 29 6 系統(tǒng)平臺、計算模式及技術(shù) 1) 系統(tǒng)的硬件平臺: 一臺臺式計算機 2) 系統(tǒng)的軟件平臺: Wi nd o w s xp / w i nd o w s 7 IE 瀏覽器等 計算模式的進化及本系統(tǒng)選用的模式優(yōu)越性 回顧計算機的發(fā)展史,計算模式有過三次質(zhì)的飛躍: 集中式管理 —— 主機 /終端模式 通過硬件連線把簡單的終端接到主機上; 所有用戶的擊鍵和光標(biāo)位置傳入主機,所有從主機返回的結(jié)果,顯示在終端屏幕的特定位置; 分時共享模式,所有的程序和數(shù)據(jù)都存儲在大型的主機中(數(shù)據(jù)庫、應(yīng)用程序、通信程序),資源集中控制; 利用主機的能力運行應(yīng)用程序,利用無智能的終端來對應(yīng)用進行控制; Client/Server 模式 在 C l i e nt S e r v e r 模式,應(yīng)用被分為前端(客戶端)和后端(服務(wù)器端); 客戶部分運行在微機或工作站上,而服務(wù)器部分可以運行在從微機到大型機等各種計算機上。 We b 服 務(wù) 器 可 以 根 據(jù) 用 戶 的 請 求 動 態(tài) 更 新 頁 面 上 的 信 息 , We b 信息提供者可以通過改變數(shù)據(jù)庫中的數(shù)據(jù)向用戶提供最新信息,而不需要逐個更改頁面。三層體系結(jié)構(gòu)采用面向 對 象 的 分 析 和 設(shè) 計 模 式 , 將 業(yè) 務(wù) 模 塊 都 封 裝 到 了 業(yè) 務(wù) 類 和 服 務(wù) 類中,所以,如果一個業(yè)務(wù)流程變了,或需要增加一個新的業(yè)務(wù)模塊,只需替換或增加新的業(yè)務(wù)類和服務(wù)類即可。 JSP 技術(shù) JSP 簡介 J S P( J a v a S e r v e r P a ge s)是 一 種 基 于 J a v a 的腳本技術(shù)。We b S p he r e 應(yīng) 用 服 務(wù) 器 對 J S P 文 件 進 行 語 法 分 析 并 生 成 J a v a 源文件(被編譯和執(zhí)行為 S e r v l e t)。調(diào)用的頁面從請求對象中檢索 B e a n, 并用 J S P 來生成客戶機端的 H T ML。服務(wù)器的啟 動 和 關(guān) 閉 決 定 了a p p l i c a ti o n 對象的生命。每個部分有自己的數(shù)據(jù)管理規(guī)則,各個對象之間的通信只能使用自己定義的一個受限連接集合進行。 控制部分定義了應(yīng)用的行為。這 些通常是使用公共網(wǎng)關(guān)接口( C G I( C o mmo n G a te w a y I nte r fa c e ) )應(yīng) 用 程 序 完 成 的 。響應(yīng)內(nèi)容動態(tài) 生成,通常取決于客戶端的請求 服務(wù)器將響應(yīng)返回給客戶端 S e r v l e t 看 起 來 像 是 通 常 的 J a v a 程序。 在傳統(tǒng) 的 C G I 中,每個請求都要啟動一個新的進程,如果 C G I程序本身的執(zhí)行時間較短,啟動進程所需要的開銷很可能反而超過實際執(zhí)行時間。 * 可移植性好 S e r v l e t 用 J a v a 編寫, S e r vl e t A P I 具 有 完 善 的 標(biāo) 準(zhǔn) 。 這 樣 就 增 加 了 速 度 并 提 高 了 靈 活 性 。 易 于 使 用 和 部 署 : M yS Q L 的 結(jié) 構(gòu) 體 系 易 于 定 制 , 而 且 速 度 極 東北林業(yè)大學(xué)本科畢業(yè)論文 39 快。 而 2021 年, SUN 又被 Oracle 收 購 。 例 如 , S e r vl e t 能 夠 直 接 和 We b 服 務(wù) 器 交 互 , 而 普 通 的C G I 程 序 不 能 。 Servlet 優(yōu)勢 J a v a S e r v l e t 與 C G I( C o mmo n G a te w a y I n te r fa c e 公共網(wǎng)關(guān)接口 ) 的比較 : 與傳統(tǒng)的 C G I 和許多其他類似 C G I 的技術(shù)相比, J a v a S e r v l e t 具有更高的效率,更容易使用,功能更強大,具有更好的可移植性,更 節(jié) 省 投 資 。S e r v l e t 的主要功能在于交互式地瀏覽和修改數(shù)據(jù),生成動態(tài) We b 內(nèi)容。 這 個 詞 是 在 J a v a a p p l e t 的環(huán)境中創(chuàng)造的, J a v a a p p l e t 是一種當(dāng)作單獨文件跟網(wǎng)頁一起發(fā)送的小程序,它通常用于在客戶端運行,結(jié)果得到為用戶進行運 算或者根據(jù)用戶互作用定位圖形等服務(wù)。訪問模型的數(shù)據(jù),并且當(dāng)模型的數(shù)據(jù)發(fā)生變化時更新模型的顯示。 用 戶控 制 器視 圖模 型輸 入顯 示 圖 6 4 MVC 模式的基本形式圖 M V C ( Mo d e l Vi e w C o ntr o l l e r )模 式 并 不 是 J 2 E E 行 業(yè) 人 士 標(biāo) 新 立異的。它是 H ttp S e s s i o n 類的實例 . 4 . o ut 對象 o ut 對象是 J s p Wr i te r 類的實例 ,是向客戶端輸出內(nèi)容常用的對象 5 . p a ge 對象 p a ge 對 象 就 是 指 向 當(dāng) 前 J S P 頁面本身,有點象類中的 t hi s 指針,它是 j a v a . l a ng. O b j e c t 類的實例 6 . a p p l i c a ti o n 對象 a p p l i c a ti o n 對象實現(xiàn)了用戶間數(shù)據(jù)的共享,可存放全局變量。 We b S p he r e 應(yīng) 用 服 務(wù) 器 支持 東北林業(yè)大學(xué)本科畢業(yè)論文 33 H t tp S e r v i c e R e q ue s t 對象和 H t tp S e r v i c e R e s p o ns e 對象的一套新方法。圖 6 2 說明了該 J S P 訪問模型。 4 )資源重用性好 由于將業(yè)務(wù)邏輯集中到 We b S e r v e r 統(tǒng)一處理,