figshare
Browse

Cyclists' exposure-network design-data-MATLAB file

Download all (57.74 kB) This item is shared privately
dataset
modified on 2023-09-25, 18:55

These files includes the data and the coding that was used for this paper. The coding of the upper and lower level of the model was done in MATLAB.

Before coding the algorithm and the model, a function was defined that contains the raw data that represent the numerical example (Mandl’s Network). Please note that not all the data that are presented in this file are based on the model’s network. Some of the essential data for this model was not available about the mentioned network. Hence, we assumed some of this data such as cyclists' free-flow travel time.

The data is presented in the “CreatModel” function. This file consists of links’ demand, free flow travel time for each mode, the width of the link, etc. The data are specified by comments in the file.

The rest of the files are as follows:

“CreatSolution”: This is the INS algorithm to generate the initial network

“MSA”: This file is the method of successive algorithm which is used to solve the lower-level of the model.

“ObjectiveFunctions”  This function consist of the formulation of the objective functions of the model

“NSGA-II” This file is the main algorithm of the genetic algorithm. As can be observed from the algorithm the MSA algorithm runs then the objective function is calculated.

“Mutation”: Is the coding for the mutation operator that was explained in the manuscript

“Corssover_Intra_string”: As in the text the cross-over operator is presented in two parts: intra-string cross-over deals with the chromosomes at the node level.

“Crosover_Inter_string”: This is the second type of cross-over which is used at the route level.

“CalcCrowdingDistance”: crowding distance is a measure of how far apart solutions are in the feasible space. It is used to encourage diversity in the selected solutions, by selecting solutions that are well-spaced out and cover the feasible space. 

“Dominate”: A solution is dominant if it is better than other solutions in at least one objective, and not worse in any other objective. This function of the algorithm checks the solution in this term. 

“Non_DominateSorting”: Non-dominant solutions are solutions that are not worse than any other solution in any objective. These solutions in the Pareto front represent the trade of between objectives. 

To run the code one needs to run the NSGA-II function. all other functions are defined in order as a part of the NSGA-II algorithm in this coding file.