计算机辅助决策装置和方法

文档序号:6405840阅读:403来源:国知局
专利名称:计算机辅助决策装置和方法
技术领域
本发明通常涉及计算机处理,尤其涉及一种使用人工智能程序设计技术以帮助人类决策的装置和方法。
虽然还不存在对“人工智能”的统一的定义,但有时一般定义为计算机程序设计风格,在这种程序设计中程序按照解决问题的规则来运行数据。人工智能涉及应用符号而不是数字来表示数据。使用计算机处理这些符号称为“符号处理”,并且允许计算机以符号形式来表示实际世界的事物(对象),然后发展这些符号间的关联。
人工智能程序的一个共同特征是它们都涉及知识,并且必须用计算机能使用的方式来表示这种知识。人工智能的应用,包括使用符号处理的人工智能的应用,是与知识库(Knowledge bases)相关联的。对某一项具体应用的知识库包含与应用有关的一些事实(facts)和应用这些事实的规则,即与有关领域相关的说明和过程知识。知识库的“事实”可包含事物(对象)、事件(events)和关系。
为了发展有用的知识库,计算机工业认识到必须结合软件工程师和某一领域中的专家两方面的努力。通常,软件工程师发展专家系统,专家为知识库提供信息。但是,即使是这种产生知识库的方法也忽视了用户的专长和经验,而他或她们可能有他们自己的专长和经验可以加到决策过程中去。因此,需要有一种允许用户的专长和技能可以对知识库作出贡献的知识库系统。
人工智能的应用之一是提供人类以决策支持,尤其是以模拟某一实际世界的或假设的操作的形式。操作的范围包含所有事物(对象)、事件和操作中影响行为、性能的关系。但是,许多现存的的系统都不够灵活,它们依靠基于规则的推理方法来工作。这些系统在决定什么规则可以适用和怎样去应用这些规则方面不如人类智慧的能力。因此有必要改进应用规则的方法。
本发明的一个方面是提供一种帮助人类用户就特定操作领域中的事件作出决策的装置。本发明可以体现在这样一计算机系统中该计算机系统具有一存储的知识库,且在该系统中,用户与决策处理器分系统能交互作用。该装置的特征包括可以帮助用户在与领域有关的可供选择的方案之间作出选择。该装置允许用户从若干类型的规则和其它数据中进行选择从而发展一种选择方法。该装置也允许用户发展包括用于一组特定选择的一组参数值和方法的策略。
本发明由应用人工智能技术的程序设计来实现,包括面向目标的程序设计。由于这种原因,一种决策(decision)处理器分系统可以通用化到足以使它具有可用于若干不同的计算机系统的模块。因此,本发明的一个方面是提供一种处理器装置,这种处理装置通过编制程序可以用于帮助用户在可供选择的作用之间进行选择。
本发明的另一方面是提供一种对计算机进行程序设计的方法,以帮助用户在可供选择的方案间进行选择。该程序设计的特征包括与选择过程有关的种种类型的数据的表示法和种种执行规则的功能的表示法。这种程序设计给出一些不同的规则,并且允许这些规则可以以不同的的方式运用。该程序设计也允许有应用上述规则的多种方法,且使用户能从中选择一所需要的方法。
本发明的另一方面是提供一种在特定领域内的可供选择方案之间应用计算机进行最佳选择的方法。该方法的特征包含应用不同的规则、以不同的方式应用规则,在多种方法之间进行选择以作出最佳选择,和采用策略作出决策。本发明的进一步的特征是允许在假想情况的前后关系中进行决策。
本发明的技术上的优点是这种计算机辅助决策是以比较接近人类决策的方式进行的。这些规则可以非绝对地及比较地加以应用。本发明的进一步优点是允许人们把他的或她的专长和经验以交互作用方式与具有人工智能能力的计算机系统相结合。本发明的优点还在于它把计算机决定事件效果(影响)的能力和计算机作出与那些事件有关的选择的能力结合了起来。
本发明特征的新颖性如所附权利要求书中所述。然而对本发明本身,则通过参照下面实施例的描述、并参阅附图可得到最好的理解。


图1是按本发明的计算机系统的方框图。
图2表明按本发明产生一种程序结构以对计算机进行程序设计的一种方法。
图3是说明本发明计算机辅助决策的一种方法的流程图。
图4A和4B是说明图3评价步骤的详细步骤的流程图。
图5是表示使用所述计算机产生的对策进行计算机辅助决策的一种方法的流程图。
图6是表示图4B方法中所用的学习程序(learning routine)的流程图。
图7是表示使用所述计算机产生的假设情况(scenario)的计算机辅助决策的一种方法的流程图。
图1表示按照本发明所构成的装置。在一实施例中,本发明是计算机网络的一部分,该网络包含主计算机10和一些分站(stations),每个分站通过网络通信系统15与主机相连。
该装置的一个应用例子是监控航线飞行操作的计算机网络,在这种飞行操作中,操作范围所包含所有影响飞行时间表的事件。下面将要叙述,该系统提供实时支持使使用者能理解问题的范围、详细观察问题的边界效应(副作用)、产生改进状况的多种可能性,评价供选择的改进方案。这种应用只是一个应用的例子,本发明的装置和方法可用于多种领域及多个方面。
图中一个典型的分站用编号20表示。用于网络中时,每个分站20包含一使该站能与主机10相互作用的终端仿真装置。然而本发明不一定要用这样的网络、该站可以是一个独立的处理单元。
不管在网络中用作终端或者用作独立的处理单元、分站20有一些组成部件,包含事务处理接口30、用户接口40、知识库50和决策处理器系统60。这些组成部件通过总线17和其它通信装置相互间发送和接收信息。另外,分站20还有一般数据处理终端或通常的独立处理单元所常用的其它组成部件(未画出)。例如,用于知识库50以外的存储器,它存储数据和程序以及提供定时功能的定时器(未画出)等。
事务处理接口30允许分站20所用数据跟得上出现在操作范围内的当前事件。因此,事务处理接口30与主机10及知识库50处于连通状态。当然,如果分站20是独立处理单元,事务处理接口30将与某些其它输入装置连通或者与用户接口40相结合。事务处理接口30也与决策处理器系统60连通,以便基于本发明进行决策的信息能从分站20传送到另一分站或输出装置。事务处理接口30的硬件可以是一些众所周知的输入/输出和其它设计用于这里描述的功能的外围装置的任何一种。
用户接口40给用户提供一个使用本发明功能的进出口。用户接口40允许通过键盘或其它输入装置进行输入,且提供显示以允许用户与本发明交互作用。用户接口40也与决策处理器系统60连通。用户接口40的硬件可以是任何一种众所周知的输入/输出和其它外围装置。
知识库50包含执行不同系统功能所必需的数据。知识库50的硬件可以是任何用电子学方法存储信息的存储装置,例如数字存储装置。知识库50,除了它包含一些能帮助决策的人工知能结构外,在概念上与标准数据处理系统的数据相类似。更具体地说,知识库50安排成语义帧网络(semantic network of frames)。总的来说,每帧是一个表示事物的知识表示结构,即把物理(实体)项、事实(facts)、事件等实际世界中的事物表示为属性群(groups of attributes)。每帧包含时间段(slots),每个时间段能有一个值。如下所述,这些值能包含要执行的程序。在一个帧系统中,各帧可继承来自其它帧的值。
知识库50中的帧可包含推理程序设计(reasoning programming),更准确些,它应该叫做“应用行为码(application behavior code)”。这种程序是面向目标的,即信息是面向程序设计处理的周围的事物的。知识库50中的事物可以有“行为表现”(behave),从而使在知识库中的事物之间的数据和关系发生变化。为了实现这种行为表现,程序设计利用了“精灵”程序(demons),当帧中的某些数据元被访问,以及当某些条件产生、决定该做什么时,就调用这些程序。知识库50中的程序设计允许事物被表述,且允许这些事物之间的相互关系以一种类似于数字扩展表单元(cells of a numeric spreadsheet)的方式来处理。这一特征将在下面结合效应处理器(effects processor)62作更详细的描述。
决策处理器系统60包括两个分系统,即包括一个效应处理器62和一个策略处理器66、每一个具有专门的程序设计以完成下面所述的功能。每个处理器的硬件可以是一些众所周知的能执行计算机指令的装置的任何一种、譬如微处理器。
效应处理器62体现了“符号扩展表”这样一个概念。该符号扩展表类似于目前通用的数字扩展表,在该表中,数字或公式被分配(指定)给单元。用户能改变某个单元中的值,并且立即看到对其它单元的影响。与数字扩展表不同,效应处理器62使用帧作用单元以便用符号表示特定领域(particular domain)的组成部件。数值、复杂的实体、甚或程序都可分配(指定)给单元。这些帧利用它们之间的关系的描述相连。当领域中发生变化或当用户提出假设的事件时,程序能确定这些变化操作的其它方面的影响。人们把这种类型的程序称作“约束传播(constraint propagation)”。
以航空飞行为例,单元代表事物、例如飞机、机务工作人员和飞机场,和影响它们的事件、如飞行延迟、飞机场关闭、或维修延迟。当系统接收到一个事件时,效应处理器62确定它的影响并修改(更新)知识库50。
效应处理器62的特征在于它的程序设计可以以允许用户创造(产生)和观察假设的情况,即设置一组组假设的变化。假设情况由知识库50产生,用以替代实际世界的情况,与此同时,维持该库的实际知识库数据。于是,效应处理器62或者响应来自知识库50的输入、或者响应来自用户所创造的假设情况的输入。
决策处理系统60的第二个分系统是策略处理器66。策略处理器66的程序设计有几个基本的功能用某一方法解决“最佳选择”问题,方法的变化,和策略的变化。策略处理器66可与或不与效应处理器62一起工作。换句话说,策略处理器66在程序设计和硬件上都不取决于效应处理器62。如果分站20没有效应处理器62,那么系统组成部件之间、如知识库50和用户接口40等之间的通信可利用总线17或其它通信装置等直接与策略处理器66进行。而且,策略处理器66可以编程使之与其它表示法或应用无关并且不需要其它文件。这种特性将在下面结合图2加以描述。策略处理器66所执行的功能下面结合图3-图6加以描述。
策略处理器66和效应处理器62两者与用户接口40和两者之间都相互连通。因此它们可与用户和相互之间交互作用,以便使用户能确定取决于某一特定选择的事件的影响。这种交互关系将结合图7进一步详细加以讨论。
现在参照图2。本发明的另一方面是提供一种方法,利用该方法计算机可被编程以便执行策略处理器66的功能。在较佳实施例中,编程用LISP语言表达、LISP语言是一个众所周知的适用于符号处理的计算机语言。LISP的特征在一些公开出版物中有所描述,其特点是利用表作为数据结构。但本发明也可以用其它编程语言来完成,程序设计的主要特征在于能用数据和下面描述的规则来表示要做什么,以获得相同的功能结果。“功能”和“数据类型”这些词是与LISP有关的,如果使用其它编程语言,可以用不同的词来表示相同的程序设计结构。
如图2所示,本发明的程序设计直接指向“功能”和“数据类型”、它们在若干层次上(levels)表示决策过程。在一个层次上,决策可以是从“功能”和“数据类型”所提供的可供选择的方案中选出的方法的结果。在另一层次上,一组方法可包含进行特定选择的策略。本发明的特征还在于每个层次上允许的选择,即选择的方法和策略,可以是交互的和程序化的。换言之,用户能对方法和策略进行选择,或者选择可以是编程序设计的结果。在后一种情况下,可以应用人工智能的固有学习和探索能力。因此,“用户”可以是操作设备的人,也可以是和另一信息进行信息交换的程序。
而且,在其最简单的形式下,并不是所有下面所述数据类型和功能对本发明的操作都是必要的,经过简单的修改,本发明可用某些数据类型和功能帮助用户进行决策,而不需要用这里所述的全部数据类型的功能。例如,不用任何选择方法,而只用决策功能。对本发明不一定要有一个以上的方法或一个以上的策略。策略编程可以只用来管理一组数值。而与选择方法没有联系。因此,在图2的编程中,形成多重方法和多重策略的数据类型和功能,对于本发明不是必需的,编程很容易修改成不用它们而进行操作。
如图2所示,总的说来编程步骤是形成功能和建立数据类型。另外的一个步骤是把这些数据类型和功能组织成编程结构以控制功能的应用和数据的进出。图2示出本发明的结构特征,其功能特征和它们的运行将结合图3-7进一步阐明。
候选对象(Candidate)200是一种表示涉及选择过程中的候选对象的数据类型。候选对象200与来自候选对象传送(Candidate Move)210的功能、数据类型、规则205相联。候选对象200由候选对象产生器201产生和维持。
候选对象产生器201是一种数据类型,它详细说明了候选库(candidate pool)是怎样产生、保持和输入输出的。它的内部结构是一张来自候选对象传送210的名称、数据和功能的表。候选对象产生器201中的数据的范围可从当前的候选库到一组确定候选对象的功能。候选对象产生器201使用候选对象传送210的功能以产生和修改候选库并应要求产生每个其后的候选对象。候选对象产生器201可以有一个以上的产生候选对象的类型,因此每个候选对象产生器用一个名字来命名。候选对象产生器是方法204的一个组成元(element)。“选择230”用来确定在决策过程中是否要使用一个以上的产生器,它由当前的方法所规定。
候选对象传送210是一组有关用户定义的功能,它提供一个原始的候选库或某些用户定义的表示应要求产生每个其后的候选对象所需的信息的数据结构。候选对象传送也提供一种从候选库提取单个候选对象的手段,和提供一种在单个候选对象提取后减少候选库的方法。候选对象传送210由定义候选对象传送(Define Candidte Move)227(一种系统功能)产生且由定义候选对象产生器225(一种系统功能)来进行访问。
状态202(state 202)(一种数据类型)存储关于某一候选对象的运行信息,即,它的由系统和用户两者产生的“状态”信息。系统产生的信息包含分配给与当前候选库相关的候选对象的编号和产生该候选对象的产生器的名称。状态202由系统功能的“设置状态”(Put State)226进行更新,且作为参数可从规则(Rules)205或最后行动(Final Action)214中存取。
状态更新(State Update)211是一个用户定义的功能、它使用系统功能设置状态226来更新候选对象的状态信息。状态更新221由系统功能的“定义状态更新”228产生,且作为方法204的一个单元存取。
本发明的较佳实施例包含一种数据类型全局前后关系(Global context)203,它代表关于最佳候选对象的信息,而不是各个单独候选对象所具有的特性。它是一张数据关键字和数值对的表,通过选择230的变元(aryument)进行初始化,它由取得系统功能(Get system function)存取,且用设置系统功能(Put system func-tion)更新。
全局前后关系更新(Global Context Update)212是用户定义的功能,它通过使用前段中提及的取得和设置系统功能220来改变和增添全局表。它由系统定义的功能定义(Define)231产生,且作为方法204中的选择方法的一个单元(element)进行存取。
一种数据类型方法(Method)204表示这样的信息,从该信息中可以选择以某一特定方式进行选择的方法。方法204的内部结构包含许多片段(slots),片段包含下面的每个中的至少一个选择名称,方法名称,全局更新功能,候选对象产生器,状态更新功能,规则,最后行动功能,规则权,软性扰乱蕴含选择(soft violation inclu sionoption),定标选择(scaling option),和方法(approach)。这些片段中的信息与这里所描述的数据类型和功能相关联。规则权、软件扰乱蕴含、和定标选择下面结合图3-图5加以讨论。方法204允许使用多种可能的方法之一进行选择。
规则(Rules)205是一种包含至少一组规则的数据类型。在较佳实施例中,有多种规则类型、包括删除规则、比较规则、得分规则和停止规则。规则用功能表示,由定义系统功能222产生和保持。于是,规则205中的规则可包含功能编程。每种类型的规则的基本特性下面紧接着加以描述,其功能特性结合图3-图7加以描述。如下所述,规则是方法204的一个单元,它返回送某些值。
删除规则215是一种功能,它根据候选对象的某方面(特征)确定该候选对象是否可以从选择过程中被删除。删除规则215接受一个候选对象和该候选对象的作为变元(arguments)的当前状态信息表,且如果该候选对象考虑要被删除,则回送一个非零值;否则它回送一个零值。删除规则215中的规则可包括“软”和“硬”两种删除规则,它们以不同的方式应用在选择(Choose)230中。硬删除规则表示一些不可克服的约束。软删除规则表示某些约束,而这些约束不是绝对的即可以相对于其它方法的考虑加以平衡。
比较规则216是确定两候选对象中哪一个“更好”或它们是否“相等”的一种功能。在比较规则216中的规则表示一种看法和喜爱,这种看法和喜爱可以是(相互)矛盾的。比较规则216接受两个候选对象而把每个候选对象相应的当前状态信息表作为变元。比较规则216的返回值是关键字,该关键字取决于该规则是确定第一候选对象较好,或第二选择物较好,或是该规则不能确定哪个较好,还是该规则不适用。比较规则216也可返回试探性的结果,而且也可以返回试探性结果的数字大小(strength)。
得分规则(Scoring Rules)217是根据某候选对象的某种特性,赋给该候选对象以一个数字权以便与其它候选对象作比较的一种功能。得分规则217、如下所述用于选择230的方法之一。得分规则217接受某一候选对象和作为变元的那个候选对象的相应的当前状态信息表,且返回一个数用作该候选对象的排序权的号码。
停止规则218是确定选择230可否提前停止的一种功能。停止规则218接受描述当前情况的关键字作为一个变元,即当前候选对象是不是新的最好候选对象,或候选对象产生器是否已停止产生候选对象。取决于当前状态,如果产生器已停止产生候选对象,则停止规则218也接受当前候选对象或是当前最佳候选对象作为关键字,并接收前述候选对象的状态信息表。停止规则218返回是否停止决策过程。
尽管图2中未画出,但本发明的编程方法的另一特征是学习、一种自动调整规则权的系统功能,学习的特征结合图6加以解释。
选择(choose)230是选出最佳(好)候选对象的一种系统功能。它的变元包含一种方法、由策略确定的方法除外,一个候选库、和全局前后关系信息。选择230包含一些算法,这些算法体现不同的选择途径或方法,这些途径或方法在方法204中详细解释。两个这样的途径或方法、一个分级方法和一个加权选择途径(方法)将结合图4A和图4B加以解释。
最后动作(Final Action)214是通过对选为最佳候选对象做某些事情来提高决策过程的用户定义功能。它的输入是最佳候选对象和该候选对象的状态信息表。该返回值是一种从调用选择230返回的值。最后动作214由定义系统功能231产生,并且是方法204的一个单元。在最后动作214中可以有多于一个的动作,且这些最后的动作可顺次加上。
策略206是对某给定的情况命名的一种数据类型,在这给定情况中,要进行种种选择并且指定策略参数和与该情况有关的选择方法。对于一给定选择情况,策略206指定哪个方法用于进行最佳选择。它的内部结构包含参数名称/数值的对表和选择/方法配对表。策略由一种系统功能定义策略223产生,它由一些其它系统功能来存取。
策略参数208是一种用户定义数据类型,它由规则205来存取,规则视策略参数值的不同而表现不同的行为。策略参数208由一种系统功能定义策略参数248产生。策略参数中的值能从用户或从另一个程序进行交互作用而获得。该策略特征将结合图5作进一步的讨论。
图3-图7表示了本发明的另一方面,即一种当进行决策时、使用计算机帮助用户在可供选择的多种选择中进行最佳选择的方法。图3、图4A和图4B主要表明了在给出一个特定选择的方法后进行最佳选择的方法,图5和图6表示了本发明使用策略选择和学习特征的方法。图7表示本发明使用假设情况特征的方法。这些方法能用图2中所讨论的功能和数据类型来执行。如上所述,每个方法的“开始”阶段能由用户启动,且该方法能交互地执行,或该方法能编程且被调用或运用,或由其它编程对其编程和调用。
图3的方法是假设存在一个候选对象库。步骤300更新这些候选对象的特征。执行步骤300的编程结构是全局前后关系更新(Glo-bal Centext Update)212。步骤302执行计算机的候选对象产生程序,在方法的其它步骤期间,这些候选对象可单个或多个进行评估而达到比较的目的。候选对象的产生可以是作为简单列表提供原始的候选库和从该表每次提取一个单元的简单过程到一个更复杂的过程,其中,用代表候选库的数据结构按要求产生候选对象。每个候选对象的产生可以是一个计算迭代过程,这样,只产生所需要的候选对象。这后一种过程能借助于停止规则(stop rules)来进行。然而,对于某些选择,必须产生整个候选对象表,以便进行整体上的较佳选择、或进行下面所解释的满加权选择(the full weighted choose)。虽然在图3中未标明,但步骤302可重复进行,即候选对象的产生可以不止一个。对于执行步骤302的编程将结合图2进行描述,具体说来是结合候选对象产生器201、候选对象传送210和选择230进行描述。是一个候选对象产生还是多个候选对象产生由选择230来确定。
步骤304是执行选择最佳候选对象的过程以作出决策。在步骤304内有多种可供选择的方法,下面将结合图4A和4B进行描述。编程执行步骤304的例子是功能选择230。
步骤305确定是否有最后行动功能、如最后行动214。如果有,则步骤306完成该最后行动。如果没有最后行动,步骤308把最佳候选对象返回给用户。
图4A和图4B表明步骤304的分步骤。这种分步骤将结合每个图进行解释,本发明提供两种选择方法一种分级方法和一种加权选择方法。不管是哪一种方法,都假定可以从上述的数据类型和功能使用具有更新信息的候选对象库。而且,如果规则要具有规则权,则规则按此进行分类。
两种方法都包含涉及应用硬和软删除规则的步骤。如果硬删除规则对某一候选对象宣告失败,则该候选对象被删除,考虑下一个候选对象。软删除规则用于通过硬选择规则的每个候选对象。与硬删除规则不同,不管是否失败,软删除规则可继续地用于一候选对象。软删除规则对每一候选对象的记分是通过加进每条已通过规则的规则权而进行累计的。除了接收得分外,候选对象还被分配到两组中的一个组中一组包含到当前为至通过所有软删除规则的候选对象,而另一组包含至少已失败于一个软删除规则的候选对象。编程执行这些删除规则的程序设计结合规则205、方法204和选择230在上面已作了描述。
决策的具体方法可以包括软删除规则的换算。如果应用换算,则最后软删除得分将乘以当前考虑的候选对象的数目。这允许软删除得分可以在相等的基础上与以后的比较规则得分进行结合。进行这种换算的例子是某个单元(element),如方法204中的一个标记(flag)。
两种方法都包含应用停止规则的步骤。如果一停止规则对候选对象是成功的,则决策过程停止。停止规则的一个例子是最新最佳候选对象已充分足够。另一个例子是决策占用时间太长。这可以通过把起始时间存储中程序结构如全局前后关系更新(Global Context Update)212中,并用该停止规则检查当前时间来实现。停止规则的第三个例子是候选对象已达到最大数目。这可以通过把候选对象数目存储在诸如状态202的数目结构中来实现。停止规则的第四个例子是决策过程已达到候选对象产生器的末尾具有至少一可行的候选对象,或者当前最佳候选对象已足够好。这种规则可以通过检查候选对象产生器201来实现。
两种方法还都可包含应用比较规则的步骤。比较规则比较两候选对象以确定哪个较好,即一种成对比较。如果当前规则把一个肯定的结果返回到某一比较对象,则该候选对象是较好的。如果该规则返回“相等”、或规则返回试验性(tentative)结果,那么接着就考虑下一个规则。试验性结果可以是一般性(general),也可包含某种程度的肯定性(certainty)。试验性结果被记住,这是因为如果所有比较规则都用完而不能得到明确结果时,则就用具有最高肯定或从最高优先权规则产生的试验性结果。该最高优先权规则是返回最高肯定性,或是用户指定的顺序中排在第一的规则。执行这一步骤的程序结构结合规则205和方法204进行描述。
图4A表明了一种选择最佳候选对象的分级法。步骤400得到一个候选对象。步骤402应用硬删除规则。步骤403确定该候选对象是否被该硬删除删除。如果候选对象在步骤402被删除,除非候选库用完,否则步骤400重复进行以取得另一个候选对象。如果候选对象在步骤402中未被删除,则步骤404确定是否指定要软删除规则。执行步骤402的一个例子是数据型方法204。如果没有指定软删除规则,则步骤405把比较规则加到在步骤402和步骤403中未被删除的候选对象上。为了应用比较规则,每个候选对象相对于当前最好(佳)候选对象每次使用一个比较规则进行比较。该过程连续进行直到两候选对象之一被认为较好时为止。获胜者变成当前最好的候选对象。比较规则按照某种有意义的方式由用户排定顺序。在步骤405之后,步骤406应用停止规则,且步骤407确定停止规则是否较早地结束选择过程。
回到步骤404,如果软删除规则被指定,则步骤410把他们加到在步骤402和403中未被删除的候选对象,并使用如以上所解释的软比较规则。步骤412对剩留在候选库中的候选对象应用比较规则以选出最佳候选对象。步骤414应用停止规则,如果有停止规则,则步骤415结束选择方法。如果没有停止规则,步骤416确定是否有其余候选对象要加以评价,如果有则重复步骤412。如果步骤416确定已不再有候选对象,则该方法结束。
图4B表示一种按照图3的步骤304进行选择的加权选择法。步骤430得到一候选对象。步骤432应用硬删除规则,步骤439确定候选对象是否被删除。如果候选对象被删除,则重复步骤430和432且除非步骤431确定不再有候选对象,否则该方法得到另一候选对象。如果候选对象未被删除、步骤434把该候选对象添加到保留候选资格的候选库中。然后对每个候选对象,继续这些步骤。
步骤433应用软删除规则,并且确定每个候选对象的软删除得分。本发明的特征在于在应用比较规则期间处理软删除的犯规者(Violators)的方面,视所使用的方法可以是不同的。一种可供选择的方案是包含比较规则各步骤中的全部违反者。可供选择的第二种方案是如果候选对象中没有一个通过全部软限制时才包含全部违反者。可供选择的第三种方案是如果没有候选对象通过全部规则,则仅包含那些违反前面软规则的候选对象,并移动到下面的软删除规则或直接移动到比较规则级。其它可供选择的方案可以随需要而变化且通过适当的编程来执行这些方案。方法204的编程结构允许执行这一步骤。
步骤435确定每个比较规则的部分总分,它有表达式PS(i)=SUm(j=i到n)MaxGain(j),这里i对应有关比较规则,而n是比较规则的数目。MaxGain是在总分中第二名的候选对象能超过第一名的候选对象的最大得分,MaxGain(i)=(n-1)*规则权(rule weight)这里i对应于有关的比较规则。
步骤437确定在一个比较规则用于整个候选库之后,图4B的比较步骤是否可以被短路。
如果余下的比较规则不能使任何其它候选对象有更高的总分,则发生这种短路。短路的前提是一比较规则能以下列方式之一影响候选对象的总分(1)当前第一名候选对象的分数(得分)至少增加1*规则权,和(2)当前第二名的候选对象的分数最多增加n*规则权,这儿n是候选对象数目。步骤437确定在当前最高总分和当前第二最高总分之间的差。如果这种差比来自相对应于行将应用的比较规则的部分和表的部分和项还大的话,则结束该比较规则的迭代。如果有记分规则,则不执行步骤437。
如果没有短路,则步骤436-444形成一个应用比较规则的迭代环。更确切地说,步骤436得到一比较规则,而步骤438用比较规则作为成对分类判定对候选对象进行分类。步骤440用来从分类表得到候选对象。步骤442按照候选对象的排序权乘以规则权之积加上原有候选对象的积分来确定该候选对象的总分。为了确定排序权,步骤442给分类表中的第一候选对象的排序权等于n、即当前库中的候选对象的数目。除非步骤438确定第二候选对象与第一选择物相等,在这种情况下,第二候选对象接收相同的排序权、否则步骤442给第二候选对象一个等于n-1的排序权。对每个候选对象进行上述的排序过程。在步骤442完成后,步骤443应用停止规则,如果应用停止规则,则步骤444停止比较规则阶段。步骤445和446确保步骤436-444对每个候选对象和每个规则重复。
步骤448-458是应用得(记)分规则的迭代环。步骤448获得一个得分规则,而步骤450从当前的库中得到一个候选对象。步骤452把来自步骤450的得分规则分别用于每个候选对象。步骤454按照得分规则返回的候选对象的排序权与得分规则的规则权的乘积来确定候选对象的新的总分。这一乘积加到来自步骤442或来自先前得分规则迭代的候选对象的总分上。
在步骤454之后,步骤456应用停止规则,且如果停止规则适用,则步骤458停止比较规则阶段。步骤460和462保证步骤448-458对每个候选对象和每个规则重复。
步骤464按照来自步骤435的软删除得分和来自步骤464的候选对象总分两者之和来确定候选对象最后的总分。如果需要,该软删除得分可以按照上面所述的方法进行换算。步骤466按照候选对象所具有的、由图4B各步骤产生的最高得分来确定最佳选择。
再参照图3,在用图4A或图4B的选择方法确定最佳选择后,步骤306执行可能指定的最后行动。如果没有最后行动,步骤308返回最佳选择对象,或者反回一组排序推荐的候选对象。
本发明的重要特征在于图3的步骤可以用或不用预先选择的策略来进行。本发明的这一特征可以由图5得到最好的说明。如在图2中结合策略206所讨论的那样,本发明的编程允许定义多种策略。每个策略有一个名字和由一组策略参数值和一组特定的选择方法组成。执行选择方法的编程已经结合图2尤其是结合方法204进行了描述。
如图5中所示,使用具有策略选择特征的本发明涉及第一步骤、即采用策略的步骤510。当接受了某一策略时,那个策略的参数值和选择方法变成当前值和当前选择方法。步骤512执行图3的决策步骤以选择最佳的候选对象。步骤514确定最佳候选对象是否可被接受。如果可以接受,步骤516在其它编程中使用该最佳候选对象,或按用户需要应用它。
图5的步骤518和520表示了本发明的另一特征,该特征可用于决策系统发展阶段。这是一种学习特征,在决策操作没能产生所需结果后,由用户加以调用。总的说来,该学习特征是一种与加权选择方法相结合的规则权调整特征,以便使用户的最佳选择的候选对象将得到最高分,并由此改进知识库。该学习步骤是对每个“规则例子”(rule instance)的迭代过程,即对加权选择方法的每一部分,在这种方法中,一特定的规则曾被用来对经受得住删除的整个一组候选对象进行过评估。一个规则例子是规则权和一候选对象排序权配对表。
步骤518确定该学习特征是否要调用。如果调用,则步骤520执行它。步骤520的分步骤表示在图6中。假定编程已保存了每个候选对象和它的状态信息,包括每个候选对象的总分和每个规则例子。
步骤614确定当前规则和当前候选对象的总分T之间的关系。对于每个规则,有三个状态类别(1)比所需候选对象有较高当前值T的每个候选对象由当前规则排序在较高位置,或(2)比所需候选对象有较高当前值T的每个候选对象由当前规则排序在较低位置、或(3)既没有类别(1)也没有类别(2)存在。余下各步骤按照某一规则所属类别增加或减少该规则的权或不考虑该规则。
如果该规则属于类别3,则步骤618把该规则搁于一边。步骤620-626用来保证如果该规则不被考虑,在属于类别1或2的任一规则的权调整以后,则不被考虑的规则能再被考虑以确定它们之中是否有属于类别(1)或类别(2)。
如果规则不属于类别3,则步骤628将得到下一个候选对象,目的是对除所需候选对象以外的全部候选对象都加以循环。步骤630确定是否还存在需要考虑的候选对象。如果有这样的候选对象,则步骤632确定该候选对象是否应该考虑。如果当前候选对象的T低于所需候选对象的T,且(1)对于类别1的规则,如果根据该规则当前候选对象的排序位置比所需候选对象的位置高,或(2)对于类别2的规则,如果当前候选对象的排序位置比所需候选对象的位置低,则情况就是如此。如果该候选对象不被考虑、则重复步骤628。
如果该候选对象被考虑,步骤634确定△如下△=|(T其它-T所需)/(r所需-r其它)|这里T其它和r其它是与该候选对象相关联的当前总分和规则号,且T所需和r所需是与所需候选对象相关联的总分和规则号。
步骤636将T其它和T所需进行比较。如果T其它比T所需大,则步骤638用来确定最大超越值LO,使LO是当前最大的LO和最大的△。如果T其它不比T所需大,则步骤640确定最小追赶值SC,使SC是当前最小的SC和当前最小的△。在步骤638或步骤640之后,步骤628重复且对下一个候选对象计算LO或SC。
回过来参看步骤628,如果不再有候选对象要考虑,则步骤642对LO进行换算。这种换算通过把留在规则例子库中的规则数和留在暂不考虑库中的规则数相加并把该总和分成最大的△(增量)来进行的。步骤644重新计算作为换算的LO和SC的最小值的△值。步骤646确定该规则是不是类别1的规则。如果是,则步骤648根据原有规则权减去△来计算新的规则权。如果该规则不是类别1的,意味着它在类别2中,该规则权为原有规则权加△。步骤652重新计算每个候选对象的T值,并如上所述检查暂不考虑的规则库(the pool of set aside rules)。
在每个规则例子通过步骤614-652计算后,步骤654确定所需候选对象与它原有规则权相比是否改进了它在候选总分分类表中的位置。如果是,则步骤656返回调整后的规则权。
再参看图5,如果不调用学习特征,则步骤510-514不断重复,直到确定了一个可接受的候选对象为止。
图7表明了本发明结合了图1的决策处理系统的特征的特征。具体地说,图7表明了一种用不同的策略产生试探解的方法。该方法可以使用联系决策处理器60和知识库50讨论的装置和编程来进行。
步骤710进入一个用约束传输(constraint propagation)能力编程的计算机系统的“效应模式”(effects mode)。步骤712确定是否要建立新的假设情况。如果要建立新的假设情况,则步骤714建立该新假设情况并把该假设情况与一特定的策略联系在一起。如果没有新的假设情况要建立,则步骤716确定一个先前选择的假设情况是否要处理。如果不处理,则步骤718离开该“效应模式”并选择某种解法。再看步骤716,如果使用先前的假设情况,则步骤720选择一个假设情况。一旦假设情况已建立或已被选定,则步骤722进入该假设情况,这意味着采用一个相应的策略。步骤724通过进入本发明的决策方面来解决这问题。上面联系图3、图4A及图4B讨论的程序设计就是针对这一步骤的。
虽然本发明就具有实施例作了描述,但这种实施例的描述不能为对本发明内容的限制。参照本发明的描述、对于本技术领域中的技术人员是很容易对本发明的实施例作种种修改或作出其他实施例的。因此,所附权利要求书将把这些属于本发明精神实质范围之内的种种修改和实施例的变化包括在权利保护要求的范围之内。
权利要求
1.一种在特定领域中帮助用户决策的计算机系统装置,包含接收该领域信息的事务处理接口,具有表示所述领域信息的知识库的存贮器,编程以从候选对象中进行最佳选择的决策处理器系统,使用应用方式可变化的规则;所述用户可与所述决策处理器系统进行交互作的用户接口;和用于在所述事务处理接口、所述存贮器、所述决策处理器系统和所述用户接口之间沟通信息的总线系统。
2.如权利要求1所述装置,其特征在于,所述知识库包含在所述知识库中表示事物状态(行为)的状态(行为)码。
3.如权利要求1所述装置,其特征在于所述规则包含软删除规则。
4.如权利要求1所述装置,其特征在于所述规则可以分级(分层次)方式应用。
5.如权利要求1所述装置,其特征在于所述规则可按照它们的应用对它们进行加权运用。
6.如权利要求5所述装置,其特征在于所述加权可自动进行调整以改进所述知识库。
7.如权利要求1所述装置,其特征在于所述决策处理器还进一步编程以允许所述用户在所述选择的多种方法中进行选择。
8.如权利要求1所述装置,其特征在于所述最佳选择响应由约束传输产生的效果。
9.如权利要求1所述装置,其特征在于所述决策在由用户所选假设情况的前后关系中进行。
10.在用人工智能编程的计算机系统中,一种可以在在特定领域中的可供选择的方案之间进行最佳选择的方法,包含步骤用预定的数据或用户输入、从所述候选对象库中产生一候选对象;按规则对所述候选对象进行评估,其中所述计算机提供多于一个的应用所述规则的方法;和重复所述评估步骤直到选出最佳候选对象为止。
11.如权利要求10所述方法,其特征在于所述候选对象产生步骤进一步包含根据预定的数据或用户输入更新所述候选对象的特征。
12.如权利要求10所述方法,其特征在于还进一步包含根据预定的数据或用户输入选择的步骤,进行所述评估步骤的方法。
13.如权利要求10所述方法,其特征在于所述评估步骤包含使用分层方法评估所述候选对象物。
14.如权利要求10所述方法,其特征在于所述评估步骤包含使用规则加权方法来对所述候选对象进行评估。
15.如权利要求14所述方法,其特征在于所述规则加权方法包含通过确定当前最佳候选对象不会被超过而短路所述评估的步骤。
16.如权利要求14所述方法,其特征在于所述规则加权方法允许通过调整所述规则对最佳候选对象的选择进行学习。
17.如权利要求10所述方法,其特征在于所述候选对象评估步骤进一步包含使用软排除规则。
18.如权利要求10所述方法,其特征在于进一步包含在最后行动中使用所述最佳选择的步骤。
19.如权利要求10所述方法,其特征在于进一步包含按照预定的数据或用户输入选择用作选择的策略的步骤。
20.如权利要求10所述方法,其特征在于进一步包含选择代表某个要解决问题的假设情况的步骤,且其中对所述候选对象评估的所述步骤是在解决所述假设情况的前后关系中进行的。
全文摘要
一种帮助人们决策的装置和方法,使用具有人工智能编程的计算机。特定范畴内实际世界的事物和事件表示在知识库(50)中。根据规则的应用作出解决问题的最佳选择,并可根据用户所选择的方法通过加权、排序等绝地、比较地应用规则。本发明还允许用户从各种决策策略(66)中进行选择并允许用户在假设情况中观察选择的效果。
文档编号G06N5/04GK1048460SQ90103328
公开日1991年1月9日 申请日期1990年6月29日 优先权日1989年6月30日
发明者朗达·L·亚历山大, 迈克尔·E·伊尔冈, 约翰·A·基希纳, 马沙·H·埃利斯, 查尔斯·W·扬 申请人:德克萨斯仪器股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1