用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法) – 空山老师 – Python量化投资

用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法) – 空山老师

前言:

从自走棋开始火了之后,很多人也料到了LOL版的自走棋肯定会大火,单单从用户这方面来说,大火的趋势肯定会越烧越旺。这不,今天为大家带来的内容是用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

LOL云顶之弈人工智障助手

爬取相关网站内容获取英雄信息,阵容搭配与得分,遗传算法设计,运行结果,完整代码——Github欢迎star。

概述

本人云顶新手,好多年不玩LOL了,被朋友安利云顶之弈,玩了两天觉得有点意思。但是这个游戏阵容可搭配太多了,如果不是天天研究这个游戏的,很难吃鸡。所以我就心血来潮想写个阵容助手(python),给定几个你想玩的英雄,基于遗传算法向玩家推荐阵容。目前适配9.19版本,不过后面有新阵容出现的话,改起来也方便。增加铲子功能,不过只能增加一个(增加两个的话计算量大,不够实时性)

爬取相关网站内容获取英雄信息

这一步是可以自己输入的,但是作为一个倔强的程序员,显然不能做这种事(手动狗头)

一开始选的是lol官网…搞半天都搞不出来(技术不够,泪目)

后来发现还是多玩好爬一点

结果如下


用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

另外还保存了英雄的昵称与其对应的id,方便输入(有时候真想不起来英雄的真名啊)


用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

阵容搭配与得分

建立一个列表,记录各种阵容搭配,需要人口数目,记录铲子能增加的羁绊


用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

计算英雄阵容与所需金币总数


用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

计算得分时候,不考虑羁绊效果不平衡的情况。另外,默认组成人口越多,羁绊效果增加得越多(采用平方得分函数)


用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

接下来是:遗传算法设计

编码的话,就是用的实数编码,得分函数选择是上面的阵容得分+所需金币数(越贵的英雄越强)选择策略是得分最高的个体直接复制到下一代,得分最低的9个个体直接全部重抽上代码:


用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

结果运行得出:


用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

效果还不错,大概几秒钟就能运行出结果,不影响游戏进度,同时为不熟悉python的小伙伴做了个双击直接运行版本,双击,cmd里根据提示输入参数即可。

(至少需要安装pandas库,命令:pip install pandas)


用python写个云顶之弈阵容助手,助你今晚“吃鸡”(遗传算法)

以上就是本文的全部内容啦!

小编是一名python开发工程师,群里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以加群:877562786

© 著作权归作者所有,转载或内容合作请联系作者
https://www.jianshu.com/p/cfd4ec205b98

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论