
 
application and the other one is an android based 
mobile application. These two alternatives access to 
a central server via internet, this server can be 
divided into three different components. The first 
one is a database where all the information about the 
made requests, the active routes and the statistics are 
stored. The second component is composed by some 
web services that offer several access methods to the 
database and business logic. The web services are 
consumed by some Java Server Pages (JSP), the 
third component of the server. These JSP pages 
represent the presentation layer and user access to 
both web application and mobile application. 
4 PROPOSED ALGORITHMS 
As mentioned in the preceding section, the 
implemented simulation tool uses an artificial 
intelligence algorithm as base. This algorithm is 
used to resolve the route planning problem, in a 
static way in regular transport lines, as well as in a 
dynamic way, in on demand transport lines. In 
application level, the algorithm will be in charge of 
finding in every moment the optimized route the bus 
has to go through to visit all the stations of the 
environment. To implement the solution, the 
problem has been treated as a DRT one, as 
mentioned in the introduction of the article, and 
resolved with a heuristic method that obtains good 
approximations. To perform this task, we designed a 
hybrid algorithm that combines simulated annealing 
methods and genetic algorithms. Then we explain 
the details of each technique separately. 
Simulated Annealing (Rutenbar, 1989): This is 
one of the most popular local search techniques. It is 
based on the physical principle of cooling metal. 
Using that analogy, it generates an initial solution 
and the process proceeds by selecting new solutions 
randomly. The new solutions are not always better 
than the initial solution, but as time passes and the 
temperature decreases (the metal becomes stronger), 
each new solution must be better than previous 
solutions.  
Genetic Algorithm (Zhang, Yao and Zheng, 
2009): This algorithm is inspired by the laws of 
natural selection and the evolution of the animal 
species. An initial population of solutions is defined. 
This initial population consists of a number of 
individuals (solutions of the problem.) Then, with 
the combination and evolution of these individuals, 
the algorithm tries to get a better solution. 
Hybrid Algorithm (Kaur and Murugappan, 
2008): The hybrid algorithm is the resultant from 
joining the genetic and the simulated annealing 
algorithms. It was decided to use this algorithm after 
a test period detailed in the following section. 
5 TEST AND FINAL SOLUTION 
In the field of artificial intelligence, when you create 
a new algorithm, or modify an existing one, results 
that show that the new solution is better than other 
known solutions have to be submitted. To do this, 
there are sets of problems used to compare results in 
computational resources and parameters related to 
the quality of the solution. In our case, there is not a 
set of sample problems for comparing the 
performance of design algorithms for demand 
responsive transport routing problems. For this 
reason, we have defined our own set of testing, and 
we are going to make comparisons between our 
algorithm, a brute-force optimal algorithms and each 
of the techniques used in our hybrid algorithm. 
As indicated above, for the design of our hybrid 
algorithm, separate versions of simulated annealing 
and a genetic algorithm have been implemented. In 
addition, we have implemented a "brute force" 
algorithm, to find out the optimal solution for small 
instances of the problem (with few intermediate 
stops). 
With these 3 algorithms, there have been a series 
of tests to measure the performance of each 
algorithm and the ability of each one to solve the 
problem. As a result of these tests, we have obtained 
several conclusions:  
1.  The “brute force” algorithm is optimal because 
it always finds the best solution. Even so, it has 
the disadvantage that the execution time is 
unacceptable when the number of stations 
increases to more than 9 (for a large number of 
stations cannot even get a solution). This 
algorithm cannot be used in a real scenario. 
2.  The simulated annealing algorithm only finds 
the optimal solution when the first and last 
station does not vary during the resolution 
process. Running time is always the same 
regardless of the number of stops. 
3.  In the case of genetic algorithm, the execution 
time is constant if the number of generations is 
also constant. An advantage of this algorithm is 
that the probability of finding a good solution 
is independent of the number of stops. 
After preliminary analysis of algorithms 
separately, we came to the conclusion that the results 
of runtime and solution quality were not good. For 
this    reason    we    decided   to    combine   the two 
A METAHEURISTICS BASED SIMULATION TOOL TO OPTIMIZE DEMAND RESPONSIVE TRANSPORTATION
SYSTEMS
387