999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

微粒群算法的可視化平臺開發研究

2011-01-01 00:00:00陳國平,趙文杰,江維
計算技術與自動化 2011年1期

摘 要:微粒群算法是近年來興起的一種智能優化算法,微粒群算法的研究如果僅僅只停留在枯燥的公式和乏味的理論推導分析上的話,常常會使研究人員和用戶不能正確的理解微粒群算法,基于此本文提出微粒群算法的可視化實現問題,即開發友好可視化的前臺界面,通過前臺上的控件和后臺程序中參數之間的數據交換來解決優化問題,這樣可大大縮短了算法的開發周期。

關鍵詞:微粒群算法;可視化平臺;開發周期

中圖分類號:TP301 文獻標識碼:A

The Research of PSO Visualization Platform Development

CHEN Guoping1,ZHAO Wenjie1,JIANG Wei2

(1.School of Electronic and information Engineering, Wuhan Institute of Technology, Wuhan, 430074,China;

2.Telecommunications department business college of HBUT, Wuhan, 430079,China )

Abstract:In recent years, particle swarm optimization is a kind of intelligent optimization algorithms, The research of PSO is boring and tedious if it stays only in formula and theoretical derivation researchers and users often can not make a proper understanding of particle swarm algorithm, Based on the above the paper proposed the visualization issues of PSO,namely,the prospects of developmentfriendly visual interface to control the front and back-stage process of data exchange between the parameters to solve the optimization problem, so the algorithm can greatly shorten the development cycle.

Key words:Particle Swarm Optimization(PSO);visualization platform;development cycle

1 引 言

微粒群算法(Particle Swarm Optimization 簡稱PSO)是由美國社會心理學家Kennedy和電氣工程學家Eberhart等受鳥群覓食的啟發于1995年提出的一種進化技術[1]。PSO算法的研究如果僅僅只停留在枯燥的公式和乏味的理論推導分析上的話,常常會使研究人員和用戶不能正確的理解PSO算法,甚至對該算法產生厭煩的情緒,從而在一定程度上限制了PSO算法的應用。基于此本文提出了PSO算法的可視化實現問題,如果研究人員和用戶看到的是一個友好的可視化界面而不是復雜的公式、代碼,用戶只需在界面上設置或輸入相關參數,點擊確定按鈕就可以得到優化結果和收斂曲線,從而可以避免重新設置參數需要打開PSO算法的源代碼的不便,總之就是開發友好可視化的前臺界面,而將復雜的代碼放到后臺,通過前臺上的控件和后臺程序中參數之間的數據交換,這樣可大大縮短了算法的開發周期,這些就是PSO算法可視化實現研究的內容。因此微粒群算法的可視化開發平臺研究是非常有必要和有意義的。

2 微粒群算法的基本原理

微粒群算法將每個個體看作是在N維搜索空間中的一個沒有重量和體積的微粒,并在搜索空間中以一定的速度飛行,該飛行速度由個體的飛行經驗和群體的飛行經驗進行動態調整,其調整方程[2]為(1)(2)兩式,直到達到最優為止。

Vij(t+1)=ωVij(t)+c1r1(t)(pij(t)-

Xij(t))+c2r2(t)(pgj(t)-Xij(t))(1)

Xij(t+1)=Xij(t)+Vij(t+1)(2)

其中:下標“j”表示微粒的第j維,“i”表示微粒i,t表示第t代。pij為微粒i所經歷的最好位置,pgj為群體中所有微粒所經歷過的最好位置,ω為慣性權重,c1,c2為加速常數通常在0~2之間取值,r1 ~U(0,1),r2~U(0,1)為兩個相互獨立的隨機函數。

3 微粒群算法的程序實現問題

PSO算法的程序實現問題主要可分為兩個環節,第一環節為PSO算法的程序實現即主程序的實現,為了便于識別在MATLAB中一般可保存為main.m文件,第二環節為優化對象的程序實現或者叫適應度函數,在MATLAB中一般可保存為fitness.m文件,將main.m、fitness.m保存在同一文件夾里面,當運行main.m文件時MATLAB會自動調用fitness.m文件,這里也類似于C語言的調用,當需要改變優化對象時只需要對fitness.m文件進行修改,而保持main.m文件不變,當用戶對PSO算法對于優化對象的優化結果不滿意時,可保持fitness.m文件不變,對main.m文件進行修改主要包括初始化參數的修改,如果在修改初始化參數仍然不能達到設定的優化性能的情況下可考慮進行算法的改進,這樣就變的越來越復雜了。將PSO算法的程序實現分為主程序和適應度程序兩個部分,各部分在整個優化過程中起不同的作用,在修改程序時可以根據要求的不同分開進行,從而可以進一步提高算法程序實現的效率。

4 微粒群算法的可視化實現問題

所謂PSO算法的可視化實現就是指在圖形用戶界面GUI(Graphic User Interface)平臺下利用PSO算法來解決優化問題。其本質是將復雜的PSO算法程序放在后臺,而通過前臺友好可視化界面上的控件實現用戶和后臺程序的交互連接,來解決復雜的優化問題。雖然PSO算法理論上是可以由MATLAB程序實現的,但對于較復雜的優化問題以及一些對優化性能要求較高的場合,算法程序實現是很復雜和困難的。人工神經網絡和遺傳算法也是如此,存在類似的一些缺點,為此MATLAB軟件針對這些問題自帶有神經網絡工具(NNTOOL)即神經網絡GUI開發平臺,對于MATLAB7.0以上版本也都自帶有遺傳算法工具箱(GATOOL),它們提供圖形化用戶界面,用戶只需要在MATLAB命令窗口輸入NNTOOL和GATOOL命令或通過其它方式就都可以打開工具箱,用戶只需要在圖形用戶界面對話框上進行相關操作比在編輯框中輸入參數,在組合框中選擇算法種類等,并結合M程序和命令窗口一共三個方面就可以比較方便和簡潔的解決一些較復雜的優化問題,從而可以避免繁瑣的編程。然而對于PSO算法MATLAB不提供圖形用戶界面,要解決這個問題只有通過上面兩個工具箱的啟示,模仿神經網絡和遺傳算法工具箱,自己編寫一個PSO算法適用的可視化開發工具。當前主流的可視化開發工具有Visual C++、Visual Basic等,“非主圖1 基于MFC的PSO算法可視化開發平臺界面流”的可視化開發工具有MATLAB、Delphi6.0、LABVIEW7.2等本章將用主流和非主流的方法對PSO可視化開發問題做了一些初步探討。圖1即為在Visual C++6.0環境下所設計的一個簡易PSO算法開發平臺的主界面,其右側為設置參數和優化對象區域,算法可供選擇、優化函數也可以選擇,左側空白區域用于繪制PSO算法在求解優化問題時的收斂曲線。用戶只需設置參數的值,選擇被優化函數和所使用的算法,點擊確定就可以得到優化結果和收斂曲線,這樣大大減小了編程帶來的麻煩,提高了工程項目開發的效率。

為進一步完善PSO算法的可視化平臺使其在適用范圍和優化性能等方面更趨合理和實用,本文在VC++6.0環境下設計了微粒群算法性能測試平臺包括主界面和子界面如圖2和圖3所示。

圖2 微粒群算法可視化開發平臺主界面

圖3 微粒群算法可視化開發平臺計算模塊

此外在MATLAB環境下如果PSO算法和適應度函數已通過M語言實現,那么此時就已經完成了常規的優化仿真,在PSO算法可視化平臺開發時,只需要將這段M程序添加到確定按鈕的回調函數[3](CALLBACK)里面,此時算法參數不再是以定值的形式固化后臺界面后臺,而是可以通過編輯框的輸入獲取的,仿真完成后結果送編輯框顯示出來并繪制收斂曲線就完成了一個簡單的PSO可視化平臺如圖4所示,用戶可以通過在編輯框中輸入相關參數,點擊開始仿真按鈕就可以得到優化結果和收斂曲線,從而避免了重新設置參數需要打開PSO算法的源代碼,大大縮短了算法的工程開發周期。

圖4 MATLAB環境下的PSO算法優化平臺

5 幾種微粒群算法可視化平臺開發方案

的比較

綜上所述除了Visual C++6.0 MFC環境外,VB6.0、Delphi6.0、MATLAB、LABVIEW7.2等軟件也可以進行可視化編程。通過實驗可知在Visual C++6.0 、VB6.0、Delphi6.0、LABVIEWA7.2等幾種開發環境下其繪圖功能和數據處理能力上遠遠不如MATLAB軟件強大,因此利用MATLAB GUIDE(GUI Builder)來開發PSO算法的可視化平臺也有其獨到的優勢,直接在命令窗口輸入GUIDE命令即可打開MATLAB GUI設計窗口,在這上面操作簡單快捷。

利用Delphi6.0、VB6.0、VC6.0 編程或MATLAB7.0 GUIDE界面編程等都可以用來設計PSO算法的可視化開發平臺,但在設計過程中各自還是都存在一些優缺點。 比如Visual C++6.0 編程編譯最終產生是一個后綴名為EXE的可執行程序,將這個EXE的可執行程序復制或轉移到裝有VC的PC機的任意地方都可以直接雙擊該應用程序直接使用,可移植性強,這是MFC編程的一個最大的優勢。而MATLAB7.0 GUI編程最終編譯運行產生并不是一個可執行的文件,而必須運行編譯通過后綴為fig的圖片文件或對應的M程序文件才可以得到所開發的可視化界面,即通過MATLAB開發的可視化界面不具備良好移植性能,要使用可視化平臺首先必須打開開發軟件MATLAB,而通過MFC開發的可視化平臺在使用時不需要打開VC,它脫離開發環境,這樣就顯得非常方便。但是眾所周知MATLAB具有強大的繪圖功能,且操作簡單,這些都會給實際工程開發提供很大方便并節約工程開發時間,且PSO算法本來就是用于優化的,而MATLAB具有強大的數學處理能力適合處理各類優化問題,對比MATLAB代碼和C語言代碼MATLAB代碼效率更高,并且MATLAB GUI編程產生的fig圖片文件和M程序文件通過一些整合和處理還是可以轉變為一個后綴名為EXE的可執行程序的[4],只是MATLAB不能直接產生這個可執行的程序而已,這樣一來也可以彌補MATLAB界面編程移植性能不好的一個缺點,綜上對比選擇MATLAB界面編程,或者采取MATLAB、VC++混合編程充分發揮二者的優勢開發PSO算法的可視化開發平臺更加優越。

6 結論及展望

本文所設計的PSO算法可視化平臺取得了較好的優化效果,然而對于PSO算法可視化開發平臺的研究還需進一步的完善,比如優化函數只能選取有限的幾種,算法的選擇也很有限,此外微粒的維數在圖4中可視化工具開發時就已限定為2,因此在應用上PSO可視化開發平臺還是會受到很大的限制。今后可視化平臺的研究重點應該是如何增加改進算法的種類,如何自己定義優化函數,如何使參數的設置變得更加靈活化,讓可視化開發平臺更具一般性即實用性更強等方面。

參考文獻

[1]蔡自興.人工智能及其應用[M].北京:清華大學出版社.2006.

[2] 曾建潮,介婧,崔志華.微粒群算法[M].北京:科學出版社,2004.

[3] 羅華飛.MATLAB GUI 設計學習手記[M].北京:北京航空航天大學出版社,2009.

[4] 王素立,高潔,孫新德.MATLAB混合編程與工程應用[M].北京:清華大學出版社,2008.

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文

主站蜘蛛池模板: 青青网在线国产| 欧美色亚洲| 五月婷婷综合色| 99视频精品全国免费品| 国产91在线免费视频| 青青久久91| 少妇精品在线| 国内熟女少妇一线天| 草草线在成年免费视频2| 欧美伦理一区| 天天综合色网| 免费久久一级欧美特大黄| 草草影院国产第一页| 日韩欧美国产中文| 久久不卡国产精品无码| 亚洲人成影院在线观看| 91色在线观看| 无码AV日韩一二三区| 亚洲精品少妇熟女| 成人一级免费视频| 亚洲欧美日韩成人高清在线一区| 国产精品第一区在线观看| 亚洲毛片在线看| 人妻丰满熟妇AV无码区| 亚洲欧美在线精品一区二区| 亚洲永久色| 国产欧美性爱网| 国产97视频在线观看| 高清无码一本到东京热| 国产永久在线观看| 国产精品三级av及在线观看| 免费一级成人毛片| 日韩最新中文字幕| 人人爽人人爽人人片| 日本免费a视频| 一本大道东京热无码av| 午夜福利免费视频| 无码国产偷倩在线播放老年人 | 亚洲精品视频免费看| 亚洲天堂日韩在线| 亚洲国产综合精品中文第一| 亚洲狠狠婷婷综合久久久久| 亚洲国产成人久久精品软件| 欧美不卡视频在线观看| 中文字幕在线欧美| 日韩欧美成人高清在线观看| 99精品视频播放| 99精品免费在线| 国产凹凸视频在线观看| 亚洲欧美在线综合图区| 片在线无码观看| 九色视频在线免费观看| 国产又粗又爽视频| 激情视频综合网| 欧美一区中文字幕| 久久青草精品一区二区三区| 无码人妻免费| 午夜丁香婷婷| 一区二区三区高清视频国产女人| 国产免费a级片| 激情乱人伦| 国产成人亚洲精品无码电影| 亚洲精品自产拍在线观看APP| 在线无码私拍| 国产欧美在线观看精品一区污| 国产在线精品99一区不卡| 国产成人精彩在线视频50| 热99re99首页精品亚洲五月天| 九色最新网址| 天天操天天噜| 97影院午夜在线观看视频| 亚洲最大情网站在线观看| 女人18毛片水真多国产| 少妇露出福利视频| 国产区91| 国产成人综合久久精品尤物| 婷婷五月在线视频| 波多野结衣一区二区三区四区视频 | 亚洲高清中文字幕| 国产精品色婷婷在线观看| 久久国产亚洲欧美日韩精品| 亚洲国产av无码综合原创国产|