(北京化工大學(xué)信息科學(xué)與技術(shù)學(xué)院,北京 100029)
人機(jī)監(jiān)控界面是工控系統(tǒng)的重要組成部分,其性能對(duì)于整個(gè)過程監(jiān)控系統(tǒng)的高效工作起著至關(guān)重要的作用。而目前的工控人機(jī)監(jiān)控界面普遍存在交互性能不足、缺乏智能性、靈活性差等問題[1]。同時(shí)工業(yè)生產(chǎn)過程日趨復(fù)雜,數(shù)據(jù)信息量龐大,導(dǎo)致操作員的監(jiān)控負(fù)擔(dān)變得越來越重。因此,對(duì)于智能、高效的人機(jī)交互監(jiān)控系統(tǒng)的需求顯得十分迫切。
Agent技術(shù)為人機(jī)交互[2-6]與工業(yè)監(jiān)控[7-9]領(lǐng)域提供了一個(gè)新的發(fā)展方向。利用Agent對(duì)外界環(huán)境的自適應(yīng)、運(yùn)用自身知識(shí)自主處理問題和自學(xué)習(xí)的能力[10-11],提出了一種基于Agent技術(shù)的工業(yè)監(jiān)控智能人機(jī)交互系統(tǒng)。該系統(tǒng)的特點(diǎn)是可學(xué)習(xí)監(jiān)控人員的歷史經(jīng)驗(yàn)并預(yù)測(cè)其操作意圖,為監(jiān)控操作提供相應(yīng)的指導(dǎo)建議,提高系統(tǒng)監(jiān)控效率。
在對(duì)傳統(tǒng)工業(yè)組態(tài)監(jiān)控系統(tǒng)的人機(jī)交互界面的研究基礎(chǔ)上,提出一種基于Agent的工業(yè)監(jiān)控智能人機(jī)交互系統(tǒng),其結(jié)構(gòu)如圖1所示。
圖1 基于Agent的工業(yè)監(jiān)控人機(jī)交互系統(tǒng)結(jié)構(gòu)
系統(tǒng)主要分為上、下兩層。監(jiān)控人員和人機(jī)交互Agent共同構(gòu)成系統(tǒng)的上層,人機(jī)交互Agent可以作為操作員的智能代理,監(jiān)控人員的任何操作和命令下達(dá)都是通過人機(jī)交互Agent實(shí)施的,同時(shí)監(jiān)控人員通過人機(jī)交互Agent獲取現(xiàn)場(chǎng)的狀態(tài)反饋和各種異常信息。各種監(jiān)控功能集合構(gòu)成系統(tǒng)的下層,這里將工業(yè)過程監(jiān)控功能分為分析、流程、控制、趨勢(shì)、報(bào)警和報(bào)表6大類。其中,分析是對(duì)傳統(tǒng)工業(yè)監(jiān)控系統(tǒng)擴(kuò)展后的一項(xiàng)功能,包括:①被控變量的偏差信息分析,用于評(píng)價(jià)控制器的控制性能情況;②監(jiān)測(cè)變量與報(bào)警限的偏差信息,用于分析系統(tǒng)可能會(huì)出現(xiàn)的報(bào)警情況;③監(jiān)測(cè)變量的均值和方差信息,用于評(píng)價(jià)生產(chǎn)過程的平穩(wěn)程度。
人機(jī)交互Agent設(shè)計(jì)為一類慎思型結(jié)構(gòu)[12],具有較高的學(xué)習(xí)和推理能力。其中,知識(shí)庫(kù)包含了Agent自身知識(shí)、功能目標(biāo)、用戶列表,以及用于推理所需的規(guī)則知識(shí)等。人機(jī)交互Agent通過感知操作人員的動(dòng)作執(zhí)行過程,提取出交互動(dòng)作序列,進(jìn)行動(dòng)作行為學(xué)習(xí),從而實(shí)現(xiàn)對(duì)監(jiān)控人員操作意圖的預(yù)測(cè),最后將預(yù)測(cè)結(jié)果整合為操作指導(dǎo)建議。
人機(jī)交互Agent的決策推理采用基于經(jīng)驗(yàn)知識(shí)的交互學(xué)習(xí)和動(dòng)作預(yù)測(cè)方法,通過挖掘用戶歷史經(jīng)驗(yàn),即提取用戶的歷史操作動(dòng)作序列,構(gòu)建人機(jī)交互動(dòng)作序列庫(kù),并結(jié)合當(dāng)前環(huán)境(包括系統(tǒng)狀態(tài)和用戶當(dāng)前操作),預(yù)測(cè)出用戶未來的操作意圖,從而為用戶進(jìn)行下一步動(dòng)作提供相應(yīng)的操作建議。通過對(duì)用戶操作模式的學(xué)習(xí)和預(yù)測(cè),一方面,充分發(fā)揮計(jì)算機(jī)的自身優(yōu)勢(shì),減少操作員的認(rèn)知和記憶負(fù)擔(dān),防止操作員因監(jiān)控疲勞而產(chǎn)生的監(jiān)控不及時(shí)或操作失誤;另一方面,動(dòng)作預(yù)測(cè)為操作員提供最為可能的幾種操作建議,可幫助操作員快速而準(zhǔn)確地處理各種異常情況,以做出更為準(zhǔn)確合理的動(dòng)作決策。相比于只完全依靠操作員自身對(duì)所有可能的情況進(jìn)行選擇,減少了決策所需時(shí)間并降低了用戶的操作負(fù)擔(dān),從而有效提高了工控人機(jī)交互系統(tǒng)的監(jiān)控效率。
由于工業(yè)監(jiān)控過程的復(fù)雜性,用戶的操作經(jīng)驗(yàn)不再是低粒度的原子操作(如鼠標(biāo)的單擊、雙擊、按鍵等),而是針對(duì)某種情況所采取的某個(gè)或某些高層次的交互動(dòng)作,如反應(yīng)罐的液位過高,調(diào)整對(duì)應(yīng)出口(或進(jìn)口)閥門,調(diào)節(jié)控制器PID參數(shù)等。因此,系統(tǒng)的交互動(dòng)作可定義為一個(gè)六元組:
Action=
其中,actionID為該交互動(dòng)作的標(biāo)志,具有唯一性;actionName為交互動(dòng)作的名稱,不同的動(dòng)作標(biāo)志可能具有相同的動(dòng)作名稱;object為該動(dòng)作的作用對(duì)象;position為動(dòng)作發(fā)生的位置;time為該動(dòng)作發(fā)生的時(shí)間;effect為動(dòng)作執(zhí)行的效果評(píng)價(jià),且effect∈[0, 1],該值越接近1,表明用戶對(duì)該動(dòng)作產(chǎn)生的效用越滿意,反之,用戶滿意度低。
定義A={a1,a2,…,ai,…,an}為一組用戶交互動(dòng)作的有限集合,其中,ai為用戶的操作動(dòng)作;St={st1,st2,…,sti,…,stm}為一組系統(tǒng)狀態(tài)的有限集合;Sij={(Sti,Aj)|Sti?St,Aj?A,i,j∈N+}為用戶交互動(dòng)作序列,其中Sti為整個(gè)系統(tǒng)狀態(tài)St的序列子集,Aj為所有交互動(dòng)作A的序列子集;k=len(Aj)為動(dòng)作序列Aj的長(zhǎng)度。
鑒于工業(yè)監(jiān)控過程的復(fù)雜性和不確定性,即使處于同樣的狀態(tài)下,同一操作人員所采取的動(dòng)作也可能不完全一樣,這也是工業(yè)監(jiān)控人機(jī)系統(tǒng)與其他人機(jī)交互系統(tǒng)的一個(gè)重要不同處。為了表明這種可能性,引入一個(gè)動(dòng)作頻率函數(shù)num(st,a),表示在狀態(tài)st下動(dòng)作a發(fā)生的次數(shù)。因此,動(dòng)作a發(fā)生的概率可表示為:
(1)
基于經(jīng)驗(yàn)知識(shí)的交互學(xué)習(xí)與動(dòng)作預(yù)測(cè)首先需要構(gòu)建交互動(dòng)作序列庫(kù),然后才能進(jìn)行相應(yīng)的動(dòng)作預(yù)測(cè)。
① 交互動(dòng)作序列庫(kù)構(gòu)建
交互動(dòng)作序列庫(kù)的構(gòu)建是對(duì)監(jiān)控人員的歷史操作經(jīng)驗(yàn)進(jìn)行學(xué)習(xí)的過程,可通過登陸系統(tǒng)的用戶名來區(qū)分不同的監(jiān)控員,分別擁有各自不同的交互動(dòng)作序列庫(kù)。一個(gè)監(jiān)控人員的交互動(dòng)作序列庫(kù)也可以供其他監(jiān)控人員使用,因此對(duì)于不熟練的監(jiān)控員,可以充分利用具有豐富經(jīng)驗(yàn)的監(jiān)控人員的動(dòng)作序列庫(kù),從而有效地幫助其做出更合理的監(jiān)控操作。
為增強(qiáng)交互動(dòng)作學(xué)習(xí)和預(yù)測(cè)的可靠性,在構(gòu)建交互動(dòng)作序列庫(kù)的過程中,特別增加了預(yù)交互動(dòng)作和預(yù)交互動(dòng)作序列兩個(gè)輔助概念。將第一次出現(xiàn)的用戶動(dòng)作作為預(yù)交互動(dòng)作,所構(gòu)成的集合為預(yù)交互動(dòng)作集合,同理其組成的交互動(dòng)作序列為預(yù)交互動(dòng)作序列。假定操作員當(dāng)前正在執(zhí)行的動(dòng)作為a,交互動(dòng)作集合為A,預(yù)交互動(dòng)作集合為B,交互動(dòng)作序列為S,預(yù)交互動(dòng)作序列為S′,同時(shí)限制交互動(dòng)作序列的最大長(zhǎng)度為N,以降低交互學(xué)習(xí)過程的復(fù)雜度。如果a為一個(gè)新操作行為,即a既不屬于A,也不屬于B,則將a加入預(yù)交互動(dòng)作集合B,并產(chǎn)生一個(gè)以a為結(jié)束項(xiàng)的預(yù)交互動(dòng)作序列;如果a∈B,則以a為結(jié)束項(xiàng),將連續(xù)的若干動(dòng)作序列與預(yù)交互動(dòng)作序列相比較,將其中以a為結(jié)束項(xiàng)的相同動(dòng)作序列加入到交互動(dòng)作序列庫(kù)中,并將a加入到交互動(dòng)作集合A中;若a∈A,則在交互動(dòng)作序列庫(kù)中搜索與其局部匹配的動(dòng)作序列S,如果存在這樣的序列,則更新該動(dòng)作序列中a的執(zhí)行頻率;否則,表明可能存在一個(gè)新的交互動(dòng)作序列Snew。
交互動(dòng)作序列庫(kù)構(gòu)建的算法流程如圖2所示。
圖2 交互動(dòng)作序列構(gòu)建的算法流程圖
② 交互動(dòng)作預(yù)測(cè)
交互動(dòng)作序列庫(kù)構(gòu)建完成之后,則可根據(jù)當(dāng)前系統(tǒng)狀態(tài)和操作對(duì)用戶下一步的操作動(dòng)作進(jìn)行預(yù)測(cè)。這里,采用綜合最大動(dòng)作序列匹配長(zhǎng)度和最大動(dòng)作執(zhí)行概率的方法對(duì)用戶的操作意圖進(jìn)行預(yù)測(cè)。當(dāng)動(dòng)作序列匹配長(zhǎng)度L越大(L≤N,N為動(dòng)作序列長(zhǎng)度的上限值),其對(duì)應(yīng)的動(dòng)作發(fā)生概率也更大。因此,定義動(dòng)作序列匹配長(zhǎng)度概率為:
(2)
式中:d表示選取前d個(gè)最大序列匹配長(zhǎng)度作為候選預(yù)測(cè)動(dòng)作范圍,該參數(shù)可根據(jù)具體情況進(jìn)行設(shè)定,一般選取d=3~5;L為序列匹配長(zhǎng)度值,且L≤N。
交互動(dòng)作預(yù)測(cè)原理如下。首先,在當(dāng)前系統(tǒng)狀態(tài)st下,以當(dāng)前用戶動(dòng)作a為結(jié)束項(xiàng),逐步向后遞增動(dòng)作序列長(zhǎng)度L,并與交互動(dòng)作序列庫(kù)中的動(dòng)作序列進(jìn)行比較匹配,得到前d個(gè)最大匹配長(zhǎng)度中的所有預(yù)測(cè)動(dòng)作候選集合C。然后計(jì)算每個(gè)候選預(yù)測(cè)動(dòng)作的執(zhí)行概率Pn和對(duì)應(yīng)的序列匹配長(zhǎng)度概率PL。最后通過式(3)計(jì)算每個(gè)預(yù)測(cè)動(dòng)作的綜合發(fā)生概率R:
R=αPL+(1-α)Pn
(3)
式中:α(0≤α≤1)為評(píng)價(jià)兩個(gè)概率指標(biāo)的權(quán)重因子,是對(duì)所預(yù)測(cè)動(dòng)作的執(zhí)行頻率和序列匹配長(zhǎng)度的一種折中處理。若取α=1,表示只考慮最大動(dòng)作序列匹配長(zhǎng)度;若取α=0,則只考慮最大的動(dòng)作發(fā)生頻率。
交互動(dòng)作預(yù)測(cè)算法的具體流程圖如圖3所示。這里是從最大序列長(zhǎng)度N開始逐步遞減匹配序列長(zhǎng)度L,直到搜索到d個(gè)滿足要求的匹配序列為止。這不僅便于算法的計(jì)算機(jī)編程實(shí)現(xiàn),并且大大減少了搜索時(shí)間。
圖3 交互動(dòng)作預(yù)測(cè)的算法流程圖
系統(tǒng)運(yùn)行過程中,如果所預(yù)測(cè)的動(dòng)作發(fā)生概率R過小,不僅達(dá)不到有效的預(yù)測(cè)效果,反而會(huì)妨礙操作人員與系統(tǒng)之間的正常交互,影響人機(jī)交互體驗(yàn)。因此,在預(yù)測(cè)過程中增加了一個(gè)動(dòng)作預(yù)測(cè)概率閾值Rt,只有當(dāng)R≥Rt時(shí),此次預(yù)測(cè)過程才是有效的,否則預(yù)測(cè)結(jié)果無效。
伴隨著操作人員與系統(tǒng)之間的不斷交互學(xué)習(xí),系統(tǒng)最終預(yù)測(cè)的動(dòng)作發(fā)生概率R是逐漸增大的。因此,概率閾值Rt就需要根據(jù)系統(tǒng)實(shí)際使用情況進(jìn)行合理設(shè)定,才能獲得最佳的動(dòng)作預(yù)測(cè)效果。
③ 預(yù)測(cè)過程的Petri網(wǎng)模型
為了對(duì)人機(jī)交互Agent的動(dòng)作預(yù)測(cè)過程進(jìn)行描述和分析,可以采用Petri網(wǎng)對(duì)其進(jìn)行建模。Petri網(wǎng)中的庫(kù)所表示人機(jī)交互Agent的預(yù)測(cè)結(jié)果,變遷代表了所預(yù)測(cè)結(jié)果的發(fā)生概率,庫(kù)所中Token代表了用戶實(shí)際所執(zhí)行的操作動(dòng)作。預(yù)測(cè)過程Petri網(wǎng)模型如圖4所示。
圖4 預(yù)測(cè)過程Petri網(wǎng)模型
圖4(a)所示為一個(gè)典型預(yù)測(cè)過程的Petri網(wǎng)模型實(shí)例,ST表示當(dāng)前系統(tǒng)狀態(tài),在動(dòng)作P1之后存在兩個(gè)變遷T2和T3,表示預(yù)測(cè)動(dòng)作P2和P3的發(fā)生概率R都比較大,因此就分別有預(yù)測(cè)動(dòng)作P4和P5,最終兩種情況下的預(yù)測(cè)動(dòng)作都為P6。通過Petri網(wǎng)能夠形象地描述人機(jī)交互Agent的動(dòng)作預(yù)測(cè)過程,同時(shí)還能發(fā)現(xiàn)針對(duì)同一種情況的不同處理過程,為用戶提供更多可選操作方案。
圖4(b)為Petri網(wǎng)模型的覆蓋樹,基于覆蓋樹分析法[13],可做出如下分析:①樹中所有節(jié)點(diǎn)都沒出現(xiàn)ω,Petri網(wǎng)是有界的,并且所有節(jié)點(diǎn)僅包含0或1,因此Petri網(wǎng)是安全的;②所有變遷都在樹中出現(xiàn),因此不存在死變遷,存在一個(gè)死標(biāo)志m6,這也是Petri網(wǎng)運(yùn)行結(jié)束的標(biāo)志;③根據(jù)覆蓋樹性質(zhì),該P(yáng)etri網(wǎng)是活的。
為了對(duì)所提出的智能人機(jī)交互監(jiān)控方法進(jìn)行分析驗(yàn)證,對(duì)工業(yè)二甲基甲酰胺(dimethylformamide,DMF)回收過程進(jìn)行研究。DMF回收的廢液濃縮工藝流程如圖5所示。
圖5 DMF廢液濃縮工藝流程圖
由圖5可看出,系統(tǒng)主要包括一級(jí)濃縮塔T101和二級(jí)濃縮塔T102兩大部分,附帶2個(gè)再沸器和2個(gè)冷凝器。監(jiān)控變量包括2個(gè)濃縮塔的液位、壓力、溫度、出入流量等,以及2個(gè)冷凝器的液位。
當(dāng)LI101高限報(bào)警發(fā)生后,人機(jī)交互Agent動(dòng)作預(yù)測(cè)過程的Petri網(wǎng)模型如圖6所示。表1為Petri網(wǎng)模型中庫(kù)所代表的含義。通過對(duì)動(dòng)作預(yù)測(cè)Petri網(wǎng)進(jìn)行覆蓋樹分析可知,人機(jī)交互Agent的動(dòng)作預(yù)測(cè)過程是安全的,且預(yù)測(cè)過程中不存在死變遷,直到最終庫(kù)所P13,預(yù)測(cè)過程結(jié)束,等待進(jìn)行下一事件過程的預(yù)測(cè)開始。
圖6 動(dòng)作預(yù)測(cè)Petri網(wǎng)模型
表1 Petri網(wǎng)中庫(kù)所的含義
由上述分析實(shí)例可知,該人機(jī)交互監(jiān)控系統(tǒng)不僅可以利用專家經(jīng)驗(yàn)知識(shí),還能較好地學(xué)習(xí)跟蹤監(jiān)控人員的歷史操作經(jīng)驗(yàn),并在遇到相同情況下迅速做出動(dòng)作預(yù)測(cè),為監(jiān)控人員提供及時(shí)有效的操作建議。對(duì)于新的或不熟練的操作人員,也可以充分利用已有的歷史經(jīng)驗(yàn)庫(kù),有效地輔助操作人員進(jìn)行監(jiān)控,提高過程監(jiān)控效率,從而改善工業(yè)監(jiān)控系統(tǒng)的人機(jī)交互體驗(yàn)。
針對(duì)傳統(tǒng)工業(yè)監(jiān)控系統(tǒng)中的人機(jī)交互過程存在的不足,提出并實(shí)現(xiàn)了一種基于Agent技術(shù)的工業(yè)監(jiān)控智能人機(jī)交互系統(tǒng)結(jié)構(gòu)。本文設(shè)計(jì)了位于監(jiān)控人員和工控界面之間的智能代理——人機(jī)交互Agent,可對(duì)監(jiān)控人員的歷史操作經(jīng)驗(yàn)進(jìn)行在線挖掘和學(xué)習(xí),并預(yù)測(cè)下一步最有可能發(fā)生的監(jiān)控動(dòng)作。工業(yè)監(jiān)控實(shí)例說明該智能人機(jī)交互方法可較好地跟蹤和學(xué)習(xí)監(jiān)控人員的歷史操作經(jīng)驗(yàn),并為監(jiān)控操作提供有效的操作建議。今后的研究工作將進(jìn)一步完善系統(tǒng)模型結(jié)構(gòu),提高人機(jī)交互動(dòng)作預(yù)測(cè)的可靠性。
[1] 童啟明.控制系統(tǒng)數(shù)字仿真與監(jiān)控組態(tài)軟件應(yīng)用[M].北京:科學(xué)出版社,2006.
[2] 王滔,費(fèi)敏銳,雷電.Multi-Agent技術(shù)在工業(yè)監(jiān)控界面體系中的研究與應(yīng)用[J].中南大學(xué)學(xué)報(bào):自然科學(xué)版,2005,36(1):647-651.
[3] Yang H,Li P,Fu S,et al.Multi-agent modeling & realization for interface system of industrial monitor and control system under X3D[C]//Proceeding of the 2011 IEEE International Conference on Electric Information and Control Engineering,2011:5114-5117.
[4] Kawamura K,Nilas P,Muguruma K,et al.An agent-based architechture for an adaptive human-robot interface[C]//Proceeding of the 36th Annual Hawaii International Conference on System Sciences,2003:6-9.
[5] Kira A,Nichols D M,Apperley M.Human communication in customer-agent-computer interaction:face-to-face versus over telephone[J].Computers in Human Behavior,2009,25(1):8-20.
[6] Ezzedine H,Kolski C,Peninou A.Agent-oriented design of human-computer interface:application to supervision of an urban transport network[J].Engineering Applications of Artificial Intelligence,2005,18(3):255-270.
[7] Pirttiojat,Halme A,Pakonen A,et al.Multi-agent system enhanced supervision of process automation[C]//Distributed Intelligent Systems:Collective Intelligence and its Applications,2006:151-156.
[8] Nikrazm,Bahri P A.An agent-oriented approach to integrated process operations in chemical plants[C]//38th European Symposium of the Working Party on Computer Aided Process Engineering,2005:1585-1590.
[9] Gao Y,Shang Z G,Kokossis A.Agent-based intelligent system development for decision support in chemical process industry[J].Expert System with Applications,2009,36(8):11099-11107.
[10] Wooldridgem J,Jennings N R.Intelligent agent: theory and practice[J].Knowledge Engineering Reviewer,1995,10(2):115-152.
[11] Tweedalej,Ichalkaranje N,Sioutis C,et al.Innovations in multi-agent systems[J].Journal of Network and Computer Applications,2007,30(3):1089-1115.
[12] 楊鯤,翟永順,劉大有.Agent:特性與分類[J].計(jì)算機(jī)科學(xué),1999,26(9):30-34.
[13] 袁崇義.Petri網(wǎng)原理[M].北京:電子工業(yè)出版社,1998.