本帖最后由 happy886rr 于 2017-7-6 22:57 编辑
回复 8# a2002
厉害,看得出来,你用for取代了很多if,优化了结构。
至于象棋引擎早就有了,它们叫UCCI,只有UCCI才能实现人机对战。单纯批处理根本无法具备象棋智能。
因为象棋还有开局棋谱,很多特殊走法,不是5000行能解决智能算法的。这里只能借助现成的UCCI象棋引擎库,用fen格式去传递当前棋局rnbakabnr/9/1c5c1/p1p1p1p1p/9/9/P1P1P1P1P/1C5C1/9/RNBAKABNR w - - 0 1COPY 有点类似前端的数据交互吧。
毕竟,你要发布的作品应该具备极强的智能,UCCI携带开局棋谱后几乎是必赢的,同样对于五子棋,也有很多引擎,在无禁手的情况下,先下者必赢。毕竟计算机可以准确无误的计算到很多步之后的权值,然后选择最佳的落子方案。
当然借助google的深度学习库tensorflow,可以通过训练,让机器具备人类棋手的经验。不过该库只能运行在64位python上。
还有阿里的Me2都是机器模拟人类思维的极佳方案,但已经涉及到量子计算、脑部扫描等前沿技术。 |