以围棋来说,人工智能程序跟通常程序差异在哪里

  在说围棋之前,先说说象棋(国际象棋与中国象棋一样道理)。

  国际象棋是8x8,双方各有16个棋子,而这些棋子有各种规则.所以每次计算,计算量是有限的.因为可以通过if深入计算很多步。1990年代都可以打败人类,以现在的性能可以讲,人类顶级棋手根本没有取胜的可能。

  这个办法如果用来开发围棋,就面临着很大的麻烦。围棋是19x19,这数量太庞大;更麻烦的是,棋子是完全平等的,没有这样那样的限制,可以放在棋盘上任何没棋子的地方(不考虑极特殊情况)。一步是(19x19),两步是(19x19)x(19x18),三步(19x19)x(19x18)x(19x17)...重复一个规则,棋子是完全平等的,可以放在棋盘上任何没棋子的地方。这计算量就太吓人了。大到什么程度?据说计算时间超过宇宙年龄多少倍。

  当然了,通过反复总结、改进,传统算法的围棋程序,还是很厉害的,对付吾这种不入门的不在话下。一面对职业棋手,根本没有胜算。为什么呢?因为规则导致的计算量太大,而棋手长期训练的直觉,节省了大量的计算。如果是5x5,相信电脑可以必胜。

  后来,GOOGLE使用了人工智能算法。人工智能算法,跟普通的有何不同?简化一下,就是通过大量棋谱的学习,得到不同情况下的每个位置权重。根据这些权重,模型计算当前盘面形势,下在哪个位置最好。这样跟以前的if判断,完全不一样,从而确实能够省去大量的多层计算了。

  实际效果怎样?完全秒杀人类棋手。比如AlphaGo的升级版本Master,快棋全胜,而且每一局都是有明显优势。有的棋手建议从让二子棋开始下。

  那么,人工智能有没有缺点?还是有的。

猜你喜欢

转载自blog.csdn.net/quantum7/article/details/88359033