The Web application shown in Figure 5 is the part
of the solution implemented for visualization and in-
teraction with the core of the developed work, where
the Inspections Planning Assistant is the most rele-
vant for this paper. It contains two main pages: an
application page where it is possible to request the
generation of inspection routes, consult the solution
produced in three different views, change the routes
by adding agents to the solution or removing them,
and storing the routes permanently. The other page is
used to query inspection actions already stored.
The developed system is capable of creating a
daily plan for one or more brigades of inspectors in
order to promote a maximum number of inspections
in a day or to maximize the value of the utility of
inspected agents with an efficient use of resources.
This way it can work as a decision support system
for inspectors. The inspection plan can be consulted
by any worker and the system is amenable to eval-
uation by workers who suggest changes in the route
or additions/removals of Economic Operators. These
changes affect directly the defined utility of each Eco-
nomic Operator from the previous solution and there-
fore the solution is recalculated and presented.
5 RESULTS
Followed by the development of the four algorithms,
multiple tests and experiments, in simulated environ-
ment, were performed in order to promote a better
evaluation of the implemented methods. Based on
such experiments, relevant information has been col-
lected regarding algorithms performance, and solu-
tions quality.
Regarding the exact algorithm (Branch and
Bound), the capabilities of returning the optimal so-
lution were tested given an execution time limit of
300 seconds. The results are presented in Table 2,
which covers executions from 1 to 8 brigades for the
maximization of the number of inspected Economic
Operators. For 1 brigade it presented a maximum in-
put size of 24 Economic Operators, and 14 Economic
Operators for 8 brigades. In the rightmost columns it
is possible to verify the execution times for inputs of
4, 8, 12, and 14 Economic Operators.
The evaluation of the meta-heuristic methods
varies essentially according to the size and the type
of the input data (Economic Operators). The follow-
ing issues were taken into account:
• The values shown for meta-heuristic methods are
always the average of 3 executions.
• Brigades always start their route at the same hour
and their work shift has the same duration. Start-
ing and ending points are also the same.
• For the Genetic Algorithm, executions were per-
formed using a population of 100 individuals,
with crossover, mutation and recovery probabil-
ities of 80%, 5% and 4% respectively.
Varying parameters were:
• Objective Function: Maximization of the total
utility of inspected agents, or maximization of the
number of Economic Operators to be inspected.
• Number of Brigades: 2 brigades per 100 Eco-
nomic Operators, or 8 brigades per 100 Economic
Operators.
• Number of Iterations: 10,000 or 100,000 for Hill
Climbing and Simulated Annealing, and 100 or
200 to the Genetic Algorithm.
Varying the objective function and the number of
brigades allowed us to analyze the direct effect of
these variables in the performance of the final solu-
tion.
The test set is shown in Table 3, representing 8
Portuguese municipalities, the number of Economic
Operators located in those municipalities, and the
travel cost (distance and time) between the municipal-
ity and the center of operational unit (Figure 6). The
set of municipalities was carefully split into three test
subsets. (i) The red subset has only one municipality
and a low density of Economic Operators; (ii) the blue
subset is composed of four geographically dispersed
municipalities, also with low densities; on the other
hand, (iii) the orange subset has three municipalities
close to the starting/finishing place and a total of 424
Economic Operators.
The results for the referred three subsets are pre-
sented in Tables 4, 5 and 6. For each test case we show
the number of brigades used to determine the solu-
tion, the number of iterations used as stop conditions
and the results for the two objective functions: maxi-
mization of the global inspection utility (max u
eo
) and
maximization of the number of inspected Economic
Operators (max inspected eo). The avg u
eo
and the
avg eo columns contain the average of obtained in-
spection utilities and number of inspected Economic
Operators, respectively. Regarding the average for
the total execution times and the times to determine
the best solution, they are displayed in the avg T and
the avg t columns, respectively. Through the global
analysis of the obtained results it is possible to con-
clude that they are satisfactory as all the tests returned
a possible solution within the previously defined pa-
rameters.
Table 4, specifically, allows to compare the three
implemented meta-heuristic methods with the exact
ICAART 2020 - 12th International Conference on Agents and Artificial Intelligence
274