博舍

浅谈逻辑学与人工智能 数学在人工智能上的应用有哪些

浅谈逻辑学与人工智能

摘要:人工智能的产生与发展和逻辑学的发展密不可分。逻辑学为人工智能的研究提供了根本观点与方法,而逻辑方法则是人工智能研究中的主要形式化工具。本文从逻辑学为人工智能的研究提供理论基础出发,讨论了经典逻辑和非经典逻辑在人工智能中的应用,以及人工智能在逻辑学发展方向上的影响与作用。

人工智能主要研究用人工方法模拟和扩展人的智能,最终实现机器智能。人工智能研究与人的思维研究密切相关。逻辑学始终是人工智能研究中的基础科学问题,它为人工智能研究提供了根本观点与方法。

1人工智能学科的诞生

12世纪末13世纪初,西班牙罗门・卢乐提出制造可解决各种问题的通用逻辑机。17世纪,英国培根在《新工具》中提出了归纳法。随后,德国莱布尼兹做出了四则运算的手摇计算器,并提出了“通用符号”和“推理计算”的思想。19世纪,英国布尔创立了布尔代数,奠定了现代形式逻辑研究的基础。德国弗雷格完善了命题逻辑,创建了一阶谓词演算系统。20世纪,哥德尔对一阶谓词完全性定理与N形式系统的不完全性定理进行了证明。在此基础上,克林对一般递归函数理论作了深入的研究,建立了演算理论。英国图灵建立了描述算法的机械性思维过程,提出了理想计算机模型(即图灵机),创立了自动机理论。这些都为1945年匈牙利冯・诺依曼提出存储程序的思想和建立通用电子数字计算机的冯・诺依曼型体系结构,以及1946年美国的莫克利和埃克特成功研制世界上第一台通用电子数学计算机ENIAC做出了开拓性的贡献。

以上经典数理逻辑的理论成果,为1956年人工智能学科的诞生奠定了坚实的逻辑基础。

现代逻辑发展动力主要来自于数学中的公理化运动。20世纪逻辑研究严重数学化,发展出来的逻辑被恰当地称为“数理逻辑”,它增强了逻辑研究的深度,使逻辑学的发展继古希腊逻辑、欧洲中世纪逻辑之后进入第三个高峰期,并且对整个现代科学特别是数学、哲学、语言学和计算机科学产生了非常重要的影响。

2逻辑学的发展

2.1逻辑学的大体分类逻辑学是一门研究思维形式及思维规律的科学。从17世纪德国数学家、哲学家莱布尼兹(G.Leibniz)提出数理逻辑以来,随着人工智能的一步步发展的需求,各种各样的逻辑也随之产生。逻辑学大体上可分为经典逻辑、非经典逻辑和现代逻辑。经典逻辑与模态逻辑都是二值逻辑。多值逻辑,是具有多个命题真值的逻辑,是向模糊逻辑的逼近。模糊逻辑是处理具有模糊性命题的逻辑。概率逻辑是研究基于逻辑的概率推理。

2.2泛逻辑的基本原理当今人工智能深入发展遇到的一个重大难题就是专家经验知识和常识的推理。现代逻辑迫切需要有一个统一可靠的,关于不精确推理的逻辑学作为它们进一步研究信息不完全情况下推理的基础理论,进而形成一种能包容一切逻辑形态和推理模式的,灵活的,开放的,自适应的逻辑学,这便是柔性逻辑学。而泛逻辑学就是研究刚性逻辑学(也即数理逻辑)和柔性逻辑学共同规律的逻辑学。

泛逻辑是从高层研究一切逻辑的一般规律,建立能包容一切逻辑形态和推理模式,并能根据需要自由伸缩变化的柔性逻辑学,刚性逻辑学将作为一个最小的内核存在其中,这就是提出泛逻辑的根本原因,也是泛逻辑的最终历史使命。

3逻辑学在人工智能学科的研究方面的应用

逻辑方法是人工智能研究中的主要形式化工具,逻辑学的研究成果不但为人工智能学科的诞生奠定了理论基础,而且它们还作为重要的成分被应用于人工智能系统中。

3.1经典逻辑的应用

人工智能诞生后的20年间是逻辑推理占统治地位的时期。1963年,纽厄尔、西蒙等人编制的“逻辑理论机”数学定理证明程序(LT)。在此基础之上,纽厄尔和西蒙编制了通用问题求解程序(GPS),开拓了人工智能“问题求解”的一大领域。经典数理逻辑只是数学化的形式逻辑,只能满足人工智能的部分需要。

3.2非经典逻辑的应用

(1)不确定性的推理研究人工智能发展了用数值的方法表示和处理不确定的信息,即给系统中每个语句或公式赋一个数值,用来表示语句的不确定性或确定性。比较具有代表性的有:1976年杜达提出的主观贝叶斯模型,1978年查德提出的可能性模型,1984年邦迪提出的发生率计算模型,以及假设推理、定性推理和证据空间理论等经验性模型。

归纳逻辑是关于或然性推理的逻辑。在人工智能中,可把归纳看成是从个别到一般的推理。借助这种归纳方法和运用类比的方法,计算机就可以通过新、老问题的相似性,从相应的知识库中调用有关知识来处理新问题。

(2)不完全信息的推理研究常识推理是一种非单调逻辑,即人们基于不完全的信息推出某些结论,当人们得到更完全的信息后,可以改变甚至收回原来的结论。非单调逻辑可处理信息不充分情况下的推理。20世纪80年代,赖特的缺省逻辑、麦卡锡的限定逻辑、麦克德莫特和多伊尔建立的NML非单调逻辑推理系统、摩尔的自认知逻辑都是具有开创性的非单调逻辑系统。常识推理也是一种可能出错的不精确的推理,即容错推理。

此外,多值逻辑和模糊逻辑也已经被引入到人工智能中来处理模糊性和不完全性信息的推理。多值逻辑的三个典型系统是克林、卢卡西维兹和波克万的三值逻辑系统。模糊逻辑的研究始于20世纪20年代卢卡西维兹的研究。1972年,扎德提出了模糊推理的关系合成原则,现有的绝大多数模糊推理方法都是关系合成规则的变形或扩充。

4人工智能当代逻辑发展的动力

现代逻辑创始于19世纪末叶和20世纪早期,其发展动力主要来自于数学中的公理化运动。21世纪逻辑发展的主要动力来自哪里?笔者认为,计算机科学和人工智能将至少是21世纪早期逻辑学发展的主要动力源泉,并将由此决定21世纪逻辑学的另一幅面貌。由于人工智能要模拟人的智能,它的难点不在于人脑所进行的各种必然性推理,而是最能体现人的智能特征的能动性、创造性思维,这种思维活动中包括学习、抉择、尝试、修正、推理诸因素。例如,选择性地搜集相关的经验证据,在不充分信息的基础上做出尝试性的判断或抉择,不断根据环境反馈调整、修正自己的行为,由此达到实践的成功。于是,逻辑学将不得不比较全面地研究人的思维活动,并着重研究人的思维中最能体现其能动性特征的各种不确定性推理,由此发展出的逻辑理论也将具有更强的可应用性。

5结语

人工智能的产生与发展和逻辑学的发展密不可分。一方面我们试图找到一个包容一切逻辑的泛逻辑,使得形成一个完美统一的逻辑基础;另一方面,我们还要不断地争论、更新、补充新的逻辑。如果二者能够有机地结合,将推动人工智能进入一个新的阶段。概率逻辑大都是基于二值逻辑的,目前许多专家和学者又在基于其他逻辑的基础上研究概率推理,使得逻辑学尽可能满足人工智能发展的各方面的需要。就目前来说,一个新的泛逻辑理论的发展和完善需要一个比较长的时期,那何不将“百花齐放”与“一统天下”并行进行,各自发挥其优点,为人工智能的发展做出贡献。目前,许多制约人工智能发展的因素仍有待于解决,技术上的突破,还有赖于逻辑学研究上的突破。在对人工智能的研究中,我们只有重视逻辑学,努力学习与运用并不断深入挖掘其基本内容,拓宽其研究领域,才能更好地促进人工智能学科的发展。

数理逻辑在程序中的应用

1、数理逻辑简介

    数理逻辑又称符号逻辑、理论逻辑。它既是数学的一个分支,也是逻辑学的一个分支。是用数学方法研究逻辑或形式逻辑的学科。简而言之,数理逻辑就是精确化、数学化的形式逻辑。

 逻辑是指事物的因果关系,或者说条件和结果的关系,这些因果关系可以用逻辑运算来表示,也就是用逻辑代数来描述。事物往往存在两种对立的状态,在逻辑代数中可以抽象地表示为0和1,称为逻辑0状态和逻辑1状态。逻辑代数中的变量称为逻辑变量,用大写字母表示。逻辑变量的取值只有两种,即逻辑0和逻辑1,0和1称为逻辑常量,并不表示数量的大小,而是表示两种对立的逻辑状态。逻辑代数又称为布尔代数,逻辑代数也叫做开关代数。他最初的产生思想是利用计算的方法来代替人们思维中的逻辑推理过程,直到1847年,英国数学家布尔发表了《逻辑的数学分析》,建立了“布尔代数”,并创造一套符号系统,利用符号来表示逻辑中的各种概念,初步奠定数理逻辑的基础。它的基本运算是逻辑加、逻辑乘和逻辑非,也就是命题演算中的“与”、“或”、“非”,运算对象只有两个数0和1,相当于命题演算中的“真”和“假”。逻辑代数的运算特点如同电路分析中的开和关、高电位和低电位,利用电子元件可以组成相当于逻辑加、逻辑乘和逻辑非的门电路,就是逻辑元件。还能把简单的逻辑元件组成各种逻辑网络,这样任何复杂的逻辑关系都可以有逻辑元件经过适当的组合来实现,从而使电子元件具有逻辑判断的功能。

    命题逻辑等值演算就是命题代数,命题代数是一种特殊的逻辑代数。我们把命题看作运算的对象,如同代数中的数字、字母或代数式,而把逻辑连接词看作运算符号,就像代数中的“加、减、乘、除”那样,那么由简单命题组成复合和命题的过程,就可以当作逻辑运算的过程,也就是命题的演算。这样的逻辑运算也同代数运算一样具有一定的性质,满足一定的运算规律。例如满足交换律、结合律、分配律,同时也满足逻辑上的同一律、吸收律、双否定律、狄摩根定律、三段论定律等等。利用这些定律,我们可以进行逻辑推理,可以简化复合命题,可以推证两个复合命题是不是等价,也就是它们的真值表是不是完全相同等等。设W是某一语言中所有命题构成的集合,且设T与F分别为真、假命题,∨、∧、┐分别为命题的析取、合取、否定联结词,则布尔代数〈W,∨,∧,┐,T,F〉就是命题代数。

    逻辑代数与命题代数有所不同。它可以把1和0分别解释为命题的真和假,令变元只取1和0为值,即令其为二值的真值变元,并把┐、∨和∧解释为真值运算,从而得到一种提供命题真值运算定律的真值代数。而且,在二值的真值代数中特别可以有定理“p=1或p=0”,但在一般的命题代数和类代数中却没有与此相应的定理。

    类代数就是集合代数。从逻辑代数、命题代数和类代数让我想到了代数结构(代数系统),布尔代数、集合代数、命题代数都是带两个二元运算和一个一元运算的代数结构。这是抽象代数中的内容,以后有时间再进行总结。

2、程序中的命题逻辑

    逻辑代数在程序中无处不在,而一阶逻辑在人工智能中也被广泛应用。

    程序的结构主要有顺序结构,条件结构和循环结构。数理逻辑在程序中的应用主要是条件结构,体现在语言上就是if...else...和switch控制语句。if后面括号里面的表达式就是命题,当命题为真时,执行紧跟后面的语句;为假时,执行else后面的语句。在写程序时,一定要注意复合命题的真假对应了哪些情况,熟悉命题公式的真值表,从而使自己的程序逻辑精确无误。switch语句只是分支语句,进行多项选择,并没有对命题变量的真假做出判断。有时需要对一些复杂的复合命题进行等值演算之后(也就是化简公式),再将命题变项写入条件中进行判断,这是为了简化判断逻辑以及代码的复杂度。在写if判断语句时,主要是根据情况的真假和条件,构造判断语句。

    下面列几个重要的等值式:

德摩根律:┐(A∧B)⇔┐A∨┐B,┐(A∨B)⇔┐A∧┐B

蕴涵等值式A→B⇔┐(A∨B)

等价等值式A↔B⇔(A→B)∧(B→A)

假言异位A→B⇔┐B→┐A

等价否定等值式A↔B⇔┐A↔┐B

归谬论(A→B)∧(A→┐B)⇔┐A

等值演算:由已知的等值式推算出新的等值式的过程

为什么数学对人工智能至关重要

线性代数有助于产生新的想法,这就是为什么它是人工智能科学家和研究人员必须学习的东西。他们可以用标量、向量、张量、矩阵、集合和序列、拓扑、博弈论、图论、函数、线性变换、特征值和特征向量的概念来建立模型。

向量

矩阵理论

在科幻电影中,你通常会看到,通过执行一些类似于神经系统的计算结构,产生了一个神经网络,它生成神经元之间的连接,以匹配人类大脑的推理方式。将矩阵的概念引入到神经网络的研究中

神经网络可以通过形成三层人工神经元来实现非线性假设:

1.输入层

2.隐藏层

3.输出层

人工智能科学家根据神经网络的隐藏层数量及其连接方式对其进行分类

这些人工神经元可以形成神经网络,这花了大约20年的时间才发现。

特征向量

搜索引擎排名的科学是建立在数学科学的基础上的。页面排名,这正是谷歌作为一家基于数学视角的公司的基础。页面排名是一种算法,最初由拉里·佩奇和谢尔盖·布林在他们的研究论文《大型超文本Web搜索引擎的剖析》中提出。在这一巨大突破的背后,使用了数百年来众所周知的特征值和特征向量的基本概念。

机器人爬虫程序首先检索网页,然后通过分配页面排名值对其进行索引和编目。每个页面的可信度取决于该页面的链接数。

给定页P的秩r(P)假定为,

为了得到收敛速性和收敛速度,对矩阵P进行了调整。当矩阵P的和达到1时,称之为行随机矩阵。页面等级迭代表示一个马尔科夫链的演化,其中web有向图表示为转移概率矩阵P。

它显示了随机浏览者在三个页面中任意时间点的概率。

首先建立一个二元邻接矩阵来表示链路结构,然后将其规范化为概率矩阵。

要计算页秩,必须求解线性系统的特征向量问题,

随机矩阵P的特征值可以假定为1>λ1≥λ2≥…=λn,

V1,V2,V3,…,Vn是对应的特征向量。

经过收敛过程,矩阵P的主特征值应满足λ=1,

这是马尔可夫模型的稳态分布。

PageRank收敛过程如图所示,

这就是Google自动描述每个站点的页面排名值的方式。

微积分

微分学、多元微积分、积分学、梯度下降法的误差最小化和最优化、极限、高级逻辑回归都是数学建模中用到的概念。一个精心设计的数学模型被用于生物医学领域,以高保真度模拟人类健康和疾病的复杂生物学过程。

硅模型是人工智能方法在生物医学中的应用,是一种完全自动化的模型,不需要人体样本、动物实验、临床试验或实验室设备。模型中使用了一个微分数学方程来检验新的力学假设和评估新的治疗靶点。它是最便宜和最方便的方法来研究人类生理学,药物反应,和疾病更准确地通过操纵数学模型参数。

概率

在人工智能的世界里有很多抽象的问题。你可能会经历许多形式的不确定性和随机性。概率论提供了处理不确定性的工具。为了分析一个事件发生的频率,使用了概率的概念,因为它被定义为一个事件发生的机会。

让我们考虑一个机器人。机器人只能向前移动一定的时间,但不能移动一定的距离。为了让机器人前进,科学家们在它的程序设计中使用了数学。离散随机变量、连续随机变量、贝叶斯公式和归一化是一些概率论的概念,它们与线性代数的其他概念一起用于机器人导航和移动。数学和机器人是广泛的领域,我将在下次详细讨论。

最后忠告:

不管你是想成为一名机器学习工程师、数据科学家还是机器人科学家,你都需要精通数学。数学可以提高分析思维能力,这在人工智能中是至关重要的。人工智能科学家认为,人们对人工智能的看法是,它完全是魔法,但它不是魔法,而是创造所有发明背后的魔法的数学。所以,要在如今这个人工智能驱动的世界中占据领导地位,你需要有很强的数学天赋。返回搜狐,查看更多

离散数学在计算机科学中的应用

自从我们学院进行软件工程认证后,期末考试的专业课全部是大题。这次离散数学的最后一题是:利用本学期学到的离散数学的知识阐释其在一个软件工程中的应用。

下面说说离散数学的应用。

离散数学在数据结构中的应用数据结构中将操作对象间的关系分为四类:集合、线性结构、树形结构、图状结构或网状结构。数据结构研究的主要内容是数据的逻辑结构,物理存储结构以及基本运算操作。其中逻辑结构和基本运算操作来源于离散数学中的离散结构和算法思考。离散数学中的集合论、关系、图论、树四个章节就反映了数据结构中四大结构的知识。如集合由元素组成,元素可理解为世上的客观事物。关系是集合的元素之间都存在某种关系。例如雇员与其工资之间的关系。图论是有许多现代应用的古老题目。瑞士数学家列昂哈德·欧拉在18世纪引进了图论的基本思想,他利用图解决了哥尼斯堡七桥问题。还可以用边上带权值的图来解决诸如寻找交通网络里两城市之间最短通路的问题。而树反映对象之间的关系,如组织机构图、家族图、二进制编码都是以树作为模型来讨论。

离散数学在数据库中的应用数据库技术被广泛应用于社会各个领域,关系数据库已经成为数据库的主流,离散数学中的笛卡儿积是一个纯数学理论,是研究关系数据库的一种重要方法,显示出不可替代的作用。不仅为其提供理论和方法上的支持,更重要的是推动了数据库技术的研究和发展。关系数据模型建立在严格的集合代数的基础上,其数据的逻辑结构是一个由行和列组成的二维表来描述关系数据模型。在研究实体集中的域和域之间的可能关系、表结构的确定与设计、关系操作的数据查询和维护功能的实现、关系分解的无损连接性分析、连接依赖等问题都用到二元关系理论。

离散数学在编译原理中的应用编译程序是计算机的一个十分复杂的系统程序。一个典型的编译程序一般都含有八个部分:词法分析程序、语法分析程序、语义分析程序、中间代码生成程序、代码优化程序、目标代码生成程序、错误检查和处理程序、各种信息表格的管理程序。离散数学里的计算模型章节里就讲了三种类型的计算模型:文法、有限状态机和图灵机。具体知识有语言和文法、带输出的有限状态机、不带输出的有限状态机、语言的识别、图灵机等。短语结构文法根据产生式类型来分类:0型文法、1型文法、2型文法、3型文法。以上这些在离散数学里讲述到的知识点在编译原理的词法分析及语法分析中都会用到。因此,离散数学也是编译原理的前期基础课程。

离散数学在人工智能中的应用在人工智能的研究与应用领域中,逻辑推理是人工智能研究中最持久的子领域之一。逻辑是所有数学推理的基础,对人工智能有实际的应用。采用谓词逻辑语言的演绎过程的形式化有助于我们更清楚地理解推理的某些子命题。逻辑规则给出数学语句的准确定义。离散数学中数学推理和布尔代数章节中的知识就为早期的人工智能研究领域打下了良好的数学基础。许多非形式的工作,包括医疗诊断和信息检索都可以和定理证明问题一样加以形式化。因此,在人工智能方法的研究中定理证明是一个极其重要的论题。在这里,推理机就是实现(机器)推理的程序。它既包括通常的逻辑推理,也包括基于产生式的操作。推理机是使用知识库中的知识进行推理而解决问题的。所以推理机也就是专家的思维机制,即专家分析问题、解决问题的方法的一种算法表示和机器实现。当然以上说的是专家系统,一般来说这种人工智能已经被基于统计学习的机器学习所取代。

离散数学在计算机体系结构中的应用在计算机体系结构中,指令系统的设计和改进内容占有相当重要的地位,指令系统的优化意味着整个计算机系统性能的提高。指令系统的优化方法很多,一种方法是对指令的格式进行优化,一条机器指令是由操作码和地址码组成,指令格式的优化是指如何用最短的位数来表示指令的操作信息和地址信息,使程序中的指令的平均字长最短。为此可以用到哈夫曼的压缩概念,哈夫曼(Huffman)压缩是一种无损压缩法。Huffman压缩概念的基本思想是,当各种事件发生的概率不均等时,采用优化技术对发生概率最高的事件用最短的位数(时间)来表示(处理),而对出现概率较低的允许用较长的位数(时间)来表示(处理),就会导致表示(处理)的平均位数(时间)的缩短。利用哈夫曼算法,构造出哈夫曼树。方法是将指令系统的所有指令的使用频度进行统计,并按使用频度由小到大排序,每次选择其中最小的两个频度合并成一个频度是它们二者之和的新结点。再按该频度大小插入余下未参与结合的频度值中。如此继续进行,直到全部频度结合完毕形成根结点为止,之后,对每个结点向下延伸的两个分支,分别标注“1”或“0”,从根结点开始,沿线到达各频度结点所经过的代码序列就构成了该指令的哈夫曼编码。这样得到的编码系列就符合了指令使用概率低的指令编以长码,指令使用概率高的指令编以短码的初衷。

补充离散数学在计算机研究中的作用越来越大,计算机科学中普遍采用离散数学中的一些基本概念、基本思想、基本方法,使得计算机科学越趋完善与成熟。离散数学在计算机科学和技术中有着广泛应用,除了在上述提到的领域中发挥了重要作用外,在其他领域也有着重要的应用,如离散数学中的数理逻辑部分在计算机硬件设计中的应用尤为突出,数字逻辑作为计算机科学的一个重要理论,在很大程度上起源于离散数学的数理逻辑中的命题与逻辑演算。利用命题中各关联词的运算规律把由高低电平表示的各信号之间的运算与二进制数之间的运算联系起来,使得我们可以用数学的方法来解决电路设计问题,使得整个设计过程变得更加直观,更加系统化。集合论在计算机科学中也有广泛的应用,它为数据结构和算法分析奠定了数学基础,也为许多问题从算法角度如何加以解决提供了进行抽象和描述的一些重要方法,在软件工程和数据库中也会用到。代数结构是关于运算或计算规则的学问,在计算机科学中,代数方法被广泛应用于许多分支学科,如可计算性与计算复杂性、形式语言与自动机、密码学、网络与通信理论、程序理论和形式语义学等,格与布尔代数理论成为电子计算机硬件设计和通讯系统设计中的重要工具,图论对开关理论与逻辑设计、计算机制图、操作系统、程序设计语言的编译系统以及信息的组织与检索起重要作用,其平面图、树的研究对集成电路的布线、网络线路的铺设、网络信息流量的分析等的实用价值显而易见

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。

上一篇

下一篇