函数的表示法范例6篇

前言:中文期刊网精心挑选了函数的表示法范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。

函数的表示法

函数的表示法范文1

关键词:线性规划 最值 数形结合 平移

线性规划是运筹学的一个重要分支,而简单的线性规划已编入高中新教材,作为一个新增知识点,它不仅只是对直线内容的深化,更多的是与其它知识的交汇,同时也是增加学生对数学在生活中应用的理解。它能解决一些线性约束条件下求线性约束条件的最值问题,其基本思想即在一定线性约束条件下,通^数形结合的思想求线性目标函数的最值,整个过程主要借助于平面图形,运用这一思想能够比较有效的解决线性规划问题。近些年来线性规划问题是解析几何的重点,每年高考必有一道小题,分值在5分左右。

在实际的教学中,本校对数学教材的教学顺序是:必修1―必修4―必修5―必修2―必修3。而我们要完成的教学任务《简单线性规划》在必修5第三章第3小节,在教学过程中会利用到必修3第三章《直线与方程》的相关概念(斜率、交点坐标、截距)。这又受教材教学先后顺序的影响,要求我们在学习线性规划问题时,必须要考虑回避直线与方程对教学和学生认知的影响。本人在实际教学中,对求线性目标函数最值的方法进行一些尝试。

现举例加以说明。

一、前期铺垫,总结经验

为了更好的回避必修2《直线与方程》相关知识对线性规划的影响,在二元一次不等式(组)表示平面区域学习的时候进行升华与总结。

例1、画出下列不等式表示的平面区域

指导学生自主完成:①建立直角坐标系;②画出等式图像;③确定区域。

解析如下:

总结方法:确定二元一次不等式表示平面区域方法是“线定界,点定域”,定边界时需分清虚实,定区域时常选原点(C≠0)。

抛出问题:能否在画出等式图像时,快速确定不等式表示的区域呢?指导学生继续观察图像。

从上面例子,我们知道一条直线就能瓜分平面了,而不等式组就是不断确定你想要的那个平面,由此可以发现对于不等式 (A>0)表示直线 (A>0)的右上(下)方区域,越往右偏离直线的点坐标(x,y)代入式子

所得值越大;不等式 (A>0)表示直线

(A>0)的左下(上)方区域,越往左偏离直线的点坐标(x,y)代入 所得值越小。这对于解决线性规划问题,做了很大的埋伏,为后续教学做了很好的铺垫。

二、单点解析,检验成果

例2、(2012年山东高考)设变量x,y满足约束条件

则目标函数 的取值范围是( )

分析:求取值范围,实质就是求 的最大值与最小值。

解:先画出满足不等式的可行域. 如图阴影部分不妨令z=0,作参考直线 : 。

通过平移,由图可知,当直线 过点A时z取得最大值,当直线 过点B时z取得最小值。

由 得A(2,0),

因此zmax=6,

由 得 ,

因此 。故选A。

我们可以知道用图解法解决线性规划问题的一般步骤:

①画出可行域;

②作参考直线 ;

③通过平移以及数形结合,确定目标函数最值位置 ;

④解二元一次方程组,求出点的坐标;

⑤计算线性目标函数的最值。

从上面的例子,我们知道,在线性约束条件下,求线性目标函数z=Ax+By(A>0)这种形式的最值问题,是高中线性规划中常见的问题,这类问题的解决,关键在于能够正确理解二元一次不等式组所表示的区域,利用参考直线,寻找可行域内最左(右)的点,即利用图形及平移求最优解及线性目标函数的最值。

三、跨越障碍,思想升华

为了加深学生对数形结合思想及平移方法的理解,特举更具有代表性的一类问题:已知目标函数的最值求参数的问题。

例3、若实数x,y满足不等式组 目标函数 的最大值为2,则实数 的值是_____________。

分析:解答此类问题必须明确线性目标函数的最值一般在可行域的定点或边界取得,运用数形结合的思想、平移方法求解,同时需要注意目标函数的几何意义。

解:先画出满足不等式的可行域。 如图阴影部分。

作参考直线 : ,由图可知,

当直线 过点A时,t取得最大值。

由 得 代入 中,解得 =2。

从上面例子可以看出今后我们在遇到此类问题时,首先想到用数形结合思想,以及平移方法去解决,因为它更直观、形象。 在高考时,能够让学生做得更快、更准。

线性规划思想不仅与函数或不等式有交汇,而且在实际生活中求最值问题时,也有交汇。如在教科书中利用线性规划解决物资问题、产品安排问题与下料问题,引导学生应用数学知识解决实际问题,使学生体验数学在解决实际问题中的作用,在整个的学习过程中,着重培养学生的数形结合思想。虽然解决此类问题的方法不是唯一的,但我们在教学中,需要考虑培养学生学会思考的习惯,以及数学思想的建立。

综上所述,线性规划是直线方程的继续,是直线方程知识的应用,但受教材教学顺序的影响,我们在教学过程中,必须要面对这样的事实,这就要求我们在教学中必须有一些创新,在创新的过程中还不能丢失数学的思想。本人在教学中,从宏观的角度来把握,先期借鉴数轴上数的大小特点,升华了二元一次不等式(组)表示的区域的意义,借助参考直线,学会寻找可行域内最左(右)的点,利用数形结合思想及平移的方法很容易在可行域内找到最值。通过课堂及课后的反馈来看,学生不仅解决了简单线性规划问题,还对数形结合思想有更进一步的思考。在教学中教师不为方法而讲方法,而在此方法的启发下,学生发现了新方法。因此,本人在教学中的尝试,可以算是成功的,并且在解决交汇知识模块时,思想也具有通用性。

函数的表示法范文2

关键词:决策支持系统;结构化方法;证据理论;框架表示法;地震应急案例

中图分类号:TP399

文章标识码:A

文章编号:1007-3221(2015)02-0078-09

引言

近年来,地震突发事件多次发生并严重危害了人民群众的生命财产安全。然而,地震突发事件具有信息不完备、形势紧急以及情况复杂等特点,这为突发事件的应急决策和救援带来了较大困难。Case-Based Reasoning(CBR)能有效解决上述问题,进而有效支持地震突发事件应急决策。案例表示是CBR的基础,其所选用的表示方法和表示内容影响到案例检索的准确性和案例适配的有效性。因此,地震突发蛳件应急案例表示与检索方法研究在CBR的研究中非常重要。

应急案例常使用的表示方法有框架表示法、本体表示法、XML表示法和树结构表示法。

框架表示法结构性强、逻辑清晰,能够将事物的全貌层次分明地展现出来。Liao Zhenliang和PhillipM.Hannam等使用框架表示法描述了石油泄漏应急准备中石油泄漏的情景和应急决策信息;廖振良、刘宴辉和徐祖信等使用框架表示法表示突发环境污染事件;孙殿阁、孙佳、曹婧华等使用框架表爪法表示城市典型灾害系统。以上的研究能够较为清晰全面地描述突发事件,但是没有考虑情景信息的不确定性。翟丹妮和黄卫东提出的框架结构只给出了应急案例的一般性特征,具体的应急领域该框架还需要进一步扩充。

本体表示法能够实现文件共享和异构系统间的互操作,有利于表现事件过程。Baisakhi Chakraborty和D.Ghosh使用本体表示法表示了火灾应急案例。该方法能为专家处置突发事件提供支持,但结构性小强。Zhang Baishang、Li Xiangyang和LiJun等在复用ABC本体模型的基础上构建了面向案例推理的应急案例本体模型。该模型能全面详细地描述应急案例,但其不利于描述结构化知识。Zhao Jinsong和Cui Lin创建了化工厂危险与可操作性分析本体,该本体与CBR集成能实现突发事件应急决策。WuKeshou、等jS构建了飓风应急管理本体,该模型适合描述飓风管理中灾情、物资供应及灾后恢复的知识,但缺少响应过程描述。Z.Fan和S.z1atanova构建的应急管理本体分为动态本体和静态本体,有助于不同领域的语义理解。但是子本体描述简单,不利于展现案例情境及响应过程。

XML表示法具有很强的可共享性,在分布式系统中得到了广泛的应用。仲秋雁和郭素使用XML表尔法将一个应急案例分为若干个元事件,形成明显的层次结构。吕宗平、胡欣和杨宏宇使用XML技术表示机场应急案例。但是这两种方法没有考虑突发事件的信息不完备性。

树结构表示法具有层次清晰、结构分明的特点,也是应急案例常用的表示方法。Cai JiWei和Jia Yunxizin使用树结构表示法进行了战时装备持有量智能决策。该表示方法的创新之处在于加入了战时装备持有量决策者这一因素。

现有的案例表示方法能够较为清晰地描述突发事件。但突发事件往往具备信息不完备(样本数据集无法准确地描述出模型变量的所有状态,主要由信息缺失和小样本观测造成的特征。目前的应急案例表示方法没有考虑信息不完备性,这不利于应急案例表示、检索和适配。本文根据地震突发事件信息不完备的特征和应急决策的结构化需求,将证据理论中的基本信任分配函数引入框架表示法表示地震应急案例,解决信息不完备条件下地震应急案例的表示问题,提高案例检索的准确性和适配结果的有效性。同时,本文也给出了信息不完备条件下地震应急案例的检索方法,这对地震突发事件的CBR具有实用意义

1 信息不完备条件下地震应急案例表示方法

1.1 地震应急案例推理需求分析

本文结合案例推理需求和案例表示方法的特点选取合适的地震应急案例表示方法。面向地震突发l#件的案例推理有以下需求:

(l)地震应急案例推理的结构化需求。所谓结构化程度,是指对某一过程的环境和规律,能否用明确的语言(数学的或逻辑学的,形式的或非形式的,定量的或推理的)给予清晰的说明或描述。如果能描述清楚的,称为结构化问题。地震应急案例种类多样、结构性较差,而案例推理的前提是将非结构化或者半结构化的问题转化为结构化的问题。因此,地震应急案例表示需要选取结构性强的案例表示方法,从而为地震突发事件应急决策提供支持。

(2)地震应急案例推理的定量化需求。地震突发事件应急救援需要不同职能的人员使用相应的装备和物资来完成。因此,地震突发事件应急案例推理不仅需要说明突发事件应急救援的过程,还要给出救援人员、救援物资等的构成及数量。所以,地震应急案例表示需要选取能够支持定量化描述的表示方法,以便于案例适配阶段可以得出人员及物资的量化决策。

目前,主要的案例表示方法有各自的优点和局限性,具体比较见表1。

可以看出框架表示法既能将突发事件应急案例结构化地表示出来,又能满足案例适配的定量化决策,是地震应急案例表示的合适方法。

1.2 基于D/S证据理论的地震应急案例框架表示方法

地震突发事件应急救援主要包含三个部分:突发事件现场的相关情景快速收集;基于情景特征的应急救援方案制定;应急救援效果评估。根据地震突发事件应急决策的流程,可以得出信息完备条件下地震应急案例的概念模型15,见式(1)。

Case=(S,P,E)

(1)

其中,S代表地震应急案例情景特征,P代表地震突发事件应急方案,E代表地震突发事件应急效果。

但是地震突发事件往往具有紧迫性和信息不完备性的特点,为了取得应急救援良机,应急决策人员往往需要根据相关信息和参数对部分情景特征值做出估算来为应急决策提供支持。这样,在信息不完备条件下,地震突发事件的情景特征值实际上是具有不确定性的情景特征值(不需要研判和估算情景特征的情况可以视为不确定性的特殊情况)。因此,本文将用于描述信息不确定性的D/S证据理论引入地震应急案例表示,从而解决信息不完备条件下地震应急案例表示问题。

在证据理论中,假定U为彼此互不相容事件的完备集合的识别框架,可表示为

其中,θ,为识别框架的一个事件或者元素;j=1,2,…,N;识别框架U的所有子集组成的一个集合称为U的幂集,记为2U。

则有如下两个定义:

定义1信任函数Beι(A)是一个从集合2U到[0,1]的映射,如果A和B表示识别框架u,的两个子集,并且,且满足

其中,m(B)是B的基本信任分配函数,Beι(A)称为A的信任函数,用来表示证据对A为真的信任程度。

定义2 不可驳斥函数P*(A)是一个从集合2u到[0,1]的映射,A表示识别框架U的一个子集,且满足

该函数表示不怀疑A的程度。根据以上定义可以得出地震应急中不确定性信息合成规则m(A)=m1(A)m2(A)…mn(A)

所以,信息不完备条件下地震应急案例的概念模型变为式(9)。

Case=((S,m(A)),P,E)

(9)

其中,S代表地震应急案例情景特征,P代表地震应急救援方案,E代表地震应急救援效果,A代表地震应急案例中具有不确定性的情景特征,其不确定性用二元组表示,Beι (A)为A的信任函数,代表A的可信程度;P*(A)为A的不可驳斥函数,代表A的可信程度。m(A)表示对A的信任程度。

具体的案例表示还需要借助于合理的案例表示方法。如上文所述,框架表示法是符合突发事件应急案例推理需求的案例表示方法。根据地震应急案例的概念模型,我们可以得到地震应急案例的框架网络,如图1所示。

地震应急不同于其他突发事件应急,需要多个部门应急联动,并且经常会面临资源不足的情形,所以地震应急案例框架需要采用顶层框架嵌套子框架的形式来构造。地震应急案例的顶层框架如表2所示。根据地震应急案例的框架示意图,本文构造了地震应急案例的子框架,如表3、表4、表5和表6所示。

其他应急方案的表示方法与救援安置方案相似,不再赘述。

通过顶层框架嵌套子框架可以将地震应急案例清晰而结构化地表示出来。

2 信息不完备条件下地震应急案例检索方法

由于信息不完备条件下的地震应急案例表示融入了基本信任分配函数m(A),所以其检索方法也会有所变化。本文使用最近邻法来检索相似案例。该过程分为两个阶段:第一个阶段计算融人基本信任分配函数的地震应急案例的局部属性;第二个阶段计算地震应急案例的全局属性。

2.1 地震应急案例局部相似度的计算

对于地震突发事件情景特征而言,其数据属性可以划分为确定符号属性、确定数属性和模糊属性,义章分别介绍其属性相似度的计算方法。

(1)确定符号属性

确定符号属性是描述地震应急案例情景特征的一种重要数据属性,通常用明确的专业术语来表示引,该属性相似度通过比较目标案例与源案例的含义来计算。信息不完备条件下该属性的计算公式为其中,sima(ci,ti)为目标案例和源案例第i个属性的相似度,m(A)ti为目标案例第i个确定数属性的基本信任分配函数,m(A)。为源案例第i个确定数属性的基本信任分配函数。

(2)确定数属性

确定数属性是地震应急决策的关键属性之一,其计算有多种方法,本文根据地震突发事件的特点选用海明距离来计算确定数属性的相似度,计算公式为

其中,sima(ci,ti)为目标案例和源案例第i个属性的相似度;ti为目标案例第i个确定数属性的值,m(A)ti为目标案例第i个确定数属性的基本信任分配函数;ci为源案例第i个确定数属性的值,m(A)ci为源案例第i个确定数属性的基本信任分配函数;Amaxi为源案例中第i个确定数属性的最大值,即Amaxi=max(cim(A)ci);Amin。为源案例中第i个确定数属性的最小值,即。

(3)模糊属性

地震突发事件的信息不完备性和紧迫性决定了在地震应急案例中存在着大量模糊属性值。由于实际应用中的许多随机变量都是正态分布或者接近正态分布的,所以正态模糊集非常重要。同样,有关地震的许多变量都可以表征为正态模糊集,因此本文使用正态模糊集合来描述模糊属性。正态模糊集的隶属函数为

根据该函数的特点,本文对文献计算模糊属性相似度方法进行改进来计算具有不完备信息的模糊属性相似度。

1)确定数与模糊区间数相似度计算

设a为一确定数,zi为第i个属性的取值范围,b1、b2为模糊区间数的上下限,则有

2)模糊区间数相似度计算设a1、a2和b1、b2分别为两个模糊区间的上下,则有当a1>b2时,计算相似度需要将[a1,a2]和[b1,b2]调换。

3)模糊概念属性相似度计算

计算模糊概念属性相似度需要先使用模糊量化分值将评价模糊处理,然后使用模糊区间属性相似度计算相似性。

2.2 地震应急案例全局相似度的计算

地震应急案例全局相似度是案例中所有情景属性相似度的加权和。情景属性的重要性由其在应急决策制定中的作用来决定。本文使用AHP方法来获取属性权重,然后在应急案例情景属性局部相似度的基础上通过对每个加权的属性相似度求和而得到全局相近似度。其具体的计算公式为

其中,为信息不完备条件下地震应急案例的全局相似度,wi为第i个属性值的权重,sima(ci,ti)为目标案例ti和ci源案例在属性i上的局部相似度,m为属性值的个数。

3 实例应用

本文选取2012年9月7日云南昭通、贵州毕节地震救援安置案例和2008年8月四川攀枝花地震救援安置案例来说明基于证据理论的地震应急案例的框架表示方法及检索方法的具体应用。

地震应急案例表示需要通过信息源获取地震的情景属性并计算信息源的基本信任分配函数。在该案例中,震级、震源深度、海拔、地形、人口密度和应急响应等级的信息可以直接精确获取,其基本信任分配函数值为I。而受伤人数、死亡人数和受灾范围需要通过调查汇报的形式获取,由于地震灾害具有紧急性、破坏性和信息不完备性特点,不同调查汇报单位的汇报结果会有所不同,因此这些数值具有不确定性,需要使用基本信任分配函数来表示这些不确定性。两个调查汇报单位对这三个情景属性的汇报结果分别为(795,0.9)、(81,0.9)、(6214-7100,0.9)和(680,0.6)、(71,0.7)、(6000-7000,0.8)。调用信息不确定处理模型可以对两组汇报数据进行处理。

受伤人数基本信任分配函数为:

可见受伤人数为795人的可能性比受伤人数为680人的可能性大很多,其基本信任分配函数为0. 5732。同样可以获取死亡人数和受灾范围的情景属性及其基本信任分配函数分别为( 81,0.5569)、(6214-8000,0.5285)。

因此云南昭通、贵州毕节地震救援安置子案例可以表示为以下表格。

进行案例检索需要计算属性相似度和全局相似度。属性相似度使用前文的公式进行计算,所需的属性的取值范围见表11。

确定数属性相似度使用式(11)计算。同样可以计算得到其他确定数属性相似度。模糊区间属性相似度使用式(15)计算。确定符号属性相似度使用式(10)计算。最后得到所有局部属性相似度。

计算全局相似度还需要选取情景属性权重。该权重的设定通过AHP方法来实现。地震专家分析评估各个情景特征在应急决策中的重要作用建立判断矩阵,如表12。使用方根法可求得该矩阵的特征向量为W=[0.109,0.19,0.287,0.216,0.073,0.019,0.029,0.037,0.04]T ,一致性检验通过,所求得的特征向量即为情景属性的权重,结果见表13。最后,可以得出两个案例的相似度为如果忽略了信息的不确定性,那么可以得到案例相似性为

可见,考虑了信息不确定性和不考虑信息不确定性的案例表示和相似度测量有很大不同。证据理沦具有很强的表示和处理不确定性信息的能力,将其和框架表示法融合能更好地描述信息不完备条件下的结构化案例。

4结论

函数的表示法范文3

1、坡度=(高程差/水平距离)x100%。使用百分比表示时,即:i=h/l×100%,例如:坡度3% 是指水平距离每100米,垂直方向上升(下降)3米 ;1%是指水平距离每100米,垂直方向上升(下降)1米 。

2、坡度是用以表示斜坡的斜度,常用于标记丘陵、屋顶和道路的斜坡的陡峭程度。这个数值往往是以三角函数的正切函数的百分比或千分比数值来陈述,即“爬升高度除以在水平面上的移动距离”。坡度标示法的原则都能应用于地形测量学上,虽然使用以上任何一种的标示法都能带出同样的讯息,但为了避免搞乱不精通三角学的读者,正切百分比还是最常被应用于公共场所。

(来源:文章屋网 )

函数的表示法范文4

关键词:抛物线 焦半径 三角表示法 应用

一、问题的提出

笔者在讲授抛物线的几何意义时,作了如下拓展:

[2009福建卷理]过抛物线y2=2px(p>0)的焦点F作倾斜角为45°的直线交抛物线于A、B两点,若线段AB的长为8,求P的值。

学生基本上都能得出正确答案,.学生甲的解题过程是:

解:由题意可知过焦点的直线方程为

y=x-■,联立得y2■=2pxy=x-■?圯x2■-3px+■=0,又AB=■■=8?圯p=2.

点评:上述解法显然是解决圆锥曲线弦长问题的通用解法:

设直线方程联立消元判断判别式借助弦长公式进行计算。

学生乙给出如下解法:

y2■=2pxy=x-■?圯x■-3px+■=0

设A(x1,y1),B(x2,y2),则AB=p+x1+x2=p+3p=8,故p=2.

点评:此解法是利用抛物线的定义,把弦长转化为两条共线的焦半径之和,避开使用弦长公式,是个不错的解法。正当笔者准备讲述下一个题目时,学生丙很兴奋地举起手,我示意她起身回答。学生丙平时涉猎较广,给出了如下的解答过程:

解:抛物线焦点弦长AB=■=4p=8,故p=2.

笔者表扬了学生丙解法的简捷明了,省去了联立消元等一系列的复杂计算。但其他同学仍心存疑问,因为多数同学有此疑问:抛物线弦长为什么可以这样表示?

二、结论的推导

笔者因势利导,首先引导学生推导出抛物线焦半径的三角表示法:

给出题目:直线l倾斜角为a,过抛物线C:y2=2px(p>0)的焦点F,且与抛物线交于A、B两点,试用表示焦半径。

解:如图1,分别过点A,B作AD、BE,BE垂直于准线于点D,点E。过点F作FGAD于G,根据抛物线定义,AF=AD=p+AF·cosα

故AF=■.同理可得BF=■.(1)

因为所画的图中直线l的倾斜角为锐角,于是笔者将直线l的倾斜角改为钝角,追问:上述结论(1)是否仍成立?

答案是肯定的.推导过程如下:

如图2,辅助线作法如上解法。

AF=AD=P-AF·cos(?仔-a)=P+AF·cosα

故AF=■.同理可得BF=■.(2)

笔者给出变式:若抛物线C的开口方向改为向上,

即:x2=2py(p>0),上述结论(2)是否成立?

上述结论不成立。应改为:AF=■.

同理可得BF=■.(3)

(推导过程此处省略)

如果将直线l的倾斜角改为钝角,上述结论是否成立?

上述结论(3)不成立。应改为:AF=■.同理可得BF=■.

我们将四种开口方向的焦半径列表:“表1”(开口向左和开口向下的情况略去)

通过对以上表格的比较,可以得出关于抛物线焦半径的三角表示法的统一形式:

设r长为较长的焦半径,r短为较短的焦半径,

(1)抛物线开口若向左(或向右),不论直线倾斜角为何值,总有:

r长=■,r短=■·

(2)抛物线开口若向上(或向下),不论直线倾斜角a为何值,总有:

r长=■,r短=■

因sinα≥0故,故r长=■,r短=■

对以上结论,作如下解释:

若开口向左(或向右),三角函数为余弦,较长焦半径分母比较小,较短焦半径分母比1大;若开口向上(若向下),三角函数为正弦,较长焦半径分母比较小,较短焦半径分母比1大。

这样,抛物线的四种开口方向的焦半径的三角表示法就可以很容易记住。

三、结论的应用

以y2=2px(p>0)为例,可以运用上述结论作如下应用:

(1) 求抛物线的焦点弦长

解:如图3,

AB=AF+BF=■+■=■

此结论正是文章开头同学丙解法的理论依据。

开口向上结论为:

AB=AF+BF=■.

(2)■+■=■(调和平均模型)

解:

■+■=■+■=■(与a无关).

(3)ABO的面积为■

函数的表示法范文5

关键词:计算机博弈;六子棋;数据结构;走法生成;搜索算法

中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)10-2310-03

Main Technologies Analysis of Connect6 in Computer Game

LIU Ya-jing

(Dalian Jiaotong University, Software Colledge, Dalian 116021, China)

Abstrct: This article mainly introduced the four main parts of Connect6:state representation, move generation,evaluation function, searching algorithm, and analyzes the main teconology in current and their advantages and disadvantages. Also I optimized the searching algorithm, and provided a certain reference for the Computer Game.

Key words: computer game; connect6; data structure; move generation; searching algorithm

计算机博弈是智能游戏,五六十年代,它一度是人工智能的带头领域,至今在人工智能界仍非常受重视。计算机博弈种类很多,像国际象棋,围棋,中国象棋等,研究相对成熟。而六子棋是2005年台湾交通大学资讯工程系的吴毅成教授提出的一系列K子棋中的一种。由于其特殊性,每次每方走两颗棋子,直观看,其状态空间复杂度及博弈树的复杂度会成倍提高,因此以六子棋作为研究平台,不仅能促进六子棋这项活动,而且能为计算机博弈技术带来新的发展。

六子棋( Connect6),规则是第一手黑方先下一颗子,第二手开始,双方轮流每次下两子,在横向,竖向,斜向先连成六子或六子以上为赢,若全部棋盘下完仍未分胜负,判和。

由于六子棋刚兴起不久,国内外研究相对较少,但是作为计算机博弈的一种,它与象棋围棋的研究有一定的相似处,因此它的主要技术要点也包括这些项:状态表示,走法生成,评估函数,博弈树搜索等,下面我就分析一下。

1 状态表示

我们在用计算机解决任何实际问题之前,必须要将具体问题表示成计算机能够处理的数据。在这里我们需要将六子棋的棋局状态,棋局的变化以及棋局局部特征低占用率高速度的表示出来。

下面有两种方法我们可以尝试来表示棋局状态:

1.1 矩阵表示法(又叫数组表示法)

六子棋棋盘通常为19×19,因此可以用二维数组Board[19][19]表示。当然也能用一维数组表示,占用空间361B。

1.2 比特棋盘表示法

在高性能的博弈程序里,比特棋盘 被广泛应用,在六子棋中,棋盘上每个交叉点用2个bit位来表示,即00为黑,01为白,10为空,11其他,每个横线上19个点共需38bit,用一个8B的长整型来表示,那19行就有19×8B,即152B,比数组表示法占的空间要小。

六子棋的局部特征表示方法也有很多种:

1.3 用字符串结构来表示特征

我们用”OO++OO”来表示,其中“O”代表有棋,“+”代表空位,采用字符串模式匹配算法来提取局部特征,这种方式很直观,但没有区分黑白棋,因此特征不明显,而且取一种特征需遍历整个棋盘,运行速率很低。

1.4 用一个状态数组来表示特征

我们以当前棋子位置为中心,分别向相反的方向定长扫描6个点,得到长度为13的状态数组,而每个数组元素有四个可能状态:黑,白,空或棋盘外,如图1。

这种方法棋型种类巨大,数据冗余严重,尽管简单直观。

1.5 一种新的6-8窗口法

经过对六子棋深入研究,有人提出6-8窗口法,如图2。

6窗口主要功能是提取棋型信息并判断是否同色, 8窗口主要功能用于辅助判断是否存在迫著点,取完一个棋型后,窗口向前移动,然后提取下一个,直到遍历完整个棋盘。该方法优点是遍历完一次可统计完一种棋型的数量,完成局面估值,而且棋型少很多。但是不够直观,代码编写也较困难。

所以一种好的状态表示方法对加快搜索效率非常重要。

2 走法生成

走法生成就是将所有可能的走法罗列出来,并告知下一步走哪。

走法生成过程中常伴随着搜索进行,因此好的走法生成,可以提高搜索效率。走法生成主要有这几种:棋盘扫描法,模板匹配法,预置表法以及这些方法的结合。

棋盘扫描法:就是在棋盘内反复搜索有效区域,制约条件以及落子状况,从而确定有哪些地方可以落子,这种方法时间开销巨大。

模板匹配法:我们可以为一些动子设计模板,当选定动子,那么它的提址和落址便相对固定,只要匹配到提址,便可迅速找到落址。

预置表法:简单的说,就是把所有可能的走法预先存储起来,在生成走法时,通过查表来取代计算,即空间换时间。

在走法生成并进行搜索时,有两种方式,一种是生成一种走法就马上进行搜索,即深度优先;另一种是生成所有可能的走法然后进行搜索。经研究,第二种方法的效率更好。

3 评估函数

评估函数是模式识别和智能算法应用最广泛的领域。不管评估函数多复杂,都能表示为一个多项式。评估函数一般来说必须包括 5 个方面:固定子力值、棋子位置值、棋子灵活度值、威胁与保护值、动态调整值,每一方面的值又是由许多参数值构成的。即使最简单的评估函数也有 20 多个参数植,将其线性组合在一起得到最终评估值。

对于六子棋,它无子与子的差别,所以其评估函数只跟当前棋子的落子位置及周边棋子位置状态有关。由此可见六子棋的评估函数是5要素的一个子集,从而得到了简化。进行估值有以下原则 :棋型影响大,估值要高;威胁性小,估值要小;一方得胜,估值最大;对称数组,估值相同。

根据以上估值原则,棋型特征的 stepValue 值都人为的给出, 但这依赖于编程者的知识和经验,尽管遵循原则,但给出的值仍然不够准确,所以我们最好通过遗传算法来对参数值进行调整和优化。

1) 参数选取和编码

首先我们人为给出参数表(假定是威胁值的参数)如图3:

图3 参数表

每一个参数都通过二进制编码,设A1-A9由10位二进制位组成。

2) 适应度函数的计算

棋盘大小为19×19,也就是说棋盘共有361个着棋点,如果一场比赛回合数为x,则这场比赛该个体的得分为:

其中K为可调系数,取6,个体得分总和设为适应度值。

3) 交叉和变异操作,在这里我们用最简单的单点交叉。

4) 自适应遗传算法:交叉概率Pe突变概率Pm,按如下公式自适应调节:

其中 fmax 是群体中最大适应度值,forg 是群体的平均适应度值,f 是交叉个体中较大者的适应值,f是突变个体的适应度值,其中 k1k2k3k4 在[0,1]范围内取值。

在这只简单的说明了一下遗传算法对参数进行优化的过程。

4 博弈树搜索及优化方法介绍

我们知道象棋,六子棋等类型的博弈都可用博弈树描述,因此搜索就是寻找最佳解的过程。

博弈搜索算法研究已有半个多世纪,有一定的理论基础。其中最大最小值算法是所有算法的基础,目前这一领域的算法有两大类,一种是深度优先的Alpha-Beta算法及一些强化算法,它几乎成为主流,另一类是最佳优先的系列算法。

1) 极大极小值算法

极大极小植的基本思想是假定我们始终站在一方(MAX方)的立场上,MAX将选择子节点中估值最大最有利的一个,当MAX确定后,另一方(MIN方)会选择最估值最小的节点,因为对MAX最不利,就这样最大最小的选择就是此算法的核心思想。

2) 负极大值算法,基本思想与极大极小值算法相似。

3) Alpha-Beta算法

① Alpha-Beta剪枝

在极大极小值搜索中,要遍历整个博弈树,会造成冗余,所以要剔除一些分枝,Bruno在1963年首先提出了Alpha-Beta剪枝算法。

α值为倒推值下界,β值为倒推值上界。Alpha-Beta搜索首先使某一部分达到最大深度 ,从而计算出Max节点的α值,Min节点的β值,然后继续搜索,不断修改这些值,在修改过程中,α值永不下降,β值永不增加。

② Fail-soft Alpha-Beta算法

在Alpha-Beta搜索中,Alpha,Beta分别默认为-∞到+∞,在递归调用过程中,窗口不断缩小,剪枝的效率越来越高,因此Fail-soft Alpha-Beta算法就是刚开始限定窗口大小。在Alpha-Beta搜索中,若搜索失败,也没有什么信息,Fail-soft Alpha-Beta算法作了改进,即当返回值≤Alpha,表明真实值≤返回值,若返回值≥Beta,真实值≥返回值,尽管有启发信息但速度仍不高。

③ 渴望搜索

渴望搜索是一种缩小范围来提高剪枝效率的算法,它渴望真实值在所定窗口范围内,建立窗口时,令Alpha=X-window,Beta=X+window,猜测结果在X附近,此法当窗口很小时,能迅速提高剪枝速度,但失败率也很高。

④ 极小窗口搜索

极小窗口搜索,也称主变量导向搜索,它是另一种缩小范围来提高剪枝效率的算法。它假设搜索的第一个节点的Value值是最优的,然后以(Value,Value+1)为窗口搜索,效率明显高于上述几种算法。

⑤ MTD(f)算法

该算法是多次调用Alpha-Beta来完成搜索,每次均采用空窗口进行搜索,然后得出一个真实值上下边界,再以此返回值修改原来的上下边界,搜索范围不断缩小,从而向真实值不断逼近,当上下边界相等时,搜索就完成了,该搜索效率更高。

4) 其它优化方法

①置换表与哈希表

置换表就是用一张表把搜索的节点记录下来,然后利用记录下来的节点结果,在后续搜索中,查看记录在表中的这些结果,

当用置换表时有查询插入两个主要操作,因此要求查询速度插入速度要非常快,查询时最好类似于随机存储,而插入的过程要考虑数据移动和排序等操作。在这样一个有限空间里进行此操作,最好的数据结构就是哈希表。

②历史启发

所谓启发,就是被定义成的一系列规则,历史启发避免了对具体棋类知识的依赖,在搜索过程中,只要给出合适走法映射和增量因子,就能轻易的加入历史启发。

③迭代深化

这种技术既能满足深度优先搜索的线性存储要求,又能保证发现一个最小深度的目标节点。通过迭代深化,连续的深度优先搜索被引入,经实践还发现,迭代深化搜索扩展产生的节点数并不比广度优先搜索产生的多很多。

5 结论

六子棋中除了这些技术外,还包括开局库设计,系统测试等要素,本文只简单介绍了六子棋的基本技术问题,通过对本文的研究,我们可以进一步掌握六子棋研究的要点,树立正确的方向,从而提高计算机博弈的综合水平。

参考文献:

[1] 董红安.计算机五子棋博弈系统的研究与实现[D].山东师范大学,硕士学位论文,2005.

[2] 徐长明,马宇民,徐心和.一种新的连珠棋局面表示法及其在六子棋中的应用[J].东北大学学报(自然科学版),2009,30:514-517.

[3] 闵文杰.六子棋计算机博弈关键技术研究[D].重庆交通大学,硕士学位论文,2010.

[4] Pablo,s.s.,Ramon G.Fernando M.,et al.Eiffcient Search using bitboard models[C].International Conference on Tools with Artificial Intelligence.Washington DC:IEEE,2006

[5] 谢国.中国象棋机器博弈数据结构设计与搜索算法研究[D].西安理工大学,硕士学位论文,2008.

[6] 李果.基于遗传算法的六子棋博弈评估函数参数优化[J].西南大学学报(自然科学版),2007

[7] 夏定纯,徐涛.人工智能技术与方法[M].华中科技大学出版社,2004,P128-130.

函数的表示法范文6

【关键词】Matlab;高等数学;应用

1.Matlab概述

Matlab利用它简单的语言和方便的操作使其成为超越C语言的第四代计算机语言程序。而且它的操作符合人们的思维模式,并且简单,易上手。下面为大家介绍Matleb的三大主要特点:

1.1新手可以使用Matlab自带的丰富的库函数,而省去了学习编写子函数的时间和精力,而且Matlab没有繁琐的程序,所以使用起来简单易懂。

1.2只要用Matlab编写的程序,可以在任意型号的电脑上工作,而且不用做任何的修改。

1.3Matlab基于它强大的数据处理功能,可以根据使用者编入的数据快速形成匹配的图像,实现把抽象数字图像化,与此同时使用者还可以直接在图像上进行编辑。

具有强大功能的Matlab在实际生活的很多领域都有很大的作用,它可以提高教师的教学质量和科学研究的效率,方便学生的作业解答。现如今,在国外的很多高等学校都会让学生掌握这门技术。

2.Matlab在函数教学中的应用实践

2.1求方程的根

复杂方程式的根也可以通过Matlab程序求出。

例1:解方程Z =-8。

在Matlab的工具窗口中编入S=solve('z^3=-8');>>s=eval(S);s=[s(1);s(2);s(3)]s=-2.0000+0.0000i 1.0000+1.7321i 1.0000-1.7321ix=2^(1/8)*(1:-0.01:-1);x=2*(1:-0.01:-1);y1= sqrt(4-x.^2);y2=-sqrt(4-x.^2);plot(x,y1,'r-','LineWidth',3);hold on;grid on;plot(x,y2,'r-','LineWidth',3);axisequal;plot(s,'o');axis([-2.5 2.5-2.5 2.5]);利用Matlab中的解方程方式可以快速、有效、直地解出-8的3次方根。

例2:求解方程ln(z +z +z +z+1)=i。

在Matlab中输入solve('log(z^4+z^3+z^2+z+1)=i')ans=0.36521623295345235866005943774426+0.64240444029684120856950031509163*i0.19822799851622204112882959650434-1.130167947608232755068528868445*i-0.48211258491386994549037517293678+0.86253684186617047083403309081309*i-1.0813316465558044542985138613118-0.37477333455477892433500453745974*i

囊陨霞父隼子可以看出,如果我们使用Matlab就可以轻松解决许多复杂问题的计算。

2.2进行复变函数的简单运算

三角和指数表示法都可以用复数的形式体现,辐角的计算公式在这两种表示法中都是以很复杂的形式出现,如果我们利用Matlab则可以把辐角、共轭复数、复数的实部和虚部通过简单的程序求出。

2.3将函数展开成泰勒和洛朗级数。

例2:将函数 在z=1展开为泰勒和洛朗级数。

解:复变函数 是级数展开中常用的一个函数,且在z=0处不解析。若将该函数在z=1展开成泰勒级数和洛朗级数,分析如下。当z-1

当z-1>1时, 它 的 洛 朗 展 开 式 是 = (-1) 。

在MAT LAB中工具窗输入m=30;r=(0:2*m)'/m;theta=pi*(-m:m)/m;z=r*exp(i*theta);z(find(z==1))=NaN;figure(1)cplxmap(z,1./z);title('原函数');由原函数图,易得函数 在z=0处不解析。

在MAT LAB工具窗输入z1=z-1;z1(abs(z1-1)>=1)=NaN;f1=1;u1=1;for

k=1:100u1=u1.*(z1-1);f1=f1+u1;endfigure(2)subplot(1,2,1);cplxmap((z1-1),f1);title('泰勒展开');z2=z;z2

(abs(z2-1)

k=1:100u2=u2./(z2-1);f2=f2+u2;endfigure(2)subplot(1,2,2);cplxmap((z2-1),-f2);

title(‘洛朗展开’)得 在z=1处的泰勒展开式及洛朗展开式。

【参考文献】