3 METHODOLOGY
Due to the high computational resources that are nec-
essary to exactly solve the CRP instances arising from
real applications, non-exact approaches are advisable
for this problem. Genetic algorithms are specially
adapted to deal with this type of combinatorial opti-
mization problem insofar as they can easily deal with
the optimization objective and the many constraints
involved. Hence, a new GA was developed for the
CRP.
The above model (1) to (8) uses binary variables,
but it is more convenient for this algorithm to be based
on integer decision variables taking values in the in-
terval [1,N + 1]. Otherwise, modeling with binary
variables would result in bigger dimension chromo-
somes and enhanced difficulties in dealing with the
constraints. One solution to the problem is associated
with an individual identified by a single chromosome,
which is encoded through an L × M integer matrix.
Its element (k, j) belongs to [1, N + 1] and identifies
which crop is being planted on lot k and in period j,
for all k = 1..L and j = 1..M.
With the purpose of exploring the set of solutions
more efficiently, the initial population for the GA was
determined by a new constructive heuristic. Each ini-
tial solution/individual is built lot by lot thus imposing
the planting sequence constraint on the same lot, that
is, rotation conditions (a) and (b).
The fitness of an individual is initially set equal to
the sum of the profitabilities on all lots. Then an expo-
nential penalization process is used to punish the in-
feasible solutions due to violation of the remaining ro-
tation conditions. Hence, penalizations of the neigh-
borhood, set-aside period, green fertilization and de-
mand violations are added. Considering that their
sum is p, the fitness of the individual is multiplied
by e
−p/K
, where K is a positive constant equal to 10.
The GA was applied with 120 generations, 451 in-
dividuals (solutions) in the population of all the gen-
erations and using selection, crossover, mutation, mi-
gration and elitism operators.
The selection method used was a biased roulette
wheel.
As to crossover the option favored a uniform
crossover with a rate of 80%. The chromosome break
points for this genetic operator were horizontally and
randomly selected (to keep feasibility in the line).
Mutation consists of randomly selecting lots of the
individuals and replacing the respective cultures with
crops constructively assigned.
The migration operator was devised to avoid pre-
mature convergence of the algorithm and, at the same
time, it explores the feasible region more efficiently.
In this context, 50% of the population in the genera-
tions 120γ is replaced by randomly generated indi-
viduals (with γ, a control parameter taking the value
0.80).
Migration as well as mutation rates both equal to
5%.
The elitism consists of saving the best solution be-
fore the action of the operators in each generation and
inserting it in the population for the next generation.
4 COMPUTATIONAL RESULTS
The computational experiment was performed with
the algorithms coded using Matlab software, version
7.4.0 R2007a, on Core 2 Quad microcomputers with
2GB memory and 250 GB hard-disk memory.
The computational experiment took into account a
real instance of CRP with a planting area that presents
16 non-parallel lots, as shown is Figure 1, and other
real data for crops coming from a medium size plan-
ting area at S
˜
ao Paulo state, in Brazil.
Figure 1: Plantation area.
A two-year planting program was considered and
each period fixed at one month. Crops 23 to 29 were
selected for green fertilization and crop 30 for the set-
aside period. The plants represented by 1 to 25 corres-
pond to marketing purposes.
The above GA ran 100 times for this real life pro-
blem.
To access the performance of the GA in this con-
text, we measured the average CPU time per GA run
(t in seconds), the number of times the algorithm pro-
vided a feasible best solution out of 100 (α), the ave-
rage profitability of the best solution found per run (z
in R$), the average penalizations for the fitness of the
best solution at the initial population per run (p
inicial
)
and the same for the best solution at the final popu-
lation per run (p
f inal
). Lastly, the value ∆z repre-
sents the average relative deviation between the profi-
tability of the best first and best final solutions found
at each run of the GA. These last three figures are de-
termined with the purpose of accessing the improve-
ment achieved with the algorithm from its beginning
ICORES 2012 - 1st International Conference on Operations Research and Enterprise Systems
456