让 NPC 有自己的意志
除了攻击,就是等待,游戏里的 NPC 总是直来直去没头脑。
想让 NPC 有自己的意志,通常有以下三种方式:
第一种,行为树(Behavior Tree)。
行为树是一大串如枝叶般扩散的指令,子结点包含了角色的执行前提和具体行为。当 NPC 需要行动时,就从根节点开始向下进行搜索,最终确定的子节点将是 NPC 做出的行为。
第二种,有限状态机(Finite-State Machine, FSM)。
有限状态机像一个更松散的行为树,由有限个状态和执行条件组成。当 NPC 遭遇一定的条件,就会从当前状态转换到对应的另一种状态。
第三种,人工智能,特别是强化学习(Reinforcement Learning,RL)。
强化学习是让 NPC 随意做出任何行为,如果做出的行为「正确」会收到奖励,反之受到惩罚,通过不断的反馈让 NPC 学习在不同情境下该选择的行为。
行为树逻辑明确,容易修改;有限状态机清晰灵活,但同时只能执行一个状态;强化学习能适应更复杂的游戏环境,还能互相协作。
高级算法工程师,需要具备什么能力
不同算法适用的场景不同,君不见如google,Amazon,facebook,百度,字节跳动等一线大公司,笔试面试都是非常注重算法的。
在这些大公司看来,算法能力的高低,是一个人工智能从业人员能力高低的标杆。国内从事算法工作的工程师不少,但是高级算法工程师却很少。那么一个高级算法工程师,应该具备什么能力呢?
如果你能有幸从事算法相关的工作,那么你要有心理准备,这个职位的劳动强度也是蛮大的,有时候搞尽脑汁也未必能设计出一个理想的算法,即使要优化已有的算法也不是一件容易的事。如果你能较快的在算法设计,算法优化的领域成长起来,那就是公司核心中的核心,前途无可限量。
这一点,美国微软总部和美国亚马逊总部的资深推荐系统工程师袁源博士,和人工智能、知识图谱领域专家,前凡普金科集团(爱钱进)的首席数据科学家李文哲博士深有体会。
而且他们深知,目前国内算法研究的资料有限,虽然很多人工智能的项目落地了,但是很多前沿技术的研发,还是跟着硅谷的形势走。因此,很多大厂招聘高级算法工程师或者数据科学家,都要求有论文复现的能力。
并且,高级算法工程师如果要带项目,那么,他必须要有很好的沟通能力,并且乐于分享,所以招聘的时候,我们会看到有些公司要求在开源平台上有过分享。这样可以看到你对技术的热爱,能力水平。
为了帮助更多的算法工程师和相关专业的学生,能够具备高阶算法工程师的算法推导、研发、优化能力,李文哲博士和袁源博士联手开设了一门《高阶机器学习》课程。
高阶机器学习课程
这门课有以下几个特点:
-
前沿 课程不断迭代更新,保证不错过任何2周之内出现的重要技术
-
细致 导师全程现场推导,让你学习有清晰的思路,深刻理解算法模型背后推导的每个细节。更重要的是可以清晰看到各种模型之间的关系!帮助你打通六脉!
-
论文 每周1次paper reading session,帮助你复现论文
你需要具备的基础,和面临的挑战:
-
编程基础:用python写过工程项目,代码量在5000行以上
-
机器学习:系统学习过机器学习基础,比如学习过《西瓜书》
-
写技术文章: 我们会要求学员在知乎、github、垂直公众号等平台,输出自己的技术文章,老师和助教会帮你优化
-
Project项目:除了文章,算法工程师立命的根本--项目代码,导师更是不会放过的。每次在Gitlab上布置的作业,导师们都会带领助教团队会予以详细的批改和反馈。并逼着你不断的优化!
如果你对这门课程感兴趣,可以加我:git1024。PS:明天(3月27号)会有文哲老师的免费公开课哦~
来源:oschina
链接:https://my.oschina.net/u/4399604/blog/4496587