【问题标题】:Artificial intelligence libraries [closed]人工智能库[关闭]
【发布时间】:2013-05-22 14:56:09
【问题描述】:

我正在寻找在游戏中有用的人工智能算法的 C 和 C++ 实现。我最感兴趣的一些是强化学习算法、遗传算法和神经网络。然而,任何其他的也很有趣。

我发现dlib.net 有一些非常吸引人的机器学习算法,但这些算法似乎并不特别适合游戏。


我可以使用的许可证是 Boost 软件许可证、Zlib/Libpng 许可证和公共域。任何属于这些许可的库的任何建议都将受到高度赞赏。

【问题讨论】:

  • 简短说明。在这个时间点上,几乎没有游戏,也绝对不是大型的商业游戏,使用神经网络、遗传算法等作为他们的 AI 基础。它们太慢太复杂了。研究图论、决策树、状态机等。
  • 我对所有这些事情也很感兴趣。我真的只是在寻找一个好的起点来继续试验。您对教程、具有上述许可证的库或任何其他相关资源有什么建议吗?

标签: c++ algorithm machine-learning artificial-intelligence game-ai


【解决方案1】:

即使您想要一个库,我也强烈建议您自己编写人工智能程序。这可能不是那么容易,但编程确实(在我看来)并不意味着使用其他人的工作。

可以找到关于人工智能研究的简短介绍here..(需要几秒钟才能加载..)

如果你不能接受自己编程的想法,我听说“Kynapse”是一个非常好的用于中间件程序的 AI SDK。

我希望这会有所帮助

【讨论】:

  • 您的意思是暗示将第三方组件用于特定任务会以某种方式使给定产品背后的人不像程序员吗?编程是关于编码和解决问题的,解决问题的方法之一是利用他人获得的知识和智慧来产生更好的最终结果(特别是如果第三方代码经过良好测试和成熟) .当然,这必须保持平衡,但重新发明轮子不一定是最好的课程,即使您最终自己编写了更多代码并因此学习了更多。
  • :3 是的,我是这个意思。也许我自己编写每个细节都做错了,但我刚满 18 岁。我在地球上的剩余时间似乎足够“重新发明轮子”
  • 我认为您没有错,因为您选择自己编写代码。恰恰相反。但是,如果他们有充分的理由想要重用代码,那么判断其他人想要走与你不同的道路是错误的。我有充分和正当的理由,所以你的言论是没有根据和不必要的。
  • ...是的.. 让我们说,重建已经建成的东西,是一个很好的学习练习,但它并不完全实用。第三方解决方案和库的存在有一个非常坚实的理由:提供一组经过实战测试的工具来实现您正在寻找的结果。正如人们所发现的那样,原则上 100% 自己编写它往往会产生一个较小的产品,因为您自己只是不具备作为致力于这些库的一群人的经验。自己写它以获得重要的学习和经验,否则就没有必要了。
  • 我期待听到关于 TheOneAndOnly 的操作系统、编译器、标准库和她或他自己编写的文本编辑器的信息。 :-)
【解决方案2】:

AI 是一个巨大的领域,所以仅仅说“在游戏中有用”并不意味着太多。这可能不是您想要的,但您也许可以从 Alchemy 中获得一些用途:

“Alchemy 是一个软件包,提供了一系列基于马尔可夫逻辑表示的统计关系学习和概率逻辑推理算法。Alchemy 允许您轻松开发广泛的人工智能应用程序,包括: 集体分类 链接预测 实体解析 社交网络建模 信息抽取”

http://alchemy.cs.washington.edu/

【讨论】:

    猜你喜欢
    • 2011-12-10
    • 1970-01-01
    • 2012-09-08
    • 1970-01-01
    • 1970-01-01
    • 2016-11-21
    • 1970-01-01
    • 2012-11-06
    • 2014-12-03
    相关资源
    最近更新 更多