我知道这可能听起来很奇怪,但我想知道Microsoft Visual F#正在进入的这个新世界中的一件事。这种语言有很多应用,我要学习,关于语法分析,函数式编程,结构化编程……但是人工智能呢?
模糊逻辑有什么应用吗?F#是一种用于模糊逻辑应用的好语言吗?
在大学里,我们正在学习Prolog和类似的语言。Prolog能够在非常简单和简短的表达式中创建复杂的查询(通过利用谓词和事实)。F#能做到这一点吗?
提前谢谢你。
发布于 2010-11-29 08:34:14
模糊逻辑。 F#没有提供任何类型的实现开箱即用的模糊逻辑计算,但是在这个领域中使用F#当然是可能的。F#的简洁性和定义自定义重载操作符的能力应该会使基于模糊逻辑的代码变得非常好。我做了一个快速搜索,发现了几篇用F#实现模糊逻辑的文章:
Prolog是一个有点不同的问题。Prolog的强大(也有弱点)来自于它直接内置在语言中的回溯功能。这使得它非常适合于实现基于回溯的搜索算法,但这也是一个限制。
Prolog对回溯没有任何直接支持,但是使用递归(这是F#和F#中的主要控制流机制)编写基于回溯的算法是非常容易的。
此外,还可以在F#中实现用于逻辑编程的领域特定语言。这意味着您需要在F#中实现类似Prolog的东西,然后在F#中使用这种迷你语言编写搜索算法(根据需要,也可以使用其他F#特性)。您可以在this question中找到有关类似问题的更多信息。
发布于 2010-11-29 09:44:35
F#是一种通用语言,具有一些优秀的语言特性,如计算表达式、单变量、引用等。您可以假设它与C#具有大致相同的功能。
它不像Matlab或R那样,有很多预先实现的库都是内置的。如果你想从头开始实现模糊逻辑库或其他AI算法,F#是一种非常适合你的语言,因为它的语言特性让生活变得更容易。
但是,如果您只想使用模糊逻辑库,那么使用其他语言或专门的系统会更合适,因为F#或.Net在这方面通常没有非常高质量的库。
https://stackoverflow.com/questions/4299948
复制相似问题