【《基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電服務(wù)機(jī)制設(shè)計(jì)案例》6500字】_第1頁
【《基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電服務(wù)機(jī)制設(shè)計(jì)案例》6500字】_第2頁
【《基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電服務(wù)機(jī)制設(shè)計(jì)案例》6500字】_第3頁
【《基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電服務(wù)機(jī)制設(shè)計(jì)案例》6500字】_第4頁
【《基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電服務(wù)機(jī)制設(shè)計(jì)案例》6500字】_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電服務(wù)機(jī)制設(shè)計(jì)案例目錄TOC\o"1-3"\h\u31276基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電服務(wù)機(jī)制設(shè)計(jì)案例 133991.1基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電引導(dǎo)架構(gòu) 1231571.1.2改進(jìn)的實(shí)用拜占庭容錯(cuò)算法 3284431.2電動(dòng)出租車充電引導(dǎo)模型 4198511.2.1模型概述及參量設(shè)定 4272051.2.2引導(dǎo)模型的目標(biāo)函數(shù) 511251.3電動(dòng)出租車充電引導(dǎo)算法 8235001.4算法的代碼 816437Algorithm3crossover 1032592Algorithm4mutation 1114438Algorithm5elitism 1114238Algorithm6geneticalgorithm 12208611.5結(jié)果分析 13144631.5.1仿真數(shù)據(jù)設(shè)定 13133181.5.2優(yōu)化準(zhǔn)備工作 141144Algorithm7data 143067Algorithm8datas 151304Algorithm9floyd 1515426Algorithm10optimization 16314781.5.3性能分析 1628466Algorithm11main 17為處理運(yùn)營商之間信息不連通問題,合理利用汽車儲(chǔ)能與電網(wǎng)進(jìn)行互動(dòng),并確保運(yùn)營商以及電動(dòng)出租車司機(jī)的各種利益需求能夠得到滿足,于本章提出了一系列的方案。1.1基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電引導(dǎo)架構(gòu)1.1.1系統(tǒng)整體架構(gòu)模型坊間有這么一句話,叫聰明反被聰明誤。如快船,盧指導(dǎo)早早布局,一步步請(qǐng)君入甕,把西部群雄紛紛套進(jìn)其中,大棋下的那叫一個(gè)溜。臨末了成功實(shí)現(xiàn)理想的對(duì)陣局面,堪稱絕殺。畢竟首圖3-1.基于聯(lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的電動(dòng)出租車充電引導(dǎo)體系結(jié)構(gòu)如圖3-1.所示,由充電站運(yùn)營商服務(wù)器節(jié)點(diǎn)組成聯(lián)盟的成員?;诼?lián)盟區(qū)塊鏈的V2G網(wǎng)絡(luò)的充電引導(dǎo)體系結(jié)構(gòu)中有以下幾個(gè)主要相關(guān)者。電動(dòng)出租車:是此V2G網(wǎng)絡(luò)的主體。每一輛電動(dòng)車都會(huì)受到網(wǎng)絡(luò)上訂單信息的制約,訂單對(duì)于路程與位置的要求限制了出租車在接單時(shí)的位置和剩余電量(SOC)。若此時(shí)電量不足,出租車就會(huì)向AGGREGATOR發(fā)送充電請(qǐng)求。Aggregator:主要功能是對(duì)電動(dòng)汽車的充放電進(jìn)行調(diào)度,將電動(dòng)出租車的充放電信息收集起來,從而實(shí)現(xiàn)對(duì)電力資源的集中規(guī)劃調(diào)度。運(yùn)營商節(jié)點(diǎn)(能量供求管理):考慮到本文研究?jī)?nèi)容,故直接將能量供求管理由運(yùn)營商節(jié)點(diǎn)替代。運(yùn)營商是本系統(tǒng)中充電服務(wù)的處理者。在Aggregator收集充電請(qǐng)求之后,收集道路交通網(wǎng)絡(luò)的信息,制訂行之有效的充電引導(dǎo)策略。充電站:充電站內(nèi)置有一定數(shù)量的充電樁,當(dāng)此時(shí)站內(nèi)有充電樁處于空閑狀態(tài)時(shí),充電站將會(huì)向運(yùn)營商服務(wù)器發(fā)送空閑信息。整個(gè)充電引導(dǎo)的過程為:出租車在接收預(yù)訂后,發(fā)送出充電請(qǐng)求,由aggregator收集并送往運(yùn)營商服務(wù)器,服務(wù)器首先計(jì)算本次充電所需要的能量,收集充電站內(nèi)充電樁使用情況的數(shù)據(jù)以及附近的道路交通信息。收集完成之后,由其他運(yùn)營商節(jié)點(diǎn)的共識(shí)認(rèn)證來完成引導(dǎo)決定,并向出租車司機(jī)推薦最合理的充電站。1.1.2改進(jìn)的實(shí)用拜占庭容錯(cuò)算法傳統(tǒng)的實(shí)用拜占庭容錯(cuò)(PBFT)算法較為適合聯(lián)盟鏈,但存在著一定的局限性。該算法一般適用于靜態(tài)網(wǎng)絡(luò)[23],只有在節(jié)點(diǎn)較少的情況下才能具有較好的性能。因?yàn)槠渲械拿總€(gè)副本節(jié)點(diǎn)都要和其他節(jié)點(diǎn)進(jìn)行共識(shí)同步,新的節(jié)點(diǎn)加入時(shí),必須重新啟動(dòng)共識(shí)過程,這不利于本文系統(tǒng)中其他充電站運(yùn)營商服務(wù)器節(jié)點(diǎn)的加入。因此,我們將在原有算法的基礎(chǔ)上,增加一個(gè)新的機(jī)制。設(shè)計(jì)了一個(gè)完整的快速充電站節(jié)點(diǎn)加入集群并完成共識(shí)過程的周期,以解決多個(gè)參與者之間產(chǎn)生的信任問題,同時(shí)也能夠完成引導(dǎo)結(jié)果的統(tǒng)一認(rèn)證。在改進(jìn)的拜占庭容錯(cuò)算法中,每一個(gè)節(jié)點(diǎn)都被賦予了評(píng)估值,其中評(píng)估值最高的節(jié)點(diǎn)將會(huì)作為主節(jié)點(diǎn),以使本次的共識(shí)過程更加可靠。評(píng)估值的定義如下:(3-1)其中,N為共識(shí)的總次數(shù),U為節(jié)點(diǎn)第N次完成共識(shí)的得分,節(jié)點(diǎn)每參與系統(tǒng)并完成一次共識(shí)過程記1分。如果因?yàn)楣?jié)點(diǎn)的惰性導(dǎo)致了區(qū)塊更新失敗,U將取懲罰因子為。這樣,利用節(jié)點(diǎn)的身份認(rèn)證,就可以讓其他運(yùn)營商服務(wù)器節(jié)點(diǎn)無需重啟整個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)群也能夠動(dòng)態(tài)地加入聯(lián)盟區(qū)塊鏈網(wǎng)絡(luò)。充電節(jié)點(diǎn)加入集群并完成共識(shí)過程的完整流程如圖3-2所示。圖3-2.多個(gè)運(yùn)營商充電引導(dǎo)的節(jié)點(diǎn)共識(shí)過程1.2電動(dòng)出租車充電引導(dǎo)模型1.2.1模型概述及參量設(shè)定基于電動(dòng)出租車、充電站運(yùn)營商多方的利益需求,在此提出一種基于多目標(biāo)優(yōu)化的充電引導(dǎo)模型。此模型的數(shù)據(jù)支持主要來源于聯(lián)盟區(qū)塊鏈中的契約層中的充電引導(dǎo)架構(gòu)。對(duì)于電動(dòng)出租車而言,接受訂單出發(fā)的情況主要有幾種。一是剩余電量足夠,且要求距離較近,這樣不用充電可直接出發(fā)前往。第二種是出租車剩余電量不足,且訂單限制時(shí)間導(dǎo)致不能完成充電。第三種情況則是距離較遠(yuǎn),出租車需要先行充電,電量足夠時(shí)再出發(fā)前往接客出發(fā)地點(diǎn)。我們主要研究的情況就是最后一種,在這種情景下,出租車司機(jī)需要先選擇合適的充電站進(jìn)行充電,還需在訂單要求的時(shí)間內(nèi)感到出發(fā)地點(diǎn)接乘客,還需要確保充電之后的剩余電量能夠滿足訂單的要求。本文的充電引導(dǎo)模型主要是為這種情況建立的。在線預(yù)約模式的電動(dòng)出租車的充電引導(dǎo)模型中,需要考慮到多方面的利益訴求,并且也是受到多種因素的制約。我們主要從出租車和充電站運(yùn)營商的角度對(duì)引導(dǎo)模式進(jìn)行討論研究。對(duì)于出租車司機(jī)而言,最主要的要求是節(jié)約成本。其中包括出租車到充電站的路程、充電站到接客位置、接客位置到目的地等距離成本;駕駛時(shí)間、在充電站排隊(duì)等待充電的時(shí)間、充電時(shí)間等時(shí)間成本。而通過節(jié)約距離和時(shí)間,盡量在訂單的設(shè)定時(shí)間內(nèi)到達(dá)乘客所在地,以充足的電量載乘客前往目的地,可以有效提高乘客的滿意程度,從而擴(kuò)大自己的利益。在充電站運(yùn)營商眼中,最重要的是充電站的效率。他們希望前往充電站的電動(dòng)出租車的數(shù)量是和站內(nèi)的充電樁數(shù)量相關(guān)的,這樣就不會(huì)產(chǎn)生某充電站內(nèi)設(shè)備大量空閑或嚴(yán)重不足的問題,也就做到了設(shè)備的平衡利用。在了解了各個(gè)方面的需求之后,為了對(duì)引導(dǎo)場(chǎng)景以及各限制條件進(jìn)行更加全面且準(zhǔn)確的描述,在不會(huì)對(duì)計(jì)算產(chǎn)生影響的情況下,我們做出了一系列的假設(shè),并對(duì)參量進(jìn)行了設(shè)定。.在本文的V2G網(wǎng)絡(luò)中,通過Aggregator的規(guī)劃調(diào)度,我們暫定當(dāng)各充電站中設(shè)備利用最平衡的時(shí)候,電動(dòng)出租車用電對(duì)電網(wǎng)的影響最小。那么在接下來的計(jì)算中就不再考慮電網(wǎng)的約束。.根據(jù)電動(dòng)出租車的在時(shí)間上受到的約束,設(shè)定司機(jī)會(huì)選擇快速充電站進(jìn)行充電。充電時(shí)間則選擇為恒流階段的時(shí)間。.本文假設(shè)出租車司機(jī)在駕駛時(shí),在相同的道路上會(huì)保持勻速前進(jìn),并以最短路徑行駛,而行駛的速度則由速度-流量實(shí)用模型決定。該模型將道路的通行能力以及道路流量也考慮在內(nèi),高等級(jí)的道路通行能力強(qiáng);高流量的道路容易產(chǎn)生擁堵。.假設(shè)在一定區(qū)域內(nèi),電動(dòng)出租車和快速充電站的數(shù)量是固定的,設(shè)電動(dòng)出租車的數(shù)量為N;每家充電站運(yùn)營商設(shè)立K個(gè)快速充電站;每個(gè)充電站內(nèi)有M個(gè)充電樁。.根據(jù)過去的學(xué)者對(duì)于充電站充電服務(wù)的研究,本文將充電站內(nèi)的排隊(duì)系統(tǒng)設(shè)定為M/G/K排隊(duì)系統(tǒng)。1.2.2引導(dǎo)模型的目標(biāo)函數(shù)本文建立引導(dǎo)模型的目的是令出租車成本最小化以及令運(yùn)營商服務(wù)效率最大化。此模型的目標(biāo)函數(shù)便是從這兩個(gè)方面入手。出租車成本對(duì)于電動(dòng)出租車而言,在滿足訂單要求的前提下,需要盡量的節(jié)約成本。主要有以下幾個(gè)方面:.距離成本首先設(shè)定,所有的距離都是通過弗洛伊德算法[24]所求得的最短距離。第i輛出租車到第k個(gè)充電站之間的最短距離為(3-2)L為道路長(zhǎng)度;λ為各個(gè)路段對(duì)應(yīng)的道路加權(quán)系數(shù)。在充電過后,出租車將會(huì)直接前往接客地點(diǎn)載客出發(fā)前往目的地L2.時(shí)間成本(3-4)為行駛時(shí)間,其中v由速度-流量實(shí)用模型可得。在直連路段ij上,t時(shí)刻汽車的速度為:(3-5)vijm為該路段的零車流量時(shí)的速度,qjit為路段流量;(3-6)a,b,n分別為不同道路等級(jí)的自適應(yīng)系數(shù)。對(duì)于主干道取1.726、1.15、3;次干道取2.076、2.870、3[25]。電動(dòng)出租車到達(dá)充電站的輸入方式具體為泊松分布,其平均到達(dá)率為λ;服務(wù)的時(shí)間依據(jù)期望為μ,方差為δ的正態(tài)分布。排隊(duì)過程通過M/G/K排隊(duì)論模型[26]給出。故平均等待時(shí)間為(3-7)充電站運(yùn)營商充電站運(yùn)營的關(guān)注點(diǎn)更多放在充電站中充電樁的利用率上;需要避免有充電站出現(xiàn)有車無樁或有樁無車的情況。只有設(shè)備利用均衡,才能提高充電站的服務(wù)強(qiáng)度,進(jìn)而提升運(yùn)營商的服務(wù)效率。設(shè)備利用率如下:(3-8)m為充電站k內(nèi)正在使用中的充電樁的數(shù)量,pi通過上述各式,可得出各目標(biāo)函數(shù)如下:距離成本(3-9)時(shí)間成本(3-10)運(yùn)營商服務(wù)效率(3-11)我們將出租車、充電站運(yùn)營商的目標(biāo)函數(shù)首先經(jīng)過線性加權(quán),再進(jìn)行歸一化,可得出最終的最優(yōu)解函數(shù)及其約束條件如下(3-12)且其中F1max、F2max。F3max1.3電動(dòng)出租車充電引導(dǎo)算法電動(dòng)出租車充電引導(dǎo)模型受到各種因素的制約,如訂單信息的要求;充電站位置;充電樁的合理使用等。這是一個(gè)多約束,非線性的多維問題。對(duì)于此類復(fù)雜優(yōu)化問題,本文將使用遺傳算法(GeneticAlgorithm,GA)[27-28]對(duì)其進(jìn)行求解。遺傳算法是通過模仿達(dá)爾文進(jìn)化論中的“物競(jìng)天擇”形式的自然進(jìn)化過程的搜尋優(yōu)化解的方法。此算法為一種概率算法,能夠直接操作對(duì)象,且并不存在對(duì)于連續(xù)性的要求,并且具有自適應(yīng)性,能夠自主調(diào)整搜索方向,在全局方面能夠很好的進(jìn)行尋優(yōu)操作。遺傳算法是從種群開始的,每一個(gè)種群都是由一定數(shù)目的個(gè)體組成,是我們所研究的問題的解的集合中的一部分。在第一代種群初始化之后,就開始了演變,通過適者生存,優(yōu)勝劣汰的原理,通過隨機(jī)交叉以及變異,使得個(gè)體在種群中產(chǎn)生各異性[29],而在此過程中,會(huì)存在此代種群中最優(yōu)個(gè)體發(fā)生變化而導(dǎo)致下一代出現(xiàn)更差的最優(yōu)個(gè)體的情況,為此引出了精英機(jī)制,本代最優(yōu)個(gè)體獲得保存,上述情況發(fā)生時(shí),會(huì)自動(dòng)替換掉較差的新個(gè)體[30]。這樣,每一代的近似解會(huì)越來越好,后代必然比前代更能夠適應(yīng)環(huán)境,最后一代的種群中的最優(yōu)個(gè)體,便能夠作為近似的最優(yōu)解。運(yùn)用遺傳算法解決充電引導(dǎo)問題的過程如下:運(yùn)用二進(jìn)制編碼法。首先初始化各充電決策變量,設(shè)定種群數(shù)目;交叉、變異以及繼承的概率。然后用隨機(jī)方式生成初始的個(gè)體,按照遺傳和變異的概率從種群內(nèi)部選擇個(gè)體進(jìn)行遺傳還有變異的過程,將兩代種群合并,并選擇更加合適的與種群數(shù)目相等的個(gè)體,此時(shí)迭代次數(shù)將會(huì)增加。接下來重復(fù)遺傳過程直至到達(dá)最大迭代次數(shù),此時(shí)生成最優(yōu)解,算法到此結(jié)束。1.4算法的代碼本文將使用MATLAB進(jìn)行仿真,種群中的粒子數(shù)設(shè)定為50;最大迭代次數(shù)為2500。運(yùn)用遺傳算法對(duì)目標(biāo)函數(shù)進(jìn)行優(yōu)化。遺傳算法的主要代碼如下:1.初始化Algorithm1initialization1:function[population]=initialization(M,N1,N2)2:fori=1:M3:forj=1:N14:randN2=floor(rand(1)*N2)+1;5:array=zeros(1,N2);6:array(randN2)=1;7:population.Chromosomes(i).Gene(j,:)=array;2.選擇Algorithm2selection1:function[parent1,parent2]=selection(population)2:M=length(population.Chromosomes(:));3:ifany([population.Chromosomes(:).fitness]<0)4:a=1;5:b=abs(min([population.Chromosomes(:).fitness]));6:Scaled_fitness=a*[population.Chromosomes(:).fitness]+b;7:normalized_fitness=[Scaled_fitness]./sum([Scaled_fitness]);8:else9:normalized_fitness=[population.Chromosomes(:).fitness]./sum[population.Chromosomes(:).fitness]10:[sorted_fintness_values,sorted_idx]=sort(normalized_fitness,'ascend');11:fori=1:length(population.Chromosomes)12:temp_population.Chromosomes(i).Gene=population.Chromosomes(sorted_idx(i)).Gene;13:temp_population.Chromosomes(i).fitness=population.Chromosomes(sorted_idx(i)).fitness;14:temp_population.Chromosomes(i).normalized_fitness=normalized_fitness(sorted_idx(i));15:end16:cumsum=zeros(1,M);17:fori=1:M18:forj=i:M19:cumsum(i)=cumsum(i)+temp_population.Chromosomes(j).normalized_fitness;20:endend21:R=rand();22:parent1_idx=M;23:fori=1:length(cumsum)24:ifR>cumsum(i)25;parent1_idx=i-1;26:break;endend27:parent2_idx=parent1_idx;28:while_loop_stop=0;29:whileparent2_idx==parent1_idx30:while_loop_stop=while_loop_stop+1;31:R=rand();32:ifwhile_loop_stop>2033:break;end34:fori=1:length(cumsum)35:ifR>cumsum(i)36:parent2_idx=i-1;37:break;endendend38:parent1=temp_population.Chromosomes(parent1_idx);39:parent2=temp_population.Chromosomes(parent2_idx);40:end坊間有這么一句話,叫聰明反被聰明誤。如快船,盧指導(dǎo)早早布局,一步步請(qǐng)君入甕,把西部群雄紛紛套一塊兒玩貼身肉搏呢。結(jié)果局座現(xiàn)眼了。1.交叉Algorithm3crossover1:function[child1,child2]=crossover(parent1,parent2,Pc,crossoverName)2:switchcrossoverName3:case'single'4:Gene_no=length(parent1.Gene);5:ub=Gene_no-1;6:lb=1;7:Cross_P=round((ub-lb)*rand()+lb);8:Part1=parent1.Gene(1:Cross_P,:);9:Part2=parent2.Gene(Cross_P+1:Gene_no,:)10:child1.Gene=[Part1;Part2];11:Part1=parent2.Gene(1:Cross_P,:);12:Part2=parent1.Gene(Cross_P+1:Gene_no,:);13:child2.Gene=[Part1;Part2];14:case'double'15:Gene_no=length(parent1);16:ub=length(parent1.Gene)-1;lb=1;17:Cross_P1=round((ub-lb)*rand()+lb);Cross_P2=Cross_P1;18:whileCross_P2==Cross_P119:Cross_P2=round((ub-lb)*rand()+lb);20:end21:ifCross_P1>Cross_P222:temp=Cross_P1;Cross_P1=Cross_P2; Cross_P2=temp;end23:Part1=parent1.Gene(1:Cross_P1,:);24:Part2=parent2.Gene(Cross_P1+1:Cross_P2,:);25:Part3=parent1.Gene(Cross_P2+1:end,:);26:child1.Gene=[Part1;Part2;Part3];27:Part1=parent2.Gene(1:Cross_P1,:);28:Part2=parent1.Gene(Cross_P1+1:Cross_P2,:);29:Part3=parent2.Gene(Cross_P2+1:end,:);30:child2.Gene=[Part1;Part2;Part3];31:end32:R1=rand();33:ifR1<=Pc34:child1=child1;35:else36:child1=parent1;37:end38:R2=rand()39:ifR2<=Pc40:child2=child2;41:else42:child2=parent2;end變異Algorithm4mutation1:function[child]=mutation(child,Pm)2:[Gene_no,N2]=size(child.Gene);3:fork=1:Gene_no4:R=rand();5:ifR<Pm6:randN2=floor(rand(1)*N2)+1;7:idx=find(child.Gene(k,:));8:whilerandN2==idx9:randN2=floor(rand(1)*N2)+1;10:end11:array=zeros(1,N2);12:array(randN2)=1;13:child.Gene(k,:)=array;14:end15:end16:end精英替換Algorithm5elitism1:function[newPopulation2]=elitism(population,newPopulation,Er)2:M=length(population.Chromosomes);3:Elite_no=round(M*Er);4:[max_val,indx]=sort([population.Chromosomes(:).fitness],'ascend');5:fork=1:Elite_no6:newPopulation2.Chromosomes(k).Gene=population.Chromosomes(indx(k)).Gene;7:newPopulation2.Chromosomes(k).fitness=population.Chromosomes(indx(k)).fitness;8:end9:fork=Elite_no+1:M10:newPopulation2.Chromosomes(k).Gene=newPopulation.Chromosomes(k).Gene;11:newPopulation2.Chromosomes(k).fitness=newPopulation.Chromosomes(k).fitness;12:end13:end算法主程序Algorithm6geneticalgorithm1:function[BestChrom]=GeneticAlgorithm(Nchrome,M,N,MaxGen,Pc,Pm,Er,obj,visuailzation)2:cgcurve=zeros(1,MaxGen);3:[population]=initialization(Nchrome,M,N);4:fori=1:Nchrome5:population.Chromosomes(i).fitness=obj(population.Chromosomes(i).Gene);6:end7:g=1;8:disp(['Generation#',num2str(g)]);9:[min_val,indx]=sort([population.Chromosomes(:).fitness],'ascend');10:cgcurve(g)=population.Chromosomes(indx(1)).fitness;11:forg=2:MaxGen12:disp(['Generation#',num2str(g)]);13:fori=1:Nchrome14:population.Chromosomes(i).fitness=obj(population.Chromosomes(i).Gene);15:end16:fork=1:2:Nchrome17:[parent1,parent2]=selection(population);18:[child1,child2]=crossover(parent1,parent2,Pc,'single');19:[child1]=mutation(child1,Pm);20:[child2]=mutation(child2,Pm);21:newPopulation.Chromosomes(k).Gene=child1.Gene;22:newPopulation.Chromosomes(k+1).Gene=child2.Gene;23:end24:fori=1:Nchrome25;newPopulation.Chromosomes(i).fitness=obj(newPopulation.Chromosomes(i).Gene);26:end27:[newPopulation]=elitism(population,newPopulation,Er);28:cgcurve(g)=newPopulation.Chromosomes(1).fitness;29:population=newPopulation;30:end31:BestChrom.Gene=population.Chromosomes(1).Gene;32:BestChrom.Fitness=population.Chromosomes(1).fitness;33:ifvisuailzation==134:plot(1:MaxGen,cgcurve);35:xlabel('Iterativenumbers');36:ylabel('Fitnessofthebestelite')37:end38:end適應(yīng)度與迭代次數(shù)的關(guān)系如圖3-3所示,結(jié)果表明,遺傳算法具有較高的收斂性能。 圖3-3迭代之下的適應(yīng)度曲線1.5結(jié)果分析1.5.1仿真數(shù)據(jù)設(shè)定本文主要取參考文獻(xiàn)[7]中的數(shù)據(jù)進(jìn)行仿真。在目標(biāo)區(qū)域內(nèi)共存在7座快速充電站,在一次引導(dǎo)過程中,需要進(jìn)行引導(dǎo)的電動(dòng)出租車共有100輛;充電站內(nèi)部共有117個(gè)充電樁。表3-1中記錄了每個(gè)充電站中的充電樁的數(shù)目以及泊松分布的參數(shù)。圖3-4則描繪了此地大致結(jié)構(gòu)以及充電站位置,其中數(shù)字代表著各點(diǎn)的暫定序號(hào),每個(gè)方格大小為1km×1km。表3-1各充電站信息充電站充電樁數(shù)λC1180.48C2140.55C3190.6C4140.42C5240.6C6150.2C7130.511111C1234C6567C3816151413121110917181920C721222324323130292827262533C4343536C2373839C5404847464544434241圖3-4交通網(wǎng)絡(luò)簡(jiǎn)圖與充電站位置設(shè)定中出租車司機(jī)會(huì)選擇預(yù)留足夠的時(shí)間進(jìn)行充電,汽車在路上的零流速度為30km/h;平均充電功率為30kW;在充電之前余電SOC為0.2-0.3;充電之后為0.8-0.9,以保護(hù)電池,延長(zhǎng)使用壽命。出租車司機(jī)在快速充電站內(nèi)進(jìn)行充電服務(wù)的時(shí)間服從正態(tài)分布,其中期望為20min;方差為5min;算法中的目標(biāo)函數(shù)中的加權(quán)系數(shù)分別為γ11.5.2優(yōu)化準(zhǔn)備工作在上述情況下,我們對(duì)充電引導(dǎo)場(chǎng)景進(jìn)行仿真。首先對(duì)仿真地點(diǎn)交通網(wǎng)絡(luò)進(jìn)行計(jì)算。1.計(jì)算原始網(wǎng)格點(diǎn)坐標(biāo)node以及其伴隨矩陣Algorithm7data1:node=zeros(48,2);2:fori=1:63:m=(1:8)+8*(i-1);4:ifmod(i,2)==15:node(m,1)=1:8;6:else7:node(m,1)=8:-1:1;8:end9:node(m,2)=6-(i-1);10:end11:G=zeros(48,48);12:fori=1:4813:forj=1:4814:fabs(node(i,1)-node(j,1))+abs(node(i,2)-node(j,2))==1&&(abs(node(i,1)-node(j,1))==1abs(node(i,2)-node(j,2))==1)15:G(i,j)=1;16:end17:end18:end2.輸入各充電站的位置信息:Algorithm8datas1:node_S=[1.79,5.37;4.16,1.53;7.10,5.05;1.30,1.63;7.05,1.92;4.95,5.95;4.29,1.72];2:NumChargers=[18;14;19;14;24;15;13];3:lambda=[0.48;0.55;0.6;0.42;0.6;0.2;0.5];4:SG=zeros(48+7,48+7);5:idx=[1,2,15,16;36,37,44,45;7,8,9,10;33,34,47,48;39,40,41,42;4,5,12,13;20,21,28,29];6:node(m,1)=8:-1:1;7:fori=1:78:forj=1:49:SG(idx(i,j),48+i)=norm(node(idx(i,j),:)-node_S(i,:));10:SG(48+i,idx(i,j))=SG(idx(i,j),48+i);11:end12:end1.用弗洛伊德算法計(jì)算各節(jié)點(diǎn)之間的最短距離:Algorithm9floyd1:function[d,r]=floyd(a)2:n=size(a,1);3:d=a;4:r=zeros(n);5:fori=1:n6:forj=1:n7:r(i,j)=j;8:end9:end10:fork=1:n11:fori=1:n12:forj=1:n13:ifd(i,k)+d(k,j)<d(i,j)14:d(i,j)=d(i,k)+d(k,j);15:r(i,j)=r(i,k);16:end17:end18:end19:end對(duì)目標(biāo)函數(shù)與各參數(shù)進(jìn)行設(shè)定:Algorithm10optimization1:function[F,F1,F2,F3]=optimization(x,beg,en,d,M,N,s,delta,q_xu,v,mu,T_wk,P,c,alpha)2:Lla=sum(sum(x.*d(beg,:)));3:Lne1=sum(delta*x*(sum(x,1)'./q_xu));4:Lne2=sum(sum(x(s+1:end,:).*d(en,:)));5:F1=Lla+Lne1+Lne2;距離成本6:Tla=Lla/v;7:Tne1=Lne1/v;8:Tne2=Lne2/v;9:T_wk=sum(x*T_wk);10:T_c=M*mu;11:F2=Tla+Tne1+Tne2+T_wk+T_c;時(shí)間成本12:F3=sum((sum(x,1)'*P./(c/sum(c)*M*P)));充電站設(shè)備利用13:F=alpha(1)*F1+alpha(2)*F2+alpha(3)*F3;目標(biāo)函數(shù)14:M=100;15:N=7;16:v=30;17:P=30;18:data;19:[F_max,F1_max,F2_max,F3_max]=optimization(xinit(beg,:),beg,en,d,M,N,s,delta,q_xu,v,mu,T_wk,P,c,alpha);20:Nchromo=50;21:MaxGen=2500;22:Pc=0.85;23:Pm=0.01;24;Er=0.05;25:visualization=1;26:alpha1=alpha./[F1_max;F2_max;F3_max];1.5.3性能分析在上述部分都完成后,開始輸出結(jié)果,場(chǎng)景代碼如下:Algorithm11main1:[BestChrom]=GeneticAlgorithm(Nchromo,M,N,MaxGen,Pc,Pm,Er,...2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論