freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

多agent的制造執(zhí)行系統(tǒng)設(shè)計(jì)方案-閱讀頁(yè)

2025-05-13 02:41本頁(yè)面
  

【正文】 Agent行為的工具,調(diào)試和測(cè)試工具等等;運(yùn)行系統(tǒng)則包括Agent引擎及它提供執(zhí)行Agent軟件的環(huán)境。由于AgentBuilder的工具箱和運(yùn)行時(shí)系統(tǒng)兩部分所有組件都是通過(guò)Java語(yǔ)言實(shí)現(xiàn)的,因此在任何支持Java并且擁有一個(gè)Java開(kāi)發(fā)環(huán)境的機(jī)器或者操作系統(tǒng)上都可以進(jìn)行Agent的應(yīng)用和開(kāi)發(fā)。通過(guò)Java語(yǔ)言創(chuàng)建出來(lái)的智能Agent,可以在各種各樣的計(jì)算機(jī)平臺(tái)執(zhí)行[23]。圖41 AgentBuilder主要組件之間的關(guān)系圖本課題采用AgentBuilder作為開(kāi)發(fā)平臺(tái),實(shí)現(xiàn)MES調(diào)度功能模塊設(shè)計(jì),其主要特征如下:(1) 提供了可視化編程工具來(lái)制定Agent的行為和運(yùn)行;(2) 容易創(chuàng)建軟件智能Agent,不需要Agent和網(wǎng)絡(luò)通信方面的專門(mén)知識(shí);(3) 構(gòu)建的Agent內(nèi)置有自主運(yùn)行、跟蹤環(huán)境、推理、與別的Agent通信的能力;(4) 使用高層次的面向Agent的編程語(yǔ)言,通過(guò)制定Agent的信念、承諾、行為等直接概念就可以完成軟件Agent的設(shè)計(jì);(5) 提供問(wèn)題域的分析、Agent群的定義、Agent間相互作用的定義、Agent測(cè)試和調(diào)試等工具;(6) 基于Java語(yǔ)言,對(duì)于創(chuàng)建跨平臺(tái)的Agent應(yīng)用提供了工具包;(7) 支持多種編程語(yǔ)言,如Java、C++、C語(yǔ)言等。AgentBuilder所創(chuàng)建的Agent使用KQML語(yǔ)言通信機(jī)制,故其支持KQML所確定的行為。開(kāi)發(fā)智能Agent與其它開(kāi)發(fā)活動(dòng)相類似,開(kāi)發(fā)人員同樣要進(jìn)行系統(tǒng)分析、設(shè)計(jì)、執(zhí)行、測(cè)試/調(diào)試、整合和維護(hù)等步驟。圖42 用AgentBuilder開(kāi)發(fā)Agent的過(guò)程Agent的開(kāi)發(fā)過(guò)程實(shí)際上就是定義Agent行為的過(guò)程。用戶界面庫(kù)可用于構(gòu)建Agent的用戶界面,Agent行為庫(kù)中可確定Agent的行為。定義好Agent的行為后,要把Agent程序載入運(yùn)行Agent引擎(Reticular’s Runtime Agent Engine)中,它是一種高績(jī)效的執(zhí)行機(jī)制,可以解釋Agent程序,執(zhí)行用戶界面庫(kù)和Agent行為庫(kù)中的行為。KQML是目前被廣泛采用的Agent通信語(yǔ)言之一,KQML其既是一種消息格式,也是一種消息處理協(xié)議,它提供了一套標(biāo)準(zhǔn)的Agent通信原語(yǔ)。KQML的基本格式如圖43所示:圖43 KQML的基本格式一般地,被發(fā)送的語(yǔ)言段稱為消息,消息的形成就如同一個(gè)編碼過(guò)程,消息的解釋執(zhí)行則似一個(gè)解碼過(guò)程。由于KQML既是一種通信語(yǔ)言,又是一種通信協(xié)議和標(biāo)準(zhǔn),故每個(gè)Agent只要遵守該協(xié)議,就可受到它所提供的通信支持,而要遵守KQML協(xié)議,每個(gè)Agent都必須添加一個(gè)KQML語(yǔ)言解釋器。此外,還有一種名為輔助器(Facilitator)的Agent則需完成一些特殊功能,所以它還應(yīng)支持特殊原語(yǔ)的解。實(shí)體Agent的基本交互模式如圖44所示。同時(shí),實(shí)體Agent與知識(shí)庫(kù)中的規(guī)則(即對(duì)象關(guān)系定義系統(tǒng)所給出的實(shí)體對(duì)象關(guān)系)也由KQML進(jìn)行傳遞。也就是說(shuō),Agent是一個(gè)封裝的有獨(dú)立功能的模塊,它包括自己的數(shù)據(jù)和對(duì)這些數(shù)據(jù)進(jìn)行操作的算法,它能夠接受和處理其它 Agent發(fā)送來(lái)的消息,也能向其它 Agent發(fā)送消息,是一個(gè)有獨(dú)立解決問(wèn)題能力、并隨環(huán)境變化而變化的實(shí)體。開(kāi)發(fā)者還必須確定在解決全局問(wèn)題時(shí)每一個(gè)代理和它的作用,然后創(chuàng)建一個(gè)框架代理并定義這個(gè)代理和別的代理相互作用時(shí)的基本特征。協(xié)議編輯器使得開(kāi)發(fā)者能夠容易確定代理間所需的消息和握手規(guī)則。AgentBuilder為確定代理的行為規(guī)則、信念、職責(zé)、意圖和代理能力提供了工具,支持用戶接口庫(kù)和代理行為庫(kù)的創(chuàng)建,建立代理定義文檔。在代理行為庫(kù)中確定代理的行為,主要有以下幾步:首先定義行為的名稱和參數(shù),接著將行為和對(duì)象模式中定義的對(duì)象方法關(guān)聯(lián),最后導(dǎo)入已有類庫(kù)或者開(kāi)發(fā)能夠?qū)崿F(xiàn)任務(wù)的Java類并在代理的行為庫(kù)中存儲(chǔ)這此類。這份文檔和代理行為庫(kù)、用戶接口庫(kù)確定了代理的行為。最后將代理程序載入錯(cuò)綜實(shí)時(shí)代理引掣,創(chuàng)建代理應(yīng)用程序。通過(guò)本次設(shè)計(jì)讓自己學(xué)習(xí)到了Agent、MES、AgentBuilder開(kāi)發(fā)平臺(tái)、調(diào)度算法等許多新的知識(shí),更讓自己了解到機(jī)械知識(shí)在企業(yè)實(shí)際生產(chǎn)中應(yīng)用的重要性。雖然在設(shè)計(jì)學(xué)習(xí)過(guò)程中經(jīng)常遇到問(wèn)題,但通過(guò)與老師、師姐、同學(xué)溝通,查閱相關(guān)文獻(xiàn)等途徑大部分都得到比較滿意的解決。將來(lái)應(yīng)加深對(duì)AgentBuilder開(kāi)發(fā)平臺(tái)的了解,能夠熟練的運(yùn)用它開(kāi)發(fā)出智能化的Agent,并有效合理的封裝,便于企業(yè)客戶使用。從開(kāi)始的課題選題、方案設(shè)計(jì),選題的變更,進(jìn)而進(jìn)行課題的設(shè)計(jì)到最后開(kāi)始論文寫(xiě)作,整個(gè)過(guò)程都傾注了導(dǎo)師的辛勤勞動(dòng)和大量的心血,在此,謹(jǐn)向我的導(dǎo)師表示最衷心的感謝! 同時(shí),在此要感謝我同組的張芳瑜和蘇橋滿,謝謝你們?cè)诔绦蛩惴ㄅc程序仿真數(shù)據(jù)中所給出的寶貴意見(jiàn)與建議,也感謝你們對(duì)我畢業(yè)設(shè)計(jì)的指導(dǎo)與幫助。 //輸入總工件數(shù) int processNumber =4。//Pij的工時(shí) double sumTi[] = new double[4]。 double surplusrij[][] = new double[4][4]。 //由調(diào)度算法計(jì)算sumTij for(int i = 0。 i++) { for(int j = 0。 j++) { sumTi[i] += timeij[i][j]。 k = j。 } } } //計(jì)算剩余加工時(shí)間 for(int i = 0。 i++) { for(int j = 0。 j++) { rij[i][j] = sumTij[i][j]/sumTi[i]。 } } //每臺(tái)設(shè)備所要加工的任務(wù)表(未排序) double M01[] = {, , , }。 double M03[] = {, , , }。 int a。 int c。 double temp[] ={0}。 i 4 。 b = (int)(M01[i]*10)%10 1。 j 4。 d = (int)(M01[j]*10)%10 1。 M01[i] = M01[j]。 } } } //輸出M01加工任務(wù)結(jié)果 (M01 )。 i 4。 } ( )。 i 4 。 b = (int)(M02[i]*10)%10 1。 j 4。 d = (int)(M02[j]*10)%10 1。 M02[i] = M02[j]。 } } } (M02 )。 i 4。 } ( )。 i 4 。 b = (int)(M03[i]*10)%10 1。 j 4。 d = (int)(M03[j]*10)%10 1。 M03[i] = M03[j]。 } } } (M03 )。 i 4。 } ( )。 i 4 。 b = (int)(M04[i]*10)%10 1。 j 4。 d = (int)(M04[j]*10)%10 1。 M04[i] = M04[j]。 } } } (M04 )。 i 4。 } ( )。 int processNumber[] = {4,2,3,3,2,3,2,3}。 double sumTi[] = new double[8]。 for(int i = 0。 i++) { sumTij[i] = new double[processNumber[i]]。 for(int i = 0。 i++) { surplusrij[i] = new double[processNumber[i]]。 for(int i = 0。 i++) { rij[i] = new double[processNumber[i]]。 i 。 j timeij[i].length。 for(int k = 0。 k++) { sumTij[i][j] += timeij[i][k]。 i 。 j timeij[i].length。 surplusrij[i][j] = 1 rij[i][j]。 double M02[] = {, , , , , , }。 double M04[] = {, }。 int a。 int c。 double temp[] ={0}。 for(int i = 0。 i++) { a = (int)(M01[i]) 1。 temp1[i] = surplusrij[a][b]。 i 。 j 。 temp1[i] = temp1[j]。 } } } (M01 )。 i 。 j 。 b = (int)(M01[j]*10)%10 1。 } } } ( )。 i 。 b = (int)(M02[i]*10)%10 1。 j 。 d = (int)(M02[j]*10)%10 1。 M02[i] = M02[j]。 } } } for(int i = 0。 i++) { a = (int)(M02[i]) 1。 for(int j = 0。 j++) { c = (int)(M02[j]) 1。 if(surplusrij[a][b] == surplusrij[c][d]) { if(M02[i] M02[j]) { temp[0] = M02[i]。 M02[j] = temp[0]。 for(int i = 0。 i++) { (M02[i] + )。 for(int i = 0。 i++) { a = (int)(M03[i]) 1。 for(int j = 0。 j++) { c = (int)(M03[j]) 1。 if(surplusrij[a][b] surplusrij[c][d]) { temp[0] = M03[i]。 M03[j] = temp[0]。 for(int i = 0。 i++) { (M03[i] + )。 for(int i = 0。 i++) { a = (int)(M04[i]) 1。 for(int j = 0。 j++) { c = (int)(M04[j]) 1。 if(surplusrij[a][b] surplusrij[c][d]) { temp[0] = M04[i]。 M04[j] = temp[0]。 for(int i = 0。 i++) { (M04[i] + )。 for(int i = 0。 i++) { a = (int)(M05[i]) 1。 for(int j = 0。 j++) { c = (int)(M05[j]) 1。 if(surplusrij[a][b] surplusrij[c][d]) { temp[0] = M05[i]。 M05[j] = temp[0]。 for(int i = 0。 i++) { (M05[i] + )。 }
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1