• 大小: 3.90KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-03-28
  • 语言: Matlab
  • 标签: matlab  

资源简介


支持车道数量变化,有跟车换道模型,方便更改参数,可以用于元胞自动机的学习

资源截图

代码片段和文件信息

function [ v d p ] = multi_driveway( nlncfpdtnt )
%  在某一特定车流密度下的(车流密度由fp决定)单、双车道仿真模型
%  nc:车道数目(1或2),nl:车道长度——输入参数
%  v:平均速度,d:换道次数(1000次)p:车流密度——输出参数
%  dt:仿真步长时间,nt:仿真步长数目——输入参数
%  fp:车道入口处新进入车辆的概率——输入参数
%  test:
%  nl = 400;fp = 0.5;
%  nc = 2;dt=0.01;nt=500;
   %构造元胞矩阵
   B=ones(2*nc+1nl+2);
   %奇数行为不可行车道
   B(1:2:(2*nc+1):)=1.2;
   %初始化仿真元胞状态(1为无车,0为有车)
   bb=B(2:2:2*nc:);bb(bb~=0)=1;B(2:2:2*nc:)=bb;B(2:2:2*ncend)=0;
   %显示初始交通流图
   figure(1);
   H=imshow(B[]);
   set(gcf‘position‘[241 132 560 420]) ;%241 132 560 420
   set(gcf‘doublebuffer‘‘on‘);  %241
   title(‘cellular-automation to traffic modeling‘‘color‘‘b‘);
   %初始化化存储元胞上车辆状态的矩阵
   S(1:ncnl) = 0;
   Q(1:nc1:2) = 0;
   Acc(1:nc1:(nl+2))=0;
   %初始化换道频率、平均速度、车流密度相关变量
   ad = 0;
   av(1:nt) = 0;
   ap(1:nt) = 0;
   c = 1;
   for n = 1:nt
      A=B(2:2:2*nc:);
      %确定前n-2个车辆的状态
      S(::) = 0;
      S(A(:1:end-2)==0&A(:2:end-1)==1&A(:3:end)==1)=2;%加速的车
      S(A(:1:e

评论

共有 条评论