游戏 AI 在体育竞技游戏中的应用实践,通过 PVE 对抗规则AI+自博弈的方式,训练出了高强度、多风格策略的足球 SPG 对战 AI | 附方案详情及资料

AI 在体育竞技游戏(SPG,Sports Game)中的应用已经成为游戏厂商持续探索的领域之一。随
着人工智能技术的不断发展,越来越多的游戏开发商开始使用 AI 来提升游戏的真实感和沉浸感。
例如,在足球模拟游戏中,AI 可以根据球员的能力和状态来决定他们在比赛中的行动、团队策略
与风格,使游戏更加逼真。同时,AI 还可以与玩家协作配合,帮助他们在比赛中取得胜利。除此
之外, 越来越多的 AI 在 SPG 中的应用积累,被推广发扬到真实世界的体育竞技项目中
基于这些观察,本文将探讨 AI 在 SPG 中的应用 ,并展望未来的发展趋势。
2022 年,梅西终于捧起了 8 年前凝望的大力神杯,体育精神与热血竞技令人狂热 与痴迷。与此同时,AI 界的新宠儿们,Diffusion Model,chatGPT 等 AI 内容生成 模型掀起了新一轮的 AI 狂热。我们不禁联想——如果有一个 AI 界的足球世界杯, 那将会是怎样?谁又会成为 AI 界的梅西?
2020 年,谷歌基于其开源足球环境[1],在 Kaggle 上举办了一场全世界范围的”AI 世界杯“[2],共 1141 支队伍参加,AI 运动员们同场竞技,产出了大量的战术打法与高光时刻。
“AI 世界杯”毫无疑问向我们展示了,在足球等 SPG 游戏中,利用 AI 控制球员并践行战术、提高竞技水平的无限可能。在此之前,足球 SPG 游戏的 AI 球员控制往往基于规则,这会导致 AI 水平有限,团队配合不足,易于被玩家发现、吐槽等,如 《FIFA 2017》的 Active Intelligence System,《实况足球》的 AI 控制系统等。
与之相反,基于强化学习的足球 AI 能够有效提升对局强度,策略多样且拟人性更强。如基于自博弈的强化学习+模仿学习足球 AI 解决方案,在 AI 世界杯中被验证能够以更少的算力,取得更好的成绩,并在控球、短传、防守等方面得到了高度认可。
下面将详细介绍这一方案~
这一方案基于足球环境原生接口,设计了一整套的 状态向量表征方案 ,包含球、球员、游戏环境等多方面特征,保证了强化学习智能体能够获取足量的环境信息。
动作空间上 ,基于环境提供接口,包含了空闲、移动、传球/射门等动作,涵盖了足球竞技中的常见行为。 奖励设计方面 ,除了比分奖励外,还设计了检查点奖励,每轮带球首次进入更靠近
敌方球门的检查点范围时获取,以让强化学习智能体更加有动力向对方半场进攻。
除了传统 RL 算法框架外, 网易团队还设计了 RL+模仿学习(IL,Imitation Learning)的方法 ,来快速学习掌握对手的强劲策略,使模型更易学习人类与 AI 优势策略,风格更为多样,强度更高。该框架同时结合强化学习与模仿学习的优势, 按照一定比例(λ%)来构建训练所需的样本,并同时优化强化学习的累计期望奖励与模仿学习的模仿误差,使得模型保持了对环境的探索能力,同时还能快速学习专家的打法战术。
基于上述设计,网易结合网易游戏深耕积累的成熟的算法库与训练框架,通过 PVE 对抗规则AI+自博弈的方式,最终训练出了高强度、多样化风格策略的足球 SPG 对战 AI,并从 11v11 衍生出了 5v5、多智能体等多种智能体方案,相关成果已在网易内部多个项目应用并转化沉淀,可快速迁移到其他游戏环境中。

—— END——

今天先聊到这里,看到这里的游戏人,期待下次为大家分享更多游戏行业洞察!

我来自网易~ 是你最得力的游戏行业战略家,也是最硬核的游戏技术布道师,一起让技术发光~ 欢迎各位游戏人一起探讨交流~

tips:《网易智企游戏AI指南》免费领取方式——评论区留言【指南】,立即get√

好的内容值得你关注、点赞与收藏~❤

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/447682.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringMVC10、拦截器

10、拦截器 10.1、概述 SpringMVC的处理器拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。开发者可以自己定义一些拦截器来实现特定的功能。 过滤器与拦截器的区别:拦截器是AOP思想的具体应用。 过滤器 servlet规范中的一部分&…

力扣每日一题 猜数字游戏 阅读理解

Problem: 299. 猜数字游戏 思路 &#x1f468;‍&#x1f3eb; 灵神 复杂度 Code class Solution {public String getHint(String secret, String guess) {int a 0;int[] cntS new int[10];int[] cntG new int[10];for(int i 0; i < secret.length(); i){if(secre…

小迪安全34WEB 攻防-通用漏洞文件上传黑白盒审计逻辑中间件外部引用

#知识点&#xff1a; 1、白盒审计三要素 2、黑盒审计四要素 3、白黑测试流程思路 #详细点&#xff1a; 1、检测层面&#xff1a;前端&#xff0c;后端等 2、检测内容&#xff1a;文件头&#xff0c;完整性&#xff0c;二次渲染等 3、检测后缀&#xff1a;黑名单&…

http升级https需要做什么

背景&#xff1a;随着现代网络时代的高速发展&#xff0c;网络安全方面的日益更新&#xff0c;实现网站https协议的数量也在不断增多&#xff0c;完善安全方面的因素也在逐步增加。 下面从最基础的网站http协议全面升级为https协议的流程做出说明。 目录 首先带大家一起先了解…

打包paddle 运行时出现RuntimeError: (PreconditionNotMet) 错误的解决

一、问题描述 一个自动化操作的项目&#xff0c;使用了paddle&#xff0c;由于第一次用pyinstaller打包paddle项目(为什么不用nuitka?打包时间太长啦&#xff0c;遇到问题解决一次&#xff0c;时间都非常的长&#xff0c;无奈只把自己开发的模块用nuitka进行了打包&#xff0…

SSM整合项目(Vue3 + Element - Plus 创建项目基础页面)

文章目录 1.配置Vue启动端口1.修改vue.config.js2.启动 2.安装Element Plus命令行输入 npm install element-plus --save 3.修改Vue3默认样式并自定义一个组件1.修改App.vue1.删除原有结构2.启动项目查看 2.修改HomeView.vue3.删除HelloWorld.vue组件4.创建一个组件 src/compon…

介绍Kanzi

Linux开发过程中使用的Kanzi 是一个由 Rightware&#xff08;现为 Thundersoft 的一部分&#xff09;开发的跨平台图形用户界面&#xff08;GUI&#xff09;框架。它主要用于设计、开发和部署在计算机、移动设备和嵌入式设备上的2D和3D用户界面。Kanzi 提供了一个现代化的内容创…

GO语言-切片底层探索(上)

1.前言 今天在力扣上写算法&#xff0c;遇到了一个比较"奇怪"的错误。由于自己使用了递归切片&#xff0c;导致一开始没有看明白&#xff0c;直到在自己电脑上进行debug的时候才反应过来&#xff0c;原因出在了哪里&#xff1f;下面会先进行错误的分析和纠正&#x…

物理机win10怎么与虚拟机win10共享文件

打开win10虚拟机点击虚拟机选项安装vmTools 安装完成后系统会重启重启后关机 点击编辑虚拟机设置 选项、共享文件夹、总是启用 接下来点击添加选择你要共享的文件点击确定 打开虚拟机点击此电脑 就会看到共享的文件夹啦

python 导入excel空间三维坐标 生成三维曲面地形图 5-3、线条平滑曲面且可通过面观察柱体变化(三)

环境 python:python-3.12.0-amd64 包: matplotlib 3.8.2 pandas 2.1.4 openpyxl 3.1.2 scipy 1.12.0 import pandas as pd import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from scipy.interpolate import griddata from matplotlib.c…

基于微信小程序的校园跑腿小程序,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

SSM整合项目(添加家居)

文章目录 1.需求分析2.设计结构3.编写Service层1.创建文件夹2.FurnService.java3.FurnServiceImpl.java4.单元测试 FurnServiceTest.java5.指定默认图片位置1.Furn.java 为imgPath设置默认值2.Furn.java 的全参构造器内判断imgPath是否为空 4.返回json数据的通用类com/sun/furn…

【QT+QGIS跨平台编译】之七十:【QGIS_Analysis跨平台编译】—【qgsrastercalcparser.cpp生成】

文章目录 一、Bison二、生成来源三、构建过程一、Bison GNU Bison 是一个通用的解析器生成器,它可以将注释的无上下文语法转换为使用 LALR (1) 解析表的确定性 LR 或广义 LR (GLR) 解析器。Bison 还可以生成 IELR (1) 或规范 LR (1) 解析表。一旦您熟练使用 Bison,您可以使用…

C语言内存管理-数据段与代码段

数据段细分成如下几个区域&#xff1a; .bss 段&#xff1a;存放未初始化的静态数据&#xff0c;它们将被系统自动初始化为0.data段&#xff1a;存放已初始化的静态数据.rodata段&#xff1a;存放常量数据代码段细分成如下几个区域&#xff1a; .text段&#xff1a;存放用户代码…

南洋理工发布多模态金融交易Agent,平均利润提高36%!

金融市场是经济稳定的基石&#xff0c;它不仅促进了资本的分配&#xff0c;还提供了风险管理的机制。随着市场的不断演变&#xff0c;传统的基于规则的交易系统由于缺乏适应市场波动的能力而表现不佳。尽管基于强化学习的系统显示出更好的适应性&#xff0c;但它们在处理多模态…

LVGL:渐变方案

仿照qt的QGradient::Preset渐变类型写的&#xff0c;因为lvgl只支持水平/垂直渐变&#xff0c;且只支持两种颜色的渐变&#xff0c;所以有些类型的渐变未能实现&#xff0c;有些则缺少中间颜色。 代码&#xff1a; namespace Gradient { enum Preset {WarmFlame 1,NightFade…

allegro PCB设计心得笔记(二) -- ERROR(SPMHUT-144): Illegal arc specification

使用Allegro PCB Editor设计PCB&#xff0c;其中使用了中文丝印&#xff0c;设计完成后&#xff0c;进行Tools -> Database Check&#xff0c;提示如下错误&#xff1a; 对PCB文件进行反复检查&#xff0c;也没有找到具体问题&#xff0c;但是删除中文丝印封装后&#xff0c…

安卓玩机工具推荐----MTK芯片读写分区 备份分区 恢复分区 制作线刷包 工具操作解析

安卓玩机工具推荐----高通芯片9008端口读写分区 备份分区 恢复分区 制作线刷包 工具操作解析 安卓玩机工具推荐----ADB状态读写分区 备份分区 恢复分区 查看分区号 工具操作解析 前面做了两期教程。分别解析了下ADB端口与高通9008端口备份分区一些基础的常识&#xff0c;那么…

【Oracle之DataGuard的初步学习】

** 以下所有均是基于11G版本的 ** 一、DataGuard的部署方式 DG的部署最常用的方式就是直接在备库端部署一个空库然后再设置参数&#xff0c;但是这样做在初始同步时如果数据量过大会耗费较长的时间&#xff1b;相对来说这中方式比较简单不易出错。 还有一种方式就是通过rman的备…

okcc呼叫中心的客服代表应该具备哪些条件?

对每个企业管理者来说&#xff0c;选择最高效和最理想的呼叫中心提供商来简化他们的客户服务操作是一项关键工作内容。除了要确保提供商拥有处理这一重要任务所需的技术和资源之外&#xff0c;确定他们是否具备最高质量的合适人员来执行这项任务同样很重要。 客户服务代表是每…