Artificial intelligence 人工智能项目-我应该选择哪种语言?
我是一名计算机科学专业的学生,我将致力于一个人工智能项目,该项目将根据流派和情绪输入来谱写一首乐曲。用于该项目的算法可能非常消耗资源吗?如果我选择用java而不是C++,它会不会有什么不同(在速度方面)?(注:我只知道这两种语言,我对java比C++更感兴趣)Artificial intelligence 人工智能项目-我应该选择哪种语言?,artificial-intelligence,Artificial Intelligence,我是一名计算机科学专业的学生,我将致力于一个人工智能项目,该项目将根据流派和情绪输入来谱写一首乐曲。用于该项目的算法可能非常消耗资源吗?如果我选择用java而不是C++,它会不会有什么不同(在速度方面)?(注:我只知道这两种语言,我对java比C++更感兴趣) 对不起,我的英语很差。如果有人可以,请在必要的地方清理这个帖子。谢谢。使用Java吧,因为您对它更熟悉。这将使您能够集中精力解决问题,而不是编程。也许C++会以更快的程序结束,也许不会,但是到那里会慢一些,而且你也不能断定这个程序必须快得
对不起,我的英语很差。如果有人可以,请在必要的地方清理这个帖子。谢谢。使用Java吧,因为您对它更熟悉。这将使您能够集中精力解决问题,而不是编程。也许C++会以更快的程序结束,也许不会,但是到那里会慢一些,而且你也不能断定这个程序必须快得很快。 < P>我的脑海中,大部分与AI有关的语言是Lisp。
请参见“热门话题”的答案——60年代和70年代是这样,但现在使用的是动态语言(ruby、python等)。在我看来,您的项目正处于概念验证阶段。我会用你最喜欢的语言。写得好的Java代码比写得差的C代码运行得快得多。与所选语言相比,算法方法对资源消耗的影响更大。如果你对java感到满意,用C++语言编程你的应用程序——即使C++实现可能快10%。
话虽如此,你可能会感兴趣。几年前我做了一个类似的人工智能项目。我不知道您将实施什么解决方案,但人工智能程序通常既消耗资源又需要很长时间才能运行,但另一方面,您需要一种熟悉的语言才能及时完成
P>因此,我的建议是,如果你感觉你知道C++(或者C),那么就去其中之一。如果你不了解他们,那么仔细考虑你在选择一门新语言前需要投入的时间。 < P>如果你从头开始,使用你所知道的最好的。如果您想使用已建立的库来加快开发速度,您可能需要首先对此进行研究,但Java肯定会有一些
如果你愿意,我肯定会选择Java。对于这样的项目,我会使用CommonLisp。如果你不懂Lisp,我会为这类项目学习它。这将是一次很好的学习经历,因为你是一名CS学生,它只会帮助你。Lisp是一种真正令人大开眼界的语言 我的建议是首先设计您需要的一切,每个ADT,每个算法类,层次结构,一切。在C/C++语言家族中,这种项目/编程可能很难设计,也许您可以选择其他具有较少字符串类型的语言。因此,我鼓励您使用为此类问题设计的语言,更适合您的应用程序,
函数范式
ex:LISP,逻辑范式
ex:或类似的语言。我的第三年论文项目是蜂窝网络射频分配的启发式实现。我选择了Java,而不是C++,因为它比我使用C++更容易让java可视化。我不相信C++中的性能会有很大的不同,你的ALGOS的复杂因素可能是最大的因素。 < P>我会跟Culjule一起,原因如下:
- 这是一个Lisp,Lisp是人工智能开发的优秀语言(部分是历史性的,但也有一些真正的具体原因——请参阅和)
- Clojure在JVM上运行,具有出色的Java互操作性,因此您可以利用所有优秀的Java AI库(例如),并且您已经有了一些Java环境的经验
- JVM现在有优秀的优化JIT编译器,对于所有实际用途,对于这种应用程序,您将获得与C/C++一样快的性能