下一页 上一页 目录

2. 符号系统 (GOFAI)

传统上,人工智能是基于逻辑、规则系统、语言学和理性概念的思想。它的根基是诸如 Lisp 和 Prolog 等编程语言,尽管较新的系统倾向于使用更流行的过程式语言。专家系统是这种范式最成功的例子。一个专家系统由一个详细的知识库和一个复杂的规则系统组成,以利用它。这种系统已被用于医疗诊断支持和信用检查系统等领域。

2.1 AI 类/代码库

这些是用于人工智能领域编程的代码或类库。它们并非旨在作为独立的应用程序,而是作为构建您自己的应用程序的工具。

ACL2

ACL2 (Applicative Common Lisp 的计算逻辑) 是一种用于工业应用的定理证明器。它既是一种数学逻辑,也是一个用于构建逻辑证明的工具系统。ACL2 与 GCL (GNU Common Lisp) 协同工作。

AI Kernel

AI Kernel 是一个可重用的人工智能引擎,它使用自然语言处理和一个激活器/上下文模型,以允许在已安装的单元之间进行多任务处理。

AI Search II

基本上,该库为程序员提供了一组搜索算法,可用于解决各种不同的问题。其思想是,在开发问题解决软件时,程序员应该能够专注于问题的表示,而无需费心实现将用于实际进行搜索的搜索算法。这个想法通过一组搜索类的实现来实现,这些搜索类可以通过 C++ 的派生和继承特性合并到其他软件中。以下搜索算法已被实现:

该库有一本配套书籍,“面向对象的AI,使用 C++”。

Alchemy

Alchemy 是一个软件包,提供了一系列用于统计关系学习和概率逻辑推理的算法,基于马尔可夫逻辑表示。Alchemy 允许您轻松开发各种 AI 应用程序,包括

Aleph

本文档提供了关于假设学习引擎 (Aleph) 的参考信息。Aleph 是一个归纳逻辑编程 (ILP) 系统。Aleph 旨在成为探索思想的原型。Aleph 是牛津大学计算机实验室的 Ashwin Srinivasan 博士用 Prolog 实现的 ILP 算法,专门为使用 YAP Prolog 编译器编译而编写

Microprograms

一个基于案例推理的“微型”版本论文程序的集合,这些程序是为教学目的而开发的。这些程序旨在将原始程序的关键方面提炼成一种易于理解、修改和扩展的形式。

Chess In Lisp (CIL)

CIL (Lisp 中的象棋) 基础是一个 Common Lisp 实现,包含了开发象棋应用程序所需的所有核心功能。CIL 项目的主要目的是让 AI 研究人员对使用 Lisp 在象棋领域工作感兴趣。

clasp

clasp 是一个用于(扩展的)普通逻辑程序的答案集求解器。它将答案集编程 (ASP) 的高级建模能力与布尔约束求解领域的最新技术相结合。主要的 clasp 算法依赖于冲突驱动的 nogood 学习,这项技术在可满足性检查 (SAT) 方面非常成功。与其他学习型 ASP 求解器不同,clasp 不依赖于遗留软件,例如 SAT 求解器或任何其他现有的 ASP 求解器。相反,clasp 是真正为基于冲突驱动的 nogood 学习的答案集求解而开发的。clasp 可以作为 ASP 求解器(在 LPARSE 输出格式上)、SAT 求解器(在简化的 DIMACS/CNF 格式上)或 PB 求解器(在 OPB 格式上)应用。

ConceptNet

ConceptNet 旨在让计算机访问常识知识,这是普通人知道但通常不说的信息。ConceptNet 中的数据是从普通人那里收集的,他们通过网络贡献了这些数据。ConceptNet 以语义网络的形式表示这些数据,并使其可用于自然语言处理和智能用户界面。

此 API 提供 Python 代码,用于访问 ConceptNet 3 和将成为 ConceptNet 4 的开发数据库,以及使用它所需的自然语言工具。它使用 Django 与数据库进行交互。

ERESYE

ERESYE 的意思是 ERlang 专家系统引擎。它是一个库,用于使用 Erlang 编程语言编写专家系统和规则处理引擎。它允许创建多个引擎,每个引擎都有自己的事实和规则要处理。

FFLL

Free Fuzzy Logic Library (FFLL) 是一个开源模糊逻辑类库和 API,它针对速度关键型应用进行了优化,例如视频游戏。FFLL 能够加载符合 IEC 61131-7 标准的文件。

FLiP

Flip 是一个用 Python 编写的逻辑框架。逻辑框架是一个库,用于定义逻辑和编写应用程序,例如定理证明器。检查器可以使用不同的逻辑;Flip 自带几种逻辑。您可以通过在 Python 中编写模块来添加另一种逻辑,或添加公理和派生规则。Python 既是对象语言又是元语言。公式、推理规则和整个证明都是 Python 表达式。证明器命令是 Python 函数。

Fuzzy sets for Ada

Fuzzy sets for Ada 是一个库,提供置信因子的实现,包括运算 not、and、or、xor、+ 和 *,经典模糊集及其集合论运算和可能性理论运算,直觉模糊集及其运算,基于直觉模糊集和可能性理论的模糊逻辑;模糊数,包括整数和浮点数,具有常规算术运算,以及语言变量和语言变量集及其运算。支持面向字符串的 I/O。

HTK

Hidden Markov Model Toolkit (HTK) 是一个可移植的工具包,用于构建和操作隐马尔可夫模型。HTK 由一组库模块和 C 源代码形式的工具组成。这些工具为语音分析、HMM 训练、测试和结果分析提供了复杂的功能。该软件支持使用连续密度混合高斯分布和离散分布的 HMM,可用于构建复杂的 HMM 系统。HTK 版本包含大量的文档和示例。

JCK

JCK 是一个新的库,为 Java 提供约束编程和搜索。

源代码和文档可从上面的链接获得。

KANREN

KANREN 是一个声明式逻辑编程系统,具有一流的关系,嵌入在 Scheme 的纯函数子集中。该系统具有集合论语义、真联合、公平调度、一流关系、词法作用域逻辑变量、深度优先和迭代加深策略。该系统在没有削减的情况下实现了高性能和表达性。

LK

LK 是旅行商问题和最小权重完美匹配问题的 Lin-Kernighan 启发式算法的实现。它针对二维几何实例进行了调整,并已应用于多达一百万个城市的某些实例。还包括实例生成器和 Perl 脚本,用于处理 TSPLIB 实例。

此实现引入了“高效集群补偿”,这是一种实验性算法技术,旨在使 Lin-Kernighan 启发式算法在面对集群数据时更加稳健。

LingPipe

LingPipe 是一套最先进的自然语言处理工具,用 Java 编写,可执行分词、句子检测、命名实体检测、共指消解、分类、聚类、词性标注、通用分块、模糊字典匹配。

Logfun

Logfun 是一个逻辑函子库。逻辑函子是一个函数,可以应用于零个、一个或多个逻辑,从而生成一个新逻辑作为参数逻辑的组合。每个参数逻辑本身都可以通过逻辑函子的组合来构建。逻辑的签名由公式的解析器和打印机、逻辑运算(例如公式之间蕴涵的定理证明器)以及逻辑信息系统 (LIS) 所需的更具体的操作组成。逻辑函子可以是具体域,例如整数、字符串或代数组合器,例如逻辑的乘积或和。

逻辑函子被编码为 Objective Caml 模块。逻辑语义与每个逻辑函子相关联。这使得能够定义逻辑的属性,例如蕴涵证明器的一致性和完整性,并证明在哪些条件下,给定的参数逻辑的属性,生成的蕴涵证明器满足这些属性。

Loom

* 注意:Loom 已被 PowerLoom 取代。

Loom 是一种用于构建智能应用程序的语言和环境。Loom 的核心是一个知识表示系统,用于为 Loom 语言的声明部分提供演绎支持。Loom 中的声明性知识包括定义、规则、事实和默认规则。一个名为分类器的演绎引擎利用前向链接、语义统一和面向对象的真值维护技术,将声明性知识编译成一个网络,旨在有效地支持在线演绎查询处理。

Loom 系统实现了一个基于逻辑的模式匹配器,它驱动生产规则工具和一个模式导向的方法分派工具,该工具支持面向对象方法的定义。Loom 的声明性和过程性组件之间的高度集成允许程序员在单个应用程序中使用逻辑编程、生产规则和面向对象编程范式。Loom 也可以用作覆盖普通 CLOS 网络的演绎层。在这种模式下,用户可以在不影响其基于 CLOS 的应用程序的功能或性能的情况下,获得使用 Loom 的许多好处。

maxent

Maximum Entropy Toolkit 提供了一组工具和库,用于在 Python 或 C++ 中构建最大熵 (maxent) 模型。最大熵模型是一个通用的机器学习框架,已被证明在统计自然语言处理、统计物理、计算机视觉和许多其他领域中具有高度的表达性和强大功能。

它具有条件最大熵模型、L-BFGS 和 GIS 参数估计、高斯先验平滑、C++ API、Python 扩展模块、命令行实用程序和良好的文档。Java 版本也可用。

Nyquist

CMU 的计算机音乐项目正在开发计算机音乐和交互式表演技术,以增强人类的音乐体验和创造力。这项跨学科的努力借鉴了音乐理论、认知科学、人工智能和机器学习、人机交互、实时系统、计算机图形学和动画、多媒体、编程语言和信号处理。这些跨学科努力的一个范例是创建交互式表演,将人类的音乐即兴创作与智能计算机代理实时结合起来。

OpenCyc

OpenCyc 是 Cyc 的开源版本,Cyc 是最大、最完整的通用知识库和常识推理引擎。一个基于 6000 个概念和 60000 个关于它们的断言的本体。

Pattern

Pattern 是 Python 编程语言的 Web 挖掘模块。它捆绑了用于数据检索(Google + Twitter + Wikipedia API、网络蜘蛛、HTML DOM 解析器)、文本分析(基于规则的浅层解析器、WordNet 接口、句法 + 语义 n-gram 搜索算法、tf-idf + 余弦相似度 + LSA 指标)和数据可视化(图网络)的工具。

PowerLoom

PowerLoom 是 Loom 知识表示系统的后继者。它提供了一种语言和环境,用于构建智能的、基于知识的应用程序。PowerLoom 使用完全表达性的、基于逻辑的表示语言(KIF 的变体)。它使用自然演绎推理引擎,该引擎结合了前向和后向链接,以推导出从知识库中断言的事实和规则逻辑上得出的结论。虽然 PowerLoom 不是描述逻辑,但它确实有一个描述分类器,它使用从 Loom 分类器派生的技术来分类以完整的一阶谓词演算表示的描述(参见论文)。PowerLoom 使用模块作为知识库的结构化设备,并使用超轻量级世界来支持假设推理。

为了实现 PowerLoom,我们开发了一种名为 STELLA 的新编程语言,这是一种强类型的、类似 Lisp 的语言,可以翻译成 Lisp、C++ 和 Java。PowerLoom 是用 STELLA 编写的,因此有 Common-Lisp、C++ 和 Java 版本。

PyCLIPS

PyCLIPS 是 Python 语言的扩展模块,它将完整的 CLIPS 功能嵌入到 Python 应用程序中。这意味着您可以为 Python 提供一个强大、可靠、广泛使用且文档完善的推理引擎。

Pyke

Pyke 是一个基于知识的推理引擎(专家系统),用 100% python 编写,可以

python-dlp

python-dlp 旨在成为基于语义 Web 技术的现代专家系统。传统上,专家系统是计算和人工智能的应用,旨在支持尝试重现一个或多个人类专家在特定问题领域中的确定性行为的软件。它利用高效的 RETE_UL 算法作为专家系统的“引擎”

Reverend

Reverned 是一个用 Python 编写的通用贝叶斯分类器。它被设计为易于扩展到任何应用领域。

Screamer

Screamer 是 Common Lisp 的扩展,它增加了对非确定性编程的支持。Screamer 由两个级别组成。基本非确定性级别增加了对回溯和可撤销副作用的支持。在这个非确定性基质之上,Screamer 提供了一种全面的约束编程语言,您可以在其中制定和解决数字和符号约束的混合系统。这两个级别共同增强了 Common Lisp,使其几乎具有 Prolog 和约束逻辑编程语言(如 CHiP 和 CLP(R))的所有功能。此外,Screamer 与 Common Lisp 完全集成。Screamer 程序可以与 Common Lisp 的其他扩展(如 CLOS、CLIM 和 Iterate)共存和互操作。

SimpleAI

Python 库,实现了 Stuart Russel 和 Peter Norvig 的著作《人工智能:一种现代方法》中描述的许多人工智能算法。重点是创建一个稳定、现代且可维护的版本。我们正在测试 lib 的大部分内容,它可以通过 pip install 获得,具有标准 repo 和 lib 架构,文档完善,遵守 python pep8 指南,仅提供可工作的代码(没有未来事物的占位符)等。即使是内部代码的编写也以可读性为中心,而不仅仅是外部 API。

还有 https://code.google.com/p/aima-python/ 也实现了这些算法。虽然它已经有一段时间没有活动了。

SPASS

SPASS:用于带等式的一阶逻辑的自动定理证明器

如果您对一阶逻辑定理证明、软件的形式分析、系统、协议、AI 规划的形式方法、决策程序、模态逻辑定理证明感兴趣,SPASS 可能会为您提供正确的功能。

Torch

Torch 是一个用 C++ 编写的机器学习库。其目的是提供最佳算法的最新技术。它现在是,将来也会一直处于开发中。

Torch 是一个开放库,其作者鼓励所有人开发新包,以便包含在官方网站的未来版本中。

2.2 AI 软件包、应用程序等

这些是各种应用程序、软件包等,旨在用于人工智能领域的研究。它们的易用性会有所不同,因为它们的设计更多是为了满足某些特定的研究兴趣,而不是作为易于使用的商业软件包。

ASA - 自适应模拟退火

ASA(自适应模拟退火)是一种功能强大的全局优化 C 代码算法,特别适用于非线性和/或随机系统。

ASA 的开发目的是在 D 维空间中统计找到非线性非凸成本函数的最佳全局拟合。该算法允许“温度” T 的退火计划在退火时间 k 中呈指数下降,T = T_0 exp(-c k^1/D)。重新退火的引入也允许适应多维参数空间中不断变化的灵敏度。这种退火计划比快速柯西退火(其中 T = T_0/k)更快,并且比玻尔兹曼退火(其中 T = T_0/ln k)快得多。

Babylon

BABYLON 是一个模块化、可配置的混合环境,用于开发专家系统。其功能包括对象、具有前向和后向链接的规则、逻辑 (Prolog) 和约束。BABYLON 在 Common Lisp 中实现和嵌入。

cfengine

Cfengine,或配置引擎,是一种非常高级的语言,用于构建管理和配置大型计算机网络的专家系统。Cfengine 使用类和原始形式的智能的思想,以最经济的方式定义和自动化大型系统的配置。Cfengine 设计为计算机免疫系统的一部分。

CLIPS

CLIPS 是一种高效的开发和交付专家系统工具,它为构建基于规则和/或对象的专家系统提供了完整的环境。

CLIPS 提供了一个有凝聚力的工具,用于处理各种知识,并支持三种不同的编程范式:基于规则的、面向对象的和过程式的。基于规则的编程允许将知识表示为启发式方法或“经验法则”,这些方法指定了针对给定情况要执行的一组操作。面向对象的编程允许将复杂系统建模为模块化组件(可以轻松重用以建模其他系统或创建新组件)。CLIPS 提供的过程式编程功能类似于 C、Pascal、Ada 和 LISP 等语言中发现的功能。

EMA-XPS - 混合图形专家系统 Shell

EMA-XPS 是一个混合图形专家系统 shell,基于德国国家计算机科学研究中心 (GMD) 的面向 ASCII 的 shell Babylon 2.3。除了 Babylon 的 AI 能力(面向对象的数据表示、前向和后向链接规则 - 可收集成集合、Horn 子句和约束网络)外,还提供了基于 X11 窗口系统和 OSF/Motif Widget Library 的图形界面。

Eprover

E Equational Theorem Prover 是一个纯粹的等式定理证明器。核心证明过程对子句范式中的公式进行操作,使用结合了叠加(选择否定文字)和重写的演算。没有实现非等式文字的特殊规则,即,分辨率通过参数调制和等式分辨率来模拟。基本演算通过 AC 冗余消除规则、一些上下文简化和伪分裂来扩展。最新版本的 E 还支持同时参数调制,可以用于所有推理或选定的推理。

E 基于给定子句算法的 DISCOUNT 循环变体,即活动事实和被动事实的严格分离。E 中的证明搜索主要由文字选择策略、子句评估启发式和简化排序控制。证明器支持大量预编程的文字选择策略,其中许多仅是实验性的。子句评估启发式可以通过组合各种参数化原始评估函数来动态构建,也可以从一组预定义的启发式中选择。支持的项排序是 Knuth-Bendix 排序 (KBO) 和字典路径排序 (LPO) 的几个参数化实例。

FOOL & FOX

FOOL 代表 Fuzzy Organizer OLdenburg。它是奥尔登堡大学一个项目的成果。FOOL 是一个图形用户界面,用于开发模糊规则库。FOOL 将帮助您发明和维护一个数据库,该数据库指定模糊控制器或类似事物的行为。

FOX 是一个小而强大的模糊引擎,它读取此数据库,读取一些输入值并计算新的控制值。

FreeHAL

FreeHAL 是一个自学习对话模拟器,它使用语义网络来组织其知识。

FreeHAL 使用语义网络、模式匹配、词干提取器、词性数据库、词性标注器和隐马尔可夫模型。在线版本和下载版本都支持 TTS。

FUF 和 SURGE

FUF 是 Martin Kay 引入的功能统一文法 (FUG) 形式主义的扩展实现,专门用于自然语言生成任务。它为基本形式主义添加了以下功能:

这些扩展允许开发大型文法,这些文法可以高效处理,并且可以更轻松地维护和理解。SURGE 是用 FUF 编写的大型英语句法实现文法。SURGE 的开发目的是作为一个黑盒句法生成组件,用于更大的生成系统中,该系统封装了丰富的英语句法知识。SURGE 也可以用作从生成角度探索文法编写的平台。

GATE

GATE(文本工程通用架构)是一个架构、框架和开发环境,用于开发、评估和嵌入人类语言技术。

GATE 由三个要素组成:

The Grammar Workbench

似乎已过时??? 它已从站点中删除,尽管其父项目仍在进行中。

The Grammar Workbench,或简称 GWB,是一个用于舒适地开发 AGFL 形式主义中的仿射文法的环境。其目的是:

GSM Suite

GSM Suite 是一组程序,用于以图形方式使用有限状态机。该套件包含编辑、编译和打印状态机的程序。套件中包含一个编辑器程序 gsmedit,一个编译器 gsm2cc,它生成状态机的 C++ 实现,一个 PostScript 生成器 gsm2ps,以及另外两个次要程序。GSM 在 GNU 通用公共许可证下获得许可,因此根据该许可证的条款,您可以免费使用它。

Isabelle

Isabelle 是剑桥大学和慕尼黑工业大学开发的流行的通用定理证明器。现有的逻辑(如 Isabelle/HOL)提供了一个定理证明环境,可随时用于大型应用程序。Isabelle 也可以用作演绎系统快速原型设计的框架。它带有一个大型库,包括 Isabelle/HOL(经典高阶逻辑)、Isabelle/HOLCF(Scott 的可计算函数逻辑与 HOL)、Isabelle/FOL(经典和直觉一阶逻辑)和 Isabelle/ZF(基于 FOL 的 Zermelo-Fraenkel 集合论)。

Jess, the Java Expert System Shell

Jess 是流行的 CLIPS 专家系统 shell 的克隆,完全用 Java 编写。使用 Jess,您可以方便地为您的 applet 提供“推理”能力。Jess 与所有版本的 Java 兼容,从 1.0.2 版本开始。Jess 实现了 CLIPS 中的以下构造:defrules、deffunctions、defglobals、deffacts 和 deftemplates。

learn

Learn 是一个带有记忆模型的词汇学习程序。

LISA

LISA (基于 Lisp 的智能软件代理) 是一个生产规则系统,深受 JESS (Java 专家系统 Shell) 的影响。它的核心是一个基于 Rete 模式匹配算法的推理引擎。LISA 还提供了对普通 CLOS 对象进行推理的能力。

Livingstone2

Livingstone2 (L2) 是一个可重用的人工智能 (AI) 软件系统,旨在协助航天器、生命支持系统、化工厂或其他复杂系统在硬件故障或意外事件面前也能稳健运行,且只需最少的人工监督。

NICOLE

NICOLE(近乎智能的计算机操作语言检查器)是一个理论或实验,如果给计算机足够多的关于单词、短语和句子如何相互关联的组合,它就可以与您对话。它试图通过学习单词如何与其他单词相关联来模拟对话。人类通过键盘与 NICOLE 通信,NICOLE 用它自己自动生成的句子回复,这些句子基于 NICOLE 存储在其数据库中的内容。每个新输入的句子,如果 NICOLE 不知道,都会包含到 NICOLE 的数据库中,从而扩展 NICOLE 的知识库。

Otter: 自动演绎系统

我们目前的自动推理系统 Otter 被设计用于证明用带等式的一阶逻辑陈述的定理。Otter 的推理规则基于归结和超参数化,它包括用于项重写、项排序、Knuth-Bendix 完备化、加权以及指导和限制证明搜索的策略的功能。Otter 还可以用作符号计算器,并具有嵌入式等式编程系统。

PVS

PVS 是一个验证系统:也就是说,一种与支持工具和定理证明器集成的规范语言。它的目的是捕捉机械化形式化方法的最新技术,并且足够坚固,可以用于重要的应用。PVS 是一个研究原型:它随着我们开发或应用新功能以及实际使用的压力暴露新需求而不断发展和改进。

SNePS

SNePS 研究小组的长期目标是设计和构建一个使用自然语言的计算机化认知代理,并开展人工智能、计算语言学和认知科学方面的必要研究以实现这一目标。该小组的三个重点是知识表示、推理以及自然语言理解和生成。该小组因其开发的 SNePS 知识表示/推理系统以及其计算机化认知代理 Cassie 而广为人知。

Soar

Soar 被开发为一种通用的认知架构。我们的最终目的是使 Soar 架构能够

换句话说,我们的意图是让 Soar 支持通用智能代理所需的所有能力。

TCM

TCM(概念建模工具包)是我们的一套图形编辑器。TCM 包含用于实体-关系图、类-关系图、数据和事件流图、状态转换图、Jackson 过程结构图和系统网络图、函数细化树以及各种表格编辑器(例如函数-实体表格编辑器和函数分解表格编辑器)的图形编辑器。TCM 易于使用,并执行大量的 consistency 检查,其中一些是立即执行的,另一些是根据请求执行的。

Yale

YALE(又一个学习环境)是一个用于机器学习实验的环境。实验可以由大量任意嵌套的运算符组成,它们的设置由 XML 文件描述,这些文件可以使用图形用户界面轻松创建。YALE 的应用涵盖研究和实际世界的学习任务。

WEKA

WEKA(怀卡托知识分析环境)是一个最先进的设施,用于将机器学习技术应用于实际问题。它是一个综合性的软件“工作台”,允许人们分析现实世界的数据。它在一个通用框架和一个统一的用户界面中集成了不同的机器学习工具。它旨在支持“简单至上”的方法,这种方法允许用户在寻找更复杂的解决方案之前,先使用简单的机器学习工具进行交互式实验。


下一页 上一页 目录