五子棋ai(JavaScript)

图片发自简书App

ai

在web上用canvas实现。

查看代码

代码链接地址

  里面的思想是这样的,把所有赢法的可能(在某几个点落子)计算出来,为每一种赢法做统计(落了几个子),对将要落点的地方求出每种赢发的分值,然后在最大分值点落子。

    我是在慕课网上看视频,然后抄来的代码。我主要实现了两台机器对战的功能,最后发现如果机器对战基本上是平局,人要赢机器太难。

  这个算法里面使用了一个三维的数组,统计所有的可能性,还好计算量不是很大,即使直接的写法已经足够快。算法的核心是只考虑自己落子的情况,排除对方已落子的可能赢法。对比其他棋类游戏,或者ai,这样的入门例子相对的运算量,在当下设备可以流畅运行。

 慕课网上有很多优秀的视频教程,是升职加薪的一个绿色通道。

去我的个人网站查看详情

在线试玩

    可以进行在线游戏。当然算法可以做优化,让其运行的更快,更智能。现在对很多情况的分值计算不够合理,但是可玩性才是游戏的重点,如实现两人对战,战绩分享之类的社交功能应该比较有买点。可以说对一个东西的研究是没有尽头的。

 这里还一个你可能感兴趣的小游戏,90坦克,90坦克demo

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 学院:研究生院 学号:1600030060 姓名:杨世聪 【嵌牛导读】:新浪科技讯 4月19日上午消息,百度今日宣...
    杨世聪阅读 2,669评论 0 1
  • 这篇文章以比较通俗的语言简单介绍了AlphaGo的工作原理,可以先看看了解大概,会发现AlphaGo也没有那么神秘...
    Founting阅读 14,529评论 0 7
  • 内容介绍 上一篇我们讲到五子棋的UI篇的实现,现在这一篇我们来讲五子棋的AI篇的实现。如果你还没看过UI篇,建议先...
    allen151阅读 13,213评论 9 14
  • 如題,happy trip with jjw~ never think it's last time or oth...
    帶風走路deFENG阅读 1,274评论 0 1
  • 就像听歌,如果我喜欢一首歌我一定会立刻把它单曲循环很久很久,一直到不喜欢它为止,我不会保留着它慢慢听;就像看书,如...
    朝颜sweet阅读 1,072评论 0 0