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