何佩苑,劉 勇
上海理工大學 管理學院,上海 200093
教與學優(yōu)化算法(teaching-learning-based optimization,TLBO)是Rao 等人于2011 年提出的一種新型啟發(fā)式算法。該算法模擬教師和學生的教與學過程設(shè)計,學生不僅可以從教師的授課中獲得知識,還可以通過學生間的互動獲得知識。TLBO 算法具有參數(shù)少、結(jié)構(gòu)簡單、求解速度快等優(yōu)點,其競爭力主要來源于對教階段與學階段的巧妙設(shè)計。與其他典型改進智能優(yōu)化方法相比,TLBO 算法也展現(xiàn)了其突出的性能與優(yōu)勢。例如,與遺傳算法(genetic algorithm,GA)相比,TLBO 在教階段讓種群向最優(yōu)個體學習,從而提高了算法的收斂速度;與微粒群算法(particle swarm optimization,PSO)相比,對于單個算子,TLBO 比PSO 多引入了一個學階段,有利于提高算法的勘探能力;與布谷鳥搜索算法(cuckoo search,CS)相比,TLBO 在學階段提供了交互式學習的方法,減少了算法陷入局部最優(yōu)的概率。正是因為TLBO 具有這些優(yōu)點,自算法提出至今,學者們對它的研究從未停止。然而TLBO 算法本身也存在尋優(yōu)精度低、穩(wěn)定性差、收斂速度較慢等不足,許多學者從多個角度對其進行了改進。改進方向主要分為改進教學過程、引入權(quán)重或適應(yīng)因子和與其他智能優(yōu)化算法相結(jié)合三方面。其中,對于教學過程的改進是指在原始教階段與學階段的基礎(chǔ)上,加入自學的階段或引入新的學習規(guī)則,例如:Dong 等人提出了一種改進學階段和新穎的自學習階段的協(xié)作學習模型(collaborative learning model,CLM)。在CLM 方法中,為了有效地引導(dǎo)學習者,在自學階段,老師會根據(jù)鄰域信息自適應(yīng)地更新其位置。Ge 等人提出了一種新穎的基于自主學習的優(yōu)化算法,根據(jù)教學過程的三個階段,老師的學習、學生之間的相互學習和自我學習,對提出的算法進行了重新建模。Zhang 等人引入了具有對數(shù)螺旋策略和三角形突變規(guī)則的教與學算法來增強學階段的探索和開發(fā)能力。何杰光等人提出了一種基于多反向?qū)W習的教與學優(yōu)化算法,建立混合反向?qū)W習模型,同時增加了基于搜索邊界指導(dǎo)的自學習階段,使得算法具有更強的全局搜索和局部探測能力。Li 等人采用了額外的反饋學習階段來進一步加快收斂速度,記錄上一代教師并與當前教師進行交流,以向?qū)W習者提供綜合反饋并監(jiān)督學習方向,以避免浪費上一代的計算量。李麗榮等人在算法后期讓教師個體執(zhí)行動態(tài)隨機搜索算法,來提高最優(yōu)個體勘探新解的能力。對于引入權(quán)重或新的參數(shù)方面的改進,Verma 等人提出基于高級教學-學習的優(yōu)化算法,在該算法中引入了新的權(quán)重參數(shù),以提高準確性和加快收斂速度。Wu等人提出了非線性慣性加權(quán)基于教學的優(yōu)化算法。該算法將非線性慣性加權(quán)因子引入基本的TLBO 中以控制學習者的記憶率,并在教階段和學階段使用動態(tài)慣性加權(quán)因子來代替原始隨機數(shù)。吳聰聰?shù)热嗽凇敖獭彪A段和“學”階段引入差分算法的交叉算子,同時在精英個體周圍按正態(tài)分布進行自適應(yīng)局部搜索,提高算法的收斂速度和求解精度。許多學者為了提高TLBO 的性能嘗試將其與其他優(yōu)化算法融合:Zhai 等人在TLBO 中增加了糾錯策略和柯西分布,其中柯西分布用于擴展搜索空間和糾錯以避免彎路,從而獲得更準確的解決方案。黎延海等人將和聲搜索與教與學優(yōu)化算法相結(jié)合,提出了一種基于和聲搜索和教與學優(yōu)化的混合優(yōu)化算法,使算法能夠求解更多的較為復(fù)雜的優(yōu)化問題。李麗榮等人提出了一種融合頭腦風暴思想的改進教與學優(yōu)化算法并在算子中引入柯西變異和一個與迭代次數(shù)關(guān)聯(lián)的隨機參數(shù),以提高算法性能。Tuo 等人提出了一種混合和聲搜索算法改進的TLBO,其中,和聲算法部分主要探索未知區(qū)域,而TLBO 則旨在快速開發(fā)已知區(qū)域中的高精度解決方案。
TLBO 作為一個以人為活動主體,模擬教學現(xiàn)象的新型啟發(fā)式算法,學者對其的改進主要集中在模擬教學過程和與其他算法結(jié)合上。然而對于人的心理情感因素考慮得卻很少,例如從人的角度出發(fā)考慮心理因素對行為結(jié)果的影響;不同性格的個體在相同環(huán)境中所呈現(xiàn)出的狀態(tài)不同等。這樣改進使得算法在尋優(yōu)性能上有一定提高,但穩(wěn)定性和收斂速度方面仍有上升空間。
為了進一步提高算法的性能,本文聚焦社會心理學,考慮人的情感與行為,模擬教學過程中人的心理因素對結(jié)果產(chǎn)生的影響。將社會心理學理論應(yīng)用于算法改進之中。在教階段中加入“期望效應(yīng)”理論。該理論指在人際互動過程中,一方對另一方有期待,那么懷有期待的一方便會按照他所期待的那樣對待另一方,從而引起另一方行為上的改變。在算法中的體現(xiàn)為教師個體對適應(yīng)度值好的學生進行一對一教學,被一對一教學的學生受到教師的輔導(dǎo),也改變自己的學習行為,開始向其他同學學習。在學階段中加入“場獨立-場依存”理論。該理論根據(jù)人對外部環(huán)境的不同依賴程度把人們的認知方式分為“場獨立型”和“場依存型”兩種。從現(xiàn)實情況出發(fā),考慮到不同學生的認知風格不同,模擬了場獨立型和場依存型的學生,對其采用不同的學習策略。學生在經(jīng)過教師教學和同學互學后,需要對知識點進行消化,對自身的排名進行評估。根據(jù)排名情況延用或及時調(diào)整學習方法,因此在學階段之后加入自我學習方法調(diào)整階段。心理學中存在班杜拉“自我調(diào)節(jié)理論”,該理論表明自我調(diào)節(jié)包括自我觀察、自我判斷、自我反應(yīng)三個過程。根據(jù)此理論成績對處于不同位置的學生采用不同的自我調(diào)節(jié)策略,以求達到更好的狀態(tài)。最后使用一系列測試函數(shù)證明改進算法無論在尋優(yōu)精度還是收斂速度方面,均獲得了較優(yōu)的表現(xiàn)。
在算法改進中加入社會心理學,對于智能優(yōu)化算法改進領(lǐng)域也具有一定的創(chuàng)新。由于人是一個復(fù)雜的系統(tǒng),受到心理狀態(tài)的影響,會及時采取措施調(diào)整行為來尋求自我保護感。因此,與其他智能優(yōu)化算法的改進方式相比,融入人的心理因素可以使得算法改進更加靈活,更好平衡算法全局和局部搜索。
TLBO 是Rao 等人模擬班級教學過程中的教師教學和學生學習兩個階段設(shè)計出來的算法。它將整個種群充當班級,種群中最優(yōu)秀的個體充當老師,其他個體充當學生。算法分為“教階段”和“學階段”?!敖屉A段”意味著班集體向老師學習;“學階段”意味著同學之間相互學習。通過這兩個階段的協(xié)同進化,從而提升種群的整體水平。本文將總的學生數(shù)量(即種群大?。┯洖?,每個學生所學科目的數(shù)量(即個體的維度)記為。每個學生記為X={x,x,…,x},用適應(yīng)度函數(shù)(X)表示學生的成績,適應(yīng)度值越好,表明該學生成績越優(yōu)秀。算法具體內(nèi)容表述如下。
在教階段,每次迭代中適應(yīng)度值最好的個體將被選為教師,教師向?qū)W生傳授知識來提高全班的平均成績,他希望班級整體的平均位置向自身靠近。因此教學方式設(shè)計由式(1)給出:
其中,X表示學生經(jīng)過教階段學習之后的新狀態(tài);X為學生學習前原始狀態(tài);r為[0,1]上的隨機數(shù);為教學因子,反映教師對于班級平均值的影響程度,一般取1 或2。
教階段完成后,學員更新知識儲備,每個學員根據(jù)新狀態(tài)和原始狀態(tài)的成績來決定是否要更新。以最小化問題為例:
這個階段模擬的是課堂結(jié)束后,學生之間相互學習的過程。學生為了進一步提高自身的學習水平,與班級中的其他個體進一步交流。學生隨機選擇學生,比較兩個學生的適應(yīng)度值,用優(yōu)秀學生的位置減去次優(yōu)者。以最小值優(yōu)化問題為例,采取如下方式進行學習:
其中,rand為[0,1]上的隨機數(shù)。
學階段結(jié)束后對學生再次執(zhí)行與教階段相同的更新操作。
為了進一步提高算法的性能,本文從人的情感心理角度出發(fā),結(jié)合社會心理學理論對教與學算法的三方面進行了改進。首先在教階段引入“期望效應(yīng)”理論,承受不同程度期望的學生將采取不同的學習策略。在學階段引入“場獨立-場依存”理論,將不同類型的學生學習方式的差異區(qū)分開來??紤]到現(xiàn)實教學情況,在教階段與學階段之后加入自我學習方法調(diào)整階段,用于及時調(diào)整學生的學習方法。
在日常教學中,教師總是會對成績相對優(yōu)秀的學生有更高的期望。為了使其獲得更好的成績,教師會采取一對一教學或開設(shè)提優(yōu)課等方式。成績較好的學生受到教師的重點關(guān)注后,為了不辜負老師的期望,會采取積極的措施更加刻苦地學習。例如采取增加學習時間、多與同學交流學習經(jīng)驗等方式來提升自己。這一現(xiàn)象在社會心理學中被稱為“皮格馬利翁效應(yīng)”,即“期望效應(yīng)”。期望是對自己或他人的一種判斷,希望自己或他人達到某種目標或滿足某種行為預(yù)期。由期望而產(chǎn)生的行為結(jié)果就是期望效應(yīng)。期望強調(diào)的是個體心理激發(fā)的活動過程,而期望效應(yīng)則側(cè)重因為心理激發(fā)而產(chǎn)生的行為結(jié)果。哈佛大學教授J.Sterling Uvillgston 將該理論引入企業(yè)管理實踐之中,結(jié)果表明:管理人員對下屬的期望以及對待下屬的方式在很大程度上確定了這些下屬的工作績效和職業(yè)進步。受此啟發(fā),對算法做出如下改進:將成績在班級平均分以上的學生歸為優(yōu)秀學生,對其采取教師一對一教學和向其他同學學習經(jīng)驗相結(jié)合的方法進行學習,如式(3)所示:
對于成績在班級平均分以下的同學,將按照式(4)進行學習:
其中,X與X分別為班級里任意兩名同學的狀態(tài),為班級同學的平均水平。當學生的適應(yīng)度值高于平均值時,將承受教師的高期望。由式(3)可以看出,學生為了滿足教師的期望,在學習過程中除了依賴自身知識狀態(tài)X,還采取了向教師一對一學習r×(-X)和向同學學習r×(X-X)的措施。對比式(1),學生在學習中參考了教師與班級平均的差值,在這種學習方式下,優(yōu)秀學生提高成績的空間有限,會降低算法向最優(yōu)解收斂的速度。在改進式(3)中加入向教師一對一學習的策略,增加了教師對于學生的影響,這樣設(shè)計不僅可以讓優(yōu)秀學生快速向教師靠近,還可以使學生跳出自身狀態(tài)帶來的局限性,解決算法局部搜索能力差的問題。此外,為了加快算法的收斂性,式(3)中加入了向同學學習的策略。平均分以上的學生與班級中任意同學交流經(jīng)驗,在提升自身的同時,也有助于他人成績的提升,從而縮小班級差距,加快整個種群向最優(yōu)值收斂的進程。當學生適應(yīng)度值低于平均值時,他不承受教師的高期望,因此他的學習方式不會發(fā)生改變。
在標準的教與學算法的學階段中,學生個體采取統(tǒng)一方式進行學習。然而在現(xiàn)實情況中,不同性格的學生采取的學習方式不同。有的學生性格內(nèi)向,較為獨立,傾向于在獨自學習的過程中積累經(jīng)驗;有的學生性格外向,善于社交,喜歡在與人探討交流問題的過程中收獲知識。這兩類學生在社會心理學中分別被稱為“場獨立”與“場依存”類型學生。場獨立性與場依存性這兩個概念來源于威特金(Witkin)對知覺的研究。場獨立性者對客觀事物作判斷時,傾向于參照自身,不易受外來因素影響和干擾;場依存性者傾向于參照外部對信息進行加工,獨立性較差且容易受外界的影響。在學習活動中,由于認知風格的差異,場獨立型和場依存型的學生傾向于不同的學習策略。場獨立型學生的知識來源主要由自身知識積累和與極少數(shù)同學討論這兩方面組成;場依存型學生的知識主要來源于部分自身知識和廣泛社交討論。在算法設(shè)計方面,考慮到不同學生在學階段受外界影響程度不同,隨機生成0-1 矩陣(),模擬場獨立型(為1)和場依存型(為0)的學生,對其采取不同的學習策略:場獨立型學生采取式(2)的學習策略進行學習;場依存型的同學按照如下策略進行學習:
由式(5)可知,X、X、X為隨機選中的三名學生,r與r為[0,1]上的隨機數(shù),為比例因子,用于降低對上一時刻自身狀態(tài)的保留率。經(jīng)過多次得出將值設(shè)為0.3 時,算法的運行結(jié)果最好。當()為1 時,代表學生個體X為場獨立性,在學階段按照原始算法的學習方式進行學習,對上一時刻自身狀態(tài)完全保留。當()為0 時,代表學生個體X為場依存性,在學階段除了隨機挑選一名學生學習以外,還會與其他同學交流經(jīng)驗,并吸收部分他人知識用于提高自身成績。此時,學生X僅保留部分自身狀態(tài)。與原始算法中學階段相比,這樣設(shè)計削弱了上一時刻狀態(tài)的影響力,同時增強了個體間的交流,降低了算法陷入局部最優(yōu)的概率,并且維持了解的多樣性。由于另一半粒子完全保留自身狀態(tài),算法的收斂速度也得到了保障。
為驗證改進學階段對學生多樣性的影響,在學階段設(shè)置程序斷點,運行結(jié)果如圖1 所示。
圖1 學生的多樣性對比圖Fig.1 Comparison chart of students'diversity
選取部分測試函數(shù),在算法迭代30 次時繪制學生位置圖,將改進算法與原始TLBO 進行對比,可以發(fā)現(xiàn)學生的多樣性得到了大幅提升。
學生在經(jīng)過教師教學和與學生交流兩個階段的學習后,需要對自身的學習情況有一個精準的認識。因此自我評估與調(diào)節(jié)在高效學習中扮演者不可或缺的角色。班杜拉在社會學習理論中提出了自我調(diào)節(jié)理論,強調(diào)的是個人的內(nèi)在強化過程。自我調(diào)節(jié)包括自我觀察、自我判斷和自我反應(yīng)三個基本過程。人們根據(jù)社會活動的標準對自我行為進行觀察,并判斷自我行為與標準之間的差距對自我做出肯定或否定的評價。依據(jù)自我評價,個體會產(chǎn)生各種內(nèi)心體驗,如自我滿足、自怨和批評等,這是自我調(diào)節(jié)的最終結(jié)果。人們可以利用自我調(diào)節(jié)結(jié)果,采取更加適宜的策略以達到目的?;诖死碚?,本文在教階段和學階段之后加入自我學習方法調(diào)節(jié)階段,為學生提供一個自我反省并及時調(diào)整學習策略的平臺。自我學習方法調(diào)節(jié)階段具體設(shè)置如下:經(jīng)過教階段和學階段之后,計算整體學生的平均分,將成績高于平均分的個體歸為優(yōu)秀個體,并計算優(yōu)秀學生的平均分。根據(jù)整體平均分和優(yōu)秀學生平均分將班級同學分為三大類:
當學生成績高于優(yōu)秀學生的平均分時,該學生為優(yōu)等生,證明其學習方法是高效的,因此學生將沿用自己的學習方法繼續(xù)學習,如式(6)所示:
當學生成績低于優(yōu)秀學生平均分,但高于班級整體平均分時,該生為普通生,證明其學習方法部分有效,但仍有改進空間,可以微調(diào)學習方法以獲得更好的成績,如式(7)所示:
當學生的成績低于班級平均分時,證明自身學習方法沒有效果,需要很大程度地改變學習策略,此處用反向?qū)W習的方法,如式(8)所示:
另外,由于TLBO 算法思想源于模擬班級的教學過程,為更好模擬教階段中學生的新狀態(tài),引入自適應(yīng)學生更新因子,以期待算法獲得更好的效果。
在教師“教”的過程中,新狀態(tài)學生的知識儲備是由自身原有知識與向教師學習所積累的知識兩部分組成。在學習初期,學生由于對環(huán)境和知識點存在陌生感,可能不會完全吸收教師的授課內(nèi)容。學生主要依據(jù)自身的知識儲備進行學習。隨著學習的深入,學生逐漸克服陌生感,進入學習舒適區(qū),通過與教師之間建立的默契,可以迅速縮短與教師之間的差距。然而由式(1)中學生的新狀態(tài)總是完全依賴自身的知識狀態(tài),這樣設(shè)計可以簡化進化過程,降低學生狀態(tài)更新的復(fù)雜度,但與現(xiàn)實情況相比存在些許偏差。故加入自適應(yīng)學生更新因子,將式(3)與式(4)修改為式(9):
其中,是非線性自適應(yīng)學生更新因子,為最大迭代次數(shù),為當前迭代次數(shù),為班級個體平均適應(yīng)度值。由式(10)可知,在算法迭代初期接近1,此時式(9)中學生對于自身知識狀態(tài)幾乎全部保留。學生有更多的自我探尋機會,可以擴大學生的探索區(qū)域,具有較強的全局搜索能力。隨著算法的不斷迭代,不斷減小,此時學生將降低對自身狀態(tài)的保留程度,吸收教師的優(yōu)點,從而迅速提升自身。同時算法的局部開發(fā)能力增強,其收斂速度和尋優(yōu)精度也得到相應(yīng)的提高。
將社會心理學理論加入到教與學優(yōu)化算法中,依據(jù)理論改進教階段和學階段,同時加入自我學習方法調(diào)節(jié)階段就構(gòu)成了基于社會心理學理論改進的教與學優(yōu)化算法。以最小優(yōu)化問題為例,SPTLBO 算法基本流程如下:
(1)初始化階段,在搜索空間內(nèi)隨機生成位學生,并計算所有學生的適應(yīng)度值。比較每個學生的適應(yīng)度值,選出最好的個體作為老師。
(2)教階段,按照式(9)生成每個學生的新位置,計算新狀態(tài)的適應(yīng)度值,根據(jù)新狀態(tài)是否優(yōu)于原狀態(tài)選擇是否更新學生狀態(tài)。
(3)學階段,隨機生成0-1 矩陣(),模擬場獨立性(為1)和場依存性(為0)的學生,對其采取不同的學習策略,按照式(2)和式(5)進行。如果(X)<(X),則X代替X。
(4)自我學習方法調(diào)整階段,計算此時全班適應(yīng)度值1,選出優(yōu)于全班平均值的個體為優(yōu)秀個體,計算優(yōu)秀集體的適應(yīng)度平均值_。根據(jù)1 和_將班上學生分成三組,分別按照不同的學習策略進行學習,具體表述如式(6)~式(8)所示。
(5)檢查結(jié)果是否滿足算法停止規(guī)則,若符合則輸出當前最優(yōu)解并結(jié)束算法,若不符合則跳轉(zhuǎn)至步驟(2)。
為了驗證算法的性能,選取了10 個低維測試函數(shù)和15 個高維測試函數(shù)作為實驗對象,共25 個。這些函數(shù)的函數(shù)名、表達式和理論最優(yōu)值如表1、表2所示(低維見表1,高維見表2)。將提出的SPTLBO與TLBO、微粒群優(yōu)化算法(PSO)、遺傳算法(GA)和免疫算法(immune algorithm,IA)進行對比實驗。本文的實驗環(huán)境:計算機CPU 為i7-8586U,內(nèi)存RAM為16 GB,操作系統(tǒng)為Windows10,編程軟件為MATLAB2018a。
表1 低維測試函數(shù)Table 1 Low-dimensional test functions
表2 高維測試函數(shù)Table 2 High-dimensional test functions
SPTLBO 與對比算法的實驗都是在最大適應(yīng)度評價次數(shù)為15 000 下進行的。其種群數(shù)量都為50,最大迭代次數(shù)為300,低維測試函數(shù)的維度為2,高維測試函數(shù)維度為100。參考現(xiàn)有研究,對算法中其他參數(shù)設(shè)置如下:PSO 中學習因子==1.5,慣性權(quán)重=0.8;GA 中變異概率=0.1,交叉概率=0.8;IA 中變異概率=0.7,激勵度系數(shù)==1。
本部分評估算法性能采用的是在相同的最大適應(yīng)度評價次數(shù)下,評估算法的尋優(yōu)精度。對于每個測試函數(shù),SPTLBO、TLBO、PSO、GA 和IA 算法均獨立運行30 次,分別得到最優(yōu)解、最劣解、平均值和標準差,如表3、表4 所示。
從表3 與表4 可以看出,無論在低維還是高維的情況下,SPTLBO 算法在最優(yōu)解、最劣解、平均值和標準差方面幾乎都優(yōu)于其他算法。當函數(shù)維度為2 時,從搜索精度來看,表3 中SPTLBO 算法指標都優(yōu)于對比算法,其中,和各項指標均為最優(yōu)值0。當函數(shù)維度為100 時,這對算法跳出局部最優(yōu)和后期勘探新解的能力有了更高的要求。由表4 可知,對于、、、、、和,只有SPTLBO 搜索到最優(yōu)值0;對于和,SPTLBO 每次運行都能搜索到最優(yōu)值;對于,SPTLBO 前三項指標的精度略低于IA,但是對比兩個函數(shù)的收斂速度(如圖2(c)所示),可以發(fā)現(xiàn)SPTLBO 收斂最快,且最終搜索到最優(yōu)值0;對于剩余測試函數(shù),SPTLBO 搜索的結(jié)果精度遠優(yōu)于其他算法,同時通過不同測試函數(shù)在測試結(jié)果中的標準差可知,SPTLBO 具有較好的魯棒性。
為了更加直觀地顯示SPTLBO 的優(yōu)化精度和收斂速度,圖2 與圖3 分別展示了低維測試函數(shù)、、、和高維測試函數(shù)、、、的收斂曲線,其中函數(shù)縱坐標取以10 為底的對數(shù)。從圖中可以看出,與其他算法相比,SPTLBO 算法收斂速度明顯較快,搜索的精度也較高。
綜合以上的對比結(jié)果,可以看出SPTLBO 算法的收斂速度和尋優(yōu)精度均較為優(yōu)秀。之所以如此,得益于在原始教與學優(yōu)化算法中加入了社會心理學理論。在教階段中加入的“期望效應(yīng)”理論,如迭代方程(9)所示。規(guī)定均分以上的學生直接向教師學習,使得每次迭代都有一半學生向教師迅速靠攏,因此加快了粒子的收斂速度。在學階段中加入的“場獨立-場依存”理論,如迭代方程(2)與(5)所示。不同類型的學生采取不同更新策略,豐富了學階段的更新方式,可以保持粒子的多樣性,避免陷入局部最優(yōu)。最后加入自我學習方法調(diào)整階段,及時調(diào)整更新策略,如迭代方程(6)~(8)所示,使得算法的尋優(yōu)性能與求解精度都得到了提高。
本文針對教與學優(yōu)化算法在求解復(fù)雜優(yōu)化問題時,尋優(yōu)精度低、收斂速度慢等缺陷,從社會心理學角度出發(fā),結(jié)合人的心理情緒變化,改進原始教與學優(yōu)化算法。在教階段引入社會心理學中“期望效應(yīng)”理論,模擬教師對于優(yōu)秀學生期望更高這一現(xiàn)象,使得適應(yīng)度值較優(yōu)的個體可以更快向最優(yōu)個體靠攏;在學階段引入“場獨立-場依存”理論,模擬不同性格的學生對于汲取知識方式存在差異這一特點,從而更好地保留了結(jié)果的多樣性,避免陷入局部最優(yōu);在學階段后加入自我學習方法調(diào)整階段,讓個體根據(jù)自身排名采取不同的策略進行學習,從而有效地提高算法的尋優(yōu)精度和收斂速度。為驗證算法的性能,選取了25 個測試函數(shù)進行數(shù)值實驗。結(jié)果表明,與原始的TLBO、PSO、GA 和IA 算法相比,本文提出的SPTLBO 算法在求解低維和高維函數(shù)時,不僅收斂速度快,而且尋優(yōu)精度高,算法的穩(wěn)定性也更強。由此可見在設(shè)計算法時,考慮人類心理因素對算法性能的提升有一定作用。目前教與學優(yōu)化算法的改進很少考慮到關(guān)于人的因素,因此剖析人的心理在不同場景下的變化對于算法更深入的研究有著巨大意義。下一步的工作將深入研究心理學理論,尋找改進算法的切入點,使得算法性能更優(yōu)。例如社會認知心理學中的“心理控制源”理論,該理論根據(jù)個體對于強化物或后果是否可以由自身控制,將心理控制源分為內(nèi)控型與外控型。兩者在相同情況下會做出不同的抉擇。這一理論可應(yīng)用于教與學算法的學階段改進中,并推廣解決動態(tài)車輛路徑優(yōu)化、各領(lǐng)域參數(shù)優(yōu)化等更多復(fù)雜優(yōu)化問題。
表3 低維測數(shù)函數(shù)結(jié)果對比Table 3 Comparison of experimental results of low-dimensional benchmark functions
表4 高維測試函數(shù)結(jié)果對比Table 4 Comparison of experimental results of high-dimensional benchmark functions
表4(續(xù))
圖2 低維收斂曲線對比Fig.2 Comparison of low-dimensional convergence curves
圖3 高維收斂曲線對比Fig.3 Comparison of high-dimensional convergence curves