DECISION-MAKING PROCESS
ON THE APPLICATION OF PARTICIPATORY LEARNING SYSTEM FOR SOLVING THE 3D LOADING AND UNLOADING CONTAINERS IN PORT TERMINALS FOR MULTIPLE SCENARIOS Aplicação do sistema de aprendizado participativo na resolução do problema de carregamento e descarregamento 3D de contêineres em terminais portuários para múltiplos cenários Anibal Tavares de Azevedo1, Edilson Fernandes de Arruda2, Luiz Leduino Salles Neto3, Antônio Augusto Chaves3, Antônio Carlos Moretti4
Abstract: This article presents a new way to solve the stochastic 3D containership loading planning in terminal ports for multiple scenarios which consists in determine how to load and unload an unknown number of containers from a containership in a manner that operational constraints related with containers and ship structure are fulfilled. Also, the number of containers movement and the distance between the containership gravity center and center of mass are objective functions to be minimized. As the deterministic 2D problem is NP-Complete, also the stochastic 3D is, which means heuristic methods should be used. This article proposes a participative learning system combined with a new way of representing solutions, called the representation by rules, for solving the stochastic 3D problem. The system is able to generate more robust solutions with a higher improvement in handling uncertainty than the methodology that employs multiple scenarios know at advance. Keywords: Combinatorial Optimization. Participatory Learning System. Stowage Planning.
Resumo: Neste artigo é apresentada uma nova forma de resolução do problema de carregamento de contêineres 3D em terminais portuários (PCCTP 3D) para múltiplos cenários que consiste em determinar como carregar e descarregar um conjunto de contêineres de um navio porta-contêineres (containership), respeitando restrições operacionais relacionadas aos contêineres e à estrutura do navio, e visando à minimização do número de movimentos e da distância entre o centro de massa e o centro de gravidade. Assim como o problema 2D é NP-Completo, o problema 3D para múltiplos cenários também é. É aconselhável, portanto, a utilização de métodos heurísticos. É proposto um Sistema de Aprendizado Participativo que emprega uma nova representação das soluções, denominada representação por regras, para resolver o PCCTP 3D para múltiplos cenários. O Sistema de Aprendizado Participativo é combinado com a representação por regras e é capaz de gerar soluções mais robustas e com desempenho significativamente melhor em cenários desconhecidos do que as soluções obtidas via metodologia baseada na otimização para múltiplos cenários conhecidos. Palavras-chave: Otimização Combinatória. Sistema de Aprendizado Participativo. Plano de estiva.
1. Assistant Professor II in the Universidade Estadual de Campinas – Campinas, SP – Brazil. E-mail:
[email protected] 2. Assistant Professor I in the COPPE, Universidade Federal do Rio de Janeiro – Rio de Janeiro, RJ – Brazil. E-mail:
[email protected] 3. Assistant Professor I in the Universidade Federal de São Paulo – São Paulo, SP – Brazil. E-mail:
[email protected];
[email protected] 4. Professor in the Universidade Estadual de Campinas – Campinas, SP – Brazil. E-mail:
[email protected]
| 57 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
1. INTRODUCTION The efficiency of a port terminal specialized in handling containers depends on the organization and agility on handling the containers, especially during the process of loading ships. The stowage and the associated loading plan are essentially determined by two criteria: the stability of the ship and the minimum number of reassignment required in the various delivery points (Avriel et al., 2000; Wilson; Roach, 2000; Ambrosino et al., 2006). The last criteria is based on the fact that many ships have a cellular structure, as seen in Figure 1, and the containers should be loaded in vertical stacks, which implies, in many cases, the need to move some containers in order to unload others positioned at the lower part of the stack. At the same time, another restriction emerges during the choice of containers for loading at the terminal yard, where the containers are usually stacked to form blocks waiting to be loaded. If the target containers, which should be loaded later on, are positioned in stacks below the others, then the loading task requires reassignment in order to remove and reposition the target containers. This situation is recurrent, once that the loading order is not known when the cargo arrives at the terminal yard, and is called relocation. However, even when this information is available in time, the ideal arrangement of container in the storage area is virtually impossible due to the random arrival of several other cargo. More specifically, the container stochastic loading problem in port terminals (CSLPPT) consists in determining a set of containers
Group of bays
Bay
of different types in a containership, respecting operating restrictions regarding the containers, the ship, and the port terminal at matter. It should be noted, however, one aspect on the estimates of which containers should be embedded in each port. According to Wilson and Roach (1999): Planners must consider expected loads at subsequent ports, which often include statistical information describing loads in generic terms. (In the general cargo trade it is quite frequently the case that booking lists arrive little by little, over time, and are not completely known much in advance of loading taking place— hence the need for such statistical information.). An idea to deal with the phenomenon described by Wilson and Roach is the use of multiple scenarios. The scenarios try to capture the uncertainty related to both aspects of the containers to be transported: the number of containers to be loaded in each port, as well as their destination. It is presented, in this article, the use of a learning algorithm to solve the 3D CSLPPT for multiple scenarios, meaning, in order to minimize the loading time and later unloading of the containers in port terminals, as well as to reduce the instability measured such as the distance between the mass Center and the geometric Center of the ship covering several scenarios. Avriel et al. (2000) presented a 2D formulation of the problem and showed that the 2D problem in NP-Complete. In Section 2, the 3D problem is presented
Starboard
Bay 12
Tier 5 4 3 2 1
Port
Stack
Figure 1. Cellular structure of a ship. Source: Wilson and Roach (2000).
| 58 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
8 6 4 2 1 3 5 7
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
for multiple scenarios, as well as their binary mathematical formulation. Section 3 presents the representation by rules to be used in solving problems with multiple scenarios, as well as the learning algorithms. Section 4 presents the computational results obtained, and, in Section 5, the conclusion and future works.
2. PROBLEM STATEMENT A containership has its capacity measured in twenty-foot equivalent units (TEUs). For example, a ship with 8,000 TEUs of capacity may carry 8,000 twenty-foot-containers. The ships have cellular structures (see Figure 1) in which containers are stored. The cells are grouped by sections or bays, and containers are stacked in these sections, forming vertical stacks. Thus, a bay is a grouping of cells, with the ability to stack a number of containers. Each d bay has numbered horizontal lines r= 1, 2, ..., R, (line 1 is the line at the bottom and line R is the line on top of the stack) and numbered columns c= 1, 2, ..., C (column 1 is the first column from the left). The PCCTP 3D problem for multiple scenarios consists of reducing as much as possible two objectives in each scenario, namely the number of reallocations of containers to a given number of N ports and the instability of the containers’ arrangement. For the first objective, the reallocation due to temporary unloading of containers is minimized, with the purpose of unloading, in a p port terminal, a container at the bottom of the stack. This is necessary, since the containers in a stack can only be accessed from the top of it. Then a container in the middle of the stack can only be unloaded in a determined port p if the containers on top of it are removed. For the second objective, it is defined the distance from the mass center to the geometric center as a measure of instability of the ship in each port (AVRIEL et al., 2000). Up next, the formulation of the problem studied will be presented as a problem of integer linear programming with binary variables 0–1.
2.1. MATHEMATICAL MODEL Consider a cargo ship containing D bays numbered d = 1, ..., D. Each bay has R horizontal lines numbered r = 1, 2, ...R, (the line 1 is the line at the bottom, and the line R is the line on the top of the stack) and C vertical columns
numbered c= 1, 2, ..., C (column 1 is the first column from the left). The bays are tridimensional and of various sizes. Nevertheless, they may be represented, without loss of generality, by bays of the same capacity, particularly, by vector arrays. This way, the ship may allocate a maximum of R x C x D containers. It is assumed, also, that all containers have the same size and weight. The ship arrives at port 1 completely empty and it visits ports 2, 3, ..., N in the sequence. In each port I = 1,..., N - 1, the ships receive cargo containers destined for ports I + 1,...,N. In the last port it unloads the containers and becomes completely empty. Be TS = [T ijS] the transportation matrix of dimensions (N - 1) ´ (N - 1), where T ijS is the number of containers originating from i and destination j in an s scenario. The matrix is upper triangular, since T ijS = 0 for all i > j and s = 1,...,S. The integer linear programming formulation of the PCCTP 3D for multiple scenarios is given by Equations 1–8.
S
∑
f(x) = (αϕ1(x)+βϕ2(y))θS s = 1···, S;
Min
(1)
s=1
s.a:
j
R C
D
∑∑∑∑x
l=i+1 r=1 c=1 d=1
i-1 R C
D
∑∑∑∑x
(r,c,d)-
S ijl
k=1 r=1 c=1 d=1
i = 1, ···,N – 1, j = i + 1, ···, N; s = 1, ···, S; j
N
(r,c,d)=T Sij
S kji
(2)
j
∑∑∑x
k=1 j=i+1 l=i+1
(r,c,d)=ySi(r,c,d)
S kjl
i = 1, ···, N – 1, r = 1, ···R; c = 1, ···, C; d = 1, ···, D; s = 1, ···, S;
(3)
ySi(r,c,d)-ySi(r+1c,d)≥0 i = 1, ···, N – 1, r = 1, ···, R – 1; c = 1, ···, C; d = 1, ···, D; s = 1, ···, S; j-1 N
∑∑x
i=1 p=j
(4)
j-1 N p
(r,c,d)+
S ipj
∑∑∑x i=1 p=j+1 l=j+1
(r,c,d)≤1
S ipl
i = 2, ···, N, r = 1, ···, R – 1; c = 1, ···, C; d = 1, ···, D; s = 1, ···, S;
(5)
| 59 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
N-1
ϕS1(x)=
N
j-1
R
C
D
i=1 j=i+1 l=i+1 r=1
c=1
d=1
∑ ∑ ∑ ∑ ∑ ∑x
S ijl
(r,c,d)
(7)
D
D
i=1 d=1
S 2 di
S 2 di
d=1
ΔzcmSdi=zcmSdi-R/2, ΔxcmSdi=zcmSdi-C/2 ⎛R C S (y (r,c,d)x(r-0.5)) zcm =⎜ ⎝ r=1 c=1 i
⎛R C S (y i(r,c,d) ⎜⎝ r=1 c=1
⎛ ⎜ ⎝
Constraint (2) is the constraint of flow conservation, in which TijS is the matrix element of transportation, which represents the number of containers boarding in port i bound for port j in scenario s. The constraint (3) ensures that each compartment (r, c, d) has at most one single container. The constraint (4) is necessary in order to ensure the existence of containers below the container in the compartment (r, c, d). Constraint (5) is responsible for defining the moving of containers: if a container in position (r, c, d) is unloaded in port j, then there either are not containers above it or the v index of the container (r+1, c, d) is no greater than j. The objective function of Equation 1 presents a composition of two different criteria in a scenario s weighted by the probability qs of occurring the scenario: the first criterion depends on the moving of the containers, ϕ1S (x), and the second depends on the position occupied by the containers in each port, ϕ2S (y). Both criteria may be combined by scalar values provided for weights α and β within a biobjective optimization model. The term ϕ1S (x) regarding the total cost of moving containers (assuming that moving containers has a unitary and equal cost for all ports) in all the ports for a scenario s and is given by Equation 7.
N
∑∑(Δxcm ) +∑(Δzcm )
ϕS2(y)=
⎛R C S (y i(r,c,d) ⎜⎝ r=1 c=1
S di
∑∑
⎛R C S xcmSdi=⎜ (y (r,c,d)x(c-0.5)) ⎝ r=1 c=1 i
∑∑
∑∑ ∑∑
(8)
⎛ ⎜ ⎝
In which: the binary variable xijlS (r,c,d) takes up value 1 if in scenario s there is a container in the compartment (r, c, d) engaged in i and with final destination at port j and which was moved to port v; otherwise, this variable takes up the value 0. As a compartment (r, c, d) it is understood the line r, the column c, and the bay d in the cargo compartment of the ship. It should be noted that the numbering of the lines r is made from the bottom up, this way the line of number 5 is above line number 4; the numbering of the columns c is made from left to right, and the depth d is started from the stern to the bow. Similarly, the variable YiS (r,c,d) has value 1 if the scenario s, coming out from port i, the compartment (r, c, d) is occupied by a container; otherwise, it takes up value 0.
The term ϕ2S (y) regards the ship’s stability according to the position of containers (assuming that each container has a unitary and equal weight for all ports) for all the ports in scenario s and is given by Equation 8.
⎛ ⎜ ⎝
(6)
⎛ ⎜ ⎝
xSijl(r,c,d)=0 ou 1; ySi(r,c,d)=0 ou 1
Equation 8 imposes that in each scenario s, in order to calculate the sum of the deviations Δxcmdis and Δzcmdis between the coordinates of mass center (xcmds, zcmds) and the geometric center coordinates (R/2,C/2) of each bay d, it is necessary to calculate the coordinates of the mass center zcmdis and zcmsdi, regarding, respectively, the axis of the columns c and lines r of bay d. Unfortunately, the size the problem takes with the formulation given by Equations 1 to 8 is prohibitive for real problems and can only be solved for small problems. Besides, Avriel and Penn (1993) show that PCCTP 2D is an NP-complete problem. As PCCTP 3D consists of an extension of the objective function of PCCTP 2D, the PCCTP 3D with multiple scenarios is also NP-complete, which justifies the use of heuristics in order to find good solutions in a feasible computational time. A second problem is related to the matter of the representation of the solution through binary variables. Formulation given by the Equations 1 to 8 is such that in order to represent a solution of an instance with S = 10, D = 5, R = 6, C = 50, and N = 30 will be necessary S x D x R x C x N3 variables xijv(r,c,d), i.e., 405,000,000 of variables x, and S x D x R x C x N variables yi(r,c,d), i.e., 450,000 variables y. In other words, this formulation requires the definition of the value of 405,450,000 binary variables to provide a single solution which may or may not be feasible. The representation by binary variables, therefore, is not a viable alternative from the computational point of view.
| 60 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
Thus, instead of using a representation making a detailed description of how each container should be handled (case of modeling by binary variables), there will be a representation used in which only an overall guidance of how containers may be organized is provided, once this is the key to solve the problem, even if only deterministic. This representation is called the representation rules and, for being more flexible, it allows dealing, also, with solving the problem when formulated for multiple scenarios. The next section described this new representation and their application in the problem with multiple scenarios.
in the stack is above the position of the j port’s container. See, for instance, that in matrix B of Figure 2, in order to unload all the containers whose destination is port 2, it will be necessary to unload the containers in cells B(1,1,1) = 2, B(1,2,1) = 3, and B(1,2,2)=2. Thus, with the objective of reducing the number of relocations, when loading containers in a given port j, one should take into account the containers already in the ship, because they were shipped in previous ports (ports from 1 to j - 1) with destination to ports j + 1 to N. Observe then that there is a close relation between the loading and unloading operations, considering that the way the loading is made in a port j will affect the unloading in the remaining ports (ports from j + 1 to N). Therefore, in order to reduce relocation operations, it is necessary to establish rules to loading and unloading containers in each port which takes into account this relation. For such, 12 rules were created, 6 for loading (Rc1, Rc2, Rc3, Rc4, Rc5, Rc6) and 2 for unloading (Rd1, Rd2). The combination of a loading rule with an unloading one provides the rule k for port j. Further details on the rules and their impacts in matrix B are found in Azevedo et al. (2012, 2014).
3. REPRESENTATION RULES
3.2. REPRESENTATION RULES FOR MULTIPLE SCENARIOS
The phenomenon observed with the model with binary variables falls within the principles of incompatibility of Lofti Zadeh, i.e., As the complexity of a system increases, our ability to make precise and significant statements about its behavior diminishes until a threshold is reached beyond which precision and significance (or relevance) become almost mutually exclusive characteristics. (ZADEH, 1973).
This section presents an alternative to the binary Formulation 1–8. Such alternative is able to represent the problem with a smaller number of variables and may be applied both to the case with a single scenario as well as to multiple scenarios, which is the objective of this work.
It is important to observe that considering multiple scenarios in the representation rules may be done using the Evaluation Algorithm of a Solution in Figure 3. For such, it is necessary to observe that a solution vector sol contains N loading and unloading rules, meaning, one rule for each
3.1. REPRESENTATION RULES FOR A SCENARIO It is observed in Figure 1 that the ships have a cellular structure. This way, the locations containers are allocated are predetermined, so that the containers are stacked vertically. This stacking suggests a representation through vector arrays of containers in the ship. Thus, there may be defined a vector array of occupation B, which provides the amount of available spaces and the location of the containers in the ship in each port. Often, in order to unload in port j a container destined for port j, it is necessary to perform relocation operations of the containers that are destined to ports j + 1 to N, for the position they occupy
2
3
4
2
4
4
5
4
5
5
6
6
Br,c,3
Br,c,2
Br,c,1
Figure 2. Occupation matrix for a ship with capacity for 16 containers and 6 ports.
| 61 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
one of the N ports. The set of N rules is evaluated for S scenarios. Then, the number of movements should be multiplied by the probability of occurrence p(s) of each scenario s. This procedure, therefore, encompasses the evaluation for just one scenario (contained in the function “Evaluate3D”) as described in Figure 3. The symbols and functions used in the algorithm in Figure 3 are described below: • s – Counter variable which indicates the current evaluation scenario. • S – Total number of scenarios. • sol – Vector whose dimension is the number of ports, and the element i of this vector, i.e., sol(i)=r, indicates that the rule r Will be applied to the port i. • T – Transport matrices vector such that the element T(s) contains the transport matrix for the scenario s. • p – Vector whose element p(s) contains the probability of occurrence of the s scenario associated to the transport matrix T(s). • nmov – Number of movements performed to load or unload the ship over the N ports for scenario s as given by Equation 7. • instab – Measure of instability for scenario s with transport matrix T(s) calculated according to Equation 8. The advantage of the approach highlighted in Figure 3 is that the whole codification regarding the solution through representation rules for a single scenario may be reused for the consideration and evaluation of multiple scenarios. The function “Evaluate3D” of Figure 3 provides two values combined in one single function: number of movements and measure of instability (see Equations 1, 7, and 8). These values are obtained through simulation such as described in Azevedo et al. (2012) for each scenario. In order to consider multiple scenarios and 3D, just add the “Evaluate3D” function in the evaluation of multiple scenarios, i.e., for the solution vector v containing rules are extracted the number of movements and the measure of instability for s scenarios (s transport matrices T).
knowledge on the objective of learning depends on the learning process itself. This kind of system is called Participatory Learning System (PLS), since the system of beliefs and theories affects the way the information is accepted and processed, as well as the observations affect the belief system. This system is illustrated in Figure 4 and is further detailed in Yager (1990). Informally, the PLS uses the information adhering to the beliefs to change, while the divergent are despised or had a little modification in their beliefs. The formalization of this process consists of considering a collection of cc known scenarios indexed with k = 1,...,cc. Being Vk the value associated to trust in the scenario k, e Vk ∈[0,1]. Assuming that knowledge is acquired from the vectors of observations: D(1), D(2), ... with cc dimensions each, then Dk(j) ∈[0,1] is the manifestation of the k-th value in the j-th observation. The D vectors are employed in order to learn the V values. It may be said
Evaluation of a solution for multiple scenarios [nmov,instab] = EvaluateMC(sol,T) Start s ← 1; nmov ← 0; While (s < S ) do Start [aux1,aux2] = Evaluate3D(sol,T(s)); nmov ← nmov + aux1*p(s); instab ← instab + aux2*p(s); s ← s + 1; End return nmov and instab; End Figure 3. Algorithm for the evaluation of multiple scenarios with a solution of rules.
Observations
Beliefs Learning system
3.3. PARTICIPATORY LEARNING SYSTEM In various problems, the learning system may be seen as a process in which, as new information is obtained, the initial beliefs are modified. If this occurs, then, the current
Figure 4. Representation of the Participatory Learning System.
| 62 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
that the process of learning is participatory if the usefulness of each observation D(j) to contribute in the process of learning depends on the acceptance of the current estimate of the Vs as valid observations. What the participatory learning does is to learn through data as long as those are not too distant from the current system of beliefs. A formal mechanism to update the system of beliefs is given by Equation 9. (9)
V(j+1)=V(j)+λρj(D(j)-V(j))
In which V(j+1), V(j), and D(j) are vectors with c elements corresponding to the new reliability values of the beliefs, the old reliability values of the beliefs and the current observation, respectively. Also, l∈[0,1] is the learning rate, meaning, the current system of beliefs may be modified by an observation different from the current belief, and ρj corresponds to the level of compatibility between the data (D(k)) and the beliefs (Vk) such that ρj ∈[0,1]. A possible function for ρj is given by Equation 10. c
1 |Dk(j)-Vk(j)| ρj=— c
∑
(10)
k=1
A second improvement in PLS may be inserted considering a critique index aj. The function of this index is to update the compatibility parameter rj so that a sequence of discrepant observations regarding the system of beliefs are not only discarded or have little contribution in the update of beliefs but also cause a change in the belief of the current system. Thus, it is expected that conflicting observations change current beliefs. Being aj ∈[0,1], then, the greater the aj, the greater the critique to the system. Mathematically aj+1=aj+γ(ρj+1-aj)
For aj = 1, the effect of rj is eliminated, and the level of compatibility between the observations and the beliefs is not considered in changes in the system of beliefs. For aj = 0, the effect of rj is fully considered, i.e., the level of compatibility between the values observed and the system of beliefs. Therefore, in this case, a very discrepant observation may cause changes in the system of beliefs. Equations 11 and 12 may be combined so that the PLS is composed of two modules: one regarding learning (Equation 12) and another regarding critique (Equation 11) as illustrated in Figure 5.
3.4. APPLYING THE PARTICIPATORY LEARNING SYSTEM IN THE PCCTP 3D Suppose there is a set of better solutions for cc known scenarios, i.e., there are cc vectors solk containing N rules of each one. Assuming, initially, that these are all neutral in relation to unknown scenarios, then, a confidence level is associated in each solution vector equal to Vk (0) = 1, i.e., there is full confidence in the solutions provided. The second step consists of evaluating each vector solk for the first unknown scenario in order to obtain the value of D(1) of each solk. In the case of the PCCTP 3D, D(1) is a combination between the number of movements and the measure of instability provided by the function “Evaluate3D” (see Figure 3). After performing the calculation related to D(1), from Equation 9 or Equations 11 and 12, the confidence levels for each solution solk, i.e., Vk (1) of each scenario, are obtained according to the performance of the solutions in the first unknown scenario. It is important to observe that the solution that obtains the highest confidence level is the one which will be applied in the next unknown
(11) observations
In which γ ∈[0,1] and modulates the change rate of the critique index, meaning, the rate learning must occur due to the compatibility between the values observed and the system of beliefs (ρj). The critique index may be related to the PLS through Equation 12: V(j+1)=V(j)+γ(ρj)1-a ((D(j)-V(j)) j
(12)
errors
critiques system
beliefs beliefs system
critiques índex
learning process Figure 5. Participatory Learning System (PLS): learning module combined with the arousal module.
| 63 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
scenario. In the case of the first iteration, the solution of the first unknown scenario CC1 is chosen. A small numerical example is presented in order to illustrate the working of the proposed scheme. Assuming there are two best solutions for both known scenarios in a problem with 5 ports, then, initially they present full reliability. 4 Sol1
2
1
3
2
3 Sol2
4
5
1
4
V1(0) = 1,00 V2(0) = 1,00
It should be noted that our system of beliefs is formed by the solutions of both known scenarios. If an unknown scenario is presented, then the decision about which known solution to use will be made comparing the confidence values associated with each solution solk. In case of a tie, the lowest numerical index is used. In the previous case, the solution of known scenario 1. Each solution will have their confidence values modified due to their performance after evaluating the unknown scenario 1. After applying Equation 9, or Equations 11 and 12, new confidence indexes are obtained. 4 sol1
2
1
3
2
V1(1) = 0,98
3 sol2
4
5
1
4
V2(0) = 0,99
Now, the new confidence values indicate that the use of sol1, with confidence index 0.98, was not as well succeeded as the use of sol2 in the unknown scenario 1. For the unknown scenario 2, therefore, the use of sol2 is recommended. And this process goes on as new scenarios are presented. With this example, it is possible to observe an advantage of the PLS in relation to the approaches that pursue the best solution for problems that consider multiple scenarios. Instead of choosing a solution for each and every scenario, the PLS retains and alternates the use of a set of solutions in unknown scenarios. With that, if there are evidence that a given solution is no longer appropriate, another one will start being used with a higher confidence index. Meaning, the PLS is able to adapt to changes, once it uses not only
just one solution but rather a set of solutions (generated by any method) whose choice is based on the performance of those unknown scenarios presented.
4. RESULTS OBTAINED In order to test some algorithms, 15 instances were generated automatically and randomly. The instances are classified according to the number of pots and the kind of transport matrix. For each instance a certain number of transport matrices T is generated, and each matrix T corresponds to a known scenario and such that the capacity of the ship will not be exceeded in any port, i.e., the value of qp given by Equation 9 should be less than or equal to D x R x C for every port p, this is because the transport matrix is feasible if p
N
∑ ∑T ≤D×R×C for every p = 1, ..., N i=1 j=p+1
ij
(15)
According to Avriel et al. (1998), three types of transport matrices may be generated: (1) mixed, (2) long distance, and (3) short distance. A type-3 matrix refers to the transportation of containers, which will travel few ports before being unloaded. A type-2 matrix refers to containers, which will travel many ports before being unloaded. A mixed matrix combined the two previous types. The instances were classified according to the quantity of ports to be traveled, the type of transport matrix, and the capacity of the ship. This study was made based on the assumption of a ship with the following dimensions (D x R x C): 5 x 6 x 50, resulting in the following maximum capacity: 1,500 containers. The instances used in the tests are available in: https://sites.google.com/site/ projetonavio/home. In order to verify whether or not the mathematical model given by Equations 1 to 8 is efficient in generating solutions “immune” to the stochasticity present in the matrix T, two sets were created: one set for training and another one for validation. The set for training is such that for each one of the 15 instances there are 10 different and equiprobable scenarios. The validation set consists of 15 instances and each of them contains 50 different and equiprobable scenarios. The program was implemented in Matlab 7.1 in a computer
| 64 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
Tables 1 and 2 present the performance of the solutions obtained from the set of training for each one of the 10 scenarios (CC1, ...,CC10) and the model (1)–(8) with the 10 scenarios (M1-10) within the 50 scenarios of the instances in the validation set. For example, the CC1 column presents the performance of the best solution obtained for the known scenario 1 of the training set for all unknown instances in the validation test. Both tables have the best solution found in terms of percentage deviation. For example, in Table 1, in order to obtain the performance of the CC2 known scenario within the 50 unknown scenarios of the instance N = 10 and M = 1, the following steps are used: (I) The mean of the performance of the solution was obtained for the CC2 known scenario within the 50 unknown scenarios. (II) The percentage deviation was calculated in relation to the other mean values obtained by the other solutions
with Intel i3, 2,27GHz and 4 GB of RAM, 64 bits. The evaluation methodology was (I) Obtaining a solution for model 1–8 for the data in the training test considering each one of the scenarios (using just one T matrix for each instance) and all the scenarios in the training set (using all ten matrices T for each instance). The solution is obtained through a genetic algorithm as described in Azevedo et al. (2014). (II) Evaluating the solutions obtained in (i) with the data in the validation test, meaning, verifying the performance of the solutions, which consider: just one scenario, the solution which considers all 10 scenarios and the combination of solutions from 1 to 10 through participatory learning. (III) Calculating the mean performance of each one of the solutions in the validation set.
Table 1. Results of the genetic algorithm for α = 1, β = 0 in the validation set.
N
10
15
20
25
30
Mean
M
CC1
CC2
CC3
CC4
CC5
CC6
CC7
CC8
CC9
CC10
M1-10
1
12.40
0.00
24.92
0.00
4.29
1.20
0.01
5.61
14.23
0.25
1,02
2
47.08
5.75
8.72
25.13
0.00
6.85
23.14
3.76
17.38
6.64
1,07
3
2.07
3.69
2.86
1.80
4.20
1.50
0.00
2.90
1.72
2.90
0,05
1
6.35
0.00
28.51
13.19
13.97
12.58
16.00
7.84
10.66
17.25
2,35
2
13.23
0.79
4.29
0.00
13.02
10.78
12.52
17.67
19.11
15.36
2,16
3
1.50
1.98
1.40
2.04
1.83
2.73
1.87
3.07
1.13
0.00
0,83
1
6.47
10.66
14.09
9.45
3.24
9.12
17.46
11.07
15.78
0.00
1,80
2
13.98
12.08
15.28
10.00
4.26
15.67
6.16
19.64
25.25
0.91
0,00
3
0.95
1.85
2.21
6.03
1.07
2.44
2.51
3.66
2.98
1.51
0,00
1
13.24
2.39
10.19
12.75
6.85
0.00
9.91
3.78
11.29
10.02
4,82
2
20.42
22.71
26.61
28.59
0.00
26.72
35.85
1.35
26.74
4.67
3,21
3
0.67
1.00
0.00
0.60
0.83
0.54
1.34
1.11
0.95
1.39
0,74
1
7.30
12.40
16.95
9.87
16.76
10.81
16.06
8.76
0.00
13.58
7,54
2
0.00
15.00
2.41
14.30
10.61
9.34
8.18
14.27
18.47
5.44
19,43
3
0.00
1.35
0.21
2.15
1.06
1.42
2.17
1.93
1.22
1.01
0,63
9,71
6.11
10.58
9.06
5.47
7.45
10.21
7.09
11.13
5.40
3.04
| 65 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
Table 2. Results of the genetic algorithm for α = 0, β = 1 in the validation set.
N
10
15
20
25
30
Mean
M
CC1
CC2
CC3
CC4
CC5
CC6
CC7
CC8
CC9
CC10
M1-10
1
104.1
16.40
23.72
149.9
21.82
338.5
15.63
5.88
52.45
0.00
4,80
2
8.86
120.1
0.00
3.03
6.78
3.00
0.29
0.70
0.99
3.17
2,21
3
815.5
328.7
0.00
224.2
655.9
379.3
129.7
46.80
509.7
361.0
47,26
1
0.00
36.6
23.89
54.06
18.63
12.59
5.90
502.1
12.69
30.48
54,51
2
88.47
1.28
8.98
0.00
33.92
32.41
24.14
2.57
2.21
41.20
2,28
3
168.0
184.0
0.00
84.17
83.87
161.3
93.07
40.26
66.17
96.06
24,47
1
41.47
66.50
34.02
0.00
152.3
185.6
82.12
78.93
30.88
89.77
44,14
2
15.77
41.13
98.31
14.97
12.89
7.77
137.4
9.45
38.13
6.08
0,00
3
55.23
111.8
77.65
74.70
118.8
106.4
0.00
100.4
90.83
130.1
79,24
1
135.7
65.0
97.68
0.00
38.62
25.66
118.5
85.35
48.55
60.27
9,22
2
6.65
3.36
66.36
0.00
50.73
105.1
67.84
31.99
40.38
5.45
0,80
3
149.7
66.74
54.66
0.00
132.0
93.60
87.58
103.3
76.23
93.85
19,74
1
49.78
30.14
54.79
65.23
0.00
98.64
69.26
109.9
75.95
111.2
30,25
2
3.69
13.91
65.31
20.10
21.32
21.20
90.52
17.36
5.82
2.04
0,00
3
81.66
35.56
96.57
98.12
98.50
55.56
61.76
14.73
77.34
24.03
0,00
114,9
74.77
46.80
52.58
96.41
108.4
65.59
76.66
75.23
70.32
21.26
generated in familiar scenarios, such that the best solution presents deviation zero. The procedure used for the data in Table 1 considers that the objective function is minimizing the number of movements so that (α, β) = (1, 0). This may also be done in order to obtain Table 2, but with (α, β) = (0, 1). Note that on average and for both pairs of (α, β), the best mean performance is given by M1-10 (last line of the tables). Tables 3 and 4 present the performance of the PLS for some parameter values. The performance of all versions of PLS is significantly superior to the solution obtained for the model that obtains the solutions considering 10 known scenarios (M1-10). The results of PLS suggest that a variation in their parameters does not cause a significant fluctuation in their performance, proving their robustness. For (α, β)
= (1, 0), the value of the PLS solution is 10% of that provided by M1-10. For (α, β) = (0, 1), the value of the PLS solution is about 50% of the M1-10. It is important to note that the PLS dynamically defines which solutions to be used among the 11 possible ones (CC1, ...,CC10 and M1-10), meaning, the solutions of each known scenario in addition to the solution that includes all 10 known scenarios (CC1, ...,CC10) or the solution that considers the mean commitment among them (M1-10).
5. CONCLUSIONS AND FUTURE STUDIES This article presented for the first time the solution of problems with 3D loading containers in port terminals
| 66 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
Table 3. Results of the Participatory Learning System for α = 1, β = 0 in the validation set.
N
10
15
20
25
30
Mean
PLS ρ λ = 0.1 γ = 0.1
PLS ρ λ = 0.9 γ = 0.1
0.08
0.08
0.08
1.62
1.61
1.61
1.61
0.05
0.07
0.07
0.07
1
2.35
0.08
0.08
2
2.16
1.14
3
0.83
1
Table 4. Results of the Participatory Learning System for α = 0, β = 1 in the validation set.
PLS ρ λ = 0.1 γ = 0.1
PLS ρ λ = 0.9 γ = 0.1
18.4
18.4
18.4
3.0
3.0
2.8
2.8
47.2
15.1
15.1
17.8
17.8
1
54.5
13.4
12.7
5.4
5.4
2
2.2
3.3
3.3
3.0
3.0
0.31
3
24.4
5.1
5.1
13.4
13.4
0.41
0.34
1
44.1
13.7
14.5
37.0
37.0
0.11
0.11
0.11
2
0.0
8.0
12.0
11.5
11.5
0.17
0.15
0.15
0.15
3
79.2
1.2
3.1
6.1
6.1
4.82
0.56
0.56
0.56
0.56
1
9.2
7.7
3.1
4.2
4.2
2
3.21
0.29
0.58
0.58
0.58
2
0.8
7.1
6.2
6.2
6.2
3
0.74
0.41
0.26
0.26
0.26
3
19.7
16.4
22.1
33.7
33.7
1
7.54
0.22
0.22
0.21
0.21
1
30.2
9.9
8.8
14.0
14.0
2
19.43
0.38
0.38
0.38
0.16
2
0.0
8.6
15.6
17.6
17.6
3
0.63
0.29
0.24
0.25
0.24
3
0.0
6.6
6.8
5.6
5.6
9.71
0.42
0.37
0.37
0.35
21.2
9.3
9.9
13.1
13.1
PLS PLS ρ γρj = 0.1 λ = 0.1
M
M1-10
1
1.02
0.17
2
1.07
3
N
PLS PLS ρ γρj = 0.1 λ = 0.1
M
M1-10
1
4.8
21.1
2
2.2
0.07
3
0.08
0.08
0.61
0.61
0.61
0.19
0.31
0.31
1.80
0.08
0.41
2
0.00
0.64
3
0.00
1
10
15
20
25
30
Mean
PLS: Participatory Learning System.
PLS: Participatory Learning System.
considering multiple scenarios (3D CSLPPT). The 3D CSLPPT is a problem with binary variables, multiobjective, and of large scale for real instances. For its solution, an alternative representation was used, called representation rules, which may be combined with optimization considering multiple scenarios. An alternative used in this work is to match the representative rules with the methodology called Participatory Learning System (PLS). The PLS allows using solutions obtained for known scenarios and obtain a reduction of up to 20 times in the number of movements and in 50% the measure of instability in relation to a solution
obtained from the mathematical model for multiple scenarios. In the future, we intend to test other machine learning methods such as the Q-Learning.
6. ACKNOWLEDGMENTS Special thanks to all the anonymous reviewers who dedicated their time to suggest modifications that led to significant improvements in the final text and also FAPESP for financial support from project number 2015/24295-5.
| 67 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68
Anibal Tavares de Azevedo, Edilson Fernandes de Arruda, Luiz Leduino Salles Neto, Antônio Augusto Chaves, Antônio Carlos Moretti
REFERENCES AMBROSINO, D.; SCIOMACHEN A.; TANFANI, E. A decomposition
AZEVEDO, A., RIBEIRO, C., SENA, G., CHAVES, A., SALLES, L.,
heuristics for the container ship stowage problem, Journal of
MORETTI, A., Solving the 3D Container Ship Loading Planning Problem
Heuristics, v.12, p. 211-233, 2006.
by Representation by Rules and Meta-heuristics. International Journal of
AVRIEL, M.; PENN, M. Container ship stowage problem. Computers and Industrial Engineering, v. 25, p. 271-274, 1993. AVRIEL, M.; PENN, M.; SHPIRER, N.; WITTENBOON, S. Stowage planning for container ships to reduce the number of shifts. Annals of Operations Research, v. 76, p. 55-71, 1998.
Data Analysis Techniques and Strategies – Special issue on: ‘Optimization and Simulation Real-life Scenarios’, v. 6, n. 3, p. 228-260, 2014. YAGER, R.R. A model of Participatory Learning. IEEE Transactions on Systems, Man and Cybernetics, v. 20, n. 5, p. 1229-1234, 1990. WILSON, I.; ROACH, P. Principles of combinatorial optimization
AVRIEL, M.; PENN, M.; SHPIRER, N. Container ship stowage problem: complexity and connection to the coloring of circle graphs. Discrete
applied to container-ship stowage planning. Journal of Heuristics, v. 5, p. 403-418, 1999. WILSON, I.; ROACH, P. Container stowage planning: a methodology
Applied Mathematics, v. 103, p. 271-279, 2000. AZEVEDO, A.T.; RIBEIRO, C.M.; CHAVES, A.A.; SENA, G.J.; SALLES NETO, L.L.; MORETTI, A.C. Solving the 3D Containership Stowage
for generating computerised solutions. Journal of the Operational Research Society, v. 51, p. 1248-1255, 2000.
Loading Planning Problem by Representation by Rules and Beam
ZADEH, L. Outline of a new approach to the analysis of complex
Search. First International Conference on Operations Research and
systems and decision process. IEEE Transations on Systems, Man and
Enterprise Systems – ICORES 2012, p. 132-141, 2012.
Cybernetics, v. SMC-3, n.1, 1973.
| 68 | Revista Pesquisa Naval, Brasília - DF, n. 27, 2015, p. 57-68