首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为了编写一个简单的人工智能程序来玩游戏,我需要什么知识?

为了编写一个简单的人工智能程序来玩游戏,我需要什么知识?
EN

Data Science用户
提问于 2017-01-04 13:15:42
回答 2查看 740关注 0票数 9

我是B.Sc毕业生。我的课程之一是“机器学习入门”,我一直想在这门课上做一个个人项目。

我最近听说了不同的人工智能训练来玩游戏,如马里奥,围棋等。

为了训练一个简单的人工智能程序来玩游戏,我需要获得什么知识?对于初学者来说,你推荐什么游戏?

这是我目前在机器学习中所知道的-

  • 课程介绍和机器学习。K-最近邻算法和K-均值算法
  • 统计推断
  • 高斯混合模型(GMM)与期望最大化
  • 可能是近似正确的模型,包括泛化界和模型选择。
  • 基本的超平面算法:感知器和Winnow。
  • 支持向量机(SVM)
  • 核粒
  • 促进弱学习者向强学习者学习: AdaBoost
  • 边缘-感知器
  • 回归
  • PCA
  • 决策树
  • 决策树修剪与随机林
EN

回答 2

Data Science用户

回答已采纳

发布于 2017-01-04 14:17:56

有多种方法来解决游戏游戏问题。有些游戏可以通过搜索算法来解决,例如。这是很好的工作卡和棋盘游戏,直到一定程度的复杂性。例如,IBM的深蓝色本质上是一种快速启发式驱动的最优移动搜索.

但是,最常用的机器学习算法可能是强化学习,用于训练agent以最优方式执行任务。从技术上讲,这不是一种算法,而是一大类相关算法,它们都解决了学习问题的特定形式化。

强化学习( Reinforcement,RL)是一种以agent的方式定义的问题的最优解,它能观察环境的状态,在环境中采取行动,并获得与状态和行为有关的经验奖励。RL求解器需要设计用于处理奖励比采取重要操作时晚的情况,而这通常是通过学习与状态和/或状态-动作对相关的后续奖励的内部期望来实现的。

以下是一些学习强化学习的资源:

你会发现主题本身是相当大的,因为算法越来越复杂的变化是必要的,因为要解决的问题变得更加困难。

开始学习强化学习的游戏可能包括:

  • Tik toe(又名本体和十字)-这可以很容易地通过搜索解决,但它是一个简单的玩具问题来解决使用基本的RL技术。
  • 迷宫--在强化学习文献中,有许多“网格世界”游戏的例子,其中一个代理在单个N、E、S、W中移动,踩在一个可以充满危险和目标的小板上。
  • 21点(又名21)

如果你想和代理一起玩电子游戏,你也会想要了解神经网络,也许是一些细节--你将需要深而复杂的神经网络来处理屏幕图形。

相对来说,RL的一个新资源是OpenAI宇宙。他们已经做了很多工作来打包环境,准备好训练agents,这意味着你可以集中精力学习学习算法,而不是建立环境。

关于你目前的技能清单:这些技能中没有一个与强化学习直接相关。然而:

  • 如果你能理解以前的课程中的数学和理论,那么你也应该能够理解强化学习理论。
  • 如果您研究过任何在线或批处理监督学习技术,那么这些技术可以作为RL框架中的组件使用。通常情况下,它们可以被用来逼近游戏状态的值函数,基于迄今为止的成功和失败的反馈。
票数 8
EN

Data Science用户

发布于 2017-01-04 14:19:07

这在很大程度上取决于游戏的类型和游戏状态的信息,对你的人工智能可用。

近几年来最著名的人工智能游戏是基于深度强化学习(如用深度强化学习弹Atari),即基于深度神经网络作为奖赏函数逼近的正规强化学习(如Q-学习)。这些方法接收游戏的原始像素加上玩家的点数,并输出游戏垫的动作,就像人类一样。为了做到这一点,您需要掌握强化学习(参见萨顿和巴托的开创性著作)和深度学习(参见伊恩·古德费罗等人.书),然后将它们融合到深度强化学习中(在这一个之类的深度学习论文的任何管理列表中搜索“强化学习”)。

然而,如果你的人工智能所能得到的游戏信息比这个信息更有结构(例如玩家的位置,环境的描述),你可以用更经典的方法把你的游戏分解成可处理的问题,并通过算法解决每一个问题,例如用一个*搜索。

票数 7
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/16066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档