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

正文內容

多agent的制造執(zhí)行系統(tǒng)設計方案(編輯修改稿)

2025-05-25 02:41 本頁面
 

【文章內容簡介】 k)的設備k,若該數組中所有設備的Lk相等,則任選一臺;步驟3:將工序P173。ij插入到設備k的任務隊列QueueTk的隊尾;步驟4:分別按下式計算Pij的開始時間Sij、完工時間Fij,選定設備在工序的空閑時間Wij,然后更新相應設備的Lk,令Lk=Fij;Sij=max{Lk,Fij1}。 Fij=Sij+Tij。 Wij=Sij-Lk。步驟5:遍歷數組Move(i),若Move(i)≠NULL,轉步驟1,若所有的Move(i)=NULL,則初排結束。 調節(jié)排序: 在初排后,每臺設備的調度指針Lk記錄著該設備上的最后一個加工任務的結束時間,這時可根據王鳳儒,徐蔚文,徐洪副[21]提出的調節(jié)算法進一步縮短加工路徑和時間。Setp1:求加工路徑最長(即滿足max(Lk))的設備,此設備存在且不一定唯一;Setp2:對其中任一設備k,判斷其任務隊列queueTk,若所有工序開始前Wij均為零,則排序結果不可調節(jié),算法結束。Setp3:求第一個Wij不為零的工序,記為Pbc,若此結點不是隊列的隊尾,則進入Setp4。若此是該隊列的隊尾,且該設備上一加工任務結束時間大于工序Pbc1的結束時間,則將Pbc的開工時間提前至該設備上一加工任務的結束時間,更新工序的開始時間Sbc、結束時間Fbc和設備空閑時間Wbc,轉Setp1,否則此道工序不可提前,暫設Wbc=0,轉Setp1。Setp4:令在該設備Pbc的前一加工任務為Pfg,后一為Pst,若Fst1<Sbc且max{Ffg,Fst1 }+Tst +Tbc≤Sbc+1,則交換Pbc與Pst在該設備上的加工順序,則Sst=max{Ffg,Fst1 },進入Setp5;否則暫時置Wbc=0,轉Step1。Setp5:更新隊列QueueTk中Pst及其后所有工序的開工時間、完工時間、設備空閑時間和Lk,若Lk<max(Lk),恢復前面所有暫時置工序等待時間在置零前的值,轉Step1;若Lk= max(Lk),算法結束。車間調度算法初步排序流程圖如32,調整排序算法流程圖如33:圖32 初步排序算法流程圖圖33 車間調度調整排序算法流程圖 編程采用java語言,如圖34。 圖34 JDK版本及環(huán)境調度排序功能代碼在UltraEdit32(圖35)工具中編寫。 圖35 UltraEdit32編寫環(huán)境 在UltraEdit32編程工具環(huán)境下將車間調度算法編寫為java代碼,如圖36。圖36 在windows xp cmd環(huán)境下編譯執(zhí)行,算法結果輸出形式如圖37。圖37 算法輸出形式圖 由于本次所采用華鷹軟包裝設備總廠的仿真數據中每道工序只有單一設備可選,所以編寫程序時假設每道工序只一臺加工設備,結合上述算法和實際數據,對其進行了編寫簡化,即根據輸入數據算出所有Rij,將每臺設備所要加工的不同設備工序作為輸入(工序未排序),通過工序的Rij進行初步排序。本課題只對初排算法進行編寫仿真,調整算法不作為本課題對象。課題選取了兩組數據作為仿真輸入,根據不同情況編寫了相應代碼,在附件中附錄了本課題所編寫的兩個java代碼。 4x4的數據仿真 工件數為4,各工件工序數都為4,4臺設備(M01,M02,M03,M04),加工工時與設備時間表如下:工序1工序2工序3工序4工件1M01M02M04M014435工件2M02M03M01M033456工件3M03M02M04M026244工件4M04M01M03M044266表38 工序工時與設備關系表將數據輸入程序,運行得出如下結果:圖39 4x4數據仿真輸出 通過輸出結果運用Microsoft Office Visio 工具將其轉化為甘特圖,結果如圖310。圖310 4x4排序結果甘特圖 實例仿真 表311為華鷹軟包裝設備總廠有限公司YA800AⅡ型印刷機機頭的部分部件工序、工時、設備情況:序號零件圖號零件名稱數量工序1工序2工序3工序41YA800AⅡ心軸20車鉗磨銑901024402YA800AⅡ主軸1車磨——166——3YA800AⅡ肖座1刨車鉗——4臂2刨車鉗—271—5軸襯4車鉗——86——6緊定套座2車銑鉗—474—7YA800AⅡ氣缸尾座2車鉗——73——8YA800AⅡ底板8刨鉗磨—20128—注:上表的工時沿用公司的表示方法,即為方便統(tǒng)計工資。如:工件一的工序1,車工時實為9個工時,10元/小時,90元為加工這零件工資。表311 YA800AⅡ型印刷機機頭部分部件工序工時與設備關系表將實際數據轉化程序可接受數據形式,如表312:零件名稱工件編號工序1工序2工序3工序4心軸1M01M02M03M04914主軸2M01M03————肖座3M05M01M02——臂4M05M01M02——軸襯5M01M02————緊定套座6M01M04M02——氣缸尾座7M01M02————底板8M05M02M03—2—表312 YA800AⅡ型印刷機機頭部分部件仿真數據表其中M01代表車所需設備,M02代表鉗所需設備M03代表磨所需設備,M04代表銑所需設備M05代表刨所需設備。 輸入數據表寫調度程序,執(zhí)行程序返回圖313 結果:圖313華鷹數據仿真輸出結果轉化成如圖313的甘特圖:圖313 YA800AⅡ型印刷機機頭部分部件排序結果甘特圖 仿真總結 本課題仿真基于車間單件小批量生產模式,研究針對工件的每道工序可在一臺設備上進行加工的情況,主要考慮不同工序競爭同一加工設備時的資源分配方法,采用時間復雜度較小的優(yōu)先分配方法和啟發(fā)式規(guī)則求得較優(yōu)解。根據理論算法分析和實例數據驗證,可總結出此調度功能算法結構簡單,時間復雜度較小,易于實現,通過對實際生產數據進行驗證,得出算法可行且能夠求得較為滿意的解這一結論,該調度算法在傳統(tǒng)的Job Shop車間作業(yè)調度問題的基礎上,做了一定假設,這些假設可根據實際情況加以改變,使之能夠適合企業(yè)復雜的生產環(huán)境,讓其能更好的適合大多數企業(yè)實際生產,提高使用價值。Agent的通信及封裝 如何將設計好的車間調度功能模塊進行封裝,形成一個基于多Agent的MES車間調度功能模塊,也是本次課題研究的內容。首先要了解Agent之間的通信機制及如何封裝,有一定理論知識后結合本課題研究所采用AgentBuilder平臺,嘗試對車間調度功能模塊進行封裝。本章分別介紹了Agent的封裝、通信以及AgentBuilder開發(fā)平臺,在此基礎上簡單的敘述了車間調度功能模塊的封裝過程。 AgentBuilder介紹AgentBuilder是一套用于構建智能Agent的集成開發(fā)工具,它由運行系統(tǒng)(Runtime System)和工具箱(Tools Box)兩部分組成,其中工具箱包括用于管理基于Agent軟件開發(fā)工程的全部工具,例如分析Agent操作領域的工具,設計和開發(fā)通信Agent的網絡工具,定義Agent行為的工具,調試和測試工具等等;運行系統(tǒng)則包括Agent引擎及它提供執(zhí)行Agent軟件的環(huán)境。Agent程序與Agent引擎共同組成可執(zhí)行的Agent[22]。由于AgentBuilder的工具箱和運行時系統(tǒng)兩部分所有組件都是通過Java語言實現的,因此在任何支持Java并且擁有一個Java開發(fā)環(huán)境的機器或者操作系統(tǒng)上都可以進行Agent的應用和開發(fā)。同時,由AgentBuilder工具箱所創(chuàng)建的Agent也是基于Java語言的,所以它們可以在任何一個Java的虛擬機上執(zhí)行。通過Java語言創(chuàng)建出來的智能Agent,可以在各種各樣的計算機平臺執(zhí)行[23]。圖41所示為AgentBuilder主要組件之間的關系。圖41 AgentBuilder主要組件之間的關系圖本課題采用AgentBuilder作為開發(fā)平臺,實現MES調度功能模塊設計,其主要特征如下:(1) 提供了可視化編程工具來制定Agent的行為和運行;(2) 容易創(chuàng)建軟件智能Agent,不需要Agent和網絡通信方面的專門知識;(3) 構建的Agent內置有自主運行、跟蹤環(huán)境、推理、與別的Agent通信的能力;(4) 使用高層次的面向Agent的編程語言,通過制定Agent的信念、承諾、行為等直接概念就可以完成軟件Agent的設計;(5) 提供問題域的分析、Agent群的定義、Agent間相互作用的定義、Agent測試和調試等工具;(6) 基于Java語言,對于創(chuàng)建跨平臺的Agent應用提供了工具包;(7) 支持多種編程語言,如Java、C++、C語言等。(8) 支持CORBA和IIOP協議。AgentBuilder所創(chuàng)建的Agent使用KQML語言通信機制,故其支持KQML所確定的行為。另外,AgentBuilder允許開發(fā)者定義新的內部Agent通訊命令以滿足特殊的要求[24]。開發(fā)智能Agent與其它開發(fā)活動相類似,開發(fā)人員同樣要進行系統(tǒng)分析、設計、執(zhí)行、測試/調試、整合和維護等步驟。圖42所示為AgentBuilder開發(fā)Agent的過程。圖42 用AgentBuilder開發(fā)Agent的過程Agent的開發(fā)過程實際上就是定義Agent行為的過程。AgentBuilder支持創(chuàng)建用戶界面庫和Agent行為庫,以及創(chuàng)建Agent定義文件。用戶界面庫可用于構建Agent的用戶界面,Agent行為庫中可確定Agent的行為。用戶界面庫和行為庫包含工程附屬類(Project Accessory Class,PAC)庫。定義好Agent的行為后,要把Agent程序載入運行Agent引擎(Reticular’s Runtime Agent Engine)中,它是一種高績效的執(zhí)行機制,可以解釋Agent程序,執(zhí)行用戶界面庫和Agent行為庫中的行為。圖43為AgentBuilder的環(huán)境界面圖43 AgentBuilder的環(huán)境界面 Agent間的通信 在MAS中,Agent之間的協同是實現問題求解的關鍵,而Agent之間的合作和協調離不開Agent之間的通信,所以了解Agent間的通信有利于實現問題的解決。KQML是目前被廣泛采用的Agent通信語言之一,KQML其既是一種消息格式,也是一種消息處理協議,它提供了一套標準的Agent通信原語。KQML分為內容層、消息層和通信層等三個層次,其中,內容層以KIF (knowledge Interchange Format)為語法對需要傳輸的知識進行編碼;消息層包括行為類型、資格等,其行為類型主要從言語行為(Speech Acts)理論[Nilsson1999]演化而來,該層的基本功能是確定消息傳遞時所使用的協議、動作或原語(如判斷、查詢、命令,或是一組已知的原語);通信層包含底層的通信參數,例如消息的發(fā)送者、接收者、唯一標識、同步等。KQML的基本格式如圖43所示:圖43 KQML的基本格式一般地,被發(fā)送的語言段稱為消息,消息的形成就如同一個編碼過程,消息的解釋執(zhí)行則似一個解碼過程。KQML類似于高級語言,其編碼
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1