回覆列表
  • 1 # 雁塔菜農

    菜農不到6歲就開始下中國象棋,學過了很多古譜,還有楊官磷和胡榮華等特大的經典實戰對局棋譜。

    故對如何讓外華人記憶中國象棋棋譜和計算機如何編碼非常感興趣。

    在1981年就研究出了中國象棋數字編碼方案,

    並在1983年用basic語言編寫了雙人下棋的棋盤並可以在電腦上兩人對局,還可以判行棋規則,違例就不允許走,並打出警告。

    菜農的數字象棋編碼非常好記:

    1.棋子名稱:

    車1,馬2,相(象)3,士4,帥(將)5,兵(卒)7,炮8。

    2.行棋規則:

    (前)進6,(後)退9,平0。

    棋子名就是棋子所在的縱線位置。

    行棋規則更好記。

    6的“小尖尖”指向“前”或“進”

    9的“小尖尖”指向“後”或“退”

    0無“小尖尖”,不能前進後退,肯定是橫著走,故為“平”也!!!

    那時還沒有滑鼠,故雙方用大小鍵盤(純數字鍵),每一步按棋規(棋譜)敲四個數字。

    棋譜的每一步為四個數字,它可以拼接為兩個位元組,並以BCD碼儲存。

    數字的範圍從1102(車一平二)到9898(後炮退八),儲存為大端格式的0x1102到0x9898。

    每個軟體可能都有自己認為的最佳的棋譜儲存格式及方案。

    菜農編寫了可以把電腦當下棋工具後,第一個想法就是它不能與人下棋,只能人對人下棋,非常遺憾。

    這就是菜農在1983年就開始編寫象棋軟體的想法,目前吃香的叫法就是“人工智慧AI”。

    當時的設計是開始搜尋象棋特大們的精彩實戰對局和古譜,對比後選擇最佳招法,若找不到或不理想時,啟用“作戰模型”,它可以自主根據“最佳點”或稱為“急所”,選擇出一個至少不敗或不失先手的招法。

    由於菜農是個人行為,故不可能完成如此巨大的軟體工程,但可以認為菜農也曾是“人工智慧AI”的“先驅”……

    菜農目前下棋就是利用了計算機程式設計的思維下棋,行棋運算速度奇快,讓很多棋友都感覺60歲的菜農反應速度太快了……

    但是計算機的類似二叉樹的神經搜尋網路,是人類大腦無法達到的,雖然人的大腦可以創造出人工智慧,但人類棋手是永遠不可能戰勝象棋軟體的。

    下面幾張圖片是我當年的“手稿”……

  • 2 # 竹林棋苑

    人類棋手幾乎不可能戰勝象棋軟體的原因,我認為有以下三個方面:

    人類有情而電腦無情

    人有七情六慾,即使修養再好的人也會有情緒變化,心裡會產生波動,所以難免會犯錯。而象棋軟體不受情感困擾,它始終冷靜客觀地計算、分析著實時盤面,永遠不會累,基本上不會犯錯。

    棋諺:走錯一步,滿盤皆輸。一個容易犯錯,一個從不犯錯,結果可想而知。在這一層面,象棋軟體完勝。

    象棋軟體計算力強大

    象棋歸根到底還是以計算為主的遊戲,人類的計算力和電腦的計算力相比,根本就不在一個檔次上。人類和象棋軟體對弈,就好比人徒步跟汽車比誰跑得快,比誰跑的遠,贏不了是理所當然的事。

    人類計算慢而且不全面,而象棋軟體計算又快又周全,這一層面,又是軟體完勝。

    象棋軟體是人類智慧的結晶

    開發電腦軟體,需要一個優秀的團隊通力合作,不是一件容易的事。程式設計者不斷改進引擎演算法,使現在的象棋軟體日趨科學化,幾乎變得無懈可擊;再加上他們請專業人員不斷製作、更新開局庫,把流行的、先進的佈局全部輸進了軟體裡,這樣象棋軟體的開中殘局都有了保證。

    人類棋手畢竟都有自己的短板,和軟體下,就好像一個人和一個軍團在作戰,還有勝機嗎?在這一層面上,還是象棋軟體完勝。

    人類發明象棋軟體的目的是為了輔助人類探索棋藝的奧妙,為人所用。當然也可以找一些棋力比較弱的軟體來練手,下面發一則先手勝象棋巫師(大師級)的對局。

  • 3 # 奇襲象棋與兵法

    這個問題不是有人說,是都在說,還是現實情況。人類棋手打不過軟體已經是定論。

    目前,最先進的棋軟是阿爾法零,它是隻根據規則要求,自我對弈,很短的時間自學掌握大量棋局,戰勝以前任何頂級軟體,人類棋手更是不在話下。

    這種高階軟體的對弈實質是,幾乎窮舉了棋的下法,選擇最正確的彼此對應。就是不管你如何走,都有最正確的著法等著你。因為,電腦早已有幾十層的計算。

    象棋、圍棋、國際象棋……這樣的完全(完美)資訊博弈,人類敗北是必然結果,因為人類大腦的進化是不完全資訊環境,它最適應的是不完全資訊環境。

  • 中秋節和大豐收的關聯?
  • 網上對於電影的噴真正意味著電影爛呢?