资源简介

制作一个五子棋小游戏,实现人机对战,其中电脑在进行极大值极小值搜索时需要运用α-β剪枝算法。五子棋小游戏的核心是电脑端走步的选取,使用的方法是极大极小值搜索,并且题目要求使用α-β剪枝来提高搜索效率;除此,在极大极小值搜索中,需要实现获取下一步可能走的点位以及设计评估函数,评估函数对于电脑能否“智能”地下棋十分关键。
程序整体需要实现先后手的选取,胜负的判断以及显示棋局和相应信息。
运行所需环境:PyCharm 2019.2
语言:python
使用方法:
①点击执行exe后默认玩家为先手,鼠标样式为黑子,可以直接开始下棋
②点击选择AI First按钮将设置玩家为后手,鼠标样式白

资源截图

代码片段和文件信息

import pygame
import pygame.ftfont
from pygame import *
import sys
import button
import random
import re
import copy

colors = {
    “white“: (255 255 255)
    “black“: (0 0 0)
}
r_lines = [
    ((20 20) (20 620))
    ((20 620) (620 620))
    ((20 20) (620 20))
    ((620 20) (620 620))
]
# 棋形匹配
l = [[] for i in range(5)]
l[4] = [“11111“]
l[3] = [“011110“ “211110“]
l[2] = [“11101“ “01110“ “211100“ “2011102“]
l[1] = [“011010“ “11011“ “211010“ “210110“ “11001“ “001100“ “211000“]
l[0] = [“10101“ “01010“ “010010“ “210100“ “210010“ “10001“]
# 棋形与分值索引
values = {
    # 连五
    “11111“: 999900000
    # 活四
    “011110“: 33300000
    # 冲四
    “211110“: 6250000
    “11101“: 6250000
    “11011“: 6250000
    # 活三
    “01110“: 62

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      24926  2020-01-06 14:57  五子棋\5go.py

     文件       4044  2019-12-22 12:33  五子棋\button.py

     文件      24930  2020-01-06 15:09  五子棋\代码.txt

     目录          0  2020-01-07 19:40  五子棋

----------- ---------  ---------- -----  ----

                53900                    4


评论

共有 条评论