版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2012第四次模擬訓(xùn)練承 諾 書我們仔細(xì)閱讀了中國大學(xué)生數(shù)學(xué)建模競賽的競賽規(guī)則.我們完全明白,在競賽開始后參賽隊員不能以任何方式(包括電話、電子郵件、網(wǎng)上咨詢等)與隊外的任何人(包括指導(dǎo)教師)研究、討論與賽題有關(guān)的問題。我們知道,抄襲別人的成果是違反競賽規(guī)則的, 如果引用別人的成果或其他公開的資料(包括網(wǎng)上查到的資料),必須按照規(guī)定的參考文獻(xiàn)的表述方式在正文引用處和參考文獻(xiàn)中明確列出。我們鄭重承諾,嚴(yán)格遵守競賽規(guī)則,以保證競賽的公正、公平性。如有違反競賽規(guī)則的行為,我們將受到嚴(yán)肅處理。我們參賽選擇的題號是(從A/B/C/D中選擇一項填寫): 我們的參賽報名號為(如果賽區(qū)設(shè)置報名號的話): 所屬
2、學(xué)校(請?zhí)顚懲暾娜?參賽隊員 (打印并簽名) :1. 鄧 俊 2. 李鴻基 3. 康 東 指導(dǎo)教師或指導(dǎo)教師組負(fù)責(zé)人 (打印并簽名): 日期: 20120 年 89 月 2314 日賽區(qū)評閱編號(由賽區(qū)組委會評閱前進(jìn)行編號):20120第四次模擬訓(xùn)練高教社杯全國大學(xué)生數(shù)學(xué)建模競賽編 號 專 用 頁賽區(qū)評閱編號(由賽區(qū)組委會評閱前進(jìn)行編號):賽區(qū)評閱記錄(可供賽區(qū)評閱時使用):評閱人評分備注全國統(tǒng)一編號(由賽區(qū)組委會送交全國前編號):全國評閱編號(由全國組委會評閱前進(jìn)行編號):魚群行為的建模與仿真論文標(biāo)題摘 要本文主要對人工魚的集群行為,對天敵的有效躲避,和在集群中部分個體獲得食物信息的
3、情況下,整個魚類集群的運(yùn)動行為進(jìn)行了研究。并利用MATLAB 工具進(jìn)行了模擬仿真。針對問題一,我們對魚類的集群運(yùn)動主要提出了聚集、和鄰居速度匹配、避免碰撞三個原則。基于這三個原則建立了魚類單個個體的自治模型,每個個體通過相互作用,使集群形成。本文對三個原則的具體實現(xiàn)進(jìn)行了分析和假設(shè)。得到了計算機(jī)模擬仿真下的魚類集群圖形。針對問題二,在模型一的基礎(chǔ)上,我們增加了魚群有效逃避天敵的規(guī)則。并利用MATLAB進(jìn)行在天敵存在的情況下,魚類集群行為的運(yùn)動特征,并且得出了較好的仿真結(jié)果。針對問題三,我們建立了魚群覓食過程中的信息交流機(jī)制,得出了在部分人工魚知悉食物信息的情況下,整個魚群的運(yùn)動狀態(tài)的仿真結(jié)果。
4、XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5、XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
6、XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
7、XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8、XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
9、XXXXXX關(guān)鍵詞:集群運(yùn)動 模擬仿真 個體自治XXXXXXXXXXXXX,XXXXXXXXXXXX,XXXXXXXXXXXX一、問題的提出在動物界,大量集結(jié)成群進(jìn)行移動或者覓食的例子并不少見,這種現(xiàn)象在食草動物、鳥、魚和昆蟲中都存在。這些動物群在運(yùn)動過程中具有很明顯的特征:群中的個體聚集性很強(qiáng),運(yùn)動方向、速度具有一致性。通過數(shù)學(xué)模型來模擬動物群的集群運(yùn)動行為以及探索動物群中的信息傳遞機(jī)制一直是仿生學(xué)領(lǐng)域的一項重要內(nèi)容。根據(jù)相關(guān)資料,建立數(shù)學(xué)模型刻畫動物集群運(yùn)動、躲避威脅等行為,解決如下問題:問題一:建立數(shù)學(xué)模型模擬動物的集群運(yùn)動。 問題二:建立數(shù)學(xué)模型刻畫魚群躲避黑鰭礁鯊魚的運(yùn)動行為。問題三
10、:假定動物群中有一部分個體是信息豐富者(如掌握食物源位置信息,掌握遷徙路線信息),請建模分析它們對于群運(yùn)動行為的影響,解釋群運(yùn)動方向決策如何達(dá)成。二、基本假設(shè)1、不考慮魚的聽覺的影響;12、假設(shè)除視覺外其他感官在第一問中不考慮除視覺外其他感官的影響忽略,如嗅覺,聽覺;23、假設(shè)每條魚體型、感知能力相同;34、假設(shè)魚群在集群運(yùn)動中沒有死亡;5、每條魚并行搜索反應(yīng);46、假設(shè)魚的反應(yīng)速度很快,改每條魚改變速度所需的時間非常短;5、假設(shè)魚遇到邊界,以反射的方向反彈。三、定義符號說明符號說明二維體系中人工魚的初始坐標(biāo)人工魚的速度二維體系中人工魚速度方向與橫軸的夾角人工魚聚集的中心坐標(biāo)在感知范圍內(nèi)鄰居的
11、個數(shù)三維體系中人工魚的初始坐標(biāo)三維體系中人工魚游動的方向人工魚的能量狀態(tài)人工魚的饑餓系數(shù)四、問題的分析及模型的建立、求解4.1 對于問題一4.1.1 問題的分析關(guān)于集群行為的研究,大致可以分為三個階段:第一階段是生物學(xué)家做了大量研究,發(fā)現(xiàn)了許多生物群體特有的動態(tài)行為;第二階段是實驗物理學(xué)家和計算機(jī)專家做了許多實驗和仿真,用模擬仿生的方法證明這種生物群體現(xiàn)象可以由個體的簡單行為規(guī)律獲得;第三階段就是利用數(shù)學(xué)對群集行為進(jìn)行嚴(yán)格建模及分析。動物的群體行為是相當(dāng)于個體行為而言的。群體行為決定著個體行為的方向,個體行為是群體行為的體現(xiàn)。群體是由個體構(gòu)成的,因此,群體行為離不開個體行為但群體行為并不是個體
12、行為的簡單相加。所以我們在研究魚群集體行為的過程中,首先對群體中單個魚的行為做出研究,然后再從內(nèi)部影響和外部作用兩方面入手,分析魚群的群集行為。對群集行為的研究主要有三種方法。第一種是歐拉法,在歐拉法中,一個群體的模型中的每個個體成員不作為單個實體進(jìn)行研究,而是通過密度概念將整個群體作為一個連續(xù)集描述,歐拉法有一個明顯的缺點就是忽略了個體的特性。第二種是拉格朗日法,拉格朗日法基本的描述就是每個個體各自的運(yùn)動方程。第三類方法就是基于仿真的建模方法,基于仿真的群集模型無需建立像描述群體分布的費克方程或描述各種吸引力/排斥力作用的牛頓運(yùn)動方程,而是通過群體中的個體建立模擬實際生物個體動態(tài)行為的行為規(guī)
13、則來研究群集行為。4.1.2 基于個體自治的仿真的魚類集群行為的模型我們所進(jìn)行的魚群集群行為的仿真模型由三部分構(gòu)成:(1)環(huán)境。(2)個體。(3)行為規(guī)則。環(huán)境是個體生存的空間,個體在環(huán)境中活動,利用環(huán)境中的資源來進(jìn)行生存。個體的綜合構(gòu)成了研究的群體對象。個體的演化過程由其行為規(guī)則控制,行為規(guī)則則是決定了個體與個體之間、個體與環(huán)境之間相互作用的方式。任意時刻個體在環(huán)境中都有一個確定的位置并且由其所占據(jù)的方位來確定。(一)環(huán)境的描述首先對二維的魚群世界進(jìn)行仿真,環(huán)境應(yīng)為一個二維的有限平面區(qū)域,使用反射型邊界,當(dāng)魚游到邊界以后按照鏡子反射的方式反彈回來。我們可以把環(huán)境描述成為一個寬為width,長
14、為length的二維世界,如下圖圖1:個體及其所處環(huán)境因為計算機(jī)僅僅能處理離散的信息,所以環(huán)境也是一個離散的世界。我們用計算機(jī)屏幕上一系列運(yùn)動的點代替魚個體,給它們設(shè)置坐標(biāo)、速度等參數(shù),就可以把現(xiàn)實中的魚映射到虛擬環(huán)境中來。所有個體在該環(huán)境中游動。描述個體的位置和方向如下: (1)其中為速度方向和橫軸方向的夾角。 (2)其中,為魚的初始坐標(biāo)位置,為一段時間后,魚的坐標(biāo)位置。(二)個體描述對個體魚的建模是仿真的核心與關(guān)鍵。把每條魚看成一個人能夠自主決策的Agent,他們會根據(jù)自己的觀察來感知周圍的環(huán)境,并按照一定的規(guī)則決策。魚類個體之間的交互是由其視覺范圍的大小決定的。個體的視覺范圍是半徑為r角
15、度為300度的一個扇形。圖2:魚類的視覺范圍主體之間的交互作用是局部的,只能發(fā)生在所定義的鄰域內(nèi)。個體具有以下屬性:(1)位置:個體位置由一組坐標(biāo)(x,y)表示;(2)感知范圍:個體所能感知的范圍。個體的感知范圍取決于所定義鄰域半徑的大小,感知范圍越大,表明該個體與環(huán)境和其他個體的作用越強(qiáng)。(3)碰撞距離:個體之間的最短距離。當(dāng)個體之間的距離小于該值時,個體將朝著遠(yuǎn)離的方向游動。(4)初速度:仿真開始時,賦予每個個體的速度值,大小相等,方向相同。(5)最大速度:魚類在游動時所能達(dá)到的極限速度。(6)加速度:個體受到外界干擾時,對個體行為的改變,表現(xiàn)為的速度的改變。(7)反彈速度:個體到邊界時反
16、彈回來的速度。(三)規(guī)則描述人工魚的基本行為主要包括:(1)避開障礙物。(2)游向目標(biāo)。(3)追逐目標(biāo)。(4)離開。(5)閑逛。(6)逃逸。(7)集群。個體的行為規(guī)則主要表現(xiàn)為群體游動時的游動規(guī)則,游動規(guī)則主要包括:1聚集規(guī)則(盡量靠近鄰居)2速度匹配(盡量與鄰居的運(yùn)動方向一致)3避免碰撞(盡量避免與群體內(nèi)部和群體外部的障礙發(fā)生碰撞)在這里我們定義鄰居為如果兩個個體之間的距離小于某個給定的值,則它們互為鄰居。每條人工魚下一刻游動的方向都要受這三個因素和當(dāng)前魚的游動方向的影響,將這四個方向的平均作為人工魚下一刻游動的方向如下圖。下一刻人工魚的游動方向碰撞方向聚集方向速度匹配方向此刻人工魚的游動方
17、向圖3:人工魚下一刻的游動方向然而四個因素對魚群的影響力的大小不同,根據(jù)它們對人工魚下一刻運(yùn)動方向影響的大小進(jìn)行賦權(quán),則人工魚下一刻的運(yùn)動方向(與二維區(qū)域橫軸的夾角) (3) (4)下面分別對四條游動準(zhǔn)則分別進(jìn)行描述:(1)聚集性。每個個體都有向鄰居中心靠攏的特性,鄰居中心為感知范圍內(nèi)所有個體所在位置的平均值。 (5)當(dāng)前狀態(tài)下的人工魚相對中心位置的方向為 (6)其中,為魚群靠攏的中心,為人工魚當(dāng)前所在位置。(2)速度匹配人工魚要與鄰域內(nèi)的魚保持游動時速度大小和方向一致,速度和方向為鄰域內(nèi)的均值,則 (7) (8)為鄰域內(nèi)第條魚的位置,為鄰域內(nèi)第條魚的速度。(3)避免碰撞為了避免魚群之間的碰撞
18、。在人工魚進(jìn)入危險距離后,若即將與一條魚碰撞,設(shè)為 ,那么人工魚就以與運(yùn)動的方向垂直的方向進(jìn)行規(guī)避。若是即將與兩條魚碰撞,分別設(shè)為。則人工魚就以與運(yùn)動的合成方向相垂直的方向進(jìn)行規(guī)避。當(dāng)有條時,同樣以與條魚運(yùn)動合成方向的垂直方向進(jìn)行規(guī)避。如下圖: 人工魚的運(yùn)動合成方向規(guī)避方向圖4:避免碰撞的規(guī)避圖在三維狀態(tài)下,我們采取相想同的準(zhǔn)則,進(jìn)行模擬仿真。環(huán)境應(yīng)為一塊有限的三維區(qū)域,我們選定作為人工魚的位置,用它游動方向和軸,軸和軸的夾角作為人工魚游動的方向。聚集性的方向為人工魚和魚群中心的方向向量。速度匹配的方向為鄰居所有魚的夾角的均值。避免碰撞仍然采用合成的方法。4.1.3 模型的求解通過MATLAB
19、仿真模擬,得到在二維條件下,初始狀態(tài)的魚群,如下圖:圖5:魚群初始狀態(tài)在模型一的規(guī)則下,魚群的聚群行為圖6:二維魚群集群應(yīng)用二維的規(guī)則,同樣可以得到在三維狀態(tài)下的模擬成果圖7:魚群三維初始狀態(tài)三維集群之后的狀態(tài),如下圖圖8:三維魚群的集群4.2 對于問題二4.2.1 問題的分析在問題一的分析和模型的建立求解過程中,我們并沒有考慮人工魚群在食物鏈中受到天敵威脅的情況。魚類在海洋中有效的躲避天敵也是魚類運(yùn)動中的一項規(guī)則。所以我們在第一問的基礎(chǔ)之上建立魚類的躲避規(guī)則,重新仿真魚類集群運(yùn)動。4.2.2 模型的建立在游動規(guī)則的基礎(chǔ)上加入躲避天敵這項規(guī)則,進(jìn)一步完善模型。人工魚下一刻的運(yùn)動狀態(tài)和方向也要受
20、到天敵的影響。4 (4)躲避天敵人工魚在遭遇黑鰭礁鯊魚天敵時,迅速以與相對黑鰭礁鯊魚天敵相反的方向逃離。 (9)其中,為人工魚所在的位置,為天敵所在的位置,為人工魚遭遇天敵時逃離的方向與橫軸的夾角。在三維的狀態(tài)中,人工魚相對黑鰭礁鯊魚的向量。求出和軸,軸,軸的夾角,從而確定人工魚的逃離方向。4.2.3 4.2.3 模型的求解利用MATLAB 編程模擬仿真在二維狀態(tài)下人工魚在黑鰭礁鯊魚進(jìn)入的初始狀態(tài)下的運(yùn)動情況,如下圖:圖9:黑鰭礁鯊魚進(jìn)入的初始狀態(tài)(注:·表示人工魚,o表示黑鰭礁鯊魚)黑鰭礁鯊魚游動T時刻,人工魚對它的躲避行為,如下圖:圖10:魚群對黑鰭礁鯊魚的躲避行為(注:
21、3;表示人工魚,o表示黑鰭礁鯊魚)利用MATLAB 編程模擬仿真在三維狀態(tài)下人工魚在黑鰭礁鯊魚進(jìn)入的初始狀態(tài)下的運(yùn)動情況,如下圖:圖11:加入黑鰭礁鯊魚的初始狀態(tài)(注:·表示人工魚,o表示黑鰭礁鯊魚)黑鰭礁鯊魚游動T時刻,人工魚對它的躲避行為,如下圖:圖12:魚群對黑鰭礁鯊魚的躲避行為(注:·表示人工魚,o表示黑鰭礁鯊魚)4.3 對于問題三4.3.1 問題的分析在問題一和問題二的解決過程中,我們并未考慮人工魚的能量系統(tǒng),都是在假設(shè)人工魚不會在能量消耗下自然死亡的情況下進(jìn)行模擬仿真的。在問題三中,由于要解決對于尋求食物狀態(tài)下,集群的決策形成。因此我們考慮引入人工魚的能量消耗系
22、統(tǒng),綜合人工魚的能量狀態(tài)來形成對于食物信息的合理決策。4.3.2 模型的建立我們首先定義個體在能量系統(tǒng)中的各個要素:,(a)能量值個體能量的多少由獲得的資源量來衡量, 每個仿真周期內(nèi)個體都要消耗一定的能量,能量值的變化由新陳代謝率決定。當(dāng)個體的能量值小于或等于0時,該個體死亡。(b)新陳代謝率一個仿真周期個體所消耗的能量值。能量是維持個體在虛擬世界中生存的基本因素。(c)最大能量:個體所能擁有能量的最大值。當(dāng)個體的能量值達(dá)到該值時,停止覓食。(d)初始能量仿真開始時,個體所擁有的能量值。在獲得食物信息的情況下,在集群中知道食物信息的個體行為發(fā)生改變,表現(xiàn)為朝著食物的方向加速游動, (10)為初
23、始速度,為時刻的速度,為獲知食物信息的時刻,為當(dāng)前時刻。影響人工魚的運(yùn)動狀態(tài)的因素除了食物信息之外還有人工魚自身的能量狀態(tài)。我們用饑餓系數(shù)來表示人工魚當(dāng)前的能量狀態(tài)。 (11)其中表示人工魚的初始狀態(tài)能量,即時刻的能量。T表示發(fā)現(xiàn)食物信息的時刻。表示人工魚單位時間消耗的能量。表示人工魚能量的滿值狀態(tài)。 (12)所以如果人工魚處于饑餓狀態(tài),并且接收到食物信息,就會以尾追的狀態(tài)去尋求食物。(5)尾追魚群中的單個人工魚會向擁有食物信息的人工靠近,去尋找食物,則魚群運(yùn)動的方向是: (13)其中,為人工魚當(dāng)前所在位置。為知道食物信息的人工魚的位置。如果人工魚沒有處于饑餓狀態(tài),就會按照問題一和問題二中的規(guī)
24、則進(jìn)行游動。在三維狀態(tài)下,人工魚相對知悉食物信息的魚的向量坐標(biāo)是,求出相對于軸,軸,軸的夾角,從而確定人工魚的逃離方向。模型的求解利用MATLAB編程模擬仿真在獲得食物位置時,人工魚群運(yùn)動的初始狀,如下圖 :圖13:知悉食物初始狀態(tài)的運(yùn)動情況(注:·點表示人工魚,表示食物的位置)在T時刻,人工魚相對食物的運(yùn)動狀態(tài),如下圖:圖14:T時刻運(yùn)動情況(注:·點表示人工魚,表示食物的位置)五七、結(jié)果分析本文通過建立魚群行為仿真模型, 基于集群規(guī)則,對魚群集群,躲避天敵以及覓食行為進(jìn)行了二維圖像仿真,通過模型的進(jìn)一步分析,又將模型推廣至三維,通過設(shè)置不同的仿真參數(shù),利用計算機(jī)的仿真模
25、擬魚類個體之間的相互作用,最終達(dá)到集群形成的效果,較為真實的模擬了自然環(huán)境中魚類的集群行為。XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX八、模型檢驗XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX九、模型推廣XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
26、XXXXX六十、模型的評價與改進(jìn)模型的優(yōu)點:(1)基于仿真的群集模型可以為個體如何完成群集行為提供一個明確的視覺過程。(2)我們在解決問題的過程中同時對二維和三維進(jìn)行了仿真,并且得出了合理的結(jié)果。模型的缺點:(1)基于仿真的群集模型的優(yōu)點是可以為個體如何完成群集行為提供一個明確的視覺過程。然而,個體可能存在有很多不同的行為規(guī)則,都能夠使得群體實現(xiàn)相同的集結(jié)行為,也就是說并不能從群體仿真實驗中的涌現(xiàn)結(jié)果推論出確切的個體行為。(2);而且,實際智能個體的行為可能是非常復(fù)雜的,在仿真中也難以復(fù)制。總之,個體的簡單規(guī)則可以使得群體涌現(xiàn)與實際生物界中相似的群體行為,但缺乏理論分析的手段,而且也不能保證現(xiàn)
27、實生物系統(tǒng)就是遵循這樣的簡單規(guī)則。(3)我們對于魚類活動的原則考慮比較少,行為準(zhǔn)則略顯粗糙。參考文獻(xiàn):1江道平 尹怡欣等,群體中Agent基于內(nèi)部狀態(tài)的行為選擇,系統(tǒng)仿真學(xué)報,2009年01月;2趙建 曾建朝,魚群集群行為的建模與仿真,太遠(yuǎn)科技大學(xué)學(xué)報,2009年02月;3班曉娟 寧淑榮等XXX,人工魚高級自組織行為研究XXXXXXXXXXXXXXXXXXX,XXXXXXX自動化學(xué)報,2008年10月XXXXX;4陳世明XXX,群集行為的建模與控制方法綜述,華東交通大學(xué)電氣與電子工程學(xué)院XXXXXXXXXXXXXXXXXXXXXXXXXXXXX,XXXXXXXXXXXX,XXXXX,2006年
28、09月。書籍的表述方式為:編號 作者,書名,出版地:出版社,出版年。參考文獻(xiàn)中期刊雜志論文的表述方式為:編號 作者,論文名,雜志名,卷期號:起止頁碼,出版年。參考文獻(xiàn)中網(wǎng)上資源的表述方式為:編號 作者,資源標(biāo)題,網(wǎng)址,訪問時間(年月日)。正文引用處用方括號標(biāo)示參考文獻(xiàn)的編號,如13等;在文章中的圖片、表格等要有注釋、說明。 摘要中要把文章中模型的方法、思想、技巧、結(jié)論體現(xiàn)出來。 附 錄 第一問程序:%實現(xiàn)功能:模擬魚群的集群,避敵,覓食行為,進(jìn)行動畫演示clear;clc;N=50; %魚的數(shù)量50,Rn=1500; %領(lǐng)域半徑VV=30; %初始速度3.0,%a=3; %加速度0.3,Vsi
29、=18; %反彈速度0.8,%魚的活動范圍XRange=-10000,10000; YRange=-10000,10000;ZRange=-10000,10000;VRan=-5*pi/6,5*pi/6;%(1)隨機(jī)產(chǎn)生魚的位置PF(x,y)為位置集 for i=1:N PZ(i,1)=XRange(1)+(XRange(2)-XRange(1)*rand; %X坐標(biāo) PZ(i,2)=YRange(1)+(YRange(2)-YRange(1)*rand; %Y坐標(biāo) PZ(i,3)=ZRange(1)+(ZRange(2)-ZRange(1)*rand; %Z坐標(biāo) PF(i,1)=PZ(i,1
30、); PF(i,2)=PZ(i,2); PF(i,3)=PZ(i,3); VZ(i,1)=2*pi*rand; %alpha X速度方向 VZ(i,2)=2*pi*rand; %beta Y速度方向 VZ(i,3)=2*pi*rand; %gama Z速度方向 VF(i,1)=VZ(i,1); VF(i,2)=VZ(i,2); VF(i,3)=VZ(i,3); VZ(i,4)=VV; %gama Z速度大小 VF(i,4)=VZ(i,4);endlam=0.1 0.3 0.3 0.3;%(2)判斷一條魚和其他魚之間的距離%如果<Rmin則避免碰撞;若>Rmin,<Rmax保持
31、速度相同;若>Rmax,<Rvis則加速追尾;%(2)搜索視野范圍內(nèi)的魚,并統(tǒng)計個數(shù)while 1for i=1:N cn=0; alsum=0; besum=0; gasum=0; for j=1:N if(i=j)&&sqrt(PZ(i,1)-PZ(j,1)2+(PZ(i,2)-PZ(j,2)2+(PZ(i,3)-PZ(j,3)2)<=Rn cn=cn+1; alsum=alsum+VZ(i,1); besum=besum+VZ(i,2); gasum=gasum+VZ(i,3); end end if cn=0 alsum=alsum/cn; besum
32、=besum/cn; gasum=gasum/cn; VF(i,1)=alsum; VF(i,2)=besum; VF(i,3)=gasum; end PF(i,1)=PZ(i,1)+VF(i,4)*cos(VF(i,1); PF(i,2)=PZ(i,2)+VF(i,4)*cos(VF(i,2); PF(i,3)=PZ(i,3)+VF(i,4)*cos(VF(i,3); %是否越界 if PF(i,1)<XRange(1)|PF(i,1)>XRange(2) VF(i,1)=VF(i,1)+pi; end if PF(i,2)<YRange(1)|PF(i,2)>YRa
33、nge(2) VF(i,2)=VF(i,2)+pi; end if PF(i,3)<ZRange(1)|PF(i,3)>ZRange(2) VF(i,3)=VF(i,3)+pi; end PF(i,1)=PZ(i,1)+VF(i,4)*cos(VF(i,1); PF(i,2)=PZ(i,2)+VF(i,4)*cos(VF(i,2); PF(i,3)=PZ(i,3)+VF(i,4)*cos(VF(i,3);endTU1=plot3(PZ(:,1),PZ(:,2),PZ(:,3),'.');%更新魚的狀態(tài)for i=1:NPZ(i,1)=PF(i,1); PZ(i,2)
34、=PF(i,2);PZ(i,3)=PF(i,3);VZ(i,1)=VF(i,1); VZ(i,2)=VF(i,2);VZ(i,3)=VF(i,3);endset(TU1,'xdata',PZ(:,1),'ydata',PZ(:,2),'zdata',PZ(:,3);drawnow;axis(XRange,YRange,ZRange);grid on;pause(0.01);end第二問程序:%實現(xiàn)功能:模擬魚群的集群,避敵,覓食行為,進(jìn)行動畫演示clear;clc;N=50; %魚的數(shù)量,Rn=1500; %領(lǐng)域半徑VV=30; %初始速度,a=
35、3; %加速度,Vsi=18; %反彈速度,%魚的活動范圍XRange=-10000,10000; YRange=-10000,10000;ZRange=-10000,10000;VRan=-5*pi/6,5*pi/6;%(1)隨機(jī)產(chǎn)生魚的位置PF(x,y)為位置集 for i=1:N PZ(i,1)=XRange(1)+(XRange(2)-XRange(1)*rand; %X坐標(biāo) PZ(i,2)=YRange(1)+(YRange(2)-YRange(1)*rand; %Y坐標(biāo) PZ(i,3)=ZRange(1)+(ZRange(2)-ZRange(1)*rand; %Z坐標(biāo) PF(i,1
36、)=PZ(i,1); PF(i,2)=PZ(i,2); PF(i,3)=PZ(i,3); VZ(i,1)=2*pi*rand; %alpha X速度方向 VZ(i,2)=2*pi*rand; %beta Y速度方向 VZ(i,3)=2*pi*rand; %gama Z速度方向 VF(i,1)=VZ(i,1); VF(i,2)=VZ(i,2); VF(i,3)=VZ(i,3); VZ(i,4)=VV; %gama Z速度大小 VF(i,4)=VZ(i,4);endfor i=1:4 %鯊魚初狀態(tài); SZ(1)=XRange(1)+(XRange(2)-XRange(1)*rand; %X坐標(biāo) S
37、Z(2)=YRange(1)+(YRange(2)-YRange(1)*rand; %Y坐標(biāo) SZ(3)=ZRange(1)+(ZRange(2)-ZRange(1)*rand; %Z坐標(biāo) SF(1)=SZ(1); SF(2)=SZ(2); SF(3)=SZ(3); SVZ(1)=2*pi*rand; %alpha X速度方向 SVZ(2)=2*pi*rand; %beta Y速度方向 SVZ(3)=2*pi*rand; %gama Z速度方向 SVF(1)=SVZ(1); SVF(2)=SVZ(2); SVF(3)=SVZ(3); SVZ(4)=VV; SVF(4)=SVZ(4); endl
38、am=0.1 0.3 0.3 0.3;%(2)判斷一條魚和其他魚之間的距離%如果<Rmin則避免碰撞;若>Rmin,<Rmax保持速度相同;若>Rmax,<Rvis則加速追尾;%(2)搜索視野范圍內(nèi)的魚,并統(tǒng)計個數(shù)while 1for i=1:N cn=0; alsum=0; besum=0; gasum=0; for j=1:N if(i=j)&&sqrt(PZ(i,1)-PZ(j,1)2+(PZ(i,2)-PZ(j,2)2+(PZ(i,3)-PZ(j,3)2)<=Rn cn=cn+1; alsum=alsum+VZ(i,1); besum
39、=besum+VZ(i,2); gasum=gasum+VZ(i,3); end end if cn=0&&sqrt(SZ(1)-PZ(i,1)2+(SZ(2)-PZ(i,2)2+(SZ(3)-PZ(i,3)2)>=Rn alsum=alsum/cn; besum=besum/cn; gasum=gasum/cn; VF(i,1)=alsum; VF(i,2)=besum; VF(i,3)=gasum; end ddd=sqrt(SZ(1)-PZ(i,1)2+(SZ(2)-PZ(i,2)2+(SZ(3)-PZ(i,3)2); if ddd<=Rn VF(i,1)=p
40、i+acos(SZ(1)-PZ(i,1)/ddd); VF(i,2)=pi+acos(SZ(2)-PZ(i,2)/ddd); VF(i,3)=pi+acos(SZ(3)-PZ(i,3)/ddd); VF(i,4)=VZ(i,4)+a; if VF(i,4)>Vmax VF(i,4)=Vmax; end end PF(i,1)=PZ(i,1)+VF(i,4)*cos(VF(i,1); PF(i,2)=PZ(i,2)+VF(i,4)*cos(VF(i,2); PF(i,3)=PZ(i,3)+VF(i,4)*cos(VF(i,3); %是否越界 if PF(i,1)<XRange(1)|
41、PF(i,1)>XRange(2) VF(i,1)=VF(i,1)+pi; end if PF(i,2)<YRange(1)|PF(i,2)>YRange(2) VF(i,2)=VF(i,2)+pi; end if PF(i,3)<ZRange(1)|PF(i,3)>ZRange(2) VF(i,3)=VF(i,3)+pi; end PF(i,1)=PZ(i,1)+VF(i,4)*cos(VF(i,1); PF(i,2)=PZ(i,2)+VF(i,4)*cos(VF(i,2); PF(i,3)=PZ(i,3)+VF(i,4)*cos(VF(i,3);end %鯊魚
42、下一時刻狀態(tài) SF(1)=SZ(1)+SVF(4)*cos(SVF(1); SF(2)=SZ(2)+SVF(4)*cos(SVF(2); SF(3)=SZ(3)+SVF(4)*cos(SVF(3); if SF(1)<XRange(1)|SF(1)>XRange(2) SVF(1)=SVF(1)+pi; end if SF(2)<YRange(1)|SF(2)>YRange(2) SVF(2)=SVF(2)+pi; end if SF(3)<ZRange(1)|SF(3)>ZRange(2) SVF(3)=SVF(3)+pi; end SF(1)=SZ(1)
43、+SVF(4)*cos(SVF(1); SF(2)=SZ(2)+SVF(4)*cos(SVF(2); SF(3)=SZ(3)+SVF(4)*cos(SVF(3);TU1=plot3(PZ(:,1),PZ(:,2),PZ(:,3),'.');T2=plot3(SZ(1),SZ(2),SZ(3),'ro');%更新魚的狀態(tài)for i=1:NPZ(i,1)=PF(i,1); PZ(i,2)=PF(i,2);PZ(i,3)=PF(i,3);VZ(i,1)=VF(i,1); VZ(i,2)=VF(i,2);VZ(i,3)=VF(i,3);VZ(i,4)=VF(i,4);e
44、ndSZ(1)=SF(1);SZ(2)=SF(2);SZ(3)=SF(3);SVZ(1)=SVF(1);SVZ(2)=SVF(2);SVZ(3)=SVF(3);set(T2,'xdata',SZ(1),'ydata',SZ(2),'zdata',SZ(3);set(TU1,'xdata',PZ(:,1),'ydata',PZ(:,2),'zdata',PZ(:,3);drawnow;axis(XRange,YRange,ZRange);grid on;pause(0.01);end第三問程序:%實現(xiàn)
45、功能:模擬魚群的集群,避敵,覓食行為,進(jìn)行動畫演示clear;clc;N=100; %魚的數(shù)量,Rn=30000; %領(lǐng)域半徑VV=1100; %初始速度,a=10; %加速度,Vsi=100; %反彈速度,Vmax=VV+60;%魚的活動范圍XRange=-10000,10000; YRange=-10000,10000;ZRange=-10000,10000;VRan=-5*pi/6,5*pi/6;%(1)隨機(jī)產(chǎn)生魚的位置PF(x,y)為位置集 for i=1:N PZ(i,1)=XRange(1)+(XRange(2)-XRange(1)*rand; %X坐標(biāo) PZ(i,2)=YRang
46、e(1)+(YRange(2)-YRange(1)*rand; %Y坐標(biāo) PZ(i,3)=ZRange(1)+(ZRange(2)-ZRange(1)*rand; %Z坐標(biāo) PF(i,1)=PZ(i,1); PF(i,2)=PZ(i,2); PF(i,3)=PZ(i,3); VZ(i,1)=2*pi*rand; %alpha X速度方向 VZ(i,2)=2*pi*rand; %beta Y速度方向 VZ(i,3)=2*pi*rand; %gama Z速度方向 VF(i,1)=VZ(i,1); VF(i,2)=VZ(i,2); VF(i,3)=VZ(i,3); VZ(i,4)=VV; %gama Z速度大小 VF(i,4)=VZ(i,4);endfor i=1:4 %食物位置; SZ(1)=XRange(1)+(XRange(2)-XRange(1)*0.82; %X坐標(biāo) SZ(2)=YRange(1)+(YRange(2)-YRange(1)*0.455; %Y坐標(biāo) SZ(3)=ZRange(1)+(ZRange(2)-ZRange(1)*0.5421; %Z坐標(biāo) endlam=0.1 0.3 0.3 0.3;%(2)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度解除租賃合同解除條件爭議訴訟書
- 2025年度銀行賬戶管理及跨境資金匯兌合作協(xié)議方
- 二零二五年度礦石加工項目環(huán)保驗收與監(jiān)管合同
- 牛頭刨床課程設(shè)計10點
- 酥皮月餅課程設(shè)計
- 潛水池施工方案
- 水泥移動房施工方案
- 紅薯干課程設(shè)計
- 同步封層施工方案
- 盛世環(huán)球之旅課程設(shè)計
- 法院執(zhí)行庭長供職報告1400字
- 四川省大渡河瀘定水電站
- 2023年上海崇明區(qū)區(qū)管企業(yè)招聘筆試參考題庫附帶答案詳解
- 甘肅社火100首歌詞
- GB/T 2315-2000電力金具標(biāo)稱破壞載荷系列及連接型式尺寸
- 腹主動脈瘤的護(hù)理查房
- 內(nèi)部往來轉(zhuǎn)賬通知單
- 商業(yè)銀行高管問責(zé)制度
- 企業(yè)員工培訓(xùn)之風(fēng)險管理與防范對策
- 食材配送后續(xù)服務(wù)方案
- 鑄造工廠設(shè)備管理(共21頁)
評論
0/150
提交評論