王 爍,王卓城,杜江帆,段鳳熙,黃惠倩,蔡偉鴻
(1.廣東電網(wǎng)有限責任公司汕頭供電局,廣東 汕頭 515041;2.汕頭大學數(shù)學與計算機學院計算機系,廣東 汕頭 515063)
隨著電力等清潔能源受到越來越多關注,電力系統(tǒng)負荷與日俱增,用戶用電數(shù)據(jù)海量增長,政府及用戶對電力企業(yè)的電力信息調度系統(tǒng)的智能化建設提出了更高的要求.為了促進電力供需平衡,保障電網(wǎng)穩(wěn)定運行,國內外學者主要圍繞需求響應和有序用電提出解決方案.需求響應手段包括市場化調整、補貼激勵、分時電價等.當靈活需求響應仍不能滿足電網(wǎng)的穩(wěn)定運行時,就需要有序用電手段的參與,維護供用電秩序平穩(wěn)有序的管理工作.有序用電的主要措施有削峰填谷、錯峰避峰、拉閘限電等.如何在衡量高效性和公平性的基礎之上選出參與有序用電的用戶組合以填補負荷缺口,是一個值得研究的重要問題.
許多實際的工程和管理問題可以被提煉為優(yōu)化問題,通過優(yōu)化方法快速找到最優(yōu)解決方案,以實現(xiàn)最佳效益,并最大限度地提高生產(chǎn)效率[1].在最近幾年中,隨機搜索優(yōu)化算法備受關注,因為它可以高效地解決現(xiàn)實世界中的復雜優(yōu)化問題,具有求解準確度高、速度快、成本低和強魯棒性等優(yōu)點.相比于傳統(tǒng)的優(yōu)化算法,隨機搜索算法較少關注目標問題的梯度信息,并且易于進行計算機編程實現(xiàn)[2].在諸多隨機搜索算法中,群體智能優(yōu)化算法(Swarm Intelligence Optimization Algorithm,SIOA)備受科學研究者的關注和改進. SIOA 是參考個體之間為了求得生存和發(fā)展而展現(xiàn)出獨有的協(xié)同自適應行為,如覓食、遷徙、求偶等,來對復雜問題進行求解.例如,受螞蟻搜索行為啟發(fā)的蟻群優(yōu)化算法對結構優(yōu)化問題[3]、交通區(qū)域控制問題[4]以及基因組優(yōu)化問題[5]等都具有良好的應用效果;粒子群優(yōu)化算法對雙邊規(guī)劃問題[6]、電力系統(tǒng)[7]、海洋石油存儲[8]和圖像處理等[9]問題的解決帶來了便利.其中,在電力領域,大量研究成果表明個體間相互作用所構成的群體行為對解決智能電網(wǎng)系統(tǒng)的復雜優(yōu)化問題十分有效.因此,SIOA 的不斷發(fā)展和廣泛應用為電力系統(tǒng)優(yōu)化問題提供了新思路.
禁忌搜索算法(Tabu Search,TS)是一種啟發(fā)式鄰域搜索算法.該算法從迭代中的可行解開始,依照預定義的移動策略生成一組相鄰解,最后使用其最佳鄰域解替換可行的解決方案[10].同時,禁忌搜索中的鄰域解提供了同時評估多個目標函數(shù)的機會,因此它可被用于解決多目標優(yōu)化問題.Moch 等將禁忌搜索過程和遺傳算法相結合,以解決最大限度減少流水車間調度的單目標優(yōu)化問題,平衡探索和開發(fā)能力[11].Maria da 和Luisa等提出一個搜索算法來設計最低成本的循環(huán)配水網(wǎng)絡,在經(jīng)典配水網(wǎng)絡案例上產(chǎn)生一個更高質量的解決方案[12].Martínez-Puras 和Pacheco 提出了一種周期性車輛路由問題的解決方案,該方法結合了禁忌搜索和多目標自適應記憶編程策略,并與非主導排序遺傳算法相比,表現(xiàn)出更好的性能[13].
如文獻所述,禁忌搜索具有很強的本地搜索能力,在解決大規(guī)模的復雜優(yōu)化問題上非常有競爭力[14].然而,盡管它在單目標優(yōu)化問題中很受歡迎,但使用多目標版本的禁忌搜索來處理有序用電中的用戶組合調配負荷缺口問題的成果較少.因此,為了加強禁忌搜索在多目標問題上的應用,同時,為了滿足智能電網(wǎng)安全、可靠、高效的需求,本文提出了一種基于改進的禁忌搜索算法,用于搜索多目標電網(wǎng)用戶組合的最優(yōu)解.
在有序用電項目中,主要有兩種角色,一是電能供應商,二是使用電力的用戶,一般在存在負荷調控潛力的用戶群體中挑選.在電力需求響應政策無法維持電網(wǎng)穩(wěn)定運行時,為了協(xié)調好供應方和需求方之間的關系,將啟動有序用電方案.供電方先對用戶電力調度能力進行預測,即用戶即將可能上調或減少的用電量.供電方根據(jù)電力主管部門下達的網(wǎng)供指標選擇需要調整用電量的用戶,在滿足網(wǎng)供指標的情況下,選擇最優(yōu)用戶組合來最小化總用電量.確定用戶組合后,供應方會告知用戶電力目標,用戶根據(jù)自身情況自愿參與需求響應.
為了便于供電方有效安排有序用電,選出同時滿足指定條件的用戶組合,需要滿足以下條件:
(1)所選擇用戶電力調度能力的組合必須超過且盡可能接近網(wǎng)供指標,網(wǎng)供占比設置為100%-105%
用戶電力調度能力由電力企業(yè)提供,描述用戶可能增加或減少的用電負荷,用以填充負荷缺口.日網(wǎng)供指標是由電力主管部門下達,在保證電力系統(tǒng)可以穩(wěn)定運行之下規(guī)劃的指標,代表著電力系統(tǒng)當日可以提供的總電量.為了防止用電量使用不足導致的浪費,安排的用戶組合必須超過指標.同時,由于用戶不一定會根據(jù)電力企業(yè)的要求嚴格執(zhí)行,本文上調網(wǎng)供占比至105%以保證模型的可擴展性.網(wǎng)供占比為用戶實際用電量占網(wǎng)供指標的百分比,描述了用戶的具體實施情況,用來衡量算法在有序用電問題上的有效性.
(2)在有序用電任務較緊迫的情況下,優(yōu)先考慮調度的高效性
優(yōu)先考慮高效性時,算法要求盡可能讓較少的用戶被選擇,即盡量選擇用電預測可調度負荷較大的用戶,以減少供電企業(yè)員工的工作量,高效調配用電用戶來填充負荷缺口.
(3)在有序用電任務能允許更靈活的時間計劃時,優(yōu)先考慮調度的公平性
優(yōu)先考慮公平性時,算法要求下次調度不再選擇最近被選擇過的用戶.盡量避免部分可被分配且有被調度期望的用戶長時間不被選擇,同時避免部分可調度負荷較大的用戶反復被選擇,保證用戶友好性.
根據(jù)1.1 節(jié)和1.2 節(jié)對項目模型和約束條件(1)的描述,本文需要在盡量滿足供電方和需求方雙方需求的條件下,選擇出最優(yōu)的用戶組合,具體的目標函數(shù)如式(1)所示.
其中,N 表示用戶總數(shù);ei表示用戶i 的電力調度能力;xi表示用戶i 是否被選中,1 代表被選中,0 代表未被選中;T 表示網(wǎng)供指標.第一個約束條件表示所選中用戶組合的電力調度能力之和不得少于網(wǎng)供指標.
根據(jù)1.2 節(jié)對約束條件(2)和約束條件(3)的描述,本文模型還需要同時滿足電力分配的高效性和公平性,因此設置一個適應度函數(shù)以評判所選用戶對于約束條件的匹配程度,具體的適應度函數(shù)的數(shù)學表達式如式(2)所示.
其中,ti表示用戶i 的等待時間,即距離上一次被調配的間隔天數(shù);e'i表示歸一化后的用戶i 的電力調度能力,歸一化調整電力調度能力至與等待時間同一數(shù)量級;w1、w2是常數(shù),分別代表了用戶等待時間和用戶電力調度能力的權重. 需要優(yōu)先考慮公平性時,w1>w2;需要優(yōu)先考慮高效性時,w1<w2,具體數(shù)值根據(jù)實際情況設定.
禁忌搜索是一種基于局部搜索的元啟發(fā)式算法,由弗雷德·W·格洛弗(Fred W.Glover)在1986 年首次提出[15].該方法不要求獲得最優(yōu)精確解,而是獲得次優(yōu)解的近似方法.TS 算法屬于迭代尋優(yōu)算法,算法從初始可行解開始,通過最大下降來找到更好的解.與傳統(tǒng)的最大下降搜索方法不同,TS 算法采用靈活的短期記憶系統(tǒng)來防止重復搜索[16].禁忌列表中保存的解決方案在下次篩選最優(yōu)解候選時將不再錄用,這些解決方案被稱為禁忌.而且TS 算法允許回溯到之前的解,這種能力允許所得解向客觀價值惡化的方向移動搜索. 因此,它有望從局部最小值中逃逸出來,走向全局最優(yōu)解,最終獲得更優(yōu)的解[17]. TS 算法主要由禁忌列表(Tabu List,TL)約束和與約束相關的特赦水平(Aspiration Level,AV)兩部分組成,禁忌列表是用來限制搜索過程中重復探索已經(jīng)搜索過的解,特赦水平是用來避免陷入局部最優(yōu)解的限制條件.通過靈活地設置禁忌列表和特赦水平,可以有效地平衡全局搜索和局部搜索,不斷地搜索鄰域解來逐步改進當前解,從而找到滿意的解.
TS 算法先隨機生成一個可行解,并利用鄰域搜索方法在當前解的鄰域內探索相鄰解,直到找到滿足特定條件的解為止. 在搜索相鄰解的過程中,如果該解不在禁忌列表(TL)中,或者雖然在TL 中但符合特赦水平,就接受該解并對其進行評估. 在生成的相鄰解中,選擇目標函數(shù)值最佳的鄰域解作為下一個解,直到達到預定的停止條件.禁忌搜索算法的算法流程如圖1 所示.禁忌搜索算法的偽代碼如下所示:
圖1 禁忌搜索算法流程圖
禁忌搜索具有避免陷入局部最優(yōu)解的優(yōu)點,通過由禁忌表構成的短期記憶系統(tǒng)防止重復搜索.對于低維度問題,禁忌搜索算法可以得到不錯的結果.然而,對于大型問題,禁忌搜索算法可能會受到限制,因為其需要占用大量的資源來處理解空間.與此同時,對于一個SIOA 來說,初始化的好壞在一定程度上決定了算法的優(yōu)化性能.禁忌搜索算法的初始化是以隨機的方式產(chǎn)生的,當目標值相對數(shù)據(jù)較小,且簡單隨機所選出的初始解距離最優(yōu)解距離非常遠時,在可行解的鄰域內很難搜索到最優(yōu)解.有一種新穎的啟發(fā)式算法:野狗優(yōu)化算法,在大量基準測試函數(shù)中與其他經(jīng)典的啟發(fā)式算法相比具有明顯的競爭力,可以最有效地達到全局最優(yōu)且平均絕對誤差最小,在迭代的初始階段就能迅速收斂[18].野狗優(yōu)化算法的迭代機制非常適合用來改進禁忌搜索算法上的缺陷.因此,本文選用野狗優(yōu)化算法來改進禁忌搜索算法的初始化階段,以選出更優(yōu)的初始可行解來提高算法性能.
野狗優(yōu)化算法(Dingo Optimization Algorithm,DOA)是一種由澳洲野狗的狩獵策略啟發(fā)的群體智能優(yōu)化算法,該算法根據(jù)野狗的社交行為,設計了三種策略,分別為群體圍剿、單獨攻擊、清掃行為.同時,該算法中加入了生存概率策略[18].以上多策略形式給DOA 算法帶來快收斂的優(yōu)勢.DOA 算法的流程如圖2 所示.
圖2 野狗優(yōu)化算法(DOA)流程圖
由于啟發(fā)式算法只求找到一個次優(yōu)解,通常采用貪心策略或局部搜索策略,并對問題進行一定程度的簡化,從而使問題變得更易處理,這導致容易陷入局部最優(yōu)成為了大部分啟發(fā)式算法難以避免的通病.尤其是收斂速度較快的算法,可能會過早地收斂到局部最優(yōu)解.因此,即使DOA 在效率上比其他啟發(fā)式算法有明顯的優(yōu)勢,仍存在達不到全局最優(yōu)的可能.
避免陷入局部最優(yōu)的最好方法就是隨機,具體原則主要有三類:越隨機越好、越不隨機越好、二者平衡.通常情況下,第一類可以提高搜索的魯棒性,稍微改善算法性能,但過多的隨機性可能導致搜索過程變得盲目和低效;第二類是在搜索過程中加入更多的啟發(fā)式信息或者約束,使搜索過程更有針對性;將二者適當調和則會帶來綜合性的飛躍.與混沌理論有關的萊維飛行算法正是一種結合了隨機性和非隨機性的改進[19],廣泛應用于對隨機和偽隨機自然現(xiàn)象的模擬.該算法在隨機步長上進行變異,采用了短距離搜索和長距離行走相間的方式,在隨機行走的過程中存在相對較大的幾率出現(xiàn)大跨步,有助于算法局部最優(yōu)解的逃逸[19].因此,本文使用萊維飛行對DOA 算法每輪迭代得到的次優(yōu)解進行擾動操作,防止其陷入局部最優(yōu).
萊維飛行的軌跡由式(3)模擬.
其中,xi(t)代表第t 代的第i 個解;l 是控制步長的權重;⊕是點乘;表示服從萊維分布的路徑.由于萊維穩(wěn)定分布非常復雜,目前主要使用Mantegna 算法來模擬[20],由式(4)計算步長.
其中,μ 和v 服從正態(tài)分布;γ 是一個常數(shù)因子,通常取值為1.5.
分別對萊維飛行策略和普通隨機策略進行仿真,仿真步長為1 000,結果如圖3 所示.由于特殊的步長變異方式,萊維飛行同時存在足夠的隨機變化和更大的搜索范圍,小步長有利于隨機在當前最優(yōu)解附近搜索,而大步長有利于跳出局部最優(yōu)、進行全局搜索.
圖3 萊維飛行策略和普通隨機策略仿真
DOA 算法跟其他算法相比在收斂速度上有明顯優(yōu)勢,因此陷入局部最優(yōu)的概率也更大.使用萊維飛行對DOA 算法改進得到LDOA 算法,LDOA 算法的流程圖如圖4 所示,在未達到最大迭代次數(shù)且適應度值變化趨于平緩時,在下一輪迭代前根據(jù)式(3)使用萊維飛行策略優(yōu)化當前解,可以達到防止算法陷入局部最優(yōu)的目的.
圖4 使用萊維飛行策略改進的野狗優(yōu)化算法(LDOA)算法流程圖
為了盡可能避免隨機初始解導致的禁忌搜索收斂速度較慢,本文提出使用改進的野狗優(yōu)化算法對禁忌搜索進行種群初始化,提出一種改進的禁忌搜索算法(LDOA-TS),該算法的算法流程圖如圖5 所示.
圖5 改進的禁忌搜索算法流程圖
LDOA-TS 算法的偽代碼如下所示:
使用萊維飛行改進野狗優(yōu)化算法得到萊維野狗優(yōu)化算法(LDOA),使其容易跳出局部最優(yōu).然后使用LDOA 算法來優(yōu)化禁忌搜索的初始化部分得到LDOA-TS 算法,降低禁忌搜索算法由初始化不佳導致的最優(yōu)解不穩(wěn)定的問題,同時加快了禁忌搜索的收斂速度.給禁忌搜索帶來較大的提升.
為了考察本文提出的LDOA-TS 算法的性能,本文將設計消融實驗和對比實驗.結合本文模型的要求以及現(xiàn)有的啟發(fā)式算法在解決優(yōu)化問題時的參數(shù)設置,設置具體參數(shù)如表1 所示.
表1 實驗參數(shù)設置
本文以廣東省汕頭市為例,使用南方電網(wǎng)提供的實際生產(chǎn)數(shù)據(jù),對上述算法進行實例分析驗證.為了更好地驗證本文設計的混合禁忌野狗優(yōu)化算法在不同數(shù)量級的數(shù)據(jù)上具有的實用價值,實驗將數(shù)據(jù)集篩選為某小區(qū)(50 戶)、某街區(qū)(500 戶)、某行政區(qū)(5 000 戶)分別進行實驗.為了方便數(shù)據(jù)處理,將用戶電力調度能力數(shù)據(jù)映射到[0,1]范圍內.由公式(5)(6)實現(xiàn),power 代表用戶用電調度能力,normalized_power 代表歸一化后的用戶用電調度能力,wait_days 代表用戶未被調度的天數(shù),normalized_wait代表歸一化后的未被調度天數(shù).
為了驗證算法的各個優(yōu)化部分對于算法的提升效果,本文對算法設置對照組,設計TS 算法、DOA 算法、LDOA 算法、DOA-TS 算法作為LDOA-TS 算法的消融實驗.為了驗證本文算法(LDOA-TS)的有效性,將本文的LDOA-TS 算法與經(jīng)典的人工魚群算法(AFSA)[21]、使用萊維飛行改進的遺傳算法(LGA)[22]、蜜蜂算法(BA)[23]、蟻群算法(ACO)[24]、細菌覓食優(yōu)化算法(BFOA)[25]進行對比.同時,為了避免隨機性對尋優(yōu)結果的影響,實驗以不同的用戶數(shù)量和對應指標各個算法均獨立運行100 個周期,并分別記錄平均指標占比、平均方差、平均適應度值.其中,指標占比是指算法選出的用戶電力調度能力和占網(wǎng)供指標的百分比,可以反映出結果數(shù)據(jù)的達標程度,平均方差用來反映算法的穩(wěn)定性,平均適應度值越大證明越符合用戶數(shù)量少、等待時間短的要求.
圖6 是禁忌搜索算法(TS)和改進的禁忌搜索算法(LDOA-TS)在相同條件下,分別運行100 個周期的平均指標占比(Percentage)的結果圖.圖6(a)是N=50、Target=100的結果,圖6(b)是N=500、Target=1 000 的結果,圖6(c)是N=5 000、Target=10 000的結果.將數(shù)據(jù)進行對比,可以看出LDOA-TS 算法的魯棒性比TS 算法更好,且用戶數(shù)量規(guī)模越大,優(yōu)勢越明顯.
圖6 TS 算法和LDOA-TS 算法在不同條件下的平均指標占比
表2 展示了當N=50,Target=100、N=500,Target=1 000、N=5 000,Target=10 000 時,各個算法運行100 個周期的平均指標占比(Percentage)、平均標準差(σ)、平均適應度值(Fitness).在用戶數(shù)量較少時,各個消融算法在平均指標占比上基本滿足條件,LDOA-TS 算法、DOA-TS 算法、TS 算法滿足程度最高,平均適應度值也最高,更好地平衡供需雙方的需求.而LDOA-TS 算法、DOA-TS 算法的平均標準差明顯小于其他算法,證明穩(wěn)定性更高.此時,與DOA 算法相比,LDOA 算法的平均標準差優(yōu)勢不明顯.隨著用戶量上漲,LDOA-TS 算法的穩(wěn)定性展現(xiàn)出明顯的優(yōu)勢.當用戶數(shù)較大時,與DOA 算法相比,LDOA 算法的平均標準差明顯較小.由此可以證明萊維飛行對野狗優(yōu)化算法改進的實效性,而融合了萊維飛行的野狗優(yōu)化算法對禁忌搜索算法的優(yōu)化也很明顯.
表2 不同用戶數(shù)量級求解問題的消融實驗結果
圖7 展示了N=50,T=100 時,各個算法的平均指標占比和適應度值在迭代過程中的變化.由圖7 顯示的實驗結果可以看出,在用戶量較小的條件下,各個算法都能滿足指標占比不小于100%并且不大于105%的要求,且盡可能接近100%的供電方需求.與TS 算法相比,DOA 算法的初始化解明顯更接近于最優(yōu)解,LDOA 算法和LDOA-TS算法更甚,且明顯在較少的迭代次數(shù)內收斂到最優(yōu)值.LDOA 算法和LDOA-TS 算法的適應度值最高,接近DOA 算法和LDOA 算法的兩倍.
圖7 用戶量為50 的平均指標占比和適應度值變化
圖8 展示了N=500,T=1 000 時,各算法的平均指標占比和適應度值在迭代過程中的變化.當用戶量上漲時,DOA 算法、LDOA 算法、DOA-TS 算法、LDOA-TS 算法與TS 算法的對比優(yōu)勢愈加凸顯.DOA-TS 算法和LDOA-TS 算法以極低的初始值,極少的迭代次數(shù)迅速收斂到了全局最優(yōu),得到可接受的解決方案.同時,LDOA-TS 算法適應度值是最大的,表明在同時滿足參與用電量調度的用戶數(shù)量較少以及避免部分用戶等待時間過長的兩個條件下,LDOA-TS 算法的效果得到了顯著提升.
圖8 用戶量為50 的平均指標占比和適應度值變化
圖9 展示了當N=5 000,T=10 000 時,各個算法的平均指標占比和適應度值.當用戶數(shù)量和網(wǎng)供指標較大時,與TS 算法相比,DOA 算法和LDOA 算法以極快的迭代速度收斂,使得DOA-TS 算法和LDOA-TS 算法得到較優(yōu)的初始值,收斂速度也因此提升.TS 算法、DOA-TS 算法和LDOA-TS 算法的適應度值較大,其中LDOA-TS 算法的適應度值略高于DOA-TS 算法.
圖9 用戶量為50 的平均指標占比和適應度值變化
圖10 展示了將LDOA-TS 算法與多個經(jīng)典啟發(fā)式算法在不同用戶數(shù)量、和對應網(wǎng)供指標下進行的對比實驗結果.對比的算法包括:人工魚群算法(AFSA)、使用萊維飛行改進的遺傳算法(LGA)、蜜蜂算法(BA)、蟻群算法(ACO)、細菌覓食優(yōu)化算法(BFOA).
圖10 對比實驗結果
圖10(a)為N=50,Target=100 時,各迭代30 次的網(wǎng)供指標占比;圖10(c)為N=500,Target=1 000 時,各迭代50 次的網(wǎng)供指標占比;圖10(e)為N=5 000,Target=10 000 時,各迭代50 次的網(wǎng)供指標占比.觀察可得,本文的算法LDOA-TS 在與各個經(jīng)典算法的對比實驗中最快收斂到最優(yōu)解,AFSA 算法和ACO 算法次之,BA 算法、LGA 算法和BFOA 算法在收斂速度的優(yōu)勢上不太明顯.圖10(b)為N=50,Target=100時,各迭代30 次的適應度值;圖10(d)為N=500,Target=1 000 時,各迭代50 次的適應度值;圖10(f)為N=5 000,Target=10 000 時,各迭代50 次的適應度值.觀察可得,在用戶量較小時,本文提出的LDOA-TS 算法和經(jīng)典的AFSA 算法的適應度值最大,即在平衡有序用電的高效性和用戶友好性上表現(xiàn)得較好.當用戶量較大時,AFSA 算法對適應度值最大,本文提出的LDOA-TS 算法次之,BA 算法、LGA 算法、ACO 算法和BFOA 算法在適應度值上表現(xiàn)較為不佳.隨著用戶量增長,LDOA-TS 算法在平衡有序用電的高效性和用戶友好性上仍能維持較優(yōu)的水平.
由以上實驗結果可以觀察得出,LDOA-TS 算法、AFSA 算法、LGA 算法、BA 算法、ACO 算法、BFOA 算法都能基本滿足用戶用電調度能力組合盡可能接近網(wǎng)供指標的電力需求,其中LDOA-TS 在初始解的選擇、收斂速度、電力需求達標的綜合情況上表現(xiàn)得更好一些.在滿足網(wǎng)供負荷條件下,LDOA-TS 算法和AFSA 算法的適應度值是最優(yōu)的,更能平衡供需.
本文使用融入了萊維飛行的野狗優(yōu)化算法對禁忌搜索算法的初始化過程進行優(yōu)化,得到一種基于改進的禁忌搜索算法LDOA-TS,并將該算法應用于有序用電時搜索多目標電網(wǎng)用戶組合的最優(yōu)解的問題,同時選用控制變量下的4 個消融實驗和其他性能較好的算法進行比較.由實驗數(shù)據(jù)可以看出LDOA-TS 算法在求解多目標有序用電用戶組合問題上有較優(yōu)的表現(xiàn).