本发明涉及认知智能处理领域,具体涉及一种平面几何自动解题方法及系统。
背景技术:
目前人工智能技术发展迅速,在各个领域得到了深度的应用,人工智能在教育领域的应用也开始逐渐崭露头角。个性化、自适应教育一直是k12教育领域中的一大痛点与难点,人工智能技术的介入为教育实现千人千面带来了希望。自动解题技术是实现智能教育的关键技术,目前,多数的发明和研究集中在代数问题的和表示问题的自动求解上。对于几何题目的自动求解是非常困难的,比如如何理解文本,如何理解图形,如何表示将图像与文本题干进行描述表达,如何将图像和文本理解对齐,如何快速在规则库中推理出求解方法等等都非常困难。
技术实现要素:
因此,本发明要解决的技术问题在于克服现有技术中平面几何自动解题方法解题困难、速度慢的缺陷,从而提供一种平面几何自动解题方法及系统。
为达到上述目的,本发明提供如下技术方案:
第一方面,本发明实施例提供一种平面几何自动解题方法,包括如下步骤:
获取待求解的几何题题干,所述题干包括几何题目文本;
利用预设文本解析规则,解析几何题目文本中的空间结构及几何元素关系,作为几何题目文本解析结果;
将预设几何知识知识库中的定理分为低阶定理和高阶定理,所述低阶定理通过一步推理求解可得,所述高阶定理通过多步推理求解可得;
基于几何题目文本解析结果,使用低阶定理进行全局搜索,直到所有的定理均无新的属性被推理出来;其次,在高阶定理中进行搜索推理,当推理出求解目标后,停止推理,否则使用低阶定理重新搜索。
在一实施例中,所述预设文本解析规则包括:
一阶规则,用于解析单个几何元素的关系;
二阶规则,用于解析两个几何元素之间的关系;
三阶规则,用于解析基于数组的几何三层关系。
在一实施例中,所述所述题干还包括:几何图形;所述平面几何自动解题方法,还包括:
对几何元素及符号分别进行识别,将识别出的几何基本元素和字符的相关字母、数字进行关联进行符号标定,得到几何图形的解析结果;
将几何题目文本解析结果和几何图形的解析结果进行逻辑表达融合,消除歧义或重复的逻辑表达;
基于逻辑表达融合的解析结果,使用低阶定理进行全局搜索,直到所有的定理均无新的属性被推理出来;其次,在高阶定理中进行搜索推理,当推理出求解目标后,停止推理,否则使用低阶定理重新搜索。
在一实施例中,对几何元素进行识别是基于霍夫变换方法对几何元素进行识别,包括:
预设一个阈值,当连通部分的面积大于阈值时,就将连通部分定义为几何元素,其余部分定义为符号;
产生一系列的几何元素集合,从几组不同的几何元素集合中选择出尽可能多的覆盖到整个几何图形的描述集合。
在一实施例中,对符号进行识别的过程,包括:
在输入的几何图形中对标注的字母、数字以及角度的字符进行检测并分割出来;
对分割出来的各个字符进行多种尺度变化;
将每个字符不同尺度的图像输入到ocr识别模块,将识别结果进行数组存储;
在识别结果的数组中,使用多数投票规则进行选择最终识别结果。
在一实施例中,将识别出的几何基本元素和字符的相关字母、数字进行关联进行符号标定的过程包括:
以几何图形图像的左下角为坐标原点,以水平方向为x轴,竖直方向为y轴建立直角坐标系,并且计算所有几何元素的坐标,以及各个符号的坐标;
计算各个符号与几何元素之间的几何距离,根据几何距离判断相应符号所描述的几何元素。
第二方面,本发明实施例提供一种平面几何自动解题系统,包括:
几何题题干获取模块,用于获取待求解的几何题题干,所述题干包括几何题目文本;
文本解析器,用于利用预设文本解析规则,解析几何题目文本中的空间结构及几何元素关系,作为几何题目文本解析结果;
几何知识库,用于将预设几何知识知识库中的定理分为低阶定理和高阶定理,所述低阶定理通过一步推理求解可得,所述高阶定理通过多步推理求解可得;
第一推理器,用于基于几何题目文本解析结果,使用低阶定理进行全局搜索,直到所有的定理均无新的属性被推理出来;其次,在高阶定理中进行搜索推理,当推理出求解目标后,停止推理,否则使用低阶定理重新搜索。
在一实施例中,所述题干还包括:几何图形;所述平面几何自动解题系统,还包括:
图形解析器,用于对几何元素及符号分别进行识别,将识别出的几何基本元素和字符的相关字母、数字进行关联进行符号标定,得到几何图形的解析结果;
联合解析器,用于将几何题目文本解析结果和几何图形的解析结果进行逻辑表达融合,消除歧义或重复的逻辑表达;
第二推理器,用于逻辑表达融合的解析结果,使用低阶定理进行全局搜索,直到所有的定理均无新的属性被推理出来;其次,在高阶定理中进行搜索推理,当推理出求解目标后,停止推理,否则使用低阶定理重新搜索。
第三方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行本发明实施例第一方面的平面几何自动解题方法。
第四方面,本发明实施例提供一种计算机设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行本发明实施例第一方面的平面几何自动解题方法。
本发明技术方案,具有如下优点:
本发明提供的平面几何自动解题方法及系统,首先获取待求解的几何题题干,当题干包括几何题目文本;利用预设文本解析规则,解析几何题目文本中的空间结构及几何元素关系,作为几何题目文本解析结果;将预设几何知识知识库中的定理分为低阶定理和高阶定理;基于几何题目文本解析结果,依次使用低阶定理和高阶定理中进行搜索推理,当推理出求解目标后,停止推理,大大降低了搜索空间,提高了解题效率。当题干包括文本和图形时,也可以实现对题目文本和几何图形的联合解析,对求解目标进行高效搜索推理。本发明提供的平面几何自动解题方法,较以往的解题方法,更加全面化、智能化以及可读性,可应用于中小学数学几何部分的个性化教学。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中平面几何自动解题方法的一个具体示例的流程图;
图2为本发明实施例中平面几何自动解题方法的另一个具体示例的流程图;
图3为本发明实施例中对几何图形进行解析的执行流程图;
图4为本发明实施例中符号标定的示意图;
图5为本发明实施例中提供的平行四边形的示意图;
图6为本发明实施例中提供的三角形的示意图;
图7为本发明实施例中平面几何自动解题系统的一个具体示例的模块组成图;
图8为本发明实施例中平面几何自动解题系统的另一个具体示例的模块组成图;
图9为本发明实施例提供的计算机设备一个具体示例的组成图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
实施例1
本发明实施例提供一种平面几何自动解题方法,如图1所示,包括如下步骤:
步骤s10:获取待求解的几何题题干,所述题干包括几何题目文本。
实际中几何题的题干有的只包含几何题目文本,有的既包括几何题目文本,又包括几何图形,本实施例先以题干包括几何题目文本为例,进行自动解题。
步骤s20:利用预设文本解析规则,解析几何题目文本中的空间结构及几何元素关系,作为几何题目文本解析结果。
本发明实施例中,预设文本解析规则包括:
一阶规则,用于解析单个几何元素的关系,例如解析基本的几何形状,比如triangle(a,b,c)表示三角形abc,line(q,r)表示过q、r的直线。
二阶规则,用于解析两个几何元素之间的关系,包括两个几何元素的关系对,比如:similar(triangle(a,b,c),triangle(e,f,g))表示三角形abc与三角形efg相似,rediusof(circle(p))表示圆p的半径。
三阶规则,用于解析基于数组的几何三层关系,基于数组的几何三层关系的规则,比如find(lengthof(line(b,c))),equals(measureof(angle(l)),94),分别表示寻找线段bc的长度,角l的度数是不是等于94°。
在一具体实例中,几何题题干为:三角形abc与三角形bcd相似,其中ad=5,cd=12,bc=31.2,求三角形abc的周长。
基于一阶规则得到的解析:
基于二阶规则得到的解析:
基于三阶规则得到的解析:
步骤s30:将预设几何知识知识库中的定理分为低阶定理和高阶定理,所述低阶定理通过一步推理求解可得,所述高阶定理通过多步推理求解可得。
本发明实施例中的几何知识库包括属性集合和知识集合,比如常识与定理;属性几何实质。具体可以将知识库中的定理分为低阶定理和高阶定理,低阶定理通过一步推理求解可得,例如:三角形的内角和是180°,三角形的外角和是360°;高阶定理通过多步推理求解可得,例如勾股定理,阿波罗尼斯定理。
步骤s40:基于几何题目文本解析结果,使用低阶定理进行全局搜索,直到所有的定理均无新的属性被推理出来;其次,在高阶定理中进行搜索推理,当推理出求解目标后,停止推理,否则使用低阶定理重新搜索。
本发明实施例提供的先使用低阶定理进行全局搜索,再进行高阶定理搜索推理的方式,进行相比于基于与几何元素相关的定理均搜索的方式,大大减小了搜索空间,提高了推理求解效率。
在另一具体实施例中,几何题干既包括几何题目文本,又包括几何图形;相比只包括几何题目文本的解题方法,如图2所示,还包括:
步骤21:对几何元素及符号分别进行识别,将识别出的几何基本元素和字符的相关字母、数字进行关联进行符号标定,得到几何图形的解析结果。该步骤的执行流程如图3所示。
其中,对几何元素进行识别是基于霍夫变换方法对几何元素进行识别,包括:预设一个阈值,当连通部分的面积大于阈值时,就将连通部分定义为几何元素,其余部分定义为符号;产生一系列的几何元素集合,从几组不同的几何元素集合中选择出尽可能多的覆盖到整个几何图形的描述集合。
对符号进行识别的过程,包括:在输入的几何图形中对标注的字母、数字以及角度的字符进行检测并分割出来;对分割出来的各个字符进行多种尺度变化;将每个字符不同尺度的图像输入到ocr识别模块,将识别结果进行数组存储;在识别结果的数组中,使用多数投票规则进行选择最终识别结果。
最后进行符号标定,是将图形检测出来的几何基本元素和字符识别出来的相关字母、数字进行关联。具体包括:
首先,以图像的左下角为坐标原点,以水平方向为x轴,竖直方向为y轴建立直角坐标系,并且计算所有点、线等几何元素的坐标,以及各个字母、数字等符号的坐标。
其次,计算各个符号与几何元素之间的几何距离,根据几何距离判断相应符号描述的实体。可以是预设值一个距离阈值,当符号与几何元素之间的距离小于该距离阈值时,判定该符号对应描述该几何元素。如图4所示的为符号标定的示意图。
步骤22:将几何题目文本解析结果和几何图形的解析结果进行逻辑表达融合,消除歧义或重复的逻辑表达。
例如:如图5所示,平行四边形jklm中,边jk=2b+3,jm=3a,求b的值;
经过文本解析得到的逻辑表达如下:
在实际应用中在文本解析和图形解析发生歧义时,可以通过给文本解析和图形解析设置不同的置信度,或可信权重,根据这些因素确定在发生歧义时,最后选取哪个解析结果,仅作为举例说明,并不以此为限。
步骤41:基于逻辑表达融合的解析结果,使用低阶定理进行全局搜索,直到所有的定理均无新的属性被推理出来;其次,在高阶定理中进行搜索推理,当推理出求解目标后,停止推理,否则使用低阶定理重新搜索。
本实施例将逻辑表达融合的解析结果,再依次进行低阶定理和高阶定理的空间搜索得到的推理求解结果,更加准确,同时计算效率也比较高。
在一具体实施例中,以几何题目既包括文本也包括图形作为举例,对该几何题目进行自动求解的过程为:
文本:三角形abc中,bd垂直于ac,边bc=32,cd=x,bd=y,∠cab=54°,求解x。
图形:如图6所示。
文本解析的结果:
{equals(lengthof(line(b,c)),32)
equals(lengthof(line(b,d)),y)
equals(measureof(angle(c,a,b)),54)
equals(lengthof(line(c,d)),x)
perpendicular(line(b,d),line(a,d))
find(x)}
图形解析的结果:
{equals(lengthof(line(b,c)),32)
equals(lengthof(line(b,d)),y)
equals(measureof(angle(d,a,b)),54)
equals(lengthof(line(c,d)),x)
pointliesonline(d,line(a,c))
perpendicular(line(b,d),line(a,d))
equals(lengthof(line(b,c)),
lengthof(line(a,b)))}
联合解析的结果:
{equals(lengthof(line(b,c)),32)
equals(lengthof(line(b,d)),y)
equals(measureof(angle(c,a,b)),54)
equals(lengthof(line(c,d)),x)
pointliesonline(d,line(a,c))
perpendicular(line(b,d),line(a,d))
equals(lengthof(line(b,c)),lengthof(line(a,b)))
find(x)}
基于上述的逻辑表达,以及相应的几何知识库,对该题目进行推理求解。
迭代1:在低阶定理库中进行搜索,基于1-1三角形内角和等于180度,得到∠abd=36°;
迭代2:基于1-2根据全等三角形定理(hl),推导出△abd全等于△cbd,
迭代3:基于1-3全等三角形性质,推理出ab=bc=32;∠bca=∠cab=54°
迭代4:基于1-1三角形内角和等于180°,推理出∠cba=72°
迭代5:在低阶定理中无法推理出新的属性;
迭代6:进入高阶推理,基于正弦定理推理出x=18.8,y=25.9.
结束:y=25.9.
本发明实施例提供的平面几何自动解题方法,既可以对文本题目进行解析,也可以实现对题目文本和几何图形的联合解析,基于定理属性知识库,对求解目标进行高效搜索推理,获得解题方法较以往的解题方法,本发明实施例提供的求解方法更加全面化、智能化以及可读性,可应用于中小学数学几何部分的个性化教学。
实施例2
本发明实施例提供一种平面几何自动解题系统,如图7所示,包括:
几何题题干获取模块10,用于获取待求解的几何题题干,所述题干包括几何题目文本。此模块执行实施例1中的步骤s10所描述的方法,在此不再赘述。
文本解析器20,用于利用预设文本解析规则,解析几何题目文本中的空间结构及几何元素关系,作为几何题目文本解析结果。此模块执行实施例1中的步骤s20所描述的方法,在此不再赘述。
几何知识库30,用于将预设几何知识知识库中的定理分为低阶定理和高阶定理,所述低阶定理通过一步推理求解可得,所述高阶定理通过多步推理求解可得。此模块执行实施例1中的步骤s30所描述的方法,在此不再赘述。
第一推理器40,用于基于几何题目文本解析结果,使用低阶定理进行全局搜索,直到所有的定理均无新的属性被推理出来;其次,在高阶定理中进行搜索推理,当推理出求解目标后,停止推理,否则使用低阶定理重新搜索。此模块执行实施例1中的步骤s40所描述的方法,在此不再赘述。
在另一实施例中,上述平面几何自动解题系统,如图8所示,包括:
图形解析器21,用于对几何元素及符号分别进行识别,将识别出的几何基本元素和字符的相关字母、数字进行关联进行符号标定,得到几何图形的解析结果。此模块执行实施例1中的步骤s21所描述的方法,在此不再赘述。
联合解析器22,用于将几何题目文本解析结果和几何图形的解析结果进行逻辑表达融合,消除歧义或重复的逻辑表达。此模块执行实施例1中的步骤s22所描述的方法,在此不再赘述。
第二推理器41,用于基于逻辑表达融合的解析结果,使用低阶定理进行全局搜索,直到所有的定理均无新的属性被推理出来;其次,在高阶定理中进行搜索推理,当推理出求解目标后,停止推理,否则使用低阶定理重新搜索。此模块执行实施例1中的步骤s41所描述的方法,在此不再赘述。
本发明实施例提供的平面几何自动解题系统,既可以对文本题目进行解析,也可以实现对题目文本和几何图形的联合解析,基于定理属性知识库,对求解目标进行高效搜索推理,获得解题方法较以往的解题方法,本发明实施例提供的求解方法更加全面化、智能化以及可读性,可应用于中小学数学几何部分的个性化教学。
实施例3
本发明实施例提供一种计算机设备,如图9所示,该设备可以包括处理器51和存储器52,其中处理器51和存储器52可以通过总线或者其他方式连接,图9以通过总线连接为例。
处理器51可以为中央处理器(centralprocessingunit,cpu)。处理器51还可以为其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器52作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的对应的程序指令/模块。处理器51通过运行存储在存储器52中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例1中的平面几何自动解题方法。
存储器52可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器51所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器52可选包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至处理器51。上述网络的实例包括但不限于互联网、企业内部网、企业内网、移动通信网及其组合。
一个或者多个模块存储在存储器52中,当被处理器51执行时,执行实施例1中的平面几何自动解题方法。
上述计算机设备具体细节可以对应参阅实施例1中对应的相关描述和效果进行理解,此处不再赘述。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flashmemory)、硬盘(harddiskdrive,缩写:hdd)或固态硬盘(solid-statedrive,ssd)等;存储介质还可以包括上述种类的存储器的组合。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。