2.2 定性立体表达
2.2.1 时间区间代数
在人工智能领域,与时间有关的知识的表达和推理是一个重要的基本问题。20世纪80年代初,Allen提出了以时间区间和时间区间关系作为表达时间和进行时间推理基本要素的时间区间代数(时间逻辑)[8],随即受到了广泛的重视和应用,在自然语言理解领域具有极大的实用价值。
2.2.1.1 时间区间与时间区间关系
在Allen提出的时间区间代数中,时间区间(Time Interval)是表达时间的基本要素。一个时间区间可以对应一种延续的状态(State)、事件(Event)、行为(Action)、活动(Activity)和过程(Process)等。例如“先加工端面,然后在端面上钻孔”这一命题,包含对应两个不同时间区间的活动“加工端面”和“在端面上钻孔”。
Allen认为区间是表示时间的基本单位,时间是度量客观事件发生的先后和延续性的一种标准,而客观事件的发生总是有一个过程的,因此时间区间的长度一般不为零。一般情况下,无须考虑时间区间具体历时多久。此外,虽然时间区间可以看成以两个不同的时刻(Time Point)作为端点的时间段,但通常也无须考虑两个端点在时间轴上的绝对位置。总而言之,Allen的时间区间代数一般不考虑定量的时间信息,重要的是时间区间之间定性的时间顺序关系,实际上就是着重考虑对应于这些时间区间的状态、事件、行为、活动或过程之间的时间顺序关系。
Allen时间逻辑定义了13个时间区间的顺序关系作为时间区间约束。这些时间区间关系是相互排斥的,即两两时间区间之间不可能同时存在不同的顺序关系。表2-1给出了13个时间区间关系的含义、标记以及便于理解的图示。值得说明的是,除了“equal”,每种时间区间关系都有与之对应的反关系(表2-1中所示标记中的字符“i”为英文“inverse”的首字母)。关系“equal”与其他关系不同,其反关系为其自身。时间区间关系记为:
式(2-1)表示“时间区间A与时间区间B的关系为Rt”。其中,Rt为时间区间关系的标记。同样,TR(B A)表示“时间区间B与时间区间A的关系”,TR(B A)为TR(A B)的反关系。
表2-1 时间区间关系
续表
2.2.1.2 时间区间关系传递律
与时间相关的知识或信息可以通过时间区间网络来表示。时间区间网络以时间区间作为节点,两两时间区间之间的关系作为有向连接枝(弧)。当增加新的知识或信息时,需要对应增加新的时间区间或时间区间关系于时间区间网络,这时需要更新时间区间网络。为此,Allen提出了基于约束传播的时间推理方法。
时间区间网络的更新,即时间约束传播,是根据时间区间关系传递律(Transitive Rule)实现的。时间区间关系传递律规定了任意三个时间区间之间可能存在的时间区间关系。时间区间关系传递律TR(A C)见表2-2。
表2-2 时间区间关系传递律TR(A C)
续表
注:all表示13种时间区间关系。
时间区间关系传递律示例如图2-5所示。图中,有三个时间区间A、B和C,如果TR(A B)=Ro,TR(B C)=Rd,那么TR(A C)=(RoRdRs)。也就是说,时间区间A与C的关系可能是Ro,可能是Rd,也可能是Rs,但不可能是其他关系。
时间区间关系传递律的表达形式为:
图2-5 时间区间关系传递律示例
2.2.2 三维形体的定性表达
描述三维空间中任意两个形体的相对关系主要考虑形体的相对位置关系和相对方位关系[9]。本章从支持机械产品概念形状设计出发,考虑以下因素。
(1)机械产品的零部件一般都具有比较规则的几何形状,尤其是在概念设计阶段,那些可忽略形体的由某些几何形状特征生成的概念形状,其规则性更强。
(2)可以将Allen时间区间代数的时间区间视为一维空间里的线段,那么一维时间轴上的时间区间定性时序关系可以看成一维定性空间关系。
(3)将这种一维定性空间关系扩展到三维空间,便可以得到三维形体的定性空间关系,更重要的是这种三维的定性空间关系在空间的三个方向上具有独立性。
本章将基于这种三维定性空间关系规则概念形体的表达称作定性立体模型。定性立体模型的最大特点是,以定性空间关系来表达产品的概念形状,不依赖定量的产品信息,这是与传统几何建模的显著区别,也是对Forbus等人的“不存在纯定性和通用几何描述”观点的批判。此外,定性立体模型比较简单,建模过程也比较符合设计人员的思维活动。
在三维定性空间,定义与一维时间轴上的时间区间相对应的、表达形体的基本单元——领域。
定义2.1 领域(Domain)是所有的面都垂直于三维正交坐标系相应坐标轴的长方体(见图2-6)。
由定义2.1可知,领域作为三维空间形体的一个特例,其基本方位是固定的,即各面的法线方向与相应坐标轴平行。当考虑两个领域的空间相对关系时,只需要考虑领域的相对位置关系。由此,给出了领域关系的定义。
图2-6 领域概念示意图
定义2.2 领域关系(Domain Relation)是指两领域间定性的相对位置关系。
设两个领域A和B,其领域关系表示为:
其中,SR为英文Spatial Relation的缩写,代表定性空间关系(领域关系);Rx,Ry,Rz分别表示领域A和B在X,Y,Z轴方向上的相对位置关系,即领域关系的三坐标轴方向的分量,其关系值为13种时间区间关系中的某个或某些值。
定义2.3 领域网络(Domain Network)是以领域为节点,以领域关系为有向连接枝(弧)的网络。
为了完整地描述由n个领域组成的立体,需要明确所有领域对的定性空间关系。因此,描述该立体的完整领域网络应包括n×(n-1)条有向连接枝(弧)。
定义2.4 定性立体模型(Qualitative Solid Model)是由构成立体的所有领域及其领域关系组成的领域网络。
设由n个领域组成的形体,其完整的定性立体模型可表示为:
其中,Di和Dj分别表示组成形体的两个领域;分别表示领域Di相对于领域Dj在三个坐标轴方向上的领域关系分量。考虑到领域之间的领域关系的反对称性,其完整的模型可以简化为:
图2-7表示一个三维形体及其定性立体模型。其中,图2-7(a)是一个三维形体,其各面都垂直于正交坐标系的某一坐标轴;图2-7(b)表示分别用垂直于Z轴和X轴的平面将该三维形体切分为4个领域,即D0、D1、D2和D3(采用不同的切分方法会产生不同的结果,切分的原则是使组成三维形体的领域数较少,且最大限度地体现形体的几何特征);图2-7(c)表示由4个领域和6条有向连接枝组成的领域网络;图2-7(d)为所建立的定性立体模型。
图2-7 三维形体及其定性立体模型
2.2.3 定性立体模型的直接构建
构建定性立体模型最基本且最直接的方法是在已知构成形体的所有领域及其领域关系的前提下,逐一定义领域关系。直接构建定性立体模型通常需要以下常用的操作。
(1)领域关系定义:明确指定两个领域间存在的关系。
(2)领域关系正当性检查:当发现不正当的领域关系时予以提示。例如,两个领域占据公共空间,属于不当情况。
(3)领域关系确定性选择:当领域关系存在多种可能的值时,需要进行领域关系确定性选择。
(4)领域关系一致性检查:利用时间区间关系传递律求取领域关系,对照已有领域关系,检查是否相互矛盾,当发现矛盾时予以提示。
(5)领域关系查询和修改,即查询和修改两个领域间的关系。
(6)领域和领域关系的删除。
下面结合图2-7说明定性立体模型的直接构建过程。其中,下划线部分是通过时间区间关系传递律推导而产生的内容。
步骤1 领域关系定义。SR(D0D1)=(Rfi,Rsi,Rm)
定性立体模型 SR(D0D1)=(Rfi,Rsi,Rm)
步骤2 领域关系定义。SR(D0D2)=(Rfi,Rfi,Rm)
步骤3 领域关系正当性检查。SR(D1D2)=(ReRfRfiRbRm,ReRsRsi)
步骤4 领域关系确定性选择。SR(D1D2)=(Re,Rb,Re)
步骤5 领域关系定义。SR(D0D3)=(Rsi,Re,Rm)
步骤6 领域关系确定性选择。SR(D1D3)=(Rmi,Rs,Re) SR(D1D3)=(Rmi,Rf,Re)