agents = (
	{ // agent 1
	class = "GreenWaveTrafficAgent";
	name = "495";
	lanes = (
			{ sg="VA"; inputs = ("495_DVA1");  outputs= ("DUMMY_DET"); input_distances=[30]; output_distances=[200]; alpha= [1.0 ]; queue="495_QA"; beta=1;}, 
			{ sg="VB"; inputs = ("495_DVB1");  outputs= ("601_DVA","601_DVAa"); input_distances=[30]; output_distances=[190,190]; alpha= [0.5,0.5 ]; queue="495_QB"; beta=1;},
			{ sg="VC"; inputs = ("495_DVC");  outputs= ("DUMMY_DET"); input_distances=[30]; output_distances=[200]; alpha= [1.0 ]; queue="495_QC"; beta=1;}, 
			{ sg="VD"; inputs = ("495_DVD");  outputs= ("DUMMY_DET"); input_distances=[30]; output_distances=[200]; alpha= [1.0 ]; queue="495_QD"; beta=1;},
			{ sg="VE"; inputs = ("495_DVE");  outputs= ("601_DVA","601_DVAa"); input_distances=[30]; output_distances=[190,190]; alpha= [0.5,0.5 ]; queue="495_QE"; beta=1;}, 
			{ sg="VF"; inputs = ("495_DVF1");  outputs= ("DUMMY_DET"); input_distances=[30]; output_distances=[200]; alpha= [1.0 ]; queue="495_QF"; beta=1;}
	);
	neighbours = ("601");
  	offset = 60; //s
  green_names = ("495_VA","495_VB","495_VC","495_VD","495_VE","495_VF");
  green_starts=[72,4,5,35,36,71];
  green_times = [0.4875,0.3375,0.775,0.4,0.5375,0.1];// fractions of cycle_length
  stage_names = ("495_F1","495_F2","495_F3");
  stage_times = [30,30,20];},
{ //agent 2
	class = "GreenWaveTrafficAgent";
	name = "601";
	lanes = (
			{ sg="VA"; inputs = ("601_DVA");  outputs= ("DUMMY_DET","DUMMY_DET"); input_distances=[30]; output_distances=[200,200]; alpha= [0.54, 0.46 ]; queue="601_QA"; beta=0.5;}, 
			{ sg="VA"; inputs = ("601_DVAa");  outputs= ("DUMMY_DET","DUMMY_DET"); input_distances=[30]; output_distances=[200,200]; alpha= [0.44,0.56]; queue="601_QA"; beta=0.5;},
			{ sg="VB"; inputs = ("601_DVB1");  outputs= ("DUMMY_DET","495_DVC","495_DVD"); input_distances=[30]; output_distances=[200,190,190]; alpha= [0.1,0.4,0.5 ]; queue="601_QB"; beta=0.5;}, 
			{ sg="VB"; inputs = ("601_DVB1");  outputs= ("DUMMY_DET"); input_distances=[30]; output_distances=[200]; alpha= [1.0 ]; queue="601_QB"; beta=0.5;},
			{ sg="VC"; inputs = ("601_DVC");  outputs= ("495_DVC","495_DVD","DUMMY_DET"); input_distances=[30]; output_distances=[190,190,200]; alpha= [0.35,0.35,0.3 ]; queue="601_QC"; beta=1;}, 
			{ sg="VD"; inputs = ("601_DVD1");  outputs= ("DUMMY_DET"); input_distances=[30]; output_distances=[200]; alpha= [1.0 ]; queue="601_QD"; beta=1;},
			{ sg="SE"; inputs = ("601_DSE1");  outputs= ("DUMMY_DET"); input_distances=[30]; output_distances=[200]; alpha= [1.0 ]; queue="601_QSE"; beta=1;}, 
			{ sg="VE"; inputs = ("601_DVE1");  outputs= ("495_DVC","495_DVD"); input_distances=[30]; output_distances=[190,190]; alpha= [0.5,0.5 ]; queue="601_QE"; beta=1;}
	);  
	neighbours = ("495");
	offset = 40;
	green_names = ("601_VA","601_VB","601_VC","601_VD","601_VE","601_SE");
  	green_starts=[54,9,26,25,9,9];
  	green_times = [0.325,0.1375,0.65,0.275,0.1375,0.5125];// fractions of cycle_length
  	stage_names = ("601_F1","601_F2","601_F3");
  	stage_times = [30,30,20];
  	passive=1;
}
);

logger = {class="memlog"; filename = "mujzlicin"; maxlen = 1000;};

system = {
	class = "AimsunDS";
	// CSV file with input intensities for simulation
	// original .........: entrances = "zlicin_20071212_495_601.csv";
	// constant entrances: entrances = "zlicin_const01_495_601.csv";
	//                     entrances = "zlicin_const02_495_601.csv";
	entrances = "zlicin_const02_495_601.csv";

	// Simulation length. Due to design of the Aimsun simulator,
	// simulation in our case starts always at 00:00:00. Default simulation
	// length is 24 hours (24:00:00).
	stop_time = "24:00:00";
	
	// Simulation length in number of cycles (one cycle = 90 s)
	// If present, overwrites stop_time. Ensures corrent termination of simulation
	// Example: 1 hour = 40 cycles, 6 hours = 240 cycles, 24 hours = 960 
	stop_cycle=5;
	
};

//Number of recieve/broadcast calls before end of negotiation
negotiation_cycles = 15;
