專利名稱:計(jì)算機(jī)輔助決策裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及計(jì)算機(jī)處理,尤其涉及一種使用人工智能程序設(shè)計(jì)技術(shù)以幫助人類決策的裝置和方法。
雖然還不存在對(duì)“人工智能”的統(tǒng)一的定義,但有時(shí)一般定義為計(jì)算機(jī)程序設(shè)計(jì)風(fēng)格,在這種程序設(shè)計(jì)中程序按照解決問題的規(guī)則來運(yùn)行數(shù)據(jù)。人工智能涉及應(yīng)用符號(hào)而不是數(shù)字來表示數(shù)據(jù)。使用計(jì)算機(jī)處理這些符號(hào)稱為“符號(hào)處理”,并且允許計(jì)算機(jī)以符號(hào)形式來表示實(shí)際世界的事物(對(duì)象),然后發(fā)展這些符號(hào)間的關(guān)聯(lián)。
人工智能程序的一個(gè)共同特征是它們都涉及知識(shí),并且必須用計(jì)算機(jī)能使用的方式來表示這種知識(shí)。人工智能的應(yīng)用,包括使用符號(hào)處理的人工智能的應(yīng)用,是與知識(shí)庫(Knowledge bases)相關(guān)聯(lián)的。對(duì)某一項(xiàng)具體應(yīng)用的知識(shí)庫包含與應(yīng)用有關(guān)的一些事實(shí)(facts)和應(yīng)用這些事實(shí)的規(guī)則,即與有關(guān)領(lǐng)域相關(guān)的說明和過程知識(shí)。知識(shí)庫的“事實(shí)”可包含事物(對(duì)象)、事件(events)和關(guān)系。
為了發(fā)展有用的知識(shí)庫,計(jì)算機(jī)工業(yè)認(rèn)識(shí)到必須結(jié)合軟件工程師和某一領(lǐng)域中的專家兩方面的努力。通常,軟件工程師發(fā)展專家系統(tǒng),專家為知識(shí)庫提供信息。但是,即使是這種產(chǎn)生知識(shí)庫的方法也忽視了用戶的專長和經(jīng)驗(yàn),而他或她們可能有他們自己的專長和經(jīng)驗(yàn)可以加到?jīng)Q策過程中去。因此,需要有一種允許用戶的專長和技能可以對(duì)知識(shí)庫作出貢獻(xiàn)的知識(shí)庫系統(tǒng)。
人工智能的應(yīng)用之一是提供人類以決策支持,尤其是以模擬某一實(shí)際世界的或假設(shè)的操作的形式。操作的范圍包含所有事物(對(duì)象)、事件和操作中影響行為、性能的關(guān)系。但是,許多現(xiàn)存的的系統(tǒng)都不夠靈活,它們依靠基于規(guī)則的推理方法來工作。這些系統(tǒng)在決定什么規(guī)則可以適用和怎樣去應(yīng)用這些規(guī)則方面不如人類智慧的能力。因此有必要改進(jìn)應(yīng)用規(guī)則的方法。
本發(fā)明的一個(gè)方面是提供一種幫助人類用戶就特定操作領(lǐng)域中的事件作出決策的裝置。本發(fā)明可以體現(xiàn)在這樣一計(jì)算機(jī)系統(tǒng)中該計(jì)算機(jī)系統(tǒng)具有一存儲(chǔ)的知識(shí)庫,且在該系統(tǒng)中,用戶與決策處理器分系統(tǒng)能交互作用。該裝置的特征包括可以幫助用戶在與領(lǐng)域有關(guān)的可供選擇的方案之間作出選擇。該裝置允許用戶從若干類型的規(guī)則和其它數(shù)據(jù)中進(jìn)行選擇從而發(fā)展一種選擇方法。該裝置也允許用戶發(fā)展包括用于一組特定選擇的一組參數(shù)值和方法的策略。
本發(fā)明由應(yīng)用人工智能技術(shù)的程序設(shè)計(jì)來實(shí)現(xiàn),包括面向目標(biāo)的程序設(shè)計(jì)。由于這種原因,一種決策(decision)處理器分系統(tǒng)可以通用化到足以使它具有可用于若干不同的計(jì)算機(jī)系統(tǒng)的模塊。因此,本發(fā)明的一個(gè)方面是提供一種處理器裝置,這種處理裝置通過編制程序可以用于幫助用戶在可供選擇的作用之間進(jìn)行選擇。
本發(fā)明的另一方面是提供一種對(duì)計(jì)算機(jī)進(jìn)行程序設(shè)計(jì)的方法,以幫助用戶在可供選擇的方案間進(jìn)行選擇。該程序設(shè)計(jì)的特征包括與選擇過程有關(guān)的種種類型的數(shù)據(jù)的表示法和種種執(zhí)行規(guī)則的功能的表示法。這種程序設(shè)計(jì)給出一些不同的規(guī)則,并且允許這些規(guī)則可以以不同的的方式運(yùn)用。該程序設(shè)計(jì)也允許有應(yīng)用上述規(guī)則的多種方法,且使用戶能從中選擇一所需要的方法。
本發(fā)明的另一方面是提供一種在特定領(lǐng)域內(nèi)的可供選擇方案之間應(yīng)用計(jì)算機(jī)進(jìn)行最佳選擇的方法。該方法的特征包含應(yīng)用不同的規(guī)則、以不同的方式應(yīng)用規(guī)則,在多種方法之間進(jìn)行選擇以作出最佳選擇,和采用策略作出決策。本發(fā)明的進(jìn)一步的特征是允許在假想情況的前后關(guān)系中進(jìn)行決策。
本發(fā)明的技術(shù)上的優(yōu)點(diǎn)是這種計(jì)算機(jī)輔助決策是以比較接近人類決策的方式進(jìn)行的。這些規(guī)則可以非絕對(duì)地及比較地加以應(yīng)用。本發(fā)明的進(jìn)一步優(yōu)點(diǎn)是允許人們把他的或她的專長和經(jīng)驗(yàn)以交互作用方式與具有人工智能能力的計(jì)算機(jī)系統(tǒng)相結(jié)合。本發(fā)明的優(yōu)點(diǎn)還在于它把計(jì)算機(jī)決定事件效果(影響)的能力和計(jì)算機(jī)作出與那些事件有關(guān)的選擇的能力結(jié)合了起來。
本發(fā)明特征的新穎性如所附權(quán)利要求書中所述。然而對(duì)本發(fā)明本身,則通過參照下面實(shí)施例的描述、并參閱附圖可得到最好的理解。
圖1是按本發(fā)明的計(jì)算機(jī)系統(tǒng)的方框圖。
圖2表明按本發(fā)明產(chǎn)生一種程序結(jié)構(gòu)以對(duì)計(jì)算機(jī)進(jìn)行程序設(shè)計(jì)的一種方法。
圖3是說明本發(fā)明計(jì)算機(jī)輔助決策的一種方法的流程圖。
圖4A和4B是說明圖3評(píng)價(jià)步驟的詳細(xì)步驟的流程圖。
圖5是表示使用所述計(jì)算機(jī)產(chǎn)生的對(duì)策進(jìn)行計(jì)算機(jī)輔助決策的一種方法的流程圖。
圖6是表示圖4B方法中所用的學(xué)習(xí)程序(learning routine)的流程圖。
圖7是表示使用所述計(jì)算機(jī)產(chǎn)生的假設(shè)情況(scenario)的計(jì)算機(jī)輔助決策的一種方法的流程圖。
圖1表示按照本發(fā)明所構(gòu)成的裝置。在一實(shí)施例中,本發(fā)明是計(jì)算機(jī)網(wǎng)絡(luò)的一部分,該網(wǎng)絡(luò)包含主計(jì)算機(jī)10和一些分站(stations),每個(gè)分站通過網(wǎng)絡(luò)通信系統(tǒng)15與主機(jī)相連。
該裝置的一個(gè)應(yīng)用例子是監(jiān)控航線飛行操作的計(jì)算機(jī)網(wǎng)絡(luò),在這種飛行操作中,操作范圍所包含所有影響飛行時(shí)間表的事件。下面將要敘述,該系統(tǒng)提供實(shí)時(shí)支持使使用者能理解問題的范圍、詳細(xì)觀察問題的邊界效應(yīng)(副作用)、產(chǎn)生改進(jìn)狀況的多種可能性,評(píng)價(jià)供選擇的改進(jìn)方案。這種應(yīng)用只是一個(gè)應(yīng)用的例子,本發(fā)明的裝置和方法可用于多種領(lǐng)域及多個(gè)方面。
圖中一個(gè)典型的分站用編號(hào)20表示。用于網(wǎng)絡(luò)中時(shí),每個(gè)分站20包含一使該站能與主機(jī)10相互作用的終端仿真裝置。然而本發(fā)明不一定要用這樣的網(wǎng)絡(luò)、該站可以是一個(gè)獨(dú)立的處理單元。
不管在網(wǎng)絡(luò)中用作終端或者用作獨(dú)立的處理單元、分站20有一些組成部件,包含事務(wù)處理接口30、用戶接口40、知識(shí)庫50和決策處理器系統(tǒng)60。這些組成部件通過總線17和其它通信裝置相互間發(fā)送和接收信息。另外,分站20還有一般數(shù)據(jù)處理終端或通常的獨(dú)立處理單元所常用的其它組成部件(未畫出)。例如,用于知識(shí)庫50以外的存儲(chǔ)器,它存儲(chǔ)數(shù)據(jù)和程序以及提供定時(shí)功能的定時(shí)器(未畫出)等。
事務(wù)處理接口30允許分站20所用數(shù)據(jù)跟得上出現(xiàn)在操作范圍內(nèi)的當(dāng)前事件。因此,事務(wù)處理接口30與主機(jī)10及知識(shí)庫50處于連通狀態(tài)。當(dāng)然,如果分站20是獨(dú)立處理單元,事務(wù)處理接口30將與某些其它輸入裝置連通或者與用戶接口40相結(jié)合。事務(wù)處理接口30也與決策處理器系統(tǒng)60連通,以便基于本發(fā)明進(jìn)行決策的信息能從分站20傳送到另一分站或輸出裝置。事務(wù)處理接口30的硬件可以是一些眾所周知的輸入/輸出和其它設(shè)計(jì)用于這里描述的功能的外圍裝置的任何一種。
用戶接口40給用戶提供一個(gè)使用本發(fā)明功能的進(jìn)出口。用戶接口40允許通過鍵盤或其它輸入裝置進(jìn)行輸入,且提供顯示以允許用戶與本發(fā)明交互作用。用戶接口40也與決策處理器系統(tǒng)60連通。用戶接口40的硬件可以是任何一種眾所周知的輸入/輸出和其它外圍裝置。
知識(shí)庫50包含執(zhí)行不同系統(tǒng)功能所必需的數(shù)據(jù)。知識(shí)庫50的硬件可以是任何用電子學(xué)方法存儲(chǔ)信息的存儲(chǔ)裝置,例如數(shù)字存儲(chǔ)裝置。知識(shí)庫50,除了它包含一些能幫助決策的人工知能結(jié)構(gòu)外,在概念上與標(biāo)準(zhǔn)數(shù)據(jù)處理系統(tǒng)的數(shù)據(jù)相類似。更具體地說,知識(shí)庫50安排成語義幀網(wǎng)絡(luò)(semantic network of frames)??偟膩碚f,每幀是一個(gè)表示事物的知識(shí)表示結(jié)構(gòu),即把物理(實(shí)體)項(xiàng)、事實(shí)(facts)、事件等實(shí)際世界中的事物表示為屬性群(groups of attributes)。每幀包含時(shí)間段(slots),每個(gè)時(shí)間段能有一個(gè)值。如下所述,這些值能包含要執(zhí)行的程序。在一個(gè)幀系統(tǒng)中,各幀可繼承來自其它幀的值。
知識(shí)庫50中的幀可包含推理程序設(shè)計(jì)(reasoning programming),更準(zhǔn)確些,它應(yīng)該叫做“應(yīng)用行為碼(application behavior code)”。這種程序是面向目標(biāo)的,即信息是面向程序設(shè)計(jì)處理的周圍的事物的。知識(shí)庫50中的事物可以有“行為表現(xiàn)”(behave),從而使在知識(shí)庫中的事物之間的數(shù)據(jù)和關(guān)系發(fā)生變化。為了實(shí)現(xiàn)這種行為表現(xiàn),程序設(shè)計(jì)利用了“精靈”程序(demons),當(dāng)幀中的某些數(shù)據(jù)元被訪問,以及當(dāng)某些條件產(chǎn)生、決定該做什么時(shí),就調(diào)用這些程序。知識(shí)庫50中的程序設(shè)計(jì)允許事物被表述,且允許這些事物之間的相互關(guān)系以一種類似于數(shù)字?jǐn)U展表單元(cells of a numeric spreadsheet)的方式來處理。這一特征將在下面結(jié)合效應(yīng)處理器(effects processor)62作更詳細(xì)的描述。
決策處理器系統(tǒng)60包括兩個(gè)分系統(tǒng),即包括一個(gè)效應(yīng)處理器62和一個(gè)策略處理器66、每一個(gè)具有專門的程序設(shè)計(jì)以完成下面所述的功能。每個(gè)處理器的硬件可以是一些眾所周知的能執(zhí)行計(jì)算機(jī)指令的裝置的任何一種、譬如微處理器。
效應(yīng)處理器62體現(xiàn)了“符號(hào)擴(kuò)展表”這樣一個(gè)概念。該符號(hào)擴(kuò)展表類似于目前通用的數(shù)字?jǐn)U展表,在該表中,數(shù)字或公式被分配(指定)給單元。用戶能改變某個(gè)單元中的值,并且立即看到對(duì)其它單元的影響。與數(shù)字?jǐn)U展表不同,效應(yīng)處理器62使用幀作用單元以便用符號(hào)表示特定領(lǐng)域(particular domain)的組成部件。數(shù)值、復(fù)雜的實(shí)體、甚或程序都可分配(指定)給單元。這些幀利用它們之間的關(guān)系的描述相連。當(dāng)領(lǐng)域中發(fā)生變化或當(dāng)用戶提出假設(shè)的事件時(shí),程序能確定這些變化操作的其它方面的影響。人們把這種類型的程序稱作“約束傳播(constraint propagation)”。
以航空飛行為例,單元代表事物、例如飛機(jī)、機(jī)務(wù)工作人員和飛機(jī)場(chǎng),和影響它們的事件、如飛行延遲、飛機(jī)場(chǎng)關(guān)閉、或維修延遲。當(dāng)系統(tǒng)接收到一個(gè)事件時(shí),效應(yīng)處理器62確定它的影響并修改(更新)知識(shí)庫50。
效應(yīng)處理器62的特征在于它的程序設(shè)計(jì)可以以允許用戶創(chuàng)造(產(chǎn)生)和觀察假設(shè)的情況,即設(shè)置一組組假設(shè)的變化。假設(shè)情況由知識(shí)庫50產(chǎn)生,用以替代實(shí)際世界的情況,與此同時(shí),維持該庫的實(shí)際知識(shí)庫數(shù)據(jù)。于是,效應(yīng)處理器62或者響應(yīng)來自知識(shí)庫50的輸入、或者響應(yīng)來自用戶所創(chuàng)造的假設(shè)情況的輸入。
決策處理系統(tǒng)60的第二個(gè)分系統(tǒng)是策略處理器66。策略處理器66的程序設(shè)計(jì)有幾個(gè)基本的功能用某一方法解決“最佳選擇”問題,方法的變化,和策略的變化。策略處理器66可與或不與效應(yīng)處理器62一起工作。換句話說,策略處理器66在程序設(shè)計(jì)和硬件上都不取決于效應(yīng)處理器62。如果分站20沒有效應(yīng)處理器62,那么系統(tǒng)組成部件之間、如知識(shí)庫50和用戶接口40等之間的通信可利用總線17或其它通信裝置等直接與策略處理器66進(jìn)行。而且,策略處理器66可以編程使之與其它表示法或應(yīng)用無關(guān)并且不需要其它文件。這種特性將在下面結(jié)合圖2加以描述。策略處理器66所執(zhí)行的功能下面結(jié)合圖3-圖6加以描述。
策略處理器66和效應(yīng)處理器62兩者與用戶接口40和兩者之間都相互連通。因此它們可與用戶和相互之間交互作用,以便使用戶能確定取決于某一特定選擇的事件的影響。這種交互關(guān)系將結(jié)合圖7進(jìn)一步詳細(xì)加以討論。
現(xiàn)在參照?qǐng)D2。本發(fā)明的另一方面是提供一種方法,利用該方法計(jì)算機(jī)可被編程以便執(zhí)行策略處理器66的功能。在較佳實(shí)施例中,編程用LISP語言表達(dá)、LISP語言是一個(gè)眾所周知的適用于符號(hào)處理的計(jì)算機(jī)語言。LISP的特征在一些公開出版物中有所描述,其特點(diǎn)是利用表作為數(shù)據(jù)結(jié)構(gòu)。但本發(fā)明也可以用其它編程語言來完成,程序設(shè)計(jì)的主要特征在于能用數(shù)據(jù)和下面描述的規(guī)則來表示要做什么,以獲得相同的功能結(jié)果。“功能”和“數(shù)據(jù)類型”這些詞是與LISP有關(guān)的,如果使用其它編程語言,可以用不同的詞來表示相同的程序設(shè)計(jì)結(jié)構(gòu)。
如圖2所示,本發(fā)明的程序設(shè)計(jì)直接指向“功能”和“數(shù)據(jù)類型”、它們?cè)谌舾蓪哟紊?levels)表示決策過程。在一個(gè)層次上,決策可以是從“功能”和“數(shù)據(jù)類型”所提供的可供選擇的方案中選出的方法的結(jié)果。在另一層次上,一組方法可包含進(jìn)行特定選擇的策略。本發(fā)明的特征還在于每個(gè)層次上允許的選擇,即選擇的方法和策略,可以是交互的和程序化的。換言之,用戶能對(duì)方法和策略進(jìn)行選擇,或者選擇可以是編程序設(shè)計(jì)的結(jié)果。在后一種情況下,可以應(yīng)用人工智能的固有學(xué)習(xí)和探索能力。因此,“用戶”可以是操作設(shè)備的人,也可以是和另一信息進(jìn)行信息交換的程序。
而且,在其最簡單的形式下,并不是所有下面所述數(shù)據(jù)類型和功能對(duì)本發(fā)明的操作都是必要的,經(jīng)過簡單的修改,本發(fā)明可用某些數(shù)據(jù)類型和功能幫助用戶進(jìn)行決策,而不需要用這里所述的全部數(shù)據(jù)類型的功能。例如,不用任何選擇方法,而只用決策功能。對(duì)本發(fā)明不一定要有一個(gè)以上的方法或一個(gè)以上的策略。策略編程可以只用來管理一組數(shù)值。而與選擇方法沒有聯(lián)系。因此,在圖2的編程中,形成多重方法和多重策略的數(shù)據(jù)類型和功能,對(duì)于本發(fā)明不是必需的,編程很容易修改成不用它們而進(jìn)行操作。
如圖2所示,總的說來編程步驟是形成功能和建立數(shù)據(jù)類型。另外的一個(gè)步驟是把這些數(shù)據(jù)類型和功能組織成編程結(jié)構(gòu)以控制功能的應(yīng)用和數(shù)據(jù)的進(jìn)出。圖2示出本發(fā)明的結(jié)構(gòu)特征,其功能特征和它們的運(yùn)行將結(jié)合圖3-7進(jìn)一步闡明。
候選對(duì)象(Candidate)200是一種表示涉及選擇過程中的候選對(duì)象的數(shù)據(jù)類型。候選對(duì)象200與來自候選對(duì)象傳送(Candidate Move)210的功能、數(shù)據(jù)類型、規(guī)則205相聯(lián)。候選對(duì)象200由候選對(duì)象產(chǎn)生器201產(chǎn)生和維持。
候選對(duì)象產(chǎn)生器201是一種數(shù)據(jù)類型,它詳細(xì)說明了候選庫(candidate pool)是怎樣產(chǎn)生、保持和輸入輸出的。它的內(nèi)部結(jié)構(gòu)是一張來自候選對(duì)象傳送210的名稱、數(shù)據(jù)和功能的表。候選對(duì)象產(chǎn)生器201中的數(shù)據(jù)的范圍可從當(dāng)前的候選庫到一組確定候選對(duì)象的功能。候選對(duì)象產(chǎn)生器201使用候選對(duì)象傳送210的功能以產(chǎn)生和修改候選庫并應(yīng)要求產(chǎn)生每個(gè)其后的候選對(duì)象。候選對(duì)象產(chǎn)生器201可以有一個(gè)以上的產(chǎn)生候選對(duì)象的類型,因此每個(gè)候選對(duì)象產(chǎn)生器用一個(gè)名字來命名。候選對(duì)象產(chǎn)生器是方法204的一個(gè)組成元(element)?!斑x擇230”用來確定在決策過程中是否要使用一個(gè)以上的產(chǎn)生器,它由當(dāng)前的方法所規(guī)定。
候選對(duì)象傳送210是一組有關(guān)用戶定義的功能,它提供一個(gè)原始的候選庫或某些用戶定義的表示應(yīng)要求產(chǎn)生每個(gè)其后的候選對(duì)象所需的信息的數(shù)據(jù)結(jié)構(gòu)。候選對(duì)象傳送也提供一種從候選庫提取單個(gè)候選對(duì)象的手段,和提供一種在單個(gè)候選對(duì)象提取后減少候選庫的方法。候選對(duì)象傳送210由定義候選對(duì)象傳送(Define Candidte Move)227(一種系統(tǒng)功能)產(chǎn)生且由定義候選對(duì)象產(chǎn)生器225(一種系統(tǒng)功能)來進(jìn)行訪問。
狀態(tài)202(state 202)(一種數(shù)據(jù)類型)存儲(chǔ)關(guān)于某一候選對(duì)象的運(yùn)行信息,即,它的由系統(tǒng)和用戶兩者產(chǎn)生的“狀態(tài)”信息。系統(tǒng)產(chǎn)生的信息包含分配給與當(dāng)前候選庫相關(guān)的候選對(duì)象的編號(hào)和產(chǎn)生該候選對(duì)象的產(chǎn)生器的名稱。狀態(tài)202由系統(tǒng)功能的“設(shè)置狀態(tài)”(Put State)226進(jìn)行更新,且作為參數(shù)可從規(guī)則(Rules)205或最后行動(dòng)(Final Action)214中存取。
狀態(tài)更新(State Update)211是一個(gè)用戶定義的功能、它使用系統(tǒng)功能設(shè)置狀態(tài)226來更新候選對(duì)象的狀態(tài)信息。狀態(tài)更新221由系統(tǒng)功能的“定義狀態(tài)更新”228產(chǎn)生,且作為方法204的一個(gè)單元存取。
本發(fā)明的較佳實(shí)施例包含一種數(shù)據(jù)類型全局前后關(guān)系(Global context)203,它代表關(guān)于最佳候選對(duì)象的信息,而不是各個(gè)單獨(dú)候選對(duì)象所具有的特性。它是一張數(shù)據(jù)關(guān)鍵字和數(shù)值對(duì)的表,通過選擇230的變?cè)?aryument)進(jìn)行初始化,它由取得系統(tǒng)功能(Get system function)存取,且用設(shè)置系統(tǒng)功能(Put system func-tion)更新。
全局前后關(guān)系更新(Global Context Update)212是用戶定義的功能,它通過使用前段中提及的取得和設(shè)置系統(tǒng)功能220來改變和增添全局表。它由系統(tǒng)定義的功能定義(Define)231產(chǎn)生,且作為方法204中的選擇方法的一個(gè)單元(element)進(jìn)行存取。
一種數(shù)據(jù)類型方法(Method)204表示這樣的信息,從該信息中可以選擇以某一特定方式進(jìn)行選擇的方法。方法204的內(nèi)部結(jié)構(gòu)包含許多片段(slots),片段包含下面的每個(gè)中的至少一個(gè)選擇名稱,方法名稱,全局更新功能,候選對(duì)象產(chǎn)生器,狀態(tài)更新功能,規(guī)則,最后行動(dòng)功能,規(guī)則權(quán),軟性擾亂蘊(yùn)含選擇(soft violation inclu sionoption),定標(biāo)選擇(scaling option),和方法(approach)。這些片段中的信息與這里所描述的數(shù)據(jù)類型和功能相關(guān)聯(lián)。規(guī)則權(quán)、軟件擾亂蘊(yùn)含、和定標(biāo)選擇下面結(jié)合圖3-圖5加以討論。方法204允許使用多種可能的方法之一進(jìn)行選擇。
規(guī)則(Rules)205是一種包含至少一組規(guī)則的數(shù)據(jù)類型。在較佳實(shí)施例中,有多種規(guī)則類型、包括刪除規(guī)則、比較規(guī)則、得分規(guī)則和停止規(guī)則。規(guī)則用功能表示,由定義系統(tǒng)功能222產(chǎn)生和保持。于是,規(guī)則205中的規(guī)則可包含功能編程。每種類型的規(guī)則的基本特性下面緊接著加以描述,其功能特性結(jié)合圖3-圖7加以描述。如下所述,規(guī)則是方法204的一個(gè)單元,它返回送某些值。
刪除規(guī)則215是一種功能,它根據(jù)候選對(duì)象的某方面(特征)確定該候選對(duì)象是否可以從選擇過程中被刪除。刪除規(guī)則215接受一個(gè)候選對(duì)象和該候選對(duì)象的作為變?cè)?arguments)的當(dāng)前狀態(tài)信息表,且如果該候選對(duì)象考慮要被刪除,則回送一個(gè)非零值;否則它回送一個(gè)零值。刪除規(guī)則215中的規(guī)則可包括“軟”和“硬”兩種刪除規(guī)則,它們以不同的方式應(yīng)用在選擇(Choose)230中。硬刪除規(guī)則表示一些不可克服的約束。軟刪除規(guī)則表示某些約束,而這些約束不是絕對(duì)的即可以相對(duì)于其它方法的考慮加以平衡。
比較規(guī)則216是確定兩候選對(duì)象中哪一個(gè)“更好”或它們是否“相等”的一種功能。在比較規(guī)則216中的規(guī)則表示一種看法和喜愛,這種看法和喜愛可以是(相互)矛盾的。比較規(guī)則216接受兩個(gè)候選對(duì)象而把每個(gè)候選對(duì)象相應(yīng)的當(dāng)前狀態(tài)信息表作為變?cè)?。比較規(guī)則216的返回值是關(guān)鍵字,該關(guān)鍵字取決于該規(guī)則是確定第一候選對(duì)象較好,或第二選擇物較好,或是該規(guī)則不能確定哪個(gè)較好,還是該規(guī)則不適用。比較規(guī)則216也可返回試探性的結(jié)果,而且也可以返回試探性結(jié)果的數(shù)字大小(strength)。
得分規(guī)則(Scoring Rules)217是根據(jù)某候選對(duì)象的某種特性,賦給該候選對(duì)象以一個(gè)數(shù)字權(quán)以便與其它候選對(duì)象作比較的一種功能。得分規(guī)則217、如下所述用于選擇230的方法之一。得分規(guī)則217接受某一候選對(duì)象和作為變?cè)哪莻€(gè)候選對(duì)象的相應(yīng)的當(dāng)前狀態(tài)信息表,且返回一個(gè)數(shù)用作該候選對(duì)象的排序權(quán)的號(hào)碼。
停止規(guī)則218是確定選擇230可否提前停止的一種功能。停止規(guī)則218接受描述當(dāng)前情況的關(guān)鍵字作為一個(gè)變?cè)?,即?dāng)前候選對(duì)象是不是新的最好候選對(duì)象,或候選對(duì)象產(chǎn)生器是否已停止產(chǎn)生候選對(duì)象。取決于當(dāng)前狀態(tài),如果產(chǎn)生器已停止產(chǎn)生候選對(duì)象,則停止規(guī)則218也接受當(dāng)前候選對(duì)象或是當(dāng)前最佳候選對(duì)象作為關(guān)鍵字,并接收前述候選對(duì)象的狀態(tài)信息表。停止規(guī)則218返回是否停止決策過程。
盡管圖2中未畫出,但本發(fā)明的編程方法的另一特征是學(xué)習(xí)、一種自動(dòng)調(diào)整規(guī)則權(quán)的系統(tǒng)功能,學(xué)習(xí)的特征結(jié)合圖6加以解釋。
選擇(choose)230是選出最佳(好)候選對(duì)象的一種系統(tǒng)功能。它的變?cè)环N方法、由策略確定的方法除外,一個(gè)候選庫、和全局前后關(guān)系信息。選擇230包含一些算法,這些算法體現(xiàn)不同的選擇途徑或方法,這些途徑或方法在方法204中詳細(xì)解釋。兩個(gè)這樣的途徑或方法、一個(gè)分級(jí)方法和一個(gè)加權(quán)選擇途徑(方法)將結(jié)合圖4A和圖4B加以解釋。
最后動(dòng)作(Final Action)214是通過對(duì)選為最佳候選對(duì)象做某些事情來提高決策過程的用戶定義功能。它的輸入是最佳候選對(duì)象和該候選對(duì)象的狀態(tài)信息表。該返回值是一種從調(diào)用選擇230返回的值。最后動(dòng)作214由定義系統(tǒng)功能231產(chǎn)生,并且是方法204的一個(gè)單元。在最后動(dòng)作214中可以有多于一個(gè)的動(dòng)作,且這些最后的動(dòng)作可順次加上。
策略206是對(duì)某給定的情況命名的一種數(shù)據(jù)類型,在這給定情況中,要進(jìn)行種種選擇并且指定策略參數(shù)和與該情況有關(guān)的選擇方法。對(duì)于一給定選擇情況,策略206指定哪個(gè)方法用于進(jìn)行最佳選擇。它的內(nèi)部結(jié)構(gòu)包含參數(shù)名稱/數(shù)值的對(duì)表和選擇/方法配對(duì)表。策略由一種系統(tǒng)功能定義策略223產(chǎn)生,它由一些其它系統(tǒng)功能來存取。
策略參數(shù)208是一種用戶定義數(shù)據(jù)類型,它由規(guī)則205來存取,規(guī)則視策略參數(shù)值的不同而表現(xiàn)不同的行為。策略參數(shù)208由一種系統(tǒng)功能定義策略參數(shù)248產(chǎn)生。策略參數(shù)中的值能從用戶或從另一個(gè)程序進(jìn)行交互作用而獲得。該策略特征將結(jié)合圖5作進(jìn)一步的討論。
圖3-圖7表示了本發(fā)明的另一方面,即一種當(dāng)進(jìn)行決策時(shí)、使用計(jì)算機(jī)幫助用戶在可供選擇的多種選擇中進(jìn)行最佳選擇的方法。圖3、圖4A和圖4B主要表明了在給出一個(gè)特定選擇的方法后進(jìn)行最佳選擇的方法,圖5和圖6表示了本發(fā)明使用策略選擇和學(xué)習(xí)特征的方法。圖7表示本發(fā)明使用假設(shè)情況特征的方法。這些方法能用圖2中所討論的功能和數(shù)據(jù)類型來執(zhí)行。如上所述,每個(gè)方法的“開始”階段能由用戶啟動(dòng),且該方法能交互地執(zhí)行,或該方法能編程且被調(diào)用或運(yùn)用,或由其它編程對(duì)其編程和調(diào)用。
圖3的方法是假設(shè)存在一個(gè)候選對(duì)象庫。步驟300更新這些候選對(duì)象的特征。執(zhí)行步驟300的編程結(jié)構(gòu)是全局前后關(guān)系更新(Glo-bal Centext Update)212。步驟302執(zhí)行計(jì)算機(jī)的候選對(duì)象產(chǎn)生程序,在方法的其它步驟期間,這些候選對(duì)象可單個(gè)或多個(gè)進(jìn)行評(píng)估而達(dá)到比較的目的。候選對(duì)象的產(chǎn)生可以是作為簡單列表提供原始的候選庫和從該表每次提取一個(gè)單元的簡單過程到一個(gè)更復(fù)雜的過程,其中,用代表候選庫的數(shù)據(jù)結(jié)構(gòu)按要求產(chǎn)生候選對(duì)象。每個(gè)候選對(duì)象的產(chǎn)生可以是一個(gè)計(jì)算迭代過程,這樣,只產(chǎn)生所需要的候選對(duì)象。這后一種過程能借助于停止規(guī)則(stop rules)來進(jìn)行。然而,對(duì)于某些選擇,必須產(chǎn)生整個(gè)候選對(duì)象表,以便進(jìn)行整體上的較佳選擇、或進(jìn)行下面所解釋的滿加權(quán)選擇(the full weighted choose)。雖然在圖3中未標(biāo)明,但步驟302可重復(fù)進(jìn)行,即候選對(duì)象的產(chǎn)生可以不止一個(gè)。對(duì)于執(zhí)行步驟302的編程將結(jié)合圖2進(jìn)行描述,具體說來是結(jié)合候選對(duì)象產(chǎn)生器201、候選對(duì)象傳送210和選擇230進(jìn)行描述。是一個(gè)候選對(duì)象產(chǎn)生還是多個(gè)候選對(duì)象產(chǎn)生由選擇230來確定。
步驟304是執(zhí)行選擇最佳候選對(duì)象的過程以作出決策。在步驟304內(nèi)有多種可供選擇的方法,下面將結(jié)合圖4A和4B進(jìn)行描述。編程執(zhí)行步驟304的例子是功能選擇230。
步驟305確定是否有最后行動(dòng)功能、如最后行動(dòng)214。如果有,則步驟306完成該最后行動(dòng)。如果沒有最后行動(dòng),步驟308把最佳候選對(duì)象返回給用戶。
圖4A和圖4B表明步驟304的分步驟。這種分步驟將結(jié)合每個(gè)圖進(jìn)行解釋,本發(fā)明提供兩種選擇方法一種分級(jí)方法和一種加權(quán)選擇方法。不管是哪一種方法,都假定可以從上述的數(shù)據(jù)類型和功能使用具有更新信息的候選對(duì)象庫。而且,如果規(guī)則要具有規(guī)則權(quán),則規(guī)則按此進(jìn)行分類。
兩種方法都包含涉及應(yīng)用硬和軟刪除規(guī)則的步驟。如果硬刪除規(guī)則對(duì)某一候選對(duì)象宣告失敗,則該候選對(duì)象被刪除,考慮下一個(gè)候選對(duì)象。軟刪除規(guī)則用于通過硬選擇規(guī)則的每個(gè)候選對(duì)象。與硬刪除規(guī)則不同,不管是否失敗,軟刪除規(guī)則可繼續(xù)地用于一候選對(duì)象。軟刪除規(guī)則對(duì)每一候選對(duì)象的記分是通過加進(jìn)每條已通過規(guī)則的規(guī)則權(quán)而進(jìn)行累計(jì)的。除了接收得分外,候選對(duì)象還被分配到兩組中的一個(gè)組中一組包含到當(dāng)前為至通過所有軟刪除規(guī)則的候選對(duì)象,而另一組包含至少已失敗于一個(gè)軟刪除規(guī)則的候選對(duì)象。編程執(zhí)行這些刪除規(guī)則的程序設(shè)計(jì)結(jié)合規(guī)則205、方法204和選擇230在上面已作了描述。
決策的具體方法可以包括軟刪除規(guī)則的換算。如果應(yīng)用換算,則最后軟刪除得分將乘以當(dāng)前考慮的候選對(duì)象的數(shù)目。這允許軟刪除得分可以在相等的基礎(chǔ)上與以后的比較規(guī)則得分進(jìn)行結(jié)合。進(jìn)行這種換算的例子是某個(gè)單元(element),如方法204中的一個(gè)標(biāo)記(flag)。
兩種方法都包含應(yīng)用停止規(guī)則的步驟。如果一停止規(guī)則對(duì)候選對(duì)象是成功的,則決策過程停止。停止規(guī)則的一個(gè)例子是最新最佳候選對(duì)象已充分足夠。另一個(gè)例子是決策占用時(shí)間太長。這可以通過把起始時(shí)間存儲(chǔ)中程序結(jié)構(gòu)如全局前后關(guān)系更新(Global Context Update)212中,并用該停止規(guī)則檢查當(dāng)前時(shí)間來實(shí)現(xiàn)。停止規(guī)則的第三個(gè)例子是候選對(duì)象已達(dá)到最大數(shù)目。這可以通過把候選對(duì)象數(shù)目存儲(chǔ)在諸如狀態(tài)202的數(shù)目結(jié)構(gòu)中來實(shí)現(xiàn)。停止規(guī)則的第四個(gè)例子是決策過程已達(dá)到候選對(duì)象產(chǎn)生器的末尾具有至少一可行的候選對(duì)象,或者當(dāng)前最佳候選對(duì)象已足夠好。這種規(guī)則可以通過檢查候選對(duì)象產(chǎn)生器201來實(shí)現(xiàn)。
兩種方法還都可包含應(yīng)用比較規(guī)則的步驟。比較規(guī)則比較兩候選對(duì)象以確定哪個(gè)較好,即一種成對(duì)比較。如果當(dāng)前規(guī)則把一個(gè)肯定的結(jié)果返回到某一比較對(duì)象,則該候選對(duì)象是較好的。如果該規(guī)則返回“相等”、或規(guī)則返回試驗(yàn)性(tentative)結(jié)果,那么接著就考慮下一個(gè)規(guī)則。試驗(yàn)性結(jié)果可以是一般性(general),也可包含某種程度的肯定性(certainty)。試驗(yàn)性結(jié)果被記住,這是因?yàn)槿绻斜容^規(guī)則都用完而不能得到明確結(jié)果時(shí),則就用具有最高肯定或從最高優(yōu)先權(quán)規(guī)則產(chǎn)生的試驗(yàn)性結(jié)果。該最高優(yōu)先權(quán)規(guī)則是返回最高肯定性,或是用戶指定的順序中排在第一的規(guī)則。執(zhí)行這一步驟的程序結(jié)構(gòu)結(jié)合規(guī)則205和方法204進(jìn)行描述。
圖4A表明了一種選擇最佳候選對(duì)象的分級(jí)法。步驟400得到一個(gè)候選對(duì)象。步驟402應(yīng)用硬刪除規(guī)則。步驟403確定該候選對(duì)象是否被該硬刪除刪除。如果候選對(duì)象在步驟402被刪除,除非候選庫用完,否則步驟400重復(fù)進(jìn)行以取得另一個(gè)候選對(duì)象。如果候選對(duì)象在步驟402中未被刪除,則步驟404確定是否指定要軟刪除規(guī)則。執(zhí)行步驟402的一個(gè)例子是數(shù)據(jù)型方法204。如果沒有指定軟刪除規(guī)則,則步驟405把比較規(guī)則加到在步驟402和步驟403中未被刪除的候選對(duì)象上。為了應(yīng)用比較規(guī)則,每個(gè)候選對(duì)象相對(duì)于當(dāng)前最好(佳)候選對(duì)象每次使用一個(gè)比較規(guī)則進(jìn)行比較。該過程連續(xù)進(jìn)行直到兩候選對(duì)象之一被認(rèn)為較好時(shí)為止。獲勝者變成當(dāng)前最好的候選對(duì)象。比較規(guī)則按照某種有意義的方式由用戶排定順序。在步驟405之后,步驟406應(yīng)用停止規(guī)則,且步驟407確定停止規(guī)則是否較早地結(jié)束選擇過程。
回到步驟404,如果軟刪除規(guī)則被指定,則步驟410把他們加到在步驟402和403中未被刪除的候選對(duì)象,并使用如以上所解釋的軟比較規(guī)則。步驟412對(duì)剩留在候選庫中的候選對(duì)象應(yīng)用比較規(guī)則以選出最佳候選對(duì)象。步驟414應(yīng)用停止規(guī)則,如果有停止規(guī)則,則步驟415結(jié)束選擇方法。如果沒有停止規(guī)則,步驟416確定是否有其余候選對(duì)象要加以評(píng)價(jià),如果有則重復(fù)步驟412。如果步驟416確定已不再有候選對(duì)象,則該方法結(jié)束。
圖4B表示一種按照?qǐng)D3的步驟304進(jìn)行選擇的加權(quán)選擇法。步驟430得到一候選對(duì)象。步驟432應(yīng)用硬刪除規(guī)則,步驟439確定候選對(duì)象是否被刪除。如果候選對(duì)象被刪除,則重復(fù)步驟430和432且除非步驟431確定不再有候選對(duì)象,否則該方法得到另一候選對(duì)象。如果候選對(duì)象未被刪除、步驟434把該候選對(duì)象添加到保留候選資格的候選庫中。然后對(duì)每個(gè)候選對(duì)象,繼續(xù)這些步驟。
步驟433應(yīng)用軟刪除規(guī)則,并且確定每個(gè)候選對(duì)象的軟刪除得分。本發(fā)明的特征在于在應(yīng)用比較規(guī)則期間處理軟刪除的犯規(guī)者(Violators)的方面,視所使用的方法可以是不同的。一種可供選擇的方案是包含比較規(guī)則各步驟中的全部違反者。可供選擇的第二種方案是如果候選對(duì)象中沒有一個(gè)通過全部軟限制時(shí)才包含全部違反者。可供選擇的第三種方案是如果沒有候選對(duì)象通過全部規(guī)則,則僅包含那些違反前面軟規(guī)則的候選對(duì)象,并移動(dòng)到下面的軟刪除規(guī)則或直接移動(dòng)到比較規(guī)則級(jí)。其它可供選擇的方案可以隨需要而變化且通過適當(dāng)?shù)木幊虂韴?zhí)行這些方案。方法204的編程結(jié)構(gòu)允許執(zhí)行這一步驟。
步驟435確定每個(gè)比較規(guī)則的部分總分,它有表達(dá)式PS(i)=SUm(j=i到n)MaxGain(j),這里i對(duì)應(yīng)有關(guān)比較規(guī)則,而n是比較規(guī)則的數(shù)目。MaxGain是在總分中第二名的候選對(duì)象能超過第一名的候選對(duì)象的最大得分,MaxGain(i)=(n-1)*規(guī)則權(quán)(rule weight)這里i對(duì)應(yīng)于有關(guān)的比較規(guī)則。
步驟437確定在一個(gè)比較規(guī)則用于整個(gè)候選庫之后,圖4B的比較步驟是否可以被短路。
如果余下的比較規(guī)則不能使任何其它候選對(duì)象有更高的總分,則發(fā)生這種短路。短路的前提是一比較規(guī)則能以下列方式之一影響候選對(duì)象的總分(1)當(dāng)前第一名候選對(duì)象的分?jǐn)?shù)(得分)至少增加1*規(guī)則權(quán),和(2)當(dāng)前第二名的候選對(duì)象的分?jǐn)?shù)最多增加n*規(guī)則權(quán),這兒n是候選對(duì)象數(shù)目。步驟437確定在當(dāng)前最高總分和當(dāng)前第二最高總分之間的差。如果這種差比來自相對(duì)應(yīng)于行將應(yīng)用的比較規(guī)則的部分和表的部分和項(xiàng)還大的話,則結(jié)束該比較規(guī)則的迭代。如果有記分規(guī)則,則不執(zhí)行步驟437。
如果沒有短路,則步驟436-444形成一個(gè)應(yīng)用比較規(guī)則的迭代環(huán)。更確切地說,步驟436得到一比較規(guī)則,而步驟438用比較規(guī)則作為成對(duì)分類判定對(duì)候選對(duì)象進(jìn)行分類。步驟440用來從分類表得到候選對(duì)象。步驟442按照候選對(duì)象的排序權(quán)乘以規(guī)則權(quán)之積加上原有候選對(duì)象的積分來確定該候選對(duì)象的總分。為了確定排序權(quán),步驟442給分類表中的第一候選對(duì)象的排序權(quán)等于n、即當(dāng)前庫中的候選對(duì)象的數(shù)目。除非步驟438確定第二候選對(duì)象與第一選擇物相等,在這種情況下,第二候選對(duì)象接收相同的排序權(quán)、否則步驟442給第二候選對(duì)象一個(gè)等于n-1的排序權(quán)。對(duì)每個(gè)候選對(duì)象進(jìn)行上述的排序過程。在步驟442完成后,步驟443應(yīng)用停止規(guī)則,如果應(yīng)用停止規(guī)則,則步驟444停止比較規(guī)則階段。步驟445和446確保步驟436-444對(duì)每個(gè)候選對(duì)象和每個(gè)規(guī)則重復(fù)。
步驟448-458是應(yīng)用得(記)分規(guī)則的迭代環(huán)。步驟448獲得一個(gè)得分規(guī)則,而步驟450從當(dāng)前的庫中得到一個(gè)候選對(duì)象。步驟452把來自步驟450的得分規(guī)則分別用于每個(gè)候選對(duì)象。步驟454按照得分規(guī)則返回的候選對(duì)象的排序權(quán)與得分規(guī)則的規(guī)則權(quán)的乘積來確定候選對(duì)象的新的總分。這一乘積加到來自步驟442或來自先前得分規(guī)則迭代的候選對(duì)象的總分上。
在步驟454之后,步驟456應(yīng)用停止規(guī)則,且如果停止規(guī)則適用,則步驟458停止比較規(guī)則階段。步驟460和462保證步驟448-458對(duì)每個(gè)候選對(duì)象和每個(gè)規(guī)則重復(fù)。
步驟464按照來自步驟435的軟刪除得分和來自步驟464的候選對(duì)象總分兩者之和來確定候選對(duì)象最后的總分。如果需要,該軟刪除得分可以按照上面所述的方法進(jìn)行換算。步驟466按照候選對(duì)象所具有的、由圖4B各步驟產(chǎn)生的最高得分來確定最佳選擇。
再參照?qǐng)D3,在用圖4A或圖4B的選擇方法確定最佳選擇后,步驟306執(zhí)行可能指定的最后行動(dòng)。如果沒有最后行動(dòng),步驟308返回最佳選擇對(duì)象,或者反回一組排序推薦的候選對(duì)象。
本發(fā)明的重要特征在于圖3的步驟可以用或不用預(yù)先選擇的策略來進(jìn)行。本發(fā)明的這一特征可以由圖5得到最好的說明。如在圖2中結(jié)合策略206所討論的那樣,本發(fā)明的編程允許定義多種策略。每個(gè)策略有一個(gè)名字和由一組策略參數(shù)值和一組特定的選擇方法組成。執(zhí)行選擇方法的編程已經(jīng)結(jié)合圖2尤其是結(jié)合方法204進(jìn)行了描述。
如圖5中所示,使用具有策略選擇特征的本發(fā)明涉及第一步驟、即采用策略的步驟510。當(dāng)接受了某一策略時(shí),那個(gè)策略的參數(shù)值和選擇方法變成當(dāng)前值和當(dāng)前選擇方法。步驟512執(zhí)行圖3的決策步驟以選擇最佳的候選對(duì)象。步驟514確定最佳候選對(duì)象是否可被接受。如果可以接受,步驟516在其它編程中使用該最佳候選對(duì)象,或按用戶需要應(yīng)用它。
圖5的步驟518和520表示了本發(fā)明的另一特征,該特征可用于決策系統(tǒng)發(fā)展階段。這是一種學(xué)習(xí)特征,在決策操作沒能產(chǎn)生所需結(jié)果后,由用戶加以調(diào)用??偟恼f來,該學(xué)習(xí)特征是一種與加權(quán)選擇方法相結(jié)合的規(guī)則權(quán)調(diào)整特征,以便使用戶的最佳選擇的候選對(duì)象將得到最高分,并由此改進(jìn)知識(shí)庫。該學(xué)習(xí)步驟是對(duì)每個(gè)“規(guī)則例子”(rule instance)的迭代過程,即對(duì)加權(quán)選擇方法的每一部分,在這種方法中,一特定的規(guī)則曾被用來對(duì)經(jīng)受得住刪除的整個(gè)一組候選對(duì)象進(jìn)行過評(píng)估。一個(gè)規(guī)則例子是規(guī)則權(quán)和一候選對(duì)象排序權(quán)配對(duì)表。
步驟518確定該學(xué)習(xí)特征是否要調(diào)用。如果調(diào)用,則步驟520執(zhí)行它。步驟520的分步驟表示在圖6中。假定編程已保存了每個(gè)候選對(duì)象和它的狀態(tài)信息,包括每個(gè)候選對(duì)象的總分和每個(gè)規(guī)則例子。
步驟614確定當(dāng)前規(guī)則和當(dāng)前候選對(duì)象的總分T之間的關(guān)系。對(duì)于每個(gè)規(guī)則,有三個(gè)狀態(tài)類別(1)比所需候選對(duì)象有較高當(dāng)前值T的每個(gè)候選對(duì)象由當(dāng)前規(guī)則排序在較高位置,或(2)比所需候選對(duì)象有較高當(dāng)前值T的每個(gè)候選對(duì)象由當(dāng)前規(guī)則排序在較低位置、或(3)既沒有類別(1)也沒有類別(2)存在。余下各步驟按照某一規(guī)則所屬類別增加或減少該規(guī)則的權(quán)或不考慮該規(guī)則。
如果該規(guī)則屬于類別3,則步驟618把該規(guī)則擱于一邊。步驟620-626用來保證如果該規(guī)則不被考慮,在屬于類別1或2的任一規(guī)則的權(quán)調(diào)整以后,則不被考慮的規(guī)則能再被考慮以確定它們之中是否有屬于類別(1)或類別(2)。
如果規(guī)則不屬于類別3,則步驟628將得到下一個(gè)候選對(duì)象,目的是對(duì)除所需候選對(duì)象以外的全部候選對(duì)象都加以循環(huán)。步驟630確定是否還存在需要考慮的候選對(duì)象。如果有這樣的候選對(duì)象,則步驟632確定該候選對(duì)象是否應(yīng)該考慮。如果當(dāng)前候選對(duì)象的T低于所需候選對(duì)象的T,且(1)對(duì)于類別1的規(guī)則,如果根據(jù)該規(guī)則當(dāng)前候選對(duì)象的排序位置比所需候選對(duì)象的位置高,或(2)對(duì)于類別2的規(guī)則,如果當(dāng)前候選對(duì)象的排序位置比所需候選對(duì)象的位置低,則情況就是如此。如果該候選對(duì)象不被考慮、則重復(fù)步驟628。
如果該候選對(duì)象被考慮,步驟634確定△如下△=|(T其它-T所需)/(r所需-r其它)|這里T其它和r其它是與該候選對(duì)象相關(guān)聯(lián)的當(dāng)前總分和規(guī)則號(hào),且T所需和r所需是與所需候選對(duì)象相關(guān)聯(lián)的總分和規(guī)則號(hào)。
步驟636將T其它和T所需進(jìn)行比較。如果T其它比T所需大,則步驟638用來確定最大超越值LO,使LO是當(dāng)前最大的LO和最大的△。如果T其它不比T所需大,則步驟640確定最小追趕值SC,使SC是當(dāng)前最小的SC和當(dāng)前最小的△。在步驟638或步驟640之后,步驟628重復(fù)且對(duì)下一個(gè)候選對(duì)象計(jì)算LO或SC。
回過來參看步驟628,如果不再有候選對(duì)象要考慮,則步驟642對(duì)LO進(jìn)行換算。這種換算通過把留在規(guī)則例子庫中的規(guī)則數(shù)和留在暫不考慮庫中的規(guī)則數(shù)相加并把該總和分成最大的△(增量)來進(jìn)行的。步驟644重新計(jì)算作為換算的LO和SC的最小值的△值。步驟646確定該規(guī)則是不是類別1的規(guī)則。如果是,則步驟648根據(jù)原有規(guī)則權(quán)減去△來計(jì)算新的規(guī)則權(quán)。如果該規(guī)則不是類別1的,意味著它在類別2中,該規(guī)則權(quán)為原有規(guī)則權(quán)加△。步驟652重新計(jì)算每個(gè)候選對(duì)象的T值,并如上所述檢查暫不考慮的規(guī)則庫(the pool of set aside rules)。
在每個(gè)規(guī)則例子通過步驟614-652計(jì)算后,步驟654確定所需候選對(duì)象與它原有規(guī)則權(quán)相比是否改進(jìn)了它在候選總分分類表中的位置。如果是,則步驟656返回調(diào)整后的規(guī)則權(quán)。
再參看圖5,如果不調(diào)用學(xué)習(xí)特征,則步驟510-514不斷重復(fù),直到確定了一個(gè)可接受的候選對(duì)象為止。
圖7表明了本發(fā)明結(jié)合了圖1的決策處理系統(tǒng)的特征的特征。具體地說,圖7表明了一種用不同的策略產(chǎn)生試探解的方法。該方法可以使用聯(lián)系決策處理器60和知識(shí)庫50討論的裝置和編程來進(jìn)行。
步驟710進(jìn)入一個(gè)用約束傳輸(constraint propagation)能力編程的計(jì)算機(jī)系統(tǒng)的“效應(yīng)模式”(effects mode)。步驟712確定是否要建立新的假設(shè)情況。如果要建立新的假設(shè)情況,則步驟714建立該新假設(shè)情況并把該假設(shè)情況與一特定的策略聯(lián)系在一起。如果沒有新的假設(shè)情況要建立,則步驟716確定一個(gè)先前選擇的假設(shè)情況是否要處理。如果不處理,則步驟718離開該“效應(yīng)模式”并選擇某種解法。再看步驟716,如果使用先前的假設(shè)情況,則步驟720選擇一個(gè)假設(shè)情況。一旦假設(shè)情況已建立或已被選定,則步驟722進(jìn)入該假設(shè)情況,這意味著采用一個(gè)相應(yīng)的策略。步驟724通過進(jìn)入本發(fā)明的決策方面來解決這問題。上面聯(lián)系圖3、圖4A及圖4B討論的程序設(shè)計(jì)就是針對(duì)這一步驟的。
雖然本發(fā)明就具有實(shí)施例作了描述,但這種實(shí)施例的描述不能為對(duì)本發(fā)明內(nèi)容的限制。參照本發(fā)明的描述、對(duì)于本技術(shù)領(lǐng)域中的技術(shù)人員是很容易對(duì)本發(fā)明的實(shí)施例作種種修改或作出其他實(shí)施例的。因此,所附權(quán)利要求書將把這些屬于本發(fā)明精神實(shí)質(zhì)范圍之內(nèi)的種種修改和實(shí)施例的變化包括在權(quán)利保護(hù)要求的范圍之內(nèi)。
權(quán)利要求
1.一種在特定領(lǐng)域中幫助用戶決策的計(jì)算機(jī)系統(tǒng)裝置,包含接收該領(lǐng)域信息的事務(wù)處理接口,具有表示所述領(lǐng)域信息的知識(shí)庫的存貯器,編程以從候選對(duì)象中進(jìn)行最佳選擇的決策處理器系統(tǒng),使用應(yīng)用方式可變化的規(guī)則;所述用戶可與所述決策處理器系統(tǒng)進(jìn)行交互作的用戶接口;和用于在所述事務(wù)處理接口、所述存貯器、所述決策處理器系統(tǒng)和所述用戶接口之間溝通信息的總線系統(tǒng)。
2.如權(quán)利要求1所述裝置,其特征在于,所述知識(shí)庫包含在所述知識(shí)庫中表示事物狀態(tài)(行為)的狀態(tài)(行為)碼。
3.如權(quán)利要求1所述裝置,其特征在于所述規(guī)則包含軟刪除規(guī)則。
4.如權(quán)利要求1所述裝置,其特征在于所述規(guī)則可以分級(jí)(分層次)方式應(yīng)用。
5.如權(quán)利要求1所述裝置,其特征在于所述規(guī)則可按照它們的應(yīng)用對(duì)它們進(jìn)行加權(quán)運(yùn)用。
6.如權(quán)利要求5所述裝置,其特征在于所述加權(quán)可自動(dòng)進(jìn)行調(diào)整以改進(jìn)所述知識(shí)庫。
7.如權(quán)利要求1所述裝置,其特征在于所述決策處理器還進(jìn)一步編程以允許所述用戶在所述選擇的多種方法中進(jìn)行選擇。
8.如權(quán)利要求1所述裝置,其特征在于所述最佳選擇響應(yīng)由約束傳輸產(chǎn)生的效果。
9.如權(quán)利要求1所述裝置,其特征在于所述決策在由用戶所選假設(shè)情況的前后關(guān)系中進(jìn)行。
10.在用人工智能編程的計(jì)算機(jī)系統(tǒng)中,一種可以在在特定領(lǐng)域中的可供選擇的方案之間進(jìn)行最佳選擇的方法,包含步驟用預(yù)定的數(shù)據(jù)或用戶輸入、從所述候選對(duì)象庫中產(chǎn)生一候選對(duì)象;按規(guī)則對(duì)所述候選對(duì)象進(jìn)行評(píng)估,其中所述計(jì)算機(jī)提供多于一個(gè)的應(yīng)用所述規(guī)則的方法;和重復(fù)所述評(píng)估步驟直到選出最佳候選對(duì)象為止。
11.如權(quán)利要求10所述方法,其特征在于所述候選對(duì)象產(chǎn)生步驟進(jìn)一步包含根據(jù)預(yù)定的數(shù)據(jù)或用戶輸入更新所述候選對(duì)象的特征。
12.如權(quán)利要求10所述方法,其特征在于還進(jìn)一步包含根據(jù)預(yù)定的數(shù)據(jù)或用戶輸入選擇的步驟,進(jìn)行所述評(píng)估步驟的方法。
13.如權(quán)利要求10所述方法,其特征在于所述評(píng)估步驟包含使用分層方法評(píng)估所述候選對(duì)象物。
14.如權(quán)利要求10所述方法,其特征在于所述評(píng)估步驟包含使用規(guī)則加權(quán)方法來對(duì)所述候選對(duì)象進(jìn)行評(píng)估。
15.如權(quán)利要求14所述方法,其特征在于所述規(guī)則加權(quán)方法包含通過確定當(dāng)前最佳候選對(duì)象不會(huì)被超過而短路所述評(píng)估的步驟。
16.如權(quán)利要求14所述方法,其特征在于所述規(guī)則加權(quán)方法允許通過調(diào)整所述規(guī)則對(duì)最佳候選對(duì)象的選擇進(jìn)行學(xué)習(xí)。
17.如權(quán)利要求10所述方法,其特征在于所述候選對(duì)象評(píng)估步驟進(jìn)一步包含使用軟排除規(guī)則。
18.如權(quán)利要求10所述方法,其特征在于進(jìn)一步包含在最后行動(dòng)中使用所述最佳選擇的步驟。
19.如權(quán)利要求10所述方法,其特征在于進(jìn)一步包含按照預(yù)定的數(shù)據(jù)或用戶輸入選擇用作選擇的策略的步驟。
20.如權(quán)利要求10所述方法,其特征在于進(jìn)一步包含選擇代表某個(gè)要解決問題的假設(shè)情況的步驟,且其中對(duì)所述候選對(duì)象評(píng)估的所述步驟是在解決所述假設(shè)情況的前后關(guān)系中進(jìn)行的。
全文摘要
一種幫助人們決策的裝置和方法,使用具有人工智能編程的計(jì)算機(jī)。特定范疇內(nèi)實(shí)際世界的事物和事件表示在知識(shí)庫(50)中。根據(jù)規(guī)則的應(yīng)用作出解決問題的最佳選擇,并可根據(jù)用戶所選擇的方法通過加權(quán)、排序等絕地、比較地應(yīng)用規(guī)則。本發(fā)明還允許用戶從各種決策策略(66)中進(jìn)行選擇并允許用戶在假設(shè)情況中觀察選擇的效果。
文檔編號(hào)G06N5/04GK1048460SQ90103328
公開日1991年1月9日 申請(qǐng)日期1990年6月29日 優(yōu)先權(quán)日1989年6月30日
發(fā)明者朗達(dá)·L·亞歷山大, 邁克爾·E·伊爾岡, 約翰·A·基希納, 馬沙·H·埃利斯, 查爾斯·W·揚(yáng) 申請(qǐng)人:德克薩斯儀器股份有限公司