博学谷人工智能AI进阶2022最新完结无密

176 阅读1分钟

download:博学谷人工智能AI进阶2022最新完结无密

五子棋AI入门

前言

本文只是引见五子棋AI的完成,最终的废品只是一个 AI 接口,并不包括 GUI,且不依赖 GUI

五子棋 AI 的完成并不难,只需求处理一个问题就行:

笼统

注:局部根底代码依赖于 lombok,请自行引入,或手写根底代码。

落子位置实体类,这里我们定义棋子类型字段:type1表示黑子,2表示白子。

/**
 * 棋子点位
 *
 * @author anlingyi
 * @date 2021/11/10
 */
@AllArgsConstructor
@NoArgsConstructor
@ToString
public class Point {
    /**
     * 横坐标
     */
    int x;
    /**
     * 纵坐标
     */
    int y;
    /**
     * 棋子类型 1.黑 2.白
     */
    int type;
}
复制代码

AI 对外提供的接口,不会依赖任何 GUI 代码,便当其他程序调用。

/**
 * 五子棋AI接口
 *
 * @author anlingyi
 * @date 2021/11/10
 */
public interface AIService {
    /**
     * 获取AI棋位
     *
     * @param chessData 已下棋子数据
     * @param point     对手棋位
     * @param started   能否刚开局
     * @return
     */
    Point getPoint(int[][] chessData, Point point, boolean started);
}
复制代码