• 元胞自动机交通模型案例2


    模型分析

    这次做的是一个宏观的模型
    主要是调整ACC车辆的比例对各路段的车辆密度和车辆速度两个因素进行分析

    速度更新规则:
    在这里插入图片描述
    密度更新规则:
    在这里插入图片描述
    部分代码:

    clc
    close all
    clear
    %% 模型参数设置
    delte_rho=0.01;
    delta_t=1;
    delta_x=100;
    Delta=100;
    S=32000;
    vf=30;
    Rho_max=0.2;
    Tau=5;
    Rho_0=0.066;
    Nmax=S/delta_x;
    Tmax=2000;
    Rho=zeros(Tmax,Nmax);
    V=zeros(Tmax,Nmax);
    %% 初始状态计算
    % 初始密度
    for i=1:Nmax
        x=i*delta_x;
        Rho(1,i)=cal_rho(x,Rho_0,delte_rho,S);
    end
    figure
    subplot(1,2,1)
    plot(Rho(1,:))
    xlabel('space(x100m)')
    ylabel('densit(/m)')
    grid on
    title('初始密度分布')
    % 初始速度
    for i=1:Nmax
        V(1,i)=cal_Vrho(Rho_max,vf,Rho(1,i));
    end
    % V(1,:)=ones(Nmax,1)'*vf;
    subplot(1,2,2)
    plot(V(1,:))
    xlabel('space(x100m)')
    ylabel('V(m/s)')
    grid on
    title('初始速度分布')
    %% 模型演化
    %% 演化参数
    Lamda=0.4;
    Beta=0.4;
    P=0.1;
    t=1;
    mybar=waitbar(0,'演化进程','name','演化进程');
    while t<Tmax
        t=t+1;
        msg=['当前时刻t=:' num2str(t) '秒,进度:' num2str(fix(100*t/Tmax)) '%'];
        mybar=waitbar(t/Tmax,mybar,msg,'演化进程');
        for i=1:Nmax
            Rho(t,i)=refresh_rho(Rho(t-1,:),V(t-1,:),i,delta_t,delta_x,Nmax);
            V(t,i)=refresh_V(Rho(t-1,:),V(t-1,:),i,Rho_max,vf,Tau,delta_t,delta_x,P,Lamda,Delta,Beta,Nmax,Rho_0);
        end
    end
    close(mybar)
    warndlg('演化完毕')
    %% Fig2
    step1=1;
    step2=1;
    Space=1:step1:Nmax;
    Time=1:step2:Tmax;
    [X,Y]=meshgrid(Space,Time);
    if P==0.1
        Fig2a(X,Y,Rho(1:step2:end,1:step1:end))
    elseif P==0.9
        Fig2b(X,Y,Rho(1:step2:end,1:step1:end))
    end
    Fig5678(Rho,Nmax,Tmax)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71

    结果展示

    在这里插入图片描述
    简略的分享一下,这算是比较简单的元胞自动机模型了,有遇到这方面问题的朋友欢迎讨论交流。
    错误之处欢迎大家批评指正

  • 相关阅读:
    “气运”其实是可以改变的,方法也很简单!
    ssm手机销售网站
    常见应用层协议
    【flink】Task 故障恢复详解以及各重启策略适用场景说明
    Android Studio 六大基础布局详解
    从零开始Blazor Server(14)--修改密码
    MapReduce
    深度学习归一化原理及代码实现(BatchNorm2d,LayerNorm,InstanceNorm,GroupNorm)
    【工作记录】xpath语法笔记
    C#:实现SHA1加密算法(附完整源码)
  • 原文地址:https://blog.csdn.net/u013367499/article/details/127989769