Ejemplo n.º 1
0
    def __init__(self,args,netdata,log):

        self.t = 0
        self.args = args
        self.sumo_cmd = set_sumo(args.gui, args.roadnet, args.max_steps, args.port)
        self.log = log
        print(self.sumo_cmd)

        self.save_path = set_save_path(args.roadnet,args.tsc)
        self.saver = Saver(self.save_path)

        self.max_steps = args.max_steps
        self.green_t = args.green_duration
        self.yellow_t = args.yellow_duration
        self.red_t = args.red_duration
        self.mode = args.mode
        self.scale = args.scale
        self.port = args.port
        self.netdata = netdata
        self.tl_ids = self.netdata['inter'].keys()
        self.sumo_process = subprocess.Popen(self.sumo_cmd)
        self.conn = traci.connect(self.port)

        self.netdata = self.update_netdata()
        self.vehiclegen = VehicleGen(self.netdata,self.conn,self.mode,self.scale,self.max_steps)


        self.Controllers = {str(id):None for id in self.tl_ids}
        self.create_controllers(self.args.tsc)
        if self.args.tsc == 'dqn' and self.args.tsc == 'test':
            self.load_model()
        self.v_start_times = {}
        self.v_travel_times = {}
        self.episode_performance = []
        self.set_item_path()
Ejemplo n.º 2
0
"""
from simulation import Simulation, TestSimulation
from generator import TrafficGenerator
from model import Model, TestModel
from memory import Memory
from visualization import Visualization
from utils import import_train_configuration, set_sumo, set_test_path
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
import os

#%%
if __name__ == "__main__":
    config = import_train_configuration(config_file="training_settings.ini")
    sumo_cmd = set_sumo(False, config['sumocfg_file_name'],
                        config['max_steps'])

    TrafficGen = TrafficGenerator(config['max_steps'],
                                  config['n_cars_generated'])

    model = Model(config['num_layers'], config['width_layers'],
                  config['num_states'], config['num_actions'],
                  config['batch_size'], config['learning_rate'])

    memory = Memory(config['memory_size_max'])

    viz = Visualization(config['models_path_name'], dpi=96)

    sim = Simulation(TrafficGen, model, memory, config['gamma'],
                     config['training_epochs'], sumo_cmd, config['max_steps'],
                     config['green_duration'], config['yellow_duration'],
Ejemplo n.º 3
0
from __future__ import absolute_import
from __future__ import print_function

import os
from shutil import copyfile

from testing_simulation import Simulation
from generator import TrafficGenerator
from model import TestModel
from visualization import Visualization
from utils import import_test_configuration, set_sumo, set_test_path

if __name__ == "__main__":

    config = import_test_configuration(config_file='testing_settings.ini')
    sumo_cmd = set_sumo(config['gui'], config['sumocfg_file_name'],
                        config['max_steps'])
    model_path, plot_path = set_test_path(config['models_path_name'],
                                          config['model_to_test'])

    Model = TestModel(input_dim=config['num_states'], model_path=model_path)

    TrafficGen = TrafficGenerator(config['max_steps'], config['n_v_generated'])

    Visualization = Visualization(plot_path, dpi=96)

    Simulation = Simulation(Model, TrafficGen, sumo_cmd, sumo_cmd,
                            config['max_steps'], config['green_duration'],
                            config['yellow_duration'], config['num_states'],
                            config['num_actions'])

    print('\n----- Test episode')
Ejemplo n.º 4
0
    def waiting_times(self):
        return self._get_waiting_times()

    @property
    def fuel_episode(self):
        return self._fuel_episode

    @property
    def reward_episode(self):
        return self._reward_episode


if __name__ == "__main__":
    config = import_test_configuration(
        config_file='settings/testing_settings.ini')
    sumo_cmd = set_sumo(config['gui'], config['simulation_folder'],
                        config['sumocfg_file_name'], config['max_steps'])
    model_path, plot_path = set_test_path(config['models_path_name'],
                                          config['model_to_test'])

    Model = TestModel(input_dim=config['num_states'], model_path=model_path)

    Traffic_Generator = Traffic_Generator(config["flow_file"],
                                          config["route_file"],
                                          config["n_cars_generated"],
                                          config["simulation_time"])

    Visualization = Visualization(plot_path, dpi=96)

    Map = Map(config['map'])

    Test = Test(Model, Map, Traffic_Generator, sumo_cmd, config['max_steps'],