F#和模糊逻辑

And*_*dry 10 f# artificial-intelligence prolog fuzzy-logic

我知道这可能听起来很奇怪,但我想知道微软Visual F#进入这个新世界的一件事.关于解析,函数式编程,结构化编程,我将学习这种语言的许多应用......但是人工智能呢?

模糊逻辑有什么应用吗?F#是一种用于模糊逻辑应用的好语言吗?

在大学,我们正在学习Prolog和类似的语言.Prolog能够在非常简单和短暂的表达式中创建复杂查询(通过利用谓词和事实).F#能够做到这一点吗?

先感谢您.

Tom*_*cek 8

模糊逻辑.F#没有提供任何类型的开箱即用的模糊逻辑计算,但是在这个域中使用F#当然是可能的.F#的简洁性和定义自定义重载运算符的能力应该使基于模糊逻辑的代码非常好.我做了一个快速搜索,发现了一些在F#中实现模糊逻辑的文章:

Prolog是一个有点不同的问题.Prolog的力量(以及弱点)来自它直接在语言中构建的回溯这一事实.这使得它非常适合实现基于回溯的搜索算法,但它也是一个限制.

F#对回溯没有任何直接的支持,但是使用递归(这是F#和Prolog中的主要控制流机制)基于回溯编写算法非常容易.

此外,可以在F#中为逻辑编程实现特定域的语言.这意味着您将在F#中实现类似Prolog的内容,然后在F#中使用此迷你语言编写搜索算法(可能根据需要使用其他F#功能).您可以在此问题中找到有关类似问题的更多信息.

  • 我想补充一点,虽然我没有在我的博客中探讨它,但F#将是尝试使用模糊逻辑的并行实现的绝佳选择,包括使用图形适配器的实现.F#在这方面并不是唯一的,但它确实提供了将并行性与特定于域的语言相结合的绝佳机会. (3认同)