赞
踩
目录
基于GA遗传优化的离散交通网络双层规划模型设计.优化输出路段1和路段2的收费情况收敛过程。
MATLAB2022a版本运行
- .....................................................................
- while gen < MAXGEN;
- rng(gen)
- gen
-
- P1 = 0.9;
- P2 = 1-P1;
-
- FitnV=ranking(Objv);
-
- Selch=select('sus',Chrom,FitnV);
- Selch=recombin('xovsp', Selch,P1);
- Selch=mut( Selch,P2);
- phen1=bs2rv(Selch,FieldD);
- for a=1:1:NIND
- if gen == 1
- Cost1(a) = Cost1_intial;
- Cost2(a) = Cost2_intial;
- else
- Cost1(a) = phen1(a,1);
- Cost2(a) = phen1(a,2);
- end
-
- %计算对应的目标值
- [errs,a1,a2,eas,tas,xa3] = func_obj(Cost1(a),Cost2(a));
- E = errs;
- JJ(a,1) = E;
- end
- Objvsel =(JJ+eps);
- [Chrom,Objv] = reins(Chrom,Selch,1,1,Objv,Objvsel);
- gen = gen+1;
-
- %保存参数收敛过程和误差收敛过程以及函数值拟合结论
- Cost1gen(gen) = mean(Cost1);
- Cost2gen(gen) = mean(Cost2);
- F(gen) = mean(JJ);
- if gen <=32
- F2(gen) = mean(F(1:gen));
- Cost1gen2(gen) = mean(Cost1gen(1:gen));
- Cost2gen2(gen) = mean(Cost2gen(1:gen));
- else
- F2(gen) = mean(F(gen-32:gen));
- Cost1gen2(gen) = mean(Cost1gen(gen-32:gen));
- Cost2gen2(gen) = mean(Cost2gen(gen-32:gen));
- end
- end
-
- Cost1f = Cost1gen(end);
- Cost2f = Cost2gen(end);
-
- figure;
- plot(F2(2:end),'linewidth',2);
- xlabel('迭代次数');
- ylabel('上层目标函数');
- grid on
-
- figure;
- plot(Cost1gen2(2:end),'r','linewidth',2);
- hold on
- plot(Cost2gen2(2:end),'b','linewidth',2);
- xlabel('迭代次数');
- ylabel('收费情况');
- legend('路段1','路段2');
- grid on
-
- disp('流量');
- eas
- 06_029m

1. 使用一氧化碳作为路网车辆尾气排放的代表指标,计算公式如下:
2. 双层规划模型
上层模型
采用多目标模型,系统总出行时间最小,同时区域排放最小
3.下层模型
采用固定需求的用户平衡(UE),总阻抗最小
N——网络中节点的集合;
L——网络中路段的集合;
R——网络中出发地的集合;
S——网络中目的地的集合;
——出发地
和目的地
之间的所有径路的集合;
——出发地
和目的地
之间的OD交通量;
VVV
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。