第四章 應用案例需求塑模
4.2 需求塑模與設計
4.2.6 角色描述階段
此,我們還需要透過角色描述階段,來說明每一個代理人在生命週期的各階段裡 所扮演的角色,以及發生協同合作時的溝通狀況。
如圖 4.11 所示,輔助性對話代理人角色描述圖(Dialog Agent Role Description Diagram)使用一個套件表示一個代理人,一個套件裡面有一個或多個類別,分別 表示該代理人所扮演的角色。因為相同的代理人可以扮演不同的角色,使用 [ROLE CHANGE]表示代理人角色的轉變。角色與角色之間的溝通以實線連結,
實線的內容已經在上述的溝通知識本體描述圖中詳細說明。
舉例來說,輔助性對話代理人若目前角色是電話代理人,當使用者要求撥打 電話的時候,此時輔助性對話代理人所扮演的電話代理人角色,就需要與其他代 理人要求進行協同合作的溝通。而溝通的方式透過實線連結,細節如 4.2.5 節中 溝通知識本體描述階段所說明。
當使用者臨時需要使用控制家電的服務,例如講電話講到一半,覺得很熱想 開冷氣,告知輔助性對話代理人這個需求後,輔助性對話代理人會將目前扮演的 電話代理人角色轉變成應用程式控制代理人的角色。簡言之,本階段就是在描述 輔助性對話代理人在不同的情境下可以扮演不同角色,使用[ROLE CHANGE]表 示角色是從電話代理人轉變成應用程式代理人,以完成使用者的不同情境下的需 要。
圖 4.11 輔助性對話代理人角色描述圖
4.2.7 協定描述階段
溝通知識描述已經為每個代理人與代理人之間溝通協定選擇合適的通訊協 定,因此在此階段我們需要針對選擇的通訊協定,做細節的定義描述與該通訊協 定之回應。
本研究中,我們採用 JADE (Java Agent Development framework) 架構上,由 於 JADE 是一套完全遵循 FIPA 通訊協定開發的多代理人開發框架,因此我們可 以透過 JADE 提供的 FIPA 通訊協定,從而方便的設計代理人互動平臺。當使用 者與輔助性對話代理人對話,需要透過 FIPA-request 將與使用者對話的資訊送給
好,透過 FIPA-request 協定反覆調整目前提供的居家服務,並透過既定的語言及 編碼格式分析協定內容,並將該內容搭配知識本體理解對話內容,對話結果交付 予應該提供服務的代理人進行協商。為了避免對話過程中使用者輸入知識本體以 外的關鍵字彙,使得整個對話無法用預設的對話樣式來呼叫服務。為解決這些例 外的問題,我們通常可以透過一連串的問答過程,讓對話代理人引導使用者進行 協商,直到達成使用者的目的。
圖 4.12 FIPA-Request-Protocol 回應內容