selection is carried out by first choosing one parent
from the non-dominated front (NDF), and then
choosing the other parent by selecting the fitter of two
candidates via roulette selection. Superior solutions
are obtained with this method compared to the
original NSGA-II crossover which selects both
parents by roulette selection (Deb et al., 2002). The
solutions for the various locations are then
combinatorically combined to create whole fleet
solutions resulting in a large number of fleet mixes
which can respond to a wide variety of multi-location
scenarios.
2.3 Chromosomes
A chromosome (an individual solution) consist of two
parts: the fleet configuration and the mission
schedule. The fleet configuration chromosome part
contains a matrix assigning a number of platforms of
each type to each mission. The bounds on the
configuration are given by minimum fleet and
maximum fleet input (minimum and maximum
number of each platform that can be assigned to a
mission). We also ensure that all capabilities required
for a mission can be assigned at least one platform
type. The schedule chromosome part contains an
ordering of all the mission occurrences (based on
mission frequency). When the schedule is initialized,
the missions with higher priority missions are always
scheduled before lower priority missions.
2.4 Fitness Evaluation
The total number of platforms in the fleet is calculated
by using the fleet configuration and mission ordering
by applying a bin packing algorithm to schedule the
missions (explained in Section II.F). The total number
of platforms corresponds to the number of individual
platforms in each bin (one bin per platform type). The
fitness values (acquisition cost and operational
effectiveness) are then calculated. The non-
dominated front is calculated based on the fitness
values.
2.5 Crossover and Mutation
NSGA-II applies crossover and mutation operators to
the set of solutions (or parents). For the crossover, one
parent is selected from the current non-dominated
front of the parent population. To select the second
parent, two individuals are first randomly chosen
from the entire parent population, and the fittest one
is chosen. We apply a standard crossover operator
which picks, with equal probability, a fleet
configuration from the two parents and assigns it to
the child. When the crossover operator is applied to
the mission schedule, a random swath of consecutive
chromosome values is selected from the first parent
and placed in the same position in the child. These
values are removed from the second parent. The
remaining chromosome values from the second
parent are then used to fill the child chromosome in
order starting from the left.
Each parent’s chromosome can be mutated in two
ways: the fleet configuration and the schedule. The
mutation operator has only one mutation parameter µ,
which is the probability that the fleet configuration is
changed. Mutation of the fleet configuration is carried
out by randomly picking a fleet configuration
between the minimum fleet and maximum fleet. The
schedule is mutated by randomly assigning missions
while preserving priority-based ordering.
Once a set of children has been produced and
mutated, they are combined with the parents to obtain
a set of individuals that is twice the size of the initial
population. Non-dominated front sorting is applied to
this set to select the next generation of population
members. However, if the last front to be placed in
the new population exceeds the remaining space in
the new population (this can occur for the first front
if the number of individuals in the first front exceeds
the population size), the individuals are sorted by
crowding distance to preserve diversity in the solution
set. The crowding distance of an individual is defined
as the sum (over all objectives) of the distance
between its two closest neighbours (Deb et al., 2002).
The process of removing the “most crowded”
individuals from the front is called truncation of the
front.
2.6 Objective Functions
The objective functions are to minimize acquisition
cost and maximize operational effectiveness.
2.6.1 Acquisition Cost
To calculate the total acquisition cost, we need to
compute the total number of platforms in the fleet f,
by scheduling all the missions as follows:
1. Iterate through the mission occurrences using the
mission ordering.
2. Calculate “investment” (i.e., the number of
platforms in configuration * platform cost *
mission duration) that is used to decide which
platforms to schedule first.
3. Number the platforms from highest to lowest in
priority and exclude platforms with an investment
ICORES 2018 - 7th International Conference on Operations Research and Enterprise Systems
126