本文目錄一覽:
- 1、基於java jsp asp php vb安卓系統畢業設計與實現論文源碼下載?
- 2、最近在學習TSP問題的相關知識,我下載了一個蟻群算法解決的代碼,但是這個數據文件我看不懂
- 3、基於蟻群算法的最優路徑選擇研究外文文獻誰有?
- 4、寫給前輩的一封信
- 5、哪本python書立有蟻群算法
- 6、8 Metaheuristics
基於java jsp asp php vb安卓系統畢業設計與實現論文源碼下載?
及時送上了計算機畢業設計相關資源 合意的換請採納一下,大家順遍點下贊吧
在線考試製卷系統(任務書,論文,源碼)
net小型證券術語解釋及翻譯系統的設計與開發(源碼,論文)
原創vf員工培訓管理系統(任務書,論文)
asp科研信息管理系統(任務書,開題,論文,源碼)
android小型企業工資管理系統(源碼,論文)
asp出租車管理系統(任務書,論文,源碼)
vb.net實驗室計算機的ip地址自動設置程序——服務器端(任務書,論文,源碼)
rsa可視化算法程序的實現與研究(任務書,論文)
j2ee數控加工技術教學素材資源庫的構建(任務書,論文,源碼)
eims系統-oa子系統的設計與開發(任務書,開題,論文,源碼)
jsp網上購書(任務書,論文)
vb圖書管理系統(任務書,論文)
vc戶籍管理系統(任務書,論文,源碼)
php基於bs結構的工藝品銷售系統的實現(源碼,論文)
net模塊化動態電子商務網站的開發(任務書,論文,源碼)
pb電信人事管理系統設計(任務書,論文)
vb成本費用計算系統(源碼,論文)
jsp出租車管理系統(任務書,開題,論文,源碼)
asp.net求職招聘網站設計(源碼,論文)
vb.net機房監控系統(全套)
vf學生辦證管理系統(任務書,開題,論文,源碼)
jsp基於網絡超市商品銷售管理系統(任務書,論文,源碼)
jsp團員管理
asp.net一個動態文學網站
vf基於jme平台的掌上網絡商店-服務器端的開發
c#報警系統
net(vc)辦公自動化管理系統
jsp計算機等級考試查詢系統jdbc
vb.net商品配送中心庫存仿真軟件設計
jsp網絡購物
net在線英語自學系統——知識庫管理的設計
jsp企業進銷存管理系統
php某公司進銷存信息管理系統
pb幹部檔案管理系統
delphi學生信息管理系統畢業設計
asp學生信息管理系統
asj2eetoc電子商務網站
delphi圖書管理系統(畢業程序翻譯%通過)
jsp網上商城系統
jsp客戶關係管理系統
jsp企業人事管理系統
c#辦公管理系統
jsp搜索引擎的研究與實現
jsp網絡房產信息超市
php會員管理系統
j2ee基於usbkey的文件加密工具—-客戶端的實現
net網上圖書訂閱系統的設計
php網站流量統計
asp.net團員管理
android文件傳輸
delphi並行接口器件功能演示的可視化設計學位
php房屋租賃管理信息系統jdbc
數據採集電路pcb的設計與製作
androidsmart系統-考試監控及閱卷模塊的設計與開發
java流動資金貸款業務系統
asp電腦配機
vf物流管理系統–倉儲管理子系統的實現
簡化的cpu邏輯功能的仿真實現
net網上教材管理系統
net高校學生宿舍管理系統
vc藥品公司進銷售存管理系統
基於des加密算法的word加密插件的實現
asp.net基於asp.net的房產中介系統
c#簡單圖片轉化
asp基於asp的反垃圾郵件管理系統的設計
delphi航空客運訂票系統
c#windows簡單防火牆設計與實現
j2ee車間調度系統
php《信息論與編碼》在線考試系統
vb.net基於角色訪問控制的oa系統
asp某小型數字圖書館
vb圖形識別和編輯
pb電腦公司財務管理系統
asp網上購書
android光盤信息管理系統
php新聞網程序
php購物系統
vb.net考試系統vb.net
java學生管理系統
基於apriori算法的關聯規則挖掘系統
vf布匹出口管理系統
c#會計電算化系統——財務管理子系統
php畢業生信息管理系統
pb酒店客房餐飲管理系統
vf庫存管理
asp.net藥品銷售數據管理系統
asp.net網上論壇
基於linux的遠程控制技術服務端實現
php網絡商城
文件壓縮與解壓縮實踐
asp學生管理系統
php科研項目網上申報管理系統
vb.net圖片文件中的信息隱藏和還原的設計
asp銷售供應鏈管理系統的設計與開發
asp基於asp技術的獵頭公司管理軟件的設計和實現——內部事務部分
網絡求職招聘系統
neterp系統(畢業設計
php基於web的商場管理系統
vb電腦公司財務管理系統
delphi客戶管理系統
net圖書館管理信息系統
java超市商品管理系統
pb在線考試
java原創庫存管理系統可執行程序
c語言文件系統設計
基於webservice的數據庫同步系統
vb.net考勤管理系統vb.net
vb簡單幾何圖形的識別和編輯系統
net某公司員工管理系統
vf酒店客房管理系統
vf商場管理系統
vb.net開發在windows下的串口異步通信程序
asp一個小型搜索引擎
j2ee高速公路票據管理系統
vb小區物業管理系統
php酒店房間預約系統設計
asp《信息論與編碼》在線考試系統
vf宿舍管理系統
android基於局域網的文件傳輸系統
asp學生網上選課系統
php校園學生信息在線管理系統
asp基於web的商場管理系統
net基於web的訂餐系統
jsp倉儲管理系統
簡易網絡存儲系統
javaftp客戶端
jsp公交查詢系統
java人才管理系統
net企業投資價值分析系統
asp基於bbs的bbs系統設計(structmy)好
android通用圖書館管理系統
asp網上選課系統
最新asp網上論壇
vc網絡爬蟲程序
net考勤系統(net)
net交通信息網上查詢系統
美食網站
pb企業物料需求計劃管理系統
delphi公交車查詢系統delphi源
asp.net網絡招聘系統
asp視頻點播系統
vf學生學籍管理
android畢業管理系統
簡易網絡存儲系統
vb.net一種基於cc模式的網上購物系統
asp.net網絡文件管理系統
asp.net學生信息管理系統
j2ee城市公交查詢系統
j2ee人機接口設備—示波器的仿真實現
jsp網絡商城
net基於bs的圖書銷售管理系統
net基於net的公司網站
j2ee汽車零件銷售管理系統
vf圖片文件中的信息隱藏和還原的設計
vf醫藥管理系統
net技術的獵頭公司管理軟件——內部事務部分
最新net高校學生宿舍管理系統
vb局域網抓包軟件
asp.net企業物流平台
asp.net學生排課管理系統
vb.net網絡數據包捕獲工具
android企業考勤
c#在線考試
j2eealendar的跨平台系統的設計
vf書店輔助進書系統
asp倉庫即時查詢系統
asp作業提交與批改系統
vb開發在windows下的串口異步通信程序
javaac自動組卷系統
asp網上體育用品商店
jsp華夏文化交流平台
delphi採購管理
php校園新聞發布管理系統
vb.net成績管理系統vb.net
delphi五子棋遊戲(網絡版)的設計與開發
最新net網上圖書訂閱系統的設計
vb教學輔助系統vb
android試題庫自動組卷系統
vc試題庫自動組卷系統(vc)cym
asp.net基於bs的家教交流平台的實現
vf學生成績管理系統vf
asp.net樓宇專業網站畢業設計
net多語種網絡硬盤系統的設計
vf考試系統vf
端口信息工具
vf物業管理
net公交車管理系統的實現與設計
pb基於半打開的端口掃描技術及其實現
j2ee水費管理系統
vf用遺傳算法解決車輛優化調度問題任務書
jsp辦公自動化管理系統
jsp基於android的在線購物系統
asp.net車輛調度管理系統
pb線程插入木馬
delphi基於delphi的串口通信服務的開發
asp藥店管理系統
jsp實驗室設備管理系統
kasumi算法的研究與j2ee實現
net基於.net的城市公交查詢系統
jsp基於web的subversion用戶管理系統phb
delphivbd租賃管理系統
linux下的網絡層加密解密的實現
android藥品公司進銷售存管理系統
asp服裝銷售系統
j2ee電信人事管理系統設計
jsp員工信息管理系統
android考勤管理系統android
vf基於.net的網上購物系統
vb.net財務管理系統
vc題庫管理系統
delphi基於webcam的人臉檢測技術
php在線學習系統
最新php團員管理
vb原創圖書管理系統)畢業設計
net某企業信息管理系統
asvbtoc電子商務網站
vf火車站售票管理系統
asp科研信息管理系統
net某企業信息管理系統
vb基於usbkey的文件加密工具—-客戶端的實現
net基於.net企業訂單管理系統的開發
net房地產評估系統
net作業在線提交系統
vc多線程與線程安全實踐-基於http協議的斷點續傳
vf地稅局工資管理系統
delphi科研管理系統
delphi煙花爆竹經銷管理系統
面向internet上的cscw的共享白板
php網絡招聘系統
php網上求職與招聘系統
vb.net機房監控系統
asp.net考試報名信息處理系統
j2ee醫院病房管理系統
基於進程和通信隱藏的木馬設計與實現
net息加密與隱藏工具
c#汽車銷售系統
jsp原創教師信息管理系統
android簡易web服務器研究
asp科研項目網上申報管理系統
asp基於asp的論壇
php計算機組成原理教學網站
android超市銷售系統
c#網絡流量監控及分析工具
delphi電子郵件客戶端軟件
android排課系統程序
jsp網上拍賣平台系統)
j2ee某百貨店pos積分管理系統-積分添加和通票回收
j2ee教務管理系統j2ee
vf銀行代扣代發工資系統
php學生學籍管理系統
基於webservice的異構數據庫檢索系統的設計
android長途汽車信息管理系統
net系辦辦公自動化系統
c#網絡計時管理系統
net網絡商店銷售管理系統
原創net高校學生宿舍管理系統
asp網絡教學評判系統
net客戶關係管理系統的實現
c語言遺傳算法在求解tsp問題畢業
asp.net網上教學資源共享系統
基於icmp模擬網絡控制軟件的開發——控制管理模塊
vb車間調度系統
net動態口令認證的網上選課系統
asp.net圖書館管理系統
asp企業公告及資料發布系統
pb原創圖書管理系統)畢業設計
vf基於cs結構的企業人事管理系統
網絡嗅探器
jsp網上書店售書系統
asp.net網上選課系統
asp酒店客房管理系統
asp.net自動排課系統
net信息安全研究所設備管理系統
最新net基於bs的圖書銷售管理系統
java藥品銷售系統
java簡單小遊戲設計
jsp基於web的旅遊網站建設
android庫存管理
php淘寶店主交易管理系統
net頻點播系統
pb大型機房學生上機管理系統
jsp基於bs結構的工廠設備管理系統的設計與開發
web的入侵防禦系統
最新php基於bbs的bbs系統設計(structmy)好
asp教師信息管理系統
net課件發布系統
j2ee在線英語自學系統——課程及自測管理的設計
asp網上二手商品交易管理系統
原創asp.net購物系統
pb小說租閱管理系統
人機接口設備—開關類部件的仿真實現
net校園新聞發布系統
php基於linux的遠程管理系統客戶端的實現
php在線exam
delphi物質管理系統
vb.net電信人事管理系統設計
android試題庫自動組卷系統(android)cym
j2ee學生檔案管理
net基於.net的內部郵件系統實現
asp.net學科建設
asp某公司進銷存信息管理系統
java企業投資價值分析系統
java大隨機數生成器算法的研究與實現
jsp某高校工資管理系統
vb在線英語自學系統——課程及自測管理的設計
net某店pos積分管理系統-清除履歷表、日誌表、月購買額
asp會員管理系統
原創美食網站
vs家庭理財系統
局域網監聽系統
vc房屋租憑管理系統
jsp在線二手交易系統
vb.net模擬器件測試平台的設計與開發
原創net考勤系統(net)
java酒店管理信息系統
原創網絡求職招聘系統
vf高校教務排課系統
c#rsa密碼體制的實現
端口掃描與檢測技術的實現
delphi猜數遊戲的設計與開發
php宿舍管理系統設計
j2eeac自動組卷系統
原創php網絡購物
android物質管理系統
php實驗室設備管理系統
asp求職招聘網站設計
androidsc結構服裝專賣店
net電子購物商城系統
java自動排課系統
java職員信息管理系統
vb書店輔助進書系統
android教師管理系統
jsp基於bs模式的中小企業人事管理系統
vc物質管理系統
最新簡易網絡存儲系統
android並行接口器件功能演示的可視化設計學位
原創基於des加密算法的word加密插件的實現
net頻點播系統
asp.net網絡旅遊信息系統
原創asp計算機組成原理教學網站
jsp車輛調度管理系統
asp.net基於bs的工藝品展示系統
基於糾錯碼的容錯技術的研究——x碼
asp電子商務系統
pb原創庫存管理系統可執行程序
c#企業往來賬務管理系統
vc超市售貨管理系統
原創net網上圖書訂閱系統的設計
android人事管理系統
原創php在線學習系統
vf桌面日曆系統
java商業匯票(支票管理)
asp聊天室
java計科教務管理系統
vb.net物業管理系統
asp公共課平時成績查詢系統asp
最新asp會員管理系統
vc書店管理系統
win平台下的pe文件病毒的研究及實現
j2ee電子郵件客戶端軟件
asp.net基於asp.net的學生信息管理系統
vf企業人事工資管理系統
vbrsa密碼體制的實現
java基於bs方式的即時通訊軟件
vf煤氣站管理系統dpac
pb多媒體教學控制系統-網絡通訊平台的設計
delphi酒店管理系統
jsp基於bs結構的工廠設備管理系統的設計與開發
jsp企業人力資源管理系統的設計
java課程設計醫藥管理系統(java)應要求源文件代碼打包上傳
j2ee實驗室儀器管理系統
pb網吧管理系統
pb車隊綜合業務管理系統
最新php網絡商城
c#大隨機數生成器算法的研究與實現
asp基於bs結構的二手交易系統
javad的網絡三維技術
最新net考勤系統(net)
jsp基於web的信息處理系統
net小型門戶網自助建站系統
社區論壇
asp公交查詢系統
java文檔資料管理系統
php紅旗汽車修理廠物資流通管理系統
校園網絡工程綜合布線方案
vc高校繳費系統
php格式化系統——前台
原創asp網上選課系統
最新asp校園學生信息在線管理系統
android基於特徵的入侵檢測系統
vb人事管理系統
vb.net圖書管理系統
java簡易web服務器研究
jsp基於jsp學生成績管理系統軟件的開發
net模塊化動態電子商務網站的開發
delphi中大迅通合同統計系統
linux下的簡單網絡管理控制系統的設計與開發
vf航空售票模擬系統
vb通用銷售管理系統
c#教學信息管理系統畢業
vc企業投資價值分析系統
j2ee基於bs方式的即時通訊軟件
asp.net科研信息管理系統
vb.net軟件項目開發管理系統vb.net
android可視化圖像處理系統
c#高校題庫管理系統附原代碼程序萬字
net基於.net電子相冊的開發
pb商品配送中心庫存仿真軟件設計
android成本費用計算系統
asp.net旅遊信息管理系統
j2ee宿舍管理系統
vb.net氣象信息服務系統
net基於tcp協議的簡單即時通信軟件
原創vb職員信息管理系統
php小型企業網上訂單系統
android人事管理
vb.net汽車銷售系統
最新美食網站
最新簡化的cpu邏輯功能的仿真實現
vb光盤信息管理系統
深水藍文學網站
vb列車時刻查詢決策系統
vc畢業管理系統
android商品交易系統
delphi列車時刻查詢決策系統課程設計
java圖書管理系統帶
java基於jee的公交查詢系統
net《數據庫原理及應用技術》課程指導平台的開發
原創net某企業信息管理系統
delphi局域網的語音通信
vc家庭財務管理系統
android人臉識別系統設計.
php軟件信息發布系統
社區論壇
net網上辦公系統——公文流程管理設計與實現
原創delphi學生檔案管理
delphi幹部檔案管理系統
asp基於bs的人才交流網站
asp.net酒店房間預約系統
java網絡流量監控及分析工具
asp在線教學質量評價系統
php網絡購物
快速加密解密芯片中kasumi算法的實現
asp.net網絡購物系統
最新php科研項目網上申報管理系統
j2ee打字系統
基於ajaxlucene構建搜索引擎的設計和實現
pb超市配送運輸管理系統
vf醫療糾紛檢索系統
pb圖書管理系統(畢業程序翻譯%通過)
原創美食網站
vb網絡在線考試系統原碼
vb.net郵件收發系統的設計
jsp科研處管理信息系統
vcaccti電話語音應答系統
vc用遺傳算法解決車輛優化調度問題任務書
delphi多媒體教學控制系統-網絡通訊平台的設計
vc試卷生成系統
java氣象信息服務系統
asp局域網文件共享及檢索系統的設計與開發
php音樂網站
c內存映射文件在進程共享中的應用研究
php基於web的辦公自動化管理系統可執行
php基於網絡環境的庫存管理系統
jsp在線直銷商城
vb排課管理系統
最新簡易網絡存儲系統
jsp基於jsp的網上考試系統_
第二代木馬的研究與實現
vb.netjpeg編碼優化
java基於java的五子棋遊戲軟件的設計與開發
java績效評價系統
vc倉庫管理系統
j2ee圖書館書庫管理系統
php學生成績查詢
java基於windows入侵檢測系統的研究與設計——檢測模塊設計
android象棋程序
vf網吧計費系統
c#smart系統-考試監控及閱卷模塊的設計與開發
android某醫療部門總務信息管理系統
vb.net圖書館全開架借閱管理系統
vf電子通訊錄(帶系統托盤)
android指紋識別系統
android設備保養管理系統
android基於局域網的信息收發系統
android辦公用品管理系統
pb企業考勤管理系統
pb藥品公司進銷售存管理系統
c#光盤管理系統
php服裝銷售系統
原創asp.net網上選課系統
net儀器設備管理系統設計與實現
j2ee基於特徵的入侵檢測系統
最新net基於net的公司網站
vb教學設備管理系統
net(java)辦公自動化管理系統
c#企業人事管理系統
asp.net校友錄server
android郵政編碼系統
最新asjavatoc電子商務網站
原創基於icmp模擬網絡控制軟件的開發——控制管理模塊
asp計算機組成原理教學網站
j2ee考試分析評價系統
net基於bs的計算機等級考試系統
端口掃描與檢測技術的實現
vb.net題庫管理系統
原創php基於php的論壇
文學網站
php網上體育用品商店
asp網上書店
php博客網站
php施甸縣旅遊諮詢網
原創net客戶關係管理系統的實現
vf木馬檢測工具的實現
vb社區人口資源管理系統設計與實現
vbd的網絡三維技術
基於net教學輔助系統設計與實現
c局域網即時聊天程序
delphi象棋程序
jsp基於網絡超市商品銷售管理系統
c#計算機機房管理系統
asp網絡教學平台
asp圖書館管理系統
pbsmart系統-公共資源模塊的設計與開發–代碼
asp助學貸款管理系統
j2ee學生檔案管理系統
php網上購物系統答辯
net門診就診系統
php某小型數字圖書館
asp.net網上家電銷售管理系統
asp.net網上商城系統
net中小企業oa系統
vb.net房屋銷售管理信息系統
最新面向internet上的cscw的共享白板
php同學錄系統
iptables圖形管理工具
asjavatoc電子商務網站
vc考試系統vc
最新asvftoc電子商務網站
實驗室計算機的ip地址自動設置程序——客戶端
asp.net網絡教學評判系統
asp.net基於asp.net的筆記本銷售網站
php藥品銷售數據管理系統
android自動出題題庫系統
原創j2ee電腦公司財務管理系統
數據庫連接池的研究與實現
jsp課程設計
java上機考試系統
原創基於net教學輔助系統設計與實現
php科研信息管理系統
eims系統-oa子系統的設計與開發
net基於.net的工資績效管理系統的開發
pb基於工作流引擎的系統框架設計開發
asp.net網上日記本
c#員工管理系統
基於rsa的數字簽名
php企業人力資源管理系統的設計
原創asp《信息論與編碼》在線考試系統
j2ee掃雷遊戲的設計與開發
jsp網上考試系統
vb學生管理系統
c#基於c#的飛行模擬遊戲的設計及實現
php求職招聘網站設計
jsp科研處管理信息系統
net基於svg的自動站雨量分析系統
asp.net文章在線發布系統
vb流動資金貸款業務系統
net網絡考試系統.net
jsp聊天室
vb.net基於vb.net的兩個通用安全模塊
net小型證券術語解釋及翻譯系統的設計與開發
android電腦銷售系統
j2ee自動點歌系統
net小型酒店管理系統的設計
vf辦公自動化系統
java商業匯票(支票管理)
asp.net課程設計
pb銀行設備管理
jsp企業網站設計
網絡數據包的協議分析程序的設計開發
java網絡多人聊天系統
android停車場管理系統
_基於.net的駕校理論考試模擬系統
jsp基於bs結構的工藝品銷售系統的實現
asp.net格式化系統——前台
asp個人網站
c#兼職中介管理系統
jsp基於jsp的人事管理系統
最新基於des加密算法的word加密插件的實現
asp.net網絡實驗教學網站
asp網絡招聘系統
vb.net煤氣站管理系統dpac
asp倉儲管理系統
android圖書銷售信息系統
asp.netcd銷售管理系統
php學生信息管理系統
android圖像處理工具
pb學生辦證管理系統
j2ee黨員管理系統
asp.net機房自由上機收費管理軟件
vf網絡計時管理系統
java基於java的五子棋遊戲軟件的設計與開發
c#中介管理系統
php酒店客房管理系統
c#圖書館管理系統
pb科研項目管理系統
jsp學生管理
jsp學生考試成績分析(帶餅狀態圖,柱狀圖)
asp課程設計
asp.netc語言試題生成與考試系統
vb.net教學信息管理系統
vb局域網的數據包監聽及數據分析
vb高校題庫管理系統附原代碼程序萬字
php視頻點播系統
vb企業檔案管理系統簡單版
vb學生宿舍管理系統
net房地產管理系統
c#物業管理
vb音像店管理系統
javasmart系統-公共資源模塊的設計與開發–代碼
java基於ftp協議的文件訪問系統
最新基於des加密算法的word加密插件的實現
vf績效評價系統
asp操作系統課程教學網站
pb旅遊資源及線路管理系統
vb.net計科教務管理系統
最新php客戶關係管理系統
j2ee病房管理系統
php原創交友網設計
最新net頻點播系統
php基於php學生成績管理系統軟件的開發
最新neterp系統(畢業設計
原創vc基於bs方式的即時通訊軟件
基於lotus的故障報修系統
vf超市配送運輸管理系統
vb.net試卷生成系統
原創文件壓縮與解壓縮實踐
php教師檔案管理系統
原創jsp《信息論與編碼》在線考試系統
android網絡數據包捕獲工具
jsp藥品銷售數據管理系統
asp在線學習系統
j2ee考勤管理系統j2ee
asp網絡商城
c局域網即時聊天程序
c#健身中心會員管理系統
vf客房管理信息系統
java基於採集
netxx職業中學圖書管理系統的設計
基於caché的實驗室資源管理系統的設計
最新基於net教學輔助系統設計與實現
vb.net學生管理系統
c內存映射文件在進程共享中的應用研究
vf中國象棋遊戲
vbsmart系統-題庫及試卷管理模塊的設計與開發
win平台下的pe文件病毒的研究及實現
net基於手機短信平台聊天程序
jsp網上圖書銷售系統
原創web的入侵防禦系統
vc幹部檔案管理系統
最新web的入侵防禦系統
vf基於misty算法的加密軟件的實現
vb.net數據結構輔助教學
php個人日誌系統
asp.net論壇程序設計(萬字功能強大)
asp網頁設計輔導系統
最新net動態口令認證的網上選課系統
net基於.net電子相冊的開發
j2ee學生信息管理系統萬字
pb網上交易系統pb
vf超市進銷存管理系統vf報稿
asp留言板
c#模擬atm機系統軟件的設計與開發c#
asp交友錄
pb車輛
最近在學習TSP問題的相關知識,我下載了一個蟻群算法解決的代碼,但是這個數據文件我看不懂
EDGE_WEIGHT_TYPE : EUC_2D 二維歐氏距離
NODE_COORD_SECTION就是每個節點的信息,依次分別表示:節點編號,x軸坐標,y軸坐標
基於蟻群算法的最優路徑選擇研究外文文獻誰有?
你好,請認準正確答案下載附件,文獻已上傳,蟻群算法的最優路徑選擇旅行商路徑優化外文文獻,2014年的,望及時採納答案!
作者:Ouaarab A, Ahiod B, Yang X S.
文題:Discrete cuckoo search algorithm for the travelling salesman problem
期刊:Neural Computing and Applications, 2014, 24(7-8): 1659-1669.
寫給前輩的一封信
各位有想對前輩說的話,想寫封信給前輩們,那麼如何給前輩寫一封信?下面我整理了寫給前輩的一封信,供你參考。
寫給前輩的一封信篇一
致豫讓前輩的一封信
豫讓前輩·:
您好!
每每讀到您屢刺趙襄子,竟不惜吞炭,辭家,我便不禁為您扼腕——您真的太傻了!
其原因有三:
1. 不顧後果。別說在春秋戰國,即使在當今,做了好事,縱然,是真心所為,也會招人揣度——“這小子一定是居心不良,想要得到趙襄子的賞識吧。”“很有可能!這小子竟吞炭報主,說他是真心的·,誰也不信呀!:”“沒準他走投無路了,想誑上趙襄子!”“世態炎涼呀!”先生,你還真別不信,一切皆有可能,一不小心,你沒準就會被人“人肉”了。先生,您說您冒天下之大不韙去博這個惡名是不是傻?
2. 是非觀念混淆。就算您要報恩,也要先掂量掂量吧,
咱21世紀啥子最重要?地球人都知道——monkey!,神馬感恩不感恩,知遇不知遇的,有錢才是硬道理,在金錢的威壓下,無價的愛情,不也變成了“寧願坐在寶馬車上哭,不願坐在自行車上笑”嗎?高尚的師德,不也演變為一切以金錢為重嗎?改變命運的知識,可以買到,享譽終身的名聲,可以買到。因為有錢,所以高尚;因為有錢,所以高尚。您既有能力,又有機會,竟為了一個小小的智伯而是大好機會白白葬送,大把大把的鈔票從手中流過,何其愚也?
3. 不信前人之言。身體是革命的本錢,沒有一個好身
體,何談刺殺?可您卻甘願吞炭,甘願屢屢以身犯險,置生命於何地,置健康於何地?古有嚴嵩嚴分宜,今有許邁永許三多,為了健康,為了生命,皆以身試法,何其勇也,相比之下,您不是太傻了嗎?縱有傻子沈浩,白痴王偉,愚人郭明義,但相較之下,還是文強居多,不是嗎?
豫讓前輩,如果我是您的話,我一定不會做此等既不利人更不利己的傻事·,還望您三思考。
寫給前輩的一封信篇二
寫給沙葉新前輩的一封信尊敬的沙葉新老師,您好!
首先請允許筆者 自我介紹 。筆者是出生在湖北一個破落農村的一個曾經懷有報效祖國的青年。筆者同時也是一個有七年文學歷史的農村青年。
筆者自信有一定的文學才華,但在現實生活的連番跌撞下,也不得不低下曾經傲氣十足的頭顱。筆者因為在人生的十字路口找不到方向,迷茫困頓下,才不得不寫出自己的心聲的。最近一個多月,筆者都在網絡上發表筆者的想法,但名不見經卷,人微言輕,在這個商業社會,幾乎沒有那家媒體關注筆者的 事迹 。筆者是一有 故事 的青年。有自己的苦衷,萬般無奈之下,只有希冀沙老前輩能夠撥冗空閑為筆者奔走宣傳一二。
筆者父母皆是窮苦的農民,如今皆已年邁,沒有退休金養老,而我目今27歲,依舊是單身光棍一條,依舊身無存款,囊中羞澀。筆者家境貧寒,近乎家徒四壁,蓋不起新房,娶不起媳婦,接續香火恐怕也是遙遙無期了。筆者目今還有一些襤褸衣衫遮蔽其身,筆者擔憂,再過一兩年,筆者要裸奔上街了。
所幸筆者身材修長,算的上一美男子,筆者被逼無奈之下,也不在在乎那麼些“禮義廉恥”的三綱五常了,筆者只想哪位富婆(富姐)包養。也許筆者會被罵的狗血淋頭,但筆者正因為文學的熏陶,才“理所當然”地下此決定。
27歲還沒結婚,這在我們這思想落後的農村來說,無異是一個異數。父母時常勸說我成家立業。但我心裡清楚,身為一個男人,沒有安身立命的能力,娶妻生子也是枉然。如果沒有能耐,就不要結婚,以免給對方往後帶來不必要的麻煩。
我打工的時間不是很長,零零散散湊起來,也大約三年時間。即便我離開曾經深深眷戀的學堂,但我一直在堅持着我的文學夢想。
我涉足文學,是從2003年高考失利之後。賦閑在家,讀一些閑書,萌發了對文學的特殊 愛好 。持續至今,屈指算來,也就有了七個年頭了。雖然時間不算很長,但我深信,我對文學還是有一定程度的造詣!
從古至今,文學都在歷史的紛亂變革中,呈現出不可磨滅的地位。雖然有焚書坑儒,有文字獄,有滅佛,但 文化 的薪火相傳,並沒有因為曾經的兵燹戰火,而與瓊樓大殿一齊化為焦土。這是文化的幸運,但也有不幸。許多重要的藏書,難免失秩消亡,成為絕響。這不能不說,是文化的遺憾。
《詩經》,《周禮》,《禮記》,《山海經》,《論語》,《墨子》,《莊子》,《老子》,《韓非子》,《列子》,《管子》,二十四史,《資治通鑒》……魏晉南北朝的辭賦,唐詩,宋詞,元曲,明清小說……都給我們留下了彌足珍貴的文化奇蹟。
中國是四大聞名古國之一。三皇和五帝(黃帝,顓臾,帝嚳,唐堯,虞舜),還有盤古開天闢地,女蝸造人,倉頡創字……這些神話 傳說 ,都給華夏民族增添了神聖的光彩。
中國有五千年的歷史,上下五千年。博大精深的文化淵藪,多元的文化脈絡,不是那個民族的文化所能比及的。
班固,班昭,揚雄,庾信,蕭乾,司馬相如,司馬遷,李白,杜甫,賀知章,陸遊,白居易,孟浩然,李淳風,袁天罡,李煜,司馬光,蘇軾,蘇洵,蘇轍,秦觀,韓愈,歐陽修,初唐四傑,竹林七賢……這些偉大的文學家,在歷史的長河中,流芳百世,啟發著後來者,激勵着後來者。
自古文人多寂寞,唯有飲者留其名。作家與文人大都先知先覺,看的社會事物是深刻透徹的,所謂透過現象看本質,窺一斑而知全豹。但文人也有迷惑,蒲松齡一生潦倒不堪,在官場黑暗的科舉制度下,用犀利的筆,寫下了《聊齋志異》;詞人柳詠,潦倒於青樓之中,與歌妓為伍,不能不令人頓生憐憫;杜甫奔波坎坷,命途多蹇;李白懷才不遇,失意中以詩酒聊以自慰……大多是文人的悲哀。但我想,那是古代封建時代的杯具吧。
現代社會,文學在不斷萎縮,不知道是商業引起的,還是由於政治引起的,或者是其他。章怡和老前輩說,當今藝術趨於消亡。每個人都心浮氣躁,窮人,富人,甚至就連佛家清凈之地,也或多或少的沾染了世俗的庸俗之氣吧。
窮人在努力工作着,依舊只能養家糊口,能夠供給子女上學,也就算是要燒香拜佛,謝天謝地了;富人有的富得流油 ,但大都為富不仁,冷漠,自私,貪婪,即便做慈善事業,也要為自己貼金,為自己的商業做 廣告 。官場的水最深,深不可測,不可見底,雲波詭譎。佛家清凈之地,本該伴隨青燈經書,宣揚佛法普照。但不少寺廟卻為此斂財,不以為恥。
現在社會的名利觀,是史無前例的。人的慾望,如同無底洞,慾壑難填。為了攫取金錢,不擇手段,鋌而走險,沒有了道德基礎的束縛。法律的效用只在於富人,並不怎麼保護窮人的利益(並非筆者憑空捏造,報紙上的報道屢見不鮮)。前段時間播放的《孔子》,筆者不知道有有沒有 教育 作用,但筆者竊以為,人心的凈化,不是靠一部《孔子》就能夠易如反掌解決的。世風日下,人心欺倒。
真正的知識份子,是不會屈服於權力的。古代許多有氣節的文人身上都有的風骨,亦是習以為常的。士為知己者死!
但現今的文人,最注重的還是利益,明哲保身,向世俗權力低頭,亦是習以為常的。畢竟文藝是為政治服務。文藝是粘附在政治這張“皮”上的毛。皮之不存,毛將焉附?在易中天老師《勸君免談陳寅恪》一文中,道出了文人與學術研究者的困惑,尤其是學術研究者的無奈,寫 文章 的意義的論述。
筆者亦疑惑何為錦繡文章?何為大作?以下摘錄易中天老師《勸君免談陳寅恪》一文:
所謂“權”,並不等於或只是政治權力,也包括學術權力。它可能是一種行政權力,也可能只是一種話語權力。比如能批給你一大筆科研經費,為你調查研究、收集資料大開方便之門,讓你看到別人看不到的東西等等,運用的是行政權力;說一不二,一言九鼎,“說你行你就行,不行也行;說不行就不行,行也不行”,則是在運用話語權力了。話語權力也很厲害呢!它能決定一個人在學術界混得怎麼樣,能不能混出個名堂來,甚至混不混得下去,同樣堪稱“生殺予奪”。君不見,多少有着真才實學的人默默無聞,多少有着真知灼見的著作埋沒不彰,而某些平庸之輩的平庸之作甚至狗屁不通的東西卻被捧上了天,就因為後者掌握了話語權力而前者沒有么!行政權力與職位有關,話語權力與地位有關,但在中國現行體制下,兩者之間往往有一種說不清楚的瓜葛和貓膩。長期以來,中國的學術活動尤其是學術評價(評獎、評職稱、批課題等等),一直在行政化的體制下運作。而且,隨着所謂“量化管理”的推行,學術的體制化還有愈演愈烈之勢。體制是不由分說的。順之者昌,逆之者亡。體制也是一視同仁的。無論誰和體製作對,哪怕脫離體制,都將一事無成,甚至連飯都沒得吃。?
筆者知道現在才略有明白,自古文人不自由。但筆者又認為,現代社會應該不會重蹈先前的覆轍了吧。然,現實卻令筆者不那麼樂觀。
筆者竊以為,當今考學歷,考名牌大學,碩士,博士,博士後,兩院院士,都有一個顯而易見的目的,那就是學歷就是敲門磚。當然,現在這種意義,畢竟減弱了不少。不過,人情世故,起了很猶為重要的作用。如果你不通世故,即便你有經天緯地之才,也說不定會被前仆後繼的嫉妒者所菲薄,甚至將你“除”之而後快。
再是“朝廷有人好辦事”,權力的誘惑力,不是以人的意志為轉移。你有權,別人朝着你的權力尊重你,你沒權,別人毫不留情的離開你。所謂人一走,茶就涼,哪管什麼周詳不周詳!筆者想,就是這麼個道理吧。
筆者但願這些庸俗的影響文壇學術界的不成文的潛規則,能夠在若干年後,消弭殆盡!
再說一說,古人的天命觀。孔子云,不知天命不可以為君子。還有《周易》,《易經》,《推背圖》,《燒餅歌》,《梅花詩……淳風,袁天罡的《推背圖》據說屢驗屢靈,後世帝王皆為之畏忌,也風聞統治者篡改裡面的記載。至於劉伯溫,筆者想,這應該是沒得懷疑的吧。
現代社會是以民主,自由,博愛為主題的多元文化存在。不應該出現什麼農村戶口,城市戶口那麼懸虛的工資和福利待遇。《世界人權宣言》不是解說的很清楚么?城市人,農村人,都應該一視同仁。倘若區別對待,那不是背離了《世界人權宣言》嗎?還有馬克思先生的共產主義的理論么?中國畢竟加入了WTO,人類的普世價值,應該是通用的,不分國界的。因為我是農民,所以我不那麼服氣!
筆者水木生
寫給前輩的一封信篇三
90後准程序員寫給前輩們的一封信
作為一個即將步入社會的90後,一直有許多話想對前輩們說….
1.我們的時代?
我們的時代是什麼?我覺得就是吃快餐長大的一代,想想70後的那一代程序員,他們那時候沒什麼網絡,沒太多的技術,書也沒現在這麼牛毛,他們有着紮實的基本功,他們玩起內存那叫一個帥,現在呢?生活大爆炸,信息大爆炸,我們這一代人,被太多的信息覆蓋,盲目的學習,盲目的崇拜,看着什麼都懂,但是又什麼都不行,就像魔獸世界老一代的玩家形容我們,吃快餐長大的一代,就像我們這些從《熊貓人之謎》開始玩wow一樣,我們也許不明白,當年的魔獸有多好玩,練一個號有多麼難,又多麼的有樂趣,什麼叫副本,什麼叫任務,今天的時代,各種所謂的技術,各種工具,各種幾個月精通,就像隨機副本一樣,催肥了我們,也害了我們……
2.我崇拜的程序員
我最崇拜的有兩種程序員,一種是把程序員當生活的,他們享受編程,喜歡開源,喜歡linux,喜歡python,用vim,Emacs,寫博客,用郵件列表,畫 思維導圖 ,還經常寫寫打油詩,把自己比作武林高手,比作詩人,我就很希望自己將來能成為他們那樣的人,還有一種程序員,只是用程序掙錢,比如我的一個老師,他的水平就很高,自己接C和c++的項目賺了不少錢,但是當我問起他,用vim還是Emacs,他說沒聽過,他只用VS,他也從來不寫博客,不想把自己的東西貢獻出來,他也說,他需要的許多軟件都是拿錢都買不到的,開源的根本不能用,只是實現了皮毛,我也挺崇拜他的,我覺得這樣的人很聰明,很會掙錢。
3.頭痛的簡歷
簡歷上有兩個最令我頭痛的地方,一個是 畢業 院校,一個是項目經歷,我上的是一個蘭州的普通本科,蘭州沒什麼軟件公司,外地的又不來招牌,所以我前幾天來到了西安,但是在外人眼裡,我們蘭州人都是騎駱駝上學的,所以在簡歷上寫這種畢業院校,HR估計看都不會看的。
還有一個就是項目經歷,我想說,我沒有項目經歷,但是我在大學並沒有閑着,我是根據自己的 方法 ,去“修鍊”,比如,我不看別人的一行代碼,去實現貪吃蛇,俄羅斯方塊這樣的程序,我就開始想,我應該怎麼寫,我試着先去實現一個能畫方格的程序,接着,再去實現一個能根據坐標,畫出方格的程序,然後是一個蛇類,移動的算法,輸入控制。。。就這樣自己想辦法一塊塊構建起來,沒有看別人一行代碼。之後,有一次,我在書上讀到驅動測試編程,我真有種“驀然回首,那人卻在燈火闌珊處”的感覺,在自學了python後,我又試着用pygame來重寫,或者用c++用MVC的方式重寫貪吃蛇,或者把輸入控制的鍵盤映射,改成可配置的文本文件,或者把控制模塊和繪製模塊,改成文本流傳遞消息,這些都是從《UNIX編程藝術》上學來的,在比如,我們上jsp課的時候,我就不明白動態網頁的原理,我就開始“計算機考古”,開始看HTTP頭,明白動態網頁的原理,然後用CGI實現了一個老師布置的jsp作業,雖然被老師批評了,但是我覺得最起碼學到了許多。像我們的《計算機圖形學》課,老師居然教我們C在DOS下的畫圖,我覺得那太過時了,我就開始自學OPENGL,然後用WINAPI寫一個窗口,把它粘進去,我還常常用像HGE,pygame,來實現一些老師布置的算法程序,把這些算法演示出來,比如蟻群算法,做出來就像遊戲一樣。我還把《機械迷城》中的幾個過不去的迷宮遊戲,自己用棧,實現了迷宮算法,或者乾脆用pygame寫一個自己玩。有一次我在想opengl是如何實現的,我就開始用2d的api寫了個3d的程序(使用正交投影),我還用思維導圖解決問題,比如這篇博客就是先用思維導圖畫好的。我就用自己的方式,寫了許多“玩具程序”,修鍊自己,但是我真沒有項目經歷,我沒有跟老師一起做項目,是因為,我不喜歡跟他們做,他們動不動就跟你講什麼掙錢,什麼不掙錢,他們會告訴你,那些大老闆,根本不懂程序,但是人家掙許多錢,他們也不願意把代碼寫的漂亮,能運行掙錢就行,還都是拼音命名規則,我覺得大學本來就是培養自己興趣的時候,我覺得我做到了,不過最近就再想,我所做的這些,是不是真的比不上那三個月的項目實習 經驗 ?
4.大學的教育
說實話,我真的不喜歡老師們上課的方式,他們大多數就是在讀ppt,要麼有半節課在罵社會,一切跟程序有關的東西都變得枯燥,他們讓背java繼承public,protect,private的表,被const指針的各種搭配,在配上static,還背優先級,我覺得,就是應試教育的惡果,我從來都是“記用法,不記規則”的,因為規則這東西,又不是語言的設計者故意刁難你的,肯定自有用途,所以在我的筆記上有“const 引用,能讓形參不被copy,提高效率”這句話,不會有“const引用,函數無法修改形參”這句話。
像《 操作系統 》這樣的課程,老師天天講理論,什麼哲學家就餐,線程調度,全是在黑板上畫,我為了學習操作系統,乾脆就自己去學linux系統編程,用用那些api,我覺得這是學習操作系統最好的方式,而且,我覺得linux真的比windows適合學習,linux上有vim這樣的編輯器,也有那麼多的軟件工具,還有man,有管道,等等,許多哲學,不像windows的sdk那麼臃腫…
我們這個年紀的人,一開始就是windows,web郵箱,vs,有太多的東西沒有經歷過,我就喜歡去尋找“過時”的好東西,我把它稱之為《計算機考古學》,做一個真正地程序員,了解來龍去脈。
我們學校就是為了大家好就業,給大家的方向都定的j2ee,而我就選擇自己的方式,尋找自己的興趣,我並不是那種浮躁什麼都想學,我覺得大學,又不是研究生,也不是什麼培訓包就業班,本來就應該用自己的方式尋找自己的未來,而且,最後,我還是決定了自己的方向,那就是五個一,一個編輯器vim,一個過程語言c,一個動態語言python,一個無底洞語言c++,一個平台linux…
再有,就是設計模式這東西,不知道為什麼,被說的那麼神奇,然後大家盲目的崇拜,那些精通java企業級的,好像都要懂設計模式才行,我覺得,本科生就不應該學什麼設計模式,能把oop學懂就不錯了,oop可不僅僅就是封裝,繼承,多態這麼簡單,不管怎樣,應該先學會把程序實現出來,許多人沒寫多少代碼,沒學懂oop,就開始設計模式。就像一個連與人交流的情商都沒有的人去學習什麼讀心術,企圖提高自己的情商,真是可怕,再說了,學了linux,看了《Unix編程藝術》,你可能連oop都不崇拜了…
大學,自己做了許多,也思考了許多,可惜參加了3個月培訓的人已經月薪5000了,我來到這裡投簡歷又沒人看…
這就是我,一個沒上過重點,沒有實習經歷的90後想說的,我還想說,我熱愛程序,希望能找到一個屬於自己的工作…
哪本python書立有蟻群算法
簡介
蟻群算法(ant colony optimization, ACO),又稱螞蟻算法,是一種用來在圖中尋找優化路徑的機率型算法。它由Marco Dorigo於1992年在他的博士論文中提出,其靈感來源於螞蟻在尋找食物過程中發現路徑的行為。蟻群算法是一種模擬進化算法,初步的研究表明該算法具有許多優良的性質。針對PID控制器參數優化設計問題,將蟻群算法設計的結果與遺傳算法設計的結果進行了比較,數值仿真結果表明,蟻群算法具有一種新的模擬進化優化方法的有效性和應用價值。
定義
各個螞蟻在沒有事先告訴他們食物在什麼地方的前提下開始尋找食物。當一隻找到食物以後,它會向環境釋放一種揮發性分泌物pheromone (稱為信息素,該物質隨着時間的推移會逐漸揮發消失,信息素濃度的大小表徵路徑的遠近)來實現的,吸引其他的螞蟻過來,這樣越來越多的螞蟻會找到食物。有些螞蟻並沒有像其它螞蟻一樣總重複同樣的路,他們會另闢蹊徑,如果另開闢的道路比原來的其他道路更短,那麼,漸漸地,更多的螞蟻被吸引到這條較短的路上來。最後,經過一段時間運行,可能會出現一條最短的路徑被大多數螞蟻重複着。
解決的問題
三維地形中,給出起點和重點,找到其最優路徑。
作圖源碼:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
from mpl_toolkits.mplot3d import proj3dfrom mpl_toolkits.mplot3d import Axes3Dimport numpy as np height3d = np.array([[2000,1400,800,650,500,750,1000,950,900,800,700,900,1100,1050,1000,1150,1300,1250,1200,1350,1500], [1100,900,700,625,550,825,1100,1150,1200,925,650,750,850,950,1050,1175,1300,1350,1400,1425,1450], [200,400,600,600,600,900,1200,1350,1500,1050,600,600,600,850,1100,1200,1300,1450,1600,1500,1400], [450,500,550,575,600,725,850,875,900,750,600,600,600,725,850,900,950,1150,1350,1400,1450], [700,600,500,550,600,550,500,400,300,450,600,600,600,600,600,600,600,850,1100,1300,1500], [500,525,550,575,600,575,550,450,350,475,600,650,700,650,600,600,600,725,850,1150,1450], [300,450,600,600,600,600,600,500,400,500,600,700,800,700,600,600,600,600,600,1000,1400], [550,525,500,550,600,875,1150,900,650,725,800,700,600,875,1150,1175,1200,975,750,875,1000], [800,600,400,500,600,1150,1700,1300,900,950,1000,700,400,1050,1700,1750,1800,1350,900,750,600], [650,600,550,625,700,1175,1650,1275,900,1100,1300,1275,1250,1475,1700,1525,1350,1200,1050,950,850], [500,600,700,750,800,1200,1600,1250,900,1250,1600,1850,2100,1900,1700,1300,900,1050,1200,1150,1100], [400,375,350,600,850,1200,1550,1250,950,1225,1500,1750,2000,1950,1900,1475,1050,975,900,1175,1450], [300,150,0,450,900,1200,1500,1250,1000,1200,1400,1650,1900,2000,2100,1650,1200,900,600,1200,1800], [600,575,550,750,950,1275,1600,1450,1300,1300,1300,1525,1750,1625,1500,1450,1400,1125,850,1200,1550], [900,1000,1100,1050,1000,1350,1700,1650,1600,1400,1200,1400,1600,1250,900,1250,1600,1350,1100,1200,1300], [750,850,950,900,850,1000,1150,1175,1200,1300,1400,1325,1250,1125,1000,1150,1300,1075,850,975,1100], [600,700,800,750,700,650,600,700,800,1200,1600,1250,900,1000,1100,1050,1000,800,600,750,900], [750,775,800,725,650,700,750,775,800,1000,1200,1025,850,975,1100,950,800,900,1000,1050,1100], [900,850,800,700,600,750,900,850,800,800,800,800,800,950,1100,850,600,1000,1400,1350,1300], [750,800,850,850,850,850,850,825,800,750,700,775,850,1000,1150,875,600,925,1250,1100,950], [600,750,900,1000,1100,950,800,800,800,700,600,750,900,1050,1200,900,600,850,1100,850,600]]) fig = figure()ax = Axes3D(fig)X = np.arange(21)Y = np.arange(21)X, Y = np.meshgrid(X, Y)Z = -20*np.exp(-0.2*np.sqrt(np.sqrt(((X-10)**2+(Y-10)**2)/2)))+20+np.e-np.exp((np.cos(2*np.pi*X)+np.sin(2*np.pi*Y))/2)ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=’cool’)ax.set_xlabel(‘X axis’)ax.set_ylabel(‘Y axis’)ax.set_zlabel(‘Z’)ax.set_title(‘3D map’) point0 = [0,9,Z[0][9]]point1 = [20,7,Z[20][7]] ax.plot([point0[0]],[point0[1]],[point0[2]],’r’,marker = u’o’,markersize = 15)ax.plot([point1[0]],[point1[1]],[point1[2]],’r’,marker = u’o’,markersize = 15) x0,y0,_ = proj3d.proj_transform(point0[0],point0[1],point0[2], ax.get_proj())x1,y1,_ = proj3d.proj_transform(point1[0],point1[1],point1[2], ax.get_proj()) label = pylab.annotate( “start”, xy = (x0, y0), xytext = (-20, 20), textcoords = ‘offset points’, ha = ‘right’, va = ‘bottom’, bbox = dict(boxstyle = ’round,pad=0.5′, fc = ‘yellow’, alpha = 1), arrowprops = dict(arrowstyle = ‘-‘, connectionstyle = ‘arc3,rad=0’),fontsize=15)label2 = pylab.annotate( “end”, xy = (x1, y1), xytext = (-20, 20), textcoords = ‘offset points’, ha = ‘right’, va = ‘bottom’, bbox = dict(boxstyle = ’round,pad=0.5′, fc = ‘yellow’, alpha = 1), arrowprops = dict(arrowstyle = ‘-‘, connectionstyle = ‘arc3,rad=0’),fontsize=15)def update_position(e): x2, y2, _ = proj3d.proj_transform(point0[0],point0[1],point0[2],ax.get_proj()) label.xy = x2,y2 label.update_positions(fig.canvas.renderer) x1,y1,_ = proj3d.proj_transform(point1[0],point1[1],point1[2],ax.get_proj()) label2.xy = x1,y1 label2.update_positions(fig.canvas.renderer) fig.canvas.draw() fig.canvas.mpl_connect(‘button_release_event’, update_position)
基本原理
螞蟻k根據各個城市間鏈接路徑上的信息素濃度決定其下一個訪問城市,設Pkij(t)表示t時刻螞蟻k從城市i轉移到矩陣j的概率,其計算公式為
計算完城市間的轉移概率後,採用與遺傳算法中一樣的輪盤賭方法選擇下一個待訪問的城市。
當所有的螞蟻完成一次循環後,各個城市間鏈接路徑上的信息素濃度需進行更新,計算公式為
其中,Δτkij表示第k只螞蟻在城市i與城市j連接路徑上釋放的信息素濃度;Δτij表示所有螞蟻在城市i與城市j連接路徑上釋放的信息素濃度之和。
螞蟻釋放信息素的模型
程序代碼:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
import numpy as npimport matplotlib.pyplot as plt%pylabcoordinates = np.array([[565.0,575.0],[25.0,185.0],[345.0,750.0],[945.0,685.0],[845.0,655.0], [880.0,660.0],[25.0,230.0],[525.0,1000.0],[580.0,1175.0],[650.0,1130.0], [1605.0,620.0],[1220.0,580.0],[1465.0,200.0],[1530.0, 5.0],[845.0,680.0], [725.0,370.0],[145.0,665.0],[415.0,635.0],[510.0,875.0],[560.0,365.0], [300.0,465.0],[520.0,585.0],[480.0,415.0],[835.0,625.0],[975.0,580.0], [1215.0,245.0],[1320.0,315.0],[1250.0,400.0],[660.0,180.0],[410.0,250.0], [420.0,555.0],[575.0,665.0],[1150.0,1160.0],[700.0,580.0],[685.0,595.0], [685.0,610.0],[770.0,610.0],[795.0,645.0],[720.0,635.0],[760.0,650.0], [475.0,960.0],[95.0,260.0],[875.0,920.0],[700.0,500.0],[555.0,815.0], [830.0,485.0],[1170.0, 65.0],[830.0,610.0],[605.0,625.0],[595.0,360.0], [1340.0,725.0],[1740.0,245.0]])def getdistmat(coordinates): num = coordinates.shape[0] distmat = np.zeros((52,52)) for i in range(num): for j in range(i,num): distmat[i][j] = distmat[j][i]=np.linalg.norm(coordinates[i]-coordinates[j]) return distmatdistmat = getdistmat(coordinates)numant = 40 #螞蟻個數numcity = coordinates.shape[0] #城市個數alpha = 1 #信息素重要程度因子beta = 5 #啟發函數重要程度因子rho = 0.1 #信息素的揮發速度Q = 1iter = 0itermax = 250etatable = 1.0/(distmat+np.diag([1e10]*numcity)) #啟發函數矩陣,表示螞蟻從城市i轉移到矩陣j的期望程度pheromonetable = np.ones((numcity,numcity)) # 信息素矩陣pathtable = np.zeros((numant,numcity)).astype(int) #路徑記錄表distmat = getdistmat(coordinates) #城市的距離矩陣lengthaver = np.zeros(itermax) #各代路徑的平均長度lengthbest = np.zeros(itermax) #各代及其之前遇到的最佳路徑長度pathbest = np.zeros((itermax,numcity)) # 各代及其之前遇到的最佳路徑長度while iter itermax: # 隨機產生各個螞蟻的起點城市 if numant = numcity:#城市數比螞蟻數多 pathtable[:,0] = np.random.permutation(range(0,numcity))[:numant] else: #螞蟻數比城市數多,需要補足 pathtable[:numcity,0] = np.random.permutation(range(0,numcity))[:] pathtable[numcity:,0] = np.random.permutation(range(0,numcity))[:numant-numcity] length = np.zeros(numant) #計算各個螞蟻的路徑距離 for i in range(numant): visiting = pathtable[i,0] # 當前所在的城市 #visited = set() #已訪問過的城市,防止重複 #visited.add(visiting) #增加元素 unvisited = set(range(numcity))#未訪問的城市 unvisited.remove(visiting) #刪除元素 for j in range(1,numcity):#循環numcity-1次,訪問剩餘的numcity-1個城市 #每次用輪盤法選擇下一個要訪問的城市 listunvisited = list(unvisited) probtrans = np.zeros(len(listunvisited)) for k in range(len(listunvisited)): probtrans[k] = np.power(pheromonetable[visiting][listunvisited[k]],alpha)\ *np.power(etatable[visiting][listunvisited[k]],alpha) cumsumprobtrans = (probtrans/sum(probtrans)).cumsum() cumsumprobtrans -= np.random.rand() k = listunvisited[find(cumsumprobtrans0)[0]] #下一個要訪問的城市 pathtable[i,j] = k unvisited.remove(k) #visited.add(k) length[i] += distmat[visiting][k] visiting = k length[i] += distmat[visiting][pathtable[i,0]] #螞蟻的路徑距離包括最後一個城市和第一個城市的距離 #print length # 包含所有螞蟻的一個迭代結束後,統計本次迭代的若干統計參數 lengthaver[iter] = length.mean() if iter == 0: lengthbest[iter] = length.min() pathbest[iter] = pathtable[length.argmin()].copy() else: if length.min() lengthbest[iter-1]: lengthbest[iter] = lengthbest[iter-1] pathbest[iter] = pathbest[iter-1].copy() else: lengthbest[iter] = length.min() pathbest[iter] = pathtable[length.argmin()].copy() # 更新信息素 changepheromonetable = np.zeros((numcity,numcity)) for i in range(numant): for j in range(numcity-1): changepheromonetable[pathtable[i,j]][pathtable[i,j+1]] += Q/distmat[pathtable[i,j]][pathtable[i,j+1]] changepheromonetable[pathtable[i,j+1]][pathtable[i,0]] += Q/distmat[pathtable[i,j+1]][pathtable[i,0]] pheromonetable = (1-rho)*pheromonetable + changepheromonetable iter += 1 #迭代次數指示器+1 #觀察程序執行進度,該功能是非必須的 if (iter-1)%20==0: print iter-1# 做出平均路徑長度和最優路徑長度 fig,axes = plt.subplots(nrows=2,ncols=1,figsize=(12,10))axes[0].plot(lengthaver,’k’,marker = u”)axes[0].set_title(‘Average Length’)axes[0].set_xlabel(u’iteration’)axes[1].plot(lengthbest,’k’,marker = u”)axes[1].set_title(‘Best Length’)axes[1].set_xlabel(u’iteration’)fig.savefig(‘Average_Best.png’,dpi=500,bbox_inches=’tight’)plt.close()#作出找到的最優路徑圖bestpath = pathbest[-1]plt.plot(coordinates[:,0],coordinates[:,1],’r.’,marker=u’$\cdot$’)plt.xlim([-100,2000])plt.ylim([-100,1500])for i in range(numcity-1):# m,n = bestpath[i],bestpath[i+1] print m,n plt.plot([coordinates[m][0],coordinates[n][0]],[coordinates[m][1],coordinates[n][1]],’k’)plt.plot([coordinates[bestpath[0]][0],coordinates[n][0]],[coordinates[bestpath[0]][1],coordinates[n][1]],’b’)ax=plt.gca()ax.set_title(“Best Path”)ax.set_xlabel(‘X axis’)ax.set_ylabel(‘Y_axis’)plt.savefig(‘Best Path.png’,dpi=500,bbox_inches=’tight’)plt.close()
8 Metaheuristics
下圖介紹了兩種不同種類的Metaheuristics,我們主要用左邊的,尤其是Iterated Greedy。
I 和D 的過程用圖像表示如下:
我在這裡只用Iterated Greedy算法。原因如下:
其他算法諸如蟻群算法等,可能能提供非常接近最優解的方案,有些算法的運行速度也很快,可以彌補python運行慢的缺陷。但是這些算法通常存在諸多不足,例如算法太複雜,適用面很窄,需要設置過多參數導致很難實現。
Iterated Greedy的優勢在於,它由兩個簡單的階段構成:
D和I
更好的解決方案總會被接受
更壞的方案以特定的可能性接受,接受的概率如下圖
類似 模擬退火法 :
從當前解決方案中隨機刪除 numberJobsToRemove 個訂單。這裡 numberJobsToRemove 是Iterated Greedy的一個參數。
輸出的結果是被移除的訂單集合 removedJobs 和一個不完整的解決方案 partialPermutation 。
* 注意:solver.RNG.choice的結果每次都一樣,是因為我們設置了隨機數種子,目的就是只要是用同一個種子作為參數構造出的solver的屬性RNG都是同一個。
將 removedJobs 重新加回 partialPermutation ,並插入到最佳位置(NEH)的順序,並返回新的完整解決方案。這個插入過程是通過排列Permutation實現的,看一下Construction函數的參數表可知,需要兩個列表。
* 註:前面講算法的時候說過,重構函數執行之後會生成一個新的方案newSolution,新方案就是通過把removedJobs插入到最佳位置得到的。最優位置的選擇需要在Construction函數中藉助 solver.EvaluationLogic.DetermineBestInsertion(completeSolution, i)來實現
我們通過簡單的解構和重構,必然會得出一個新方案newSolution,那麼我們接受新方案newSolution為當前方案currentSolution的前提是,如果
– 新的解決方案( newSolution ),
– 當前解決方案( currentSolution )。
* 公式中,T叫做baseTemperature,是Iterated Greedy的第二個參數,T越大,則接受更壞方案的概率也越大。新的最優方案存儲在SolutionPool中(numberJobsToRemove是第一個參數)
下面開始對newSolution進行評估和比較:
* 注意:判斷一個新方案是否可接受取決於兩方面:1. 如果新方案更好,那麼無論如何都會接受新方案;2. 如果新方案並沒有優化,則視作WorseSolution,即使是worseSolution也是要按照公式計算出的概率來衡量是否要接受這個不好的方案
為了看起來更加直觀,我把接受差方案的過程寫成了函數AcceptWorseSolution。注意看參數表,以便於確定何時調用這個函數。
局部搜索可以被用於優化currentSOlution,但不是必須的。通常會使用IterativeImprovement結合Insertion鄰域一起使用。
Iterated Greedy是一個迭代的解構D和構建C組成的序列。
在一個循環中被反覆執行,直到達到 停止標準 。
在這裡的例子中, 停止標準 是迭代次數 maxIterations ,但時間限制或沒有優化的迭代次數也是可以的。
後面可能還會講到怎麼設計一個沒有優化的迭代次數,這裡可以先思考一下。
現在嘗試運行一下:
與 IterativeImprovement 算法類似,現在要為 IteratedGreedy 創建一個單獨的類,以便該類的一個實例可以傳遞給求解器Solver。
像 IterativeImprovement 一樣, Iterated Greedy 應該繼承自 ImprovementAlgorithm 。
必要的 參數 是以下屬性:
EvaluationLogic, SolutionPool以及隨機數生成器RNG都由求解器solver傳遞給算法。
添加 IteratedGreedy 類,以便它可以作為一種算法傳遞給求解器。
成員函數:Konstruktor, Initialize, Destruction, Construction, AcceptWorseSolution, Run
原創文章,作者:GLOUO,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/128973.html