下載python蟻群算法實現的簡單介紹

本文目錄一覽:

基於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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
GLOUO的頭像GLOUO
上一篇 2024-10-03 23:25
下一篇 2024-10-03 23:25

相關推薦

  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • 蝴蝶優化算法Python版

    蝴蝶優化算法是一種基於仿生學的優化算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化算法Python版…

    編程 2025-04-29

發表回復

登錄後才能評論