尽管相同参数的数量不同,但结果相同

The same results in spite of the different amount of the same parameter

我想通过 2 次迭代检查改变特定参数(例如 tau、accel、decel、sigma)的量对流量特性的影响。因此,我使用以下 python 脚本和 TraCI 工具,在其中观察到 tau 变异:

import traci

tau = [3, 4]
n = 2
for i in range(n):
    def run():
        traci.start(sumoCmd)
        traci.vehicle.add('vehicle_2', 'route_1', 'emergency', '45')
        for j in tau:
            traci.vehicle.setTau('vehicle_2', j)                    
        N = 200
        step = 0
        for step in range(N):     
            traci.simulationStep()               
            step += 1
        traci.close()
        sys.stdout.flush()
          
     run()

在模拟结束时,结果没有什么不同,这让我觉得我的代码有问题。如果你能帮助我,我将不胜感激。 最好的祝福, 阿里

你的主循环应该结束 tau,而不是内部循环。

您还应该只定义一次函数,然后将 j 作为参数传递。

import traci

tau = [3, 4]

def run(j):
    traci.start(sumoCmd)
    traci.vehicle.add('vehicle_2', 'route_1', 'emergency', '45')
    traci.vehicle.setTau('vehicle_2', j)                    
    N = 200
    step = 0
    for step in range(N):     
        traci.simulationStep()               
    traci.close()
    sys.stdout.flush()

for j in tau:
    

不需要step += 1for 循环自动增加它。