日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【元胞自动机】基于matlab元胞自动机考虑驾驶行为的自动—求解手动驾驶混合交通流问题【含Matlab源码 2060期】

發布時間:2023/12/20 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【元胞自动机】基于matlab元胞自动机考虑驾驶行为的自动—求解手动驾驶混合交通流问题【含Matlab源码 2060期】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、元胞自動機簡介

1 元胞自動機發展歷程
最初的元胞自動機是由馮 · 諾依曼在 1950 年代為模擬生物 細胞的自我復制而提出的. 但是并未受到學術界重視.
1970 年, 劍橋大學的約翰 · 何頓 · 康威設計了一個電腦游戲 “生命游戲” 后, 元胞自動機才吸引了科學家們的注意.

1983 年 S.Wolfram 發表了一系列論文. 對初等元胞機 256 種 規則所產生的模型進行了深入研究, 并用熵來描述其演化行 為, 將細胞自動機分為平穩型, 周期型, 混沌型和復雜型.

2 對元胞自動機的初步認識
元胞自動機(CA)是一種用來仿真局部規則和局部聯系的方法。典型的元胞自動機是定義在網格上的,每一個點上的網格代表一個元胞與一種有限的狀態。變化規則適用于每一個元胞并且同時進行。典型的變化規則,決定于元胞的狀態,以及其( 4 或 8 )鄰居的狀態。

3 元胞的變化規則&元胞狀態
典型的變化規則,決定于元胞的狀態,以及其( 4 或 8 )鄰居的狀態。

4 元胞自動機的應用
元胞自動機已被應用于物理模擬,生物模擬等領域。

5 元胞自動機的matlab編程
結合以上,我們可以理解元胞自動機仿真需要理解三點。一是元胞,在matlab中可以理解為矩陣中的一點或多點組成的方形塊,一般我們用矩陣中的一點代表一個元胞。二是變化規則,元胞的變化規則決定元胞下一刻的狀態。三是元胞的狀態,元胞的狀態是自定義的,通常是對立的狀態,比如生物的存活狀態或死亡狀態,紅燈或綠燈,該點有障礙物或者沒有障礙物等等。

6 一維元胞自動機——交通規則
定義:
6.1 元胞分布于一維線性網格上.
6.2 元胞僅具有車和空兩種狀態.

7 二維元胞自動機——生命游戲
定義:
7.1 元胞分布于二維方型網格上.
7.2 元胞僅具有生和死兩種狀態.

元胞狀態由周圍八鄰居決定.
規則:

骷髏:死亡;笑臉:生存
周圍有三個笑臉,則中間變為笑臉
少于兩個笑臉或者多于三個,中間則變死亡。

8 什么是元胞自動機
離散的系統: 元胞是定義在有限的時間和空間上的, 并且元 胞的狀態是有限.
動力學系統: 元胞自動機的舉止行為具有動力學特征.
簡單與復雜: 元胞自動機用簡單規則控制相互作用的元胞 模擬復雜世界.


9 構成要素

(1)元胞 (Cell)

元胞是元胞自動機基本單元:
狀態: 每一個元胞都有記憶貯存狀態的功能.
離散: 簡單情況下, 元胞只有兩種可能狀態; 較復雜情況下, 元胞具有多種狀態.
更新: 元胞的狀態都安照動力規則不斷更新.
(2)網格 (Lattice)
不同維網格

常用二維網格

(3)鄰居 (Neighborhood)

(4)邊界 (Boundary)

反射型:以自己作為邊界的狀態
吸收型:不管邊界(車開到邊界就消失)

(5)規則(狀態轉移函數)
定義:根據元胞當前狀態及其鄰居狀況確定下一時刻該元胞狀態的動力學函數, 簡單講, 就是一個狀態轉移函數.
分類 :
總和型: 某元胞下時刻的狀態取決于且僅取決于它所有鄰居 的當前狀態以及自身的當前狀態.
合法型: 總和型規則屬于合法型規則. 但如果把元胞自動機 的規則限制為總和型, 會使元胞自動機具有局限性.
(6)森林火災

綠色:樹木;紅色:火;黑色:空地。
三種狀態循環轉化:
樹:周圍有火或者被閃電擊中就變成火。
空地:以概率p變為樹木
理性分析:紅為火;灰為空地;綠是樹

元胞三種狀態的密度和為1

火轉化為空地的密度等于空地轉換為樹的密度(新長出來的樹等于燒沒的樹)

f是閃電的概率:遠遠小于樹生成的概率;T s m a x T_{smax}T smax
?是一大群樹被火燒的時間尺度
程序實現
周期性邊界條件
購進啊

其中的數字為編號
構建鄰居矩陣

上面矩陣中的數字編號,對應原矩陣相同位置編號的上鄰居編號,一 一對應
同樣道理:

(7)交通概念
車距和密度

流量方程

守恒方程

時空軌跡(橫軸是空間縱軸為時間)

紅線橫線與藍色交點表示每個時間車的位置。
如果是豎線則表示車子在該位置對應的時間

宏觀連續模型:

最常用的規則:

紅色條表示速度是滿的。

1 加速規則:不能超過v m a x ( 2 格 / s ) v_{max}(2格/s)v
max(2格/s)
2 防止碰撞:不能超過車距

理論分析:

結果分析: 密度與流量

第一個圖:橫坐標是歸一化后的密度,縱坐標是車流量。第二個圖:理論值與CA的結果

結果分析: 時空軌跡

中間的深色區域是交通堵塞的區域。

二、部分源代碼

%% 分兩種車型
clear;
clc
close all
L=2000;%車道長度
m=4;%車道數量
cell=1;%每個元胞對應的長度
l_av=5;%自動駕駛汽車長度
l_hv=5;%手動駕駛汽車長度
a_vmax=30;%自動駕駛最大速度
h_vmax=30;%手動駕駛最大速度
an=3;%常規加速度
bn=3;%常規減速度
% p_slow;%隨機慢化概率
Time=10;%實驗次數
time_max=20000;%運行一次演化20000步
rho_max=200;%車流密度最大值200veh/km

rho=50;%每km車輛數量 車輛密度
N_v=rhomL/1000;%車輛總數量
rate_av=0.5;%自動汽車占比
N_av=round(N_vrate_av);%自動汽車數量
N_hv=N_v-N_av;%手動汽車數量
M=rho_maxL/1000;
lane_four=zeros(m,L);%車道元胞
v_av=[];
v_hv=[];

for i=1:N_hv%隨機初始化手動汽車位置
pos_hv(i,:)=[ceil(4rand),ceil((L-4)rand)];%%手動汽車位置
while(lane_four(pos_hv(i,1),pos_hv(i,2))=0||lane_four(pos_hv(i,1),pos_hv(i,2)+4)=0)
pos_hv(i,:)=[ceil(4rand),ceil(1996rand)];
end
lane_four(pos_hv(i,1),pos_hv(i,2):pos_hv(i,2)+4)=2;%%手動汽車為2
v_hv(i)=0;%初始速度
tau_hv(i)=0.1+0.9*rand;%制動反應時間
beta_hv(i)=rand;%冒險系數
end

for i=1:N_av%隨機初始化自動汽車位置
pos_av(i,:)=[4,ceil((L-4)rand)];%%自動汽車位置
while(lane_four(pos_av(i,1),pos_av(i,2))=0||lane_four(pos_av(i,1),pos_av(i,2)+4)=0)
pos_av(i,:)=[4,ceil(1996rand)];
end
lane_four(pos_av(i,1),pos_av(i,2):pos_av(i,2)+4)=1;%%自動汽車為1
v_av(i)=0;%初始化速度
tau_av(i)=0.1;%制動反應時間
beta_av(i)=1;%制動反應時間
end

%% 速度更新 pos_update;

% lane_four=zeros(m,L);
for i=1:N_av%自動汽車速度更新
%更新自動汽車位置
if pos_av(i,2)+v_av(i)==L%若移動至邊界 重新回到起點 循環
pos_av(i,:)=[pos_av(i,1),L];
else
pos_av(i,:)=[pos_av(i,1),mod(pos_av(i,2)+v_av(i),L)];
end

if pos_av(i,2)+4>L%超過邊界則循環,反之則前進
lane_four(pos_av(i,1),pos_av(i,2):end)=1;
lane_four(pos_av(i,1),1:pos_av(i,2)+4-L)=1;
else
lane_four(pos_av(i,1),pos_av(i,2):pos_av(i,2)+4)=1;
end
end

for i=1:N_hv%手動汽車速度更新
%更新手動汽車位置
if pos_hv(i,2)+v_hv(i)==L%若移動至邊界 重新回到起點 循環
pos_hv(i,:)=[pos_hv(i,1),L];
else
pos_hv(i,:)=[pos_hv(i,1),mod(pos_hv(i,2)+v_hv(i),L)];
end
if pos_hv(i,2)+4>L%超過邊界則循環,反之則前進
lane_four(pos_hv(i,1),pos_hv(i,2):end)=2;
lane_four(pos_hv(i,1),1:pos_hv(i,2)+4-2000)=2;
else
lane_four(pos_hv(i,1),pos_hv(i,2):pos_hv(i,2)+4)=2;
end
end
% imagesc(lane_four);
%% 顯示部分車道結果
p=[0.1ones(1,101);lane_four(:,1000:1100)/2;0.1ones(1,101)];
p(5,find(p(5,:)==0))=0.2;
figure(1);
imshow(p,‘InitialMagnification’,‘fit’)

v_average=[];

for t=1:200%演化步數
for j=1:m
p=tabulate(lane_four(j,:));
vel_num(j)=(L-p(1,2))/l_av;%計算每條車道的車輛數量
rho(j)=vel_num(j)/L1000;
P_slow(j)=0.1+0.4power((1+Mexp(-0.05rho(j))),-1/0.95);%計算每條車道的pslow
end

三、運行結果

四、matlab版本及參考文獻

1 matlab版本
2014a

2 參考文獻
[1] 包子陽,余繼周,楊杉.智能優化算法及其MATLAB實例(第2版)[M].電子工業出版社,2016.
[2]張巖,吳水根.MATLAB優化算法源代碼[M].清華大學出版社,2017.
[3]【數學建模】元胞自動機.博主:二進制 人工智能

總結

以上是生活随笔為你收集整理的【元胞自动机】基于matlab元胞自动机考虑驾驶行为的自动—求解手动驾驶混合交通流问题【含Matlab源码 2060期】的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 噜噜噜噜噜色 | 精品一区二区亚洲 | 黄色网址大全免费 | 成人动漫免费在线观看 | 欧美日韩理论 | 欧美色淫| 天天干夜夜撸 | 国产suv精品一区二区四 | 国产午夜一区二区三区 | 亚洲人妻一区二区三区 | 亚洲精品97久久中文字幕无码 | 华丽的外出在线观看 | 91成人在线观看喷潮动漫 | 日本黄色xxxx | 久久99影院 | 亚洲一区二区三区加勒比 | 午夜影院美女 | 巨物撞击尤物少妇呻吟 | 丝袜脚交免费网站xx | 国产伦理吴梦梦伦理 | 久久精品欧美日韩 | 午夜偷拍福利 | 久久久久久国产精品三级玉女聊斋 | 色爱av| 国产18照片色桃 | 国产精品久久久久无码av色戒 | 欧美大肚乱孕交hd孕妇 | 亚洲国产精品无码久久久久高潮 | 伊人久久五月天 | 韩日产理伦片在线观看 | 超碰网站在线观看 | 朱竹清到爽高潮痉挛 | 国产女教师bbwbbwbbw | 天堂中文在线网 | 91精品国自产在线观看 | 成人中文字幕+乱码+中文字幕 | 免费观看污网站 | 免费爱爱视频 | 一级视频在线免费观看 | 欧美成人一区在线 | 九九视频在线播放 | 国产妻精品一区二区在线 | 国产高清在线视频观看 | 亚洲一区二区三区四区 | 中文字幕在线日本 | 日韩精品视频一区二区在线观看 | 18视频网站在线观看 | 精品黑人一区二区三区久久 | 男人的天堂av网 | 人妻无码一区二区三区久久 | 一本久道在线 | 国产激情无码一区二区三区 | 精品人妻aV中文字幕乱码色欲 | 欧美 日韩 国产 精品 | 国产在线精品播放 | 日本网站免费 | 日日燥夜夜燥 | 国产高清日韩 | 男生操女生在线观看 | 欧美激情成人网 | 8x8ⅹ国产精品一区二区二区 | 国产一区二区三区在线看 | 日本高清在线观看 | 一区二区三区在线观 | 91国产一区二区 | 欧美激情在线播放 | 寡妇激情做爰呻吟 | 日本在线一区 | 日本在线播放视频 | 欧美在线资源 | 乐播av一区二区三区 | 日本一区中文字幕 | 午夜免费播放观看在线视频 | 日本精品人妻无码免费大全 | 日本美女黄网站 | 日韩精品欧美在线 | 久久免费看片 | 曰本无码人妻丰满熟妇啪啪 | 视频一区二区视频 | 久久久6 | 中文字幕亚洲欧美日韩 | se欧美 | 亚洲美女自拍视频 | 日韩av伦理 | 免费三级大片 | 三级av毛片 | 91精品国产综合久久久蜜臀图片 | av成人在线观看 | 国产黄色av | 国产高清精品一区二区三区 | 久久久精品视频在线 | 精品一区李梓熙捆绑 | 黄色av免费观看 | 国产盗摄视频在线观看 | 欧美激情va永久在线播放 | 日本一级大片 | 毛片av免费| 尤物视频在线观看免费 | 天天干人人干 |