1 簡(jiǎn)介
本期我們介紹一個(gè)腦洞很大的算法:精子群優(yōu)化算法(Sperm Swarm Optimization,SSO)暴匠。該算法由hisham shehadeh等人于2021年提出傻粘,主要模擬了精子基于受精能動(dòng)性而使卵子受精的過程。在自然狀態(tài)下中抹腿,精子群從宮頸的低溫區(qū)域向輸卵管移動(dòng)。在輸卵管這個(gè)高溫區(qū)域中崇败,卵子正在等待群體受精。因此在算法中后室,精子對(duì)應(yīng)搜索個(gè)體,而卵子則被認(rèn)為是最佳的解決方案岸霹。
精子群優(yōu)化算法
簡(jiǎn)述公式之前,我們先看一下原文中給出的一些相關(guān)描述(就當(dāng)是知識(shí)科普吧贡避。)及設(shè)定:
(1).女性生殖系統(tǒng)內(nèi)的pH值約為4.5–5.5予弧,這表示為健康陰道的正常pH值。然而掖蛤,精子不喜歡低pH值,因此在排卵期蚓庭,陰道酸的pH值穩(wěn)定在7到14之間,這非常適合精子進(jìn)行相關(guān)生理活動(dòng)器赞。基于此惶桐,文中設(shè)定pH值在7-14之間變化。
(2).精子的頭部就像一個(gè)溫度傳感器姚糊,引導(dǎo)精子在溫暖的區(qū)域(卵子附近)進(jìn)行搜索救恨。研究人員發(fā)現(xiàn)陰道內(nèi)的平均溫度大約在35.1到37.4攝氏度之間。但是肠槽,鑒于陰道血壓循環(huán)的特例,該溫度可上升至38.5攝氏度秸仙。因此,文中設(shè)定溫度在35.1-38.5攝氏度范圍內(nèi)寂纪。
至此,我們可以注意到精子速度受陰道內(nèi)pH值和溫度的影響赌结,這對(duì)精子的運(yùn)動(dòng)能力和運(yùn)動(dòng)方向起著重要的作用。精子初速是射精后在宮頸區(qū)獲得的速度拟杉。在算法中設(shè)定射精后精子分布在子宮頸內(nèi)的隨機(jī)位置,其速度受該位置的pH值影響搬设。我們可以用下列方程式來表示初始速度:
其中撕捍,D?是速度阻尼因子,其值介于[0,1]間卦洽;Vi?為精子i?的速度;pH_Rand1為[7,14]內(nèi)一隨機(jī)數(shù)该窗。初始狀態(tài)時(shí)Vi?定義如下:
velocity = 0.3*randn(n,dim)%n為種群規(guī)模蚤霞,dim為維度
每個(gè)精子的當(dāng)前位置即是其歷史最優(yōu)位置:
式中sb_solution[]為當(dāng)前個(gè)體i所得到的歷史最優(yōu)位置,pH_Rand2為[7,14]內(nèi)一隨機(jī)數(shù)昧绣,current[]為當(dāng)前個(gè)體位置;Temp_Rand1為[35.1,38.5]內(nèi)一隨機(jī)數(shù),代表著區(qū)域溫度拖刃。全局最優(yōu)位置為:
其中,pH_Rand3央碟、Temp_Rand2分別為[7,14]、[35.1,38.5]內(nèi)的隨機(jī)數(shù)亿虽;sgb_solution[]為所有精子個(gè)體迭代至此的最優(yōu)位置苞也。記錄下兩個(gè)最優(yōu)位置后,對(duì)個(gè)體進(jìn)行位置更新:
因此個(gè)體的位置受個(gè)體歷史最優(yōu)位置收毫、最優(yōu)個(gè)體位置引導(dǎo)氓涣。SSO算法迭代偽代碼如下:
2 部分代碼
%SSO source code v2.0, Generated by Hisham A. Shehadeh, 2021.?
clear all
clc
N = 30;? ? ? ? ? ? ? ? ? ? ? ? % Size of the swarm " no of objects "
Max_Iteration? = 1000;? ? ? ? ? ? ? % Maximum number of "iterations"
Benchmark_Function_ID= 2 %Benchmark function ID
[sgBestScore,sgBest,GlobalBestCost]= SSO(Benchmark_Function_ID, N, Max_Iteration)
sgBest
sgBestScore
semilogy(GlobalBestCost,'-r');
title(['\fontsize{12}\bf Benchmark Function: F',num2str(Benchmark_Function_ID)]);
xlabel('\fontsize{12}\bf Iteration');ylabel('\fontsize{12}\bf Fitness(Best-so-far)');
legend('\fontsize{10}\bf SSO',1);
3 仿真結(jié)果
4 參考文獻(xiàn)
Mirjalili S, Lewis A (2016) The whale optimization algorithm.Adv Eng Softw 95:51–67.?
博主簡(jiǎn)介:擅長(zhǎng)智能優(yōu)化算法劳吠、神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)、信號(hào)處理痒玩、元胞自動(dòng)機(jī)、圖像處理蠢古、路徑規(guī)劃、無人機(jī)等多種領(lǐng)域的Matlab仿真草讶,相關(guān)matlab代碼問題可私信交流。
部分理論引用網(wǎng)絡(luò)文獻(xiàn)堕战,若有侵權(quán)聯(lián)系博主刪除。完整代碼獲取關(guān)注微信公眾號(hào)天天matlab