标签: artificial-intelligence

2048游戏的最佳算法是什么?

我最近偶然发现了2048游戏.您可以通过在四个方向中的任意一个方向上移动它们来合并类似的图块,以制作"更大" 每次移动后,新的图块会出现在随机空位置,其值为24.当所有框都被填充并且没有可以合并图块的移动时,或者您创建值为的图块时,游戏会终止2048.

一,我需要遵循明确的战略来实现目标.所以,我想为它编写一个程序.

我目前的算法:

while (!game_over) {
    for each possible move:
        count_no_of_merges_for_2-tiles and 4-tiles
    choose the move with a large number of merges
}
Run Code Online (Sandbox Code Playgroud)

我做的是在任何时候,我会尝试合并与价值观的瓷砖24,就是我努力24瓷砖,尽可能最小.如果我这样尝试,所有其他瓷砖自动合并,策略似乎很好.

但是,当我实际使用这个算法时,我只能在游戏结束前获得大约4000点.AFAIK的最高分数略高于20,000分,远高于我目前的分数.有比上面更好的算法吗?

algorithm logic artificial-intelligence 2048

1893
推荐指数
13
解决办法
91万
查看次数

偏差在神经网络中的作用

我知道梯度下降和反向传播定理.我没有得到的是:什么时候使用偏见很重要,你如何使用它?

例如,在映射AND函数时,当我使用2个输入和1个输出时,它不会给出正确的权重,但是,当我使用3个输入(其中1个是偏置)时,它会给出正确的权重.

artificial-intelligence machine-learning neural-network

750
推荐指数
18
解决办法
31万
查看次数

383
推荐指数
11
解决办法
19万
查看次数

吃豆人:眼睛怎么回到怪物洞?

我发现很多人都提到了吃豆子鬼的人工智能,但他们都没有提到在吃掉鬼人吃鬼之后眼睛如何回到中央鬼洞.

在我的实现中,我实现了一个简单但可怕的解决方案.我只是在每个角落都硬编码应该采取哪个方向.

有没有更好/或最好的解决方案?也许是一个适用于不同级别设计的通用产品?

artificial-intelligence heuristics path-finding pacman

320
推荐指数
7
解决办法
2万
查看次数

什么是最好的战舰AI?

战舰!

早在2003年(当时我17岁),我就参加了战舰AI编码比赛.即使我输掉了那场比赛,我也玩得很开心并从中学到了很多东西.

现在,我想在这场比赛中复活,寻找最好的战舰AI.

这是框架,现在托管在Bitbucket上.

获奖者将获得+450声望!比赛将于2009年11月17日开始.不接受17日零时以外的参赛作品或编辑.(中央标准时间)提前提交您的参赛作品,这样您就不会错过机会!

为了保持这个目标,请遵循竞争精神.

游戏规则:

  1. 游戏将在10x10网格上进行.
  2. 每个参赛者将5艘船(长度分别为2,3,3,4,5)放置在其网格上.
  3. 没有船只可能重叠,但它们可能相邻.
  4. 然后竞争对手轮流对对手开枪.
    • 游戏的一个变种允许每次击球射击多次射击,每个幸存的船只射击一次.
  5. 如果击球下沉,命中或未命中,对手将通知对手.
  6. 当任何一个玩家的所有船只都沉没时,游戏结束.

比赛规则:

  1. 竞争的精神是找到最好的战舰算法.
  2. 任何被视为违反竞争精神的东西都将被取消资格.
  3. 干扰对手是违背竞争精神的.
  4. 多线程可以在以下限制下使用:
    • 在轮到你的时候,不超过一个线程可能正在运行.(但是,任意数量的线程可能处于"暂停"状态).
    • 没有线程可以以"正常"以外的优先级运行.
    • 鉴于上述两个限制,您将在转弯期间保证至少3个专用CPU核心.
  5. 每个游戏的CPU时间限制为1秒,分配给主线程上的每个竞争对手.
  6. 时间不多会导致当前游戏失败.
  7. 任何未处理的异常都将导致失去当前的游戏.
  8. 允许网络访问和磁盘访问,但您可能会发现时间限制相当令人望而却步.然而,为了减轻时间紧张,增加了一些设置和拆卸方法.
  9. 代码应作为答案发布在堆栈溢出上,或者如果太大则链接.
  10. 条目的最大总大小(未压缩)为1 MB.
  11. 官方说来,.Net 2.0/3.5是唯一的框架要求.
  12. 您的条目必须实现IBattleshipOpponent接口.

评分:

  1. 101场比赛中最好的51场比赛是一场比赛的胜利者.
  2. 所有竞争对手都将相互配对,循环风格.
  3. 然后,最好的一半竞争者将参加双重淘汰赛以确定获胜者.(实际上,2的最小功率大于或等于一半.)
  4. 我将使用TournamentApi框架进行锦标赛.
  5. 结果将在此处公布.
  6. 如果您提交了多个条目,则只有您的得分最高的条目才有资格获得双重条目.

祝好运!玩得开心!


编辑1:
感谢Freed,他在Ship.IsValid函数中发现了一个错误.它已被修复.请下载该框架的更新版本.

编辑2:
由于人们对将统计信息持久存储到磁盘等方面非常感兴趣,因此我添加了一些应该提供所需功能的非定时设置和拆除事件.这是一个半破坏性的变化.也就是说:界面已经过修改以添加功能,但不需要它们.请下载该框架的更新版本.

编辑3:
错误修复1:GameWon并且GameLost只在超时的情况下被调用.
错误修复2:如果引擎在每场比赛中超时,则比赛永远不会结束.
请下载该框架的更新版本.

编辑4:
比赛结果:

.net c# artificial-intelligence

315
推荐指数
10
解决办法
6万
查看次数

监督学习和无监督学习有什么区别?

在人工智能和机器学习方面,有监督和无监督学习有什么区别?您能举例说明一个基本的,简单的解释吗?

artificial-intelligence machine-learning unsupervised-learning supervised-learning

271
推荐指数
9
解决办法
17万
查看次数

历史股票数据来源

我正在尝试制作股票市场模拟器(可能最终会成长为预测AI),但我无法找到要使用的数据.我正在寻找一个(希望是免费的)历史股市数据来源.

理想情况下,它将是一个非常细粒度(第二或每分钟间隔)的数据集,其中包含纳斯达克和纽约证券交易所(如果我喜欢冒险)的每个符号的价格和数量.有谁知道这些信息的来源?

我发现这个问题表明雅虎提供了CSV格式的历史数据,但我一直无法找到如何粗略地检查链接的网站.

我也不喜欢在CSV文件中逐个下载数据的想法...我想雅虎会在最初的几千个请求之后感到不安并关闭我.

我还发现了另一个让我觉得自己中了大奖的问题,但不幸的是,OpenTick网站似乎已经关门了......太糟糕了,因为我觉得它们正是我想要的.

我也可以使用每天只打开/关闭价格和每个符号的数量的数据,但如果我能得到它,我更喜欢所有的数据.还有其他建议吗?

simulation finance artificial-intelligence stocks

238
推荐指数
11
解决办法
17万
查看次数

什么是遗传算法/遗传编程解决方案的好例子?

遗传算法(GA)和遗传规划(GP)是有趣的研究领域.

我想知道你使用GA/GP解决的具体问题,以及你没有使用自己的库/框架.

问题:

  • 您使用GA/GP解决了哪些问题?
  • 您使用了哪些库/框架?

我正在寻找第一手经验,所以除非你有这个经验,否则请不要回答.

algorithm artificial-intelligence genetic-algorithm evolutionary-algorithm

226
推荐指数
15
解决办法
12万
查看次数

为什么Lisp用于AI?

我一直在学习Lisp以扩展我的视野,因为我听说它用于AI编程.在做了一些探索之后,我还没有找到人工智能的例子或语言中任何会使其更倾向于它的东西.

过去是否使用过Lisp因为它可用,或者是否有一些我只是缺少的东西?

lisp artificial-intelligence

183
推荐指数
7
解决办法
8万
查看次数

Dijkstra的算法和A-Star如何比较?

我在看马里奥人工智能大赛中的人一直在做什么,其中一些人利用A*(A-Star)路径算法构建了一些漂亮的马里奥机器人.

替代文字http://julian.togelius.com/mariocompetition2009/screen1.png
(马里奥·博特在行动视频)

我的问题是,A-Star与Dijkstra相比如何?看着它们,它们看起来很相似.

为什么有人会使用一个而不是另一个?特别是在游戏路径的背景下?

algorithm artificial-intelligence graph a-star dijkstra

147
推荐指数
8
解决办法
8万
查看次数