摘 要: 為了提高可拓策略生成系統(tǒng)的能力,,探討了可拓策略生成系統(tǒng)與Agent技術(shù)結(jié)合的問題,。介紹了Agent在可拓策略生成中可以結(jié)合的幾個方面,重點介紹Agent控制可拓變換發(fā)散與收斂過程的作用,,以克服計算中容易出現(xiàn)的“組合爆炸”困難,,使可拓策略生成系統(tǒng)得到效率較高的策略輸出。
關(guān)鍵詞:可拓策略生成; Agent; 發(fā)散; 收斂
根據(jù)基元的可拓性,,對其進(jìn)行拓展,,然后利用合適的評價方法進(jìn)行篩選,從而收斂少量基元,,這種思維方式稱為菱形思維方法[1],。菱形思維的特點是發(fā)散與收斂,可拓策略生成系統(tǒng)[2]采用了菱形思維方法解決矛盾,。它將定性分析方法與定量計算方法相結(jié)合,根據(jù)基元的可拓性,,在解決矛盾的過程中,當(dāng)目標(biāo)實現(xiàn)與約束條件之間發(fā)生沖突時,,運用基元的發(fā)散性,、共軛性、相關(guān)性,、蘊含性和可擴(kuò)性等,,拓展出候選策略集,然后進(jìn)入收斂階段,通過優(yōu)度計算評價出較優(yōu)的策略推薦給決策者參考,。人工控制發(fā)散與收斂過程是比較靈活的,,但是,普通計算機(jī)系統(tǒng)缺乏自主性,,控制不好發(fā)散過程就容易產(chǎn)生計算“組合爆炸”問題,,計算效率大大降低。Agent是有一定自主性的計算實體,,如何運用可拓學(xué)和Agent技術(shù)這兩種不同領(lǐng)域的知識,發(fā)揮各自的優(yōu)勢,,克服“組合爆炸”問題而有效地生成策略,是本文探討的主要議題,。
1 Agent與可拓策略生成系統(tǒng)結(jié)合的幾個方面
可以結(jié)合可拓學(xué)與Agent兩種學(xué)科領(lǐng)域的技術(shù)優(yōu)勢,在可拓學(xué)的菱形思維方法中加入軟件Agent技術(shù),,使其具有策略生成機(jī)制,在無人的情況下自主代替人解決問題。利用Agent的自主性和預(yù)動性以確保在變化多端的客觀環(huán)境下生成解決問題的較優(yōu)策略,,增強(qiáng)策略生成的靈活性和科學(xué)性,。
Agent與可拓策略生成系統(tǒng)結(jié)合可以有界定問題、協(xié)助分析核問題,、維護(hù)知識庫(本體進(jìn)化),、控制發(fā)散與收斂及其他幾個方面。
本節(jié)只介紹前三個方面,。
1.1 利用Agent界定問題的方法
為了用軟件Agent解決問題,,必須首先建立問題的數(shù)學(xué)模型,把問題數(shù)值化,,再界定問題是否矛盾,。然而,問題的表述經(jīng)常是用自然語言完成的,,如果直接讓軟件理解這些自然語言信息是很困難的,。該方案是讓Agent處理半結(jié)構(gòu)化信息,而不涉及自然語言理解,??梢匝芯咳绾卫肁gent的通信能力和反應(yīng)性在人機(jī)交互界面設(shè)法將人們用自然語言描述的問題引導(dǎo)出目標(biāo)和條件,從而建立可拓模型。
可以采用如下方法實現(xiàn)其目的:
(1)建立以復(fù)合元為基本結(jié)構(gòu)的本體,,作為Agent的知識庫,。利用本體支持語義互操作的優(yōu)勢,使Agent能夠在本體的支持下對語義模糊的問題信息進(jìn)行分析處理,排除語義沖突,得到語義正確的待求解問題后再建立其可拓模型,。
(2)建立人機(jī)交互界面,,讓用戶與Agent進(jìn)行交互,試圖發(fā)現(xiàn)表層問題,,作為Agent解決問題的開始,。利用Agent的通信能力和反應(yīng)性界定問題,需要設(shè)定會話策略,。
1.2 協(xié)助分析核問題
讓Agent根據(jù)可拓模型識別問題類型和核問題(關(guān)鍵問題),減輕人的勞動,,讓Agent從表層問題推出深層核問題,復(fù)雜問題轉(zhuǎn)換為可計算的簡單問題,。
以旅游問題為例,如果用戶告訴Agent他想在40 min內(nèi)到達(dá)大學(xué)城,同時Agent問清楚用戶目前位置(如東風(fēng)路)與交通工具(自行車),,而Agent的知識庫里說明東風(fēng)路距大學(xué)城20多公里,計算機(jī)計算之后就知道問題的核心是距離與速度矛盾,,那么提高速度就可以解決問題。
計算機(jī)需要有領(lǐng)域知識,,才能解決某個領(lǐng)域問題,。本文利用信息-知識-策略形式化體系來提高系統(tǒng)分析問題的能力[3],。
1.3 維護(hù)知識庫(本體進(jìn)化)
由于知識不斷更新,需要研究如何對本體進(jìn)行進(jìn)化,,才能更有效地進(jìn)行策略生成??梢杂萌藱C(jī)交互方式輸入新信息到本體中,,更新之前創(chuàng)建的本體庫。也可利用Agent的學(xué)習(xí)能力以及自主性不斷發(fā)現(xiàn)新知識,并把學(xué)習(xí)到的知識及時存儲進(jìn)本體中,,支持本體進(jìn)化,,以提高問題建模能力,從而為建立正確的問題模型奠定基礎(chǔ),。
因為本體是樹狀的,,與數(shù)據(jù)庫維護(hù)不同。這就必須告訴Agent目前哪個概念要更新,,出現(xiàn)哪個新概念,,屬于哪種類型,有什么屬性,,這樣Agent才能把某個概念更新或添加,。利用Agent的學(xué)習(xí)能力,特別是其主動學(xué)習(xí)[4]能力,,實現(xiàn)知識進(jìn)化; 也可以是統(tǒng)計學(xué)習(xí),,比如將數(shù)據(jù)挖掘發(fā)現(xiàn)的變化知識存儲在本體中,實現(xiàn)本體進(jìn)化; 還可以利用Agent的通信能力進(jìn)行會話,,學(xué)習(xí)其他Agent的經(jīng)驗,。
Agent還可以協(xié)助控制菱形思維方法的發(fā)散與收斂過程。
2 Agent協(xié)助控制發(fā)散與收斂
在建立可拓策略生成系統(tǒng)時,,經(jīng)常遇到發(fā)散分析不能及時收斂而計算速度急劇下降的現(xiàn)象,。人工控制發(fā)散與收斂是比較靈活的,根據(jù)基元的發(fā)散性(一物多征,、一征多物,、一值多物等),,利用可拓變換拓展目的基元;根據(jù)事物的共軛性(虛實、軟硬,、潛顯,、負(fù)正),利用變換分析目的基元的物質(zhì)性,、系統(tǒng)性,、 動態(tài)性、 對立性;根據(jù)基元的可擴(kuò)性(可加性,、可積性,、可分性),利用可拓變換對條件基元進(jìn)行重新整合;根據(jù)決策問題的需要,,還可以由基元的可擴(kuò)性對目標(biāo)進(jìn)行開拓,,由基元的發(fā)散性、可擴(kuò)性,、 相關(guān)性,、 蘊含性對條件進(jìn)行開拓,以形成更多可供選擇的策略,用以解決矛盾或偽矛盾的決策問題,。人的思維發(fā)散到一定程度不想再發(fā)散下去時,,就能迅速轉(zhuǎn)向收斂過程。但計算機(jī)通常是在不斷窮舉發(fā)散出來的各種新組合,,控制不好就產(chǎn)生計算組合爆炸,。因此,必須研究如何充分發(fā)揮Agent的自主性,、反應(yīng)性,、預(yù)動性、學(xué)習(xí)能力等特性,,控制可拓策略生成系統(tǒng)的發(fā)散與收斂過程,。
本文采用如下的技術(shù)方案:
首先建立關(guān)聯(lián)函數(shù),解決問題的前期主要是進(jìn)行發(fā)散計算,,根據(jù)用戶的目標(biāo)和條件進(jìn)行拓展分析,,利用可拓變換和可拓推理,根據(jù)本體提供給Agent的知識,,找出可以使關(guān)聯(lián)函數(shù)從小于零到大于零可拓變換,,然后進(jìn)入菱形思維的收斂階段,建立評價策略的基本方法,,得到較優(yōu)的策略輸出,。
發(fā)散階段是Agent監(jiān)視計算過程的重要階段。計算關(guān)聯(lián)函數(shù)一般沒有組合爆炸問題,,組合爆炸通常出現(xiàn)在根據(jù)拓展分析尋找能使關(guān)聯(lián)函數(shù)大于零的可拓變換(策略)中,。在算法上采用深度優(yōu)先遍歷,,先找到一個能解決問題的策略,再找其他策略,,不能窮舉,。Agent通過監(jiān)視策略數(shù)的多少及時停止發(fā)散,比如旅行線路問題,,可以變換酒店,、交通工具、景點等,,Agent控制先輸出幾個能使關(guān)聯(lián)函數(shù)大于零的策略就停止,,試問用戶滿意與否。如果不滿意再進(jìn)行其他變換,,Agent監(jiān)視運算速度(如計算產(chǎn)生一條策略的時間),,超過時間限制就停止繼續(xù)發(fā)散,轉(zhuǎn)向收斂階段,。
在收斂階段Agent根據(jù)優(yōu)度評價規(guī)則對策略評價擇優(yōu),,評價因子可以人機(jī)交互輸入,,也可以預(yù)先設(shè)定評價因子的初值,,允許用戶修改。這一階段一般沒有組合爆炸問題,,Agent主要判斷評價因子的合理值范圍就可以了,。
筆者在自助游可拓策略生成系統(tǒng)中就采用了Agent監(jiān)控可拓策略生成系統(tǒng)的發(fā)散與收斂過程的方案,使得策略生成的效率在用戶可以容忍的速度下進(jìn)行,。
3 Agent與可拓策略生成系統(tǒng)結(jié)合的其他方面
Agent還可以在其他方面與可拓策略生成系統(tǒng)結(jié)合,,例如,根據(jù)用戶問題協(xié)助選定關(guān)聯(lián)函數(shù),,而不是像目前需要靠人預(yù)先設(shè)定好,,以增加系統(tǒng)的靈活性。再如,,可以利用Agent進(jìn)行智能引導(dǎo),,分析用戶輸入的語義信息,提高可拓策略生成系統(tǒng)的語義處理能力,。
本文探討了可拓策略生成系統(tǒng)與Agent 技術(shù)兩種不同領(lǐng)域的知識相結(jié)合問題,,研究如何充分發(fā)揮這二門學(xué)科的優(yōu)勢,提高可拓策略生成系統(tǒng)的能力,。重點探討了Agent控制可拓策略生成中解決矛盾時可拓變換發(fā)散與收斂過程的技術(shù)方案,,使系統(tǒng)能夠在計算效率比較高的情況下,生成解決矛盾的策略,。
參考文獻(xiàn)
[1] 蔡文,,楊春燕,,林偉初.可拓工程方法[M].北京:科學(xué)出版社,1997.
[2] 李立希,,楊春燕,,李鏵汶.可拓策略生成系統(tǒng)[M]. 北京:科學(xué)出版社,2006.
[3] 李衛(wèi)華.Agent協(xié)助建立矛盾問題的可拓模型研究[J].數(shù)學(xué)的實踐與認(rèn)識, 2009:39(4):173-177.
[4] 周鳴爭, 楊益民. 菱形思維的可拓神經(jīng)網(wǎng)絡(luò)實現(xiàn)[J].系統(tǒng)工程理論與實踐,,2000,,20(6):123-125,130.