Literature Survey on the Container Stowage Planning Problem

Container shipping drives the global economy and is an eco-friendly mode of transportation. A key objective is to maximize the utilization of vessels, which is challenging due to the NP-hardness of stowage planning. This article surveys the literature on the Container Stowage Planning Problem (CSPP). We introduce a classification scheme to analyze single-port and multi-port CSPPs, as well as the hierarchical decomposition of CSPPs into the master and slot planning problem. Our survey shows that the area has a relatively small number of publications and that it is hard to evaluate the industrial applicability of many of the proposed solution methods due to the oversimplification of problem formulations. To address this issue, we propose a research agenda with directions for future work, including establishing a representative problem definition and providing new benchmark instances where needed.


Introduction
Container shipping is an underappreciated business. Most people know little about container vessels and the media coverage often focuses on neg-ative aspects. The truth is that container shipping is the most environmentally friendly mode of transportation with the least CO2 emissions per metric ton of goods shipped per kilometer (International Chamber of Shipping, 2023). Economically, it runs the supply chains of the world, and is in fact believed to have been more important for globalization than freer markets (The Economist, 2013).
From an operations research (OR) point of view, the overall objective of container shipping is to maximize the utilization of vessels while minimizing operational costs. Container vessels, however, are challenging. To stow containers on them according to this objective is a combinatorial optimization problem with an unusually wide range of complex constraints and objectives including seaworthiness requirements, stacking rules, crane utilization, and fuel consumption. For instance, minimizing the number of containers that block containers in lower stacks tiers is NP-hard (Avriel et al., 2000).
Research on the container stowage planning problem (CSPP) is unfortunately scarce compared to other areas of OR. In this survey article, we were only able to find 54 key contributions in our literature search covering the 67 years that have passed since the first container vessel sailed in 1956. CSPP studies are challenged in several ways. First, container shipping has been deregulated about thirty years after the airline industry when the conference system was outlawed in Europe in 2008. For that reason, there has been less focus on advanced capacity management systems. Second, as mentioned above, the domain is unknown to most researchers and it is only recently that a comprehensive description  and benchmark suite (Larsen and Pacino (2021)) was published. Finally, the problem is highly complex and important aspects are subtle and hard to model. It is not clear how to study it in a reduced representative form suitable for scientific research.
In this article, we survey the CSPP literature and propose a research agenda with directions for future work. Our main conclusion is that while several algorithmic frameworks and problem decompositions have been investigated, it is still a maturing research area with relatively few publications and a lack of benchmark suites and problem definition consensus. As a large and sustainable mode of transportation, this state of affairs is important to change.
The remainder of the article is organized as follows. Section 2 gives an overview of the CSPP focusing on its key combinatorial components. Section 3 defines our literature classification scheme. Section 4 reviews the lit-erature and divides the contributions into single-port planning, multi-port planning, master planning, slot planning, computational complexity, and other relevant work. Sections 5 presents a comprehensive research agenda with suggested directions for future work in each area. Finally, Section 6 draws conclusions from the survey.

The container stowage planning problem
The CSPP is extensive and it is beyond the scope of this article to describe it in detail. For a full introduction, we refer the reader to . Instead, this section focuses on the combinatorial structure of the problem and identifies key combinatorial aspects that are important to model in academic studies in order to ensure that they are representative of the realworld problem.
To this end, we first briefly describe container shipping. Shipping lines are similar to bus lines but on water. Their fleet of vessels is assigned to closed-loop services with fixed schedules. The CSPP is to decide where on the vessel the booked cargo to load is stowed. It is an operational problem that is solved by a stowage team. Even though stowage plans are made one port at a time, the CSPP is multi-port in nature as the cargo placed in the current port affects the vessel condition and free capacity in future ports. The input to the CSPP in this multi-port form is the arrival condition of the vessel in the first part (the so-called remain-on-board (ROB) condition), the load-list of cargo to load for each port call, and the vessel and terminal data. The result of the CSPP is a stowage plan for the first or all port calls. The primary objective of the CSPP is to load all booked cargo by maximizing the available capacity of the vessel. The secondary objective is to minimize terminal fees and the operational costs of the vessel. Finally, since cargo bookings are uncertain, stowage plans must be robust and allow many different cargo compositions in future ports.
The complexity of stowage planning is due to the large size of container vessels that today can be more than 24,000 twenty-foot equivalent units (TEU) and a myriad of interacting seaworthiness requirements. To understand the essence of these combinatorial aspects, we need some physical insight into the problem. Figure 1 and 2 show the cellular design of container vessels. The storage area consists of bays (02 -38) with stacks or rows of cells that normally either can hold one 40' container or two 20' containers. The securing system below deck consists of cell guides that hold the stacks in place. Each hold is sealed with hatch covers. The stacks on deck rest on the hatch covers or the deck of the ship. The stacks are kept in place by twist locks that bind containers together and lashing rods that tie container corners to the deck or lashing bridges that are raised to increase stability. All stacks have weight limits. Below deck and fore on deck, they also have height limits. Both are essential to the model to get the volume and weight capacity of the vessel right. Some cells have power plugs for refrigerated containers (reefers). They are indicated with stars in Figure 1.  Most containers are 20 ', 40' and 45' long, 8' wide, and 8'6" high. Some of these (mostly 40' and 45') are 9'6" high and are called highcubes. The weight ranges from about four tons for empty containers to about 30 tons for heavy containers. The port, where a container is loaded, is referred to as the port of load (POL), while the port where it is unloaded is called the port of discharge (POD). Specials include reefers, IMDG, and OOG containers. IMDGs carry dangerous cargo and may be required to be segregated. OOGs (Out-of-Gauges) are over-dimensioned, and reefers are refrigerated containers and require electric power.
An important combinatorial aspect of stowage planning is restow minimization. A restow happens when a container is unloaded and loaded again before its POD. Restows can be voluntary or mandatory. Mandatory restows are well-studied and are caused by overstowage. Stack overstowage happens when a container in a stack is stowed on top of a container to an earlier port. The top container must be restowed in order for the crane to reach the container below it. Restow fees are high relative to the profit margin of each container. For that reason, the number of restows must be minimized. Unfortunately, minimization of mandatory restows has been shown to be an NP-hard problem (Avriel et al., 2000). Even when overstowage is simplified to hatch overstowage, which is overstowage between containers stowed above and below a hatch cover (Tierney et al., 2014). Voluntary restows are also subject to restow fees, but these are made on purpose to increase the capacity of the vessel. For instance, a non-reefer container in a reefer slot can be restowed to fit an extra reefer. Since restow minimization is NP-hard and plays a central role in stowage planning, a proper optimization model should include the POL and POD of containers and represent voluntary and mandatory restows.
Another combinatorial element is stowage rules. 20' containers can not be stowed on top of 40' containers and IMDG containers must be segregated depending on their content. Since reefer containers are spark generators, they must be placed away from most IMDGs. Moreover, since reefer plugs typically are at bottom of stacks, a 40' reefer kills 20' capacity. Wrt. length, the interactions above can be modeled by just 20' and 40' containers. 45' containers must be placed above lashing bridges or in 45' bays, but this could be a minor combinatorial issue.
It is an open question whether IMDG segregation is NP-hard. In practice, it is challenging to deal with and should for that reason be modeled on IMDG heavy services. 1 Reefer containers should always be modeled as they have limited positions available and affect other containers. Highcubes are frequent and often take up more than half of the volume. Due to height limitations below deck and in fore bays on deck, it is important to mix highcubes and normal containers right to utilize all the stack volume. It is unclear to us, though, how critical this combinatorial aspect is.
Container weights have a high impact on stowage conditions. They can vary considerably and affect many seaworthiness requirements that are associated with the weight distribution of the vessel. The vertical centre of gravity (VCG) must be sufficiently low to avoid that the vessel capsizes. This transversal stability is measured by the metacentric height (GM) that must be above a certain minimum. A high GM, on the other hand, makes the vessel stiff and may cause the lashing forces in lashing rods to be exceeded in particular if heavy containers are stowed high in stacks on deck. The longitudinal centre of gravity (LCG) determines the difference between the fore and aft draft of the vessel called the trim. A vessel has a maximum allowed draft (maximum loadline) which may be further reduced due to port draft restrictions. The trim affects the line of sight (LOS) from the bridge which must be sufficient. The trim also affects the energy efficiency of the engine. The longitudinal weight distribution further causes stress forces on the vessel that all must be within limits.
The question is to what level of granularity we need to model these weightrelated constraints of stowage planning. With respect to container weight, homogeneous weight is out of the question as it is unrealistic and compromises a reasonable representation of most constraints above. However, even just three or four weight classes enable us to model the combinatorial interactions of these constraints. Wrt. the weight-related constraints, it is key to model GM as it both affects transversal stability and lashing forces. Lashing forces are computed using complex mechanical simulation that makes them hard to embed in optimization models. Nevertheless, they should not be ignored as they easily make one or more top tiers on deck impossible to use (i.e., more than 5% of the total volume capacity). Trim and list requirements can be translated into total weight and box constraints on LCG and TCG. Stress forces also impact capacity. In particular, bending moments (BM) can reduce the weight capacity in the fore and aft of the vessel and for that reason should not be ignored. Shear forces (SF) can be high if mixing full and empty bays. Torsion moments (TM) are mainly a problem on large vessels with wide hulls. We assess that their combinatorial impact is secondary to BM in most cases. With respect to the vessel structure, the hull can be represented by a sequence of box-shaped sections such that hydrostatic equilibrium can be linearly defined. This representation is fairly accurate for draft, trim, and stress forces down to just six sections . Ballast water is also important to model as it provides a flexible weight buffer that can be used to ease most weight-related constraints.
Another combinatorial aspect of stowage planning is terminal constraints and objectives. Among the constraints, we have draft restrictions and crane work height. Normally, the impact of these restrictions is limited. The hard combinatorial aspects have to do with minimizing the port stay. This is important since a short port stay may allow the vessel to catch up on the schedule or save fuel by reducing the speed between ports. There mainly are two ways to minimize the port stay: 1) minimize the total number of quay crane moves, and 2) minimize the makespan of the cranes. With respect to 1), we need to minimize the number of restows which we already saw is NP-hard. With respect to 2), it is important to understand the relation between the terminal and the shipping line. Typically, the terminal guarantees a certain number of moves within a time window without specifying the number of cranes working on the vessel during this period. The shipping line can observe the average number of assigned cranes and distribute the moves along the vessel such that these cranes can work in parallel. A complicating matter is that two quay cranes due to their width are unable to work simultaneously on two adjacent bays. The total work time is therefore given by the long crane which is the largest number of moves m of any pair of adjacent bays. Let M denote the total number of moves of the vessel. The crane intensity (CI) is then defined as M/m. It is an upper bound on the number of cranes that can work in parallel on the vessel without any of them being idle. The stowage plan should have a CI that is larger than the average number of cranes assigned to the vessel by the terminal.
Finally, we turn to a rather hidden combinatorial aspect of stowage planning that has to do with the robustness of plans. To achieve high flexibility for the kind of containers that can be loaded in future ports, stowage planners use certain stowage patterns. To define these patterns, let a block denote a storage space either above or below a hatch cover. Hence, if a bay has three hatch covers, it has six blocks in total: one center and two wing blocks on and below deck. A basic stowage pattern is to avoid mixing PODs in a block. This ensures by design that the block has no stack restows and empties the whole block in the port of discharge such that the POD choice of the containers to load back into the block is as free as possible. To avoid hatch restows by design as well, we need to require that the two blocks above and below a hatch cover hold the same POD. We call this pattern block stowage.
To avoid only changing weight on one side of the vessel and risk excessive torsion moments, the block stowage pattern is often extended to paired block stowage, where blocks in the wing hold the same POD, while the center may hold another POD.
Despite the fact that stowage patterns reduce the space of possible plans, they seem to increase the problem complexity substantially Christensen and Pacino (2017). Due to this impact and the fact that the patterns are industry standard, they should be included to some degree in a representative model of the problem.

Classification scheme
Before diving into the survey and the proposed classification scheme, let us clarify the search strategy used to collect and select the relevant literature. The articles were found by using Google Scholar using Stowage Planning as the keyword. The title of the resulting articles has then been evaluated and publications that were clearly not relevant have been removed. The remaining publications were further filtered by reading the abstracts. It is here that publications focusing on, e.g., the packing of cargo into a single container were removed. All the references of the remaining publications have been analyzed and missing contributions have been added to the list. A number of publications presenting minor incremental work have been removed from the analysis. It is a key finding that few if any studies fulfill even the minimal representation requirements discussed in Section 2. Hence, the 54 publications selected for this survey either treat most of them or present an original solution approach.
Articles that do not focus directly on solving the CSPP (or one of its subproblems) were also not considered in the survey, e.g., various descriptions of visualization tools (Aye et al., 2010;Song et al., 2010), loading computers (Nugroho et al., 2021;Wu et al., 2021), container data sharing systems (Conca et al., 2018), crane scheduling tools (Hsu et al., 2021) or loading se-quence planners (Serban and Carp, 2017). Survey papers (Zhang et al., 2008), decision support tools (Martin et al., 1988;Saginaw and Perakis, 1989) and instance generators (Cruz-reyes et al., 2013) are not discussed in this classification either.
To reduce the complexity of the problem, the seminal work of Wilson and Roach (2000) introduced a hierarchical decomposition to obtain a sequence of tractable interdependent sub-problems. It quickly became popular and widely used in several studies (e.g., Kaisar (2006); Pacino (2018)). For that reason, the authors propose a division of the problem into two sub-problems as shown in Figure 3. The first sub-problem is named the Master Planning Problem (MPP) and its solution (a master plan) is the assignment of groups of containers to storage areas of the vessel (blocks). The idea is to address highlevel constraints and objectives, such as overall weight distribution, crane utilization, hatch cover moves, and cargo consolidation. Containers in the MPP are often grouped by their weights and types, and a master plan is created for all the ports in the voyage. The second sub-problem is called the Slot Planning Problem (SPP), which uses the MPP as input. Given the assignment of groups of containers to each block, the SPP assigns individual containers to slots in the block for every port separately. The assignment fulfills only low-level constraints, such as stacking rules, capacity constraints, and overstowage constraints. This results in a complete (multi-port) stowage plan. Considering the above decomposition, we grouped the publications as follows: publications treating the full CSPP and publications focusing only on one of the sub-problems. Among the works solving the full CSPP, we distinguish between multi-port and single-port stowage planning, where the latter approach only takes a loadlist for a single port into account. For each category, we provide a qualitative comparison and a quantitative comparison when possible. Analogously, we aggregated publications for the MPP and the SPP and analyzed them independently. To have an overview of the classified publications and to be able to easily compare the problem formulations presented in them, we developed the classification scheme that is shown in Table 1. The Cargo attribute determines what types of containers the problem formulation includes. They are divided into three categories: there can be models where all containers have the same weight (Uni ) or varying weights (Mix ). Weight classes (Class) can also be used, where each weight class corresponds to a weight range. The attribute Hydro specifies the level of hydrostatics constraints included in the problem formulation. The Rich level indicates that both stability and stress force constraints are part of the formulation, whereas, Stab means that only stability constraints like GM, trim and/or list are included. Equi is related to longitudinal, vertical and/or transversal equilibrium. There is also a possibility that the problem formulation doesn't contain any hydrostatic considerations (None).
We note that basic capacity limitations of a container vessel, e.g., constrained height and weight of stacks, are part of every problem formulation included in our classification.
The group called CSPP aspects specifies which elements of the problem are included in the problem formulation. The first group is restow handling which can also vary in the problem formulations. A common approach is to minimize the number of restows in the stowage plan (MinRe), whereas in some cases they are completely forbidden (NARe). In some models, an attempt to create voluntary restows to be able to stow more containers is made while minimizing the number of involuntary restows (VolRe). A few formulations include hatch restows (HR) caused by hatch overstowage. Crane operations (CO) indicate that crane work optimization (for more than one crane) is incorporated in the problem formulation. It can be considered either in the objective function or as a constraint. The inclusion of (BS ) indicates whether block stowage best practices are modeled. BW indicates that is it allowed to use ballast water to fix hydrostatics and La means that lashing forces are part of the problem formulation. Special containers might be included in the load list. It is indicated by RF (refrigerated containers) and DG (dangerous cargo).
The objective function (Obj ) might include different aspects of the CSPP. The focus might be on the port stay (PS ), vessel volume utilization (VU ), hydrostatics (H ) to for example minimize fuel consumption or a combination of these.
The problem might be divided into two or more sub-problems and solved using hierarchical decomposition (HD). The attribute, SC, indicates the scale of the computational study in terms of problem size and is grouped into three categories: small (S ), medium (M ) and large (L). Notice that elements of the table might be written in parentheses. This indicates that this aspect is only partially incorporated into the problem formulation.

Literature review
In the following, we will compare some of the most influential or recent contributions in what we believe are the two main scientific areas of interest: single-port and multi-port stowage planning. The first two subsections describe publications in these areas. Several of the multi-port contributions solve the problem using hierarchical decomposition and include MPP and SPP models. The third and fourth subsections describe papers that exclusively address the MPP and SPP sub-problems. Finally, the last two subsections discuss studies of computational complexity and other relevant contributions.

Single-port container stowage planning
The high impact that a stowage plan of an earlier port can have on later ports is what dictates the inclusion of cargo forecasts and, as a consequence, the solution of multi-port versions of the problem. Single-port versions of the problem are, however, still interesting as they can be seen as more lightweight operational plans or as sub-problems (Delgado et al., 2012b). Table 2 shows the classification of the single-port studies in this review. From the table, it is easy to see a general consensus that contributions must include the modeling of several container types and some aspects of vessel stability. A noticeable exception is the work of Delgado et al. (2012a); Shen et al. (2017), where a weight distribution of the cargo is assumed to be an input to the algorithms, and the work of Zhao et al. (2018), where no explanation is given for this omission. In the studies of Sciomachen and Tan Li et al. (2020), vessel stability is only considered as balanced weights on the four sections of the vessel (bow, stern, port, and starboard). Works including more accurate measures are more recent (Cho, 1981;Hu et al., 2012;Zhu et al., 2020;Larsen and Pacino, 2021;El Yaagoubi et al., 2022).
The vast majority of the literature focuses on the minimization of time at port, either in the form of the time spent moving containers or in the minimization of the number of restows. Only a subset of the studies, though, includes the modeling of restows due to hatch covers (Cho, 1981;Delgado et al., 2012b;Zhu et al., 2020;Larsen and Pacino, 2021), only Larsen and Pacino (2021) and Sciomachen and Tanfani (2007) includes workload distribution of the quay cranes, and a block stowage strategy is proposed in Larsen and Pacino (2021).
All the mathematical models proposed for the single-port stowage planning problem use, or adapt, the formulation introduced by Ambrosino et al. (2004). It is a four-index formulation indicating whether a container c is assigned to a slot in bay b, row/stack r and tier t. Exceptions are the work of Larsen and Pacino (2021), where symmetries in the container index are broken by the modeling of container classes, and Zhu et al. (2020), where the decision variable is split in two. The first variable assigns containers to blocks and the second variable assigns containers to tiers within blocks, thereby effectively abstracting away the stack/row position. This formulation was able to solve problems up to 1000 TEUs, compared to the 198 TEUs of the original formulation (Ambrosino et al., 2004). The model by Larsen and Pacino (2021), is deemed intractable even for medium-sized vessels (7300 TEUs; no data is available for smaller vessels). The formulation has also been extended to integrate other problems: the blocks relocation problem (Li et al., 2020), and barge assignment (El Yaagoubi et al., 2022).
No efficient mathematical formulation or exact method has yet been found that can solve the single-port container stowage problem for real-size vessels, which explains the focus of the literature on heuristic approaches. Most solution methods rely on metaheuristics. Local search procedures that exchange containers with the aim to solve vessel stability are used by Cho (1981) Larsen and Pacino (2021).
Construction heuristics are proposed by Sciomachen and Tanfani (2003) and Delgado et al. (2012a), where the latter is based on a cargo distribution obtained with a linear program. Other approaches include a heuristics branching procedure (Sciomachen and Tanfani, 2007), a tree-search-based heuristics (Zhao et al., 2018), and machine learning (Shen et al., 2017).
Though several approaches have been proposed, the lack of a common benchmark and problem definition makes it hard to compare their performance. Larsen and Pacino (2021) has recently published a benchmark (available at https://doi.org/10.11583/DTU.9916760) in order to address this issue. Given that most approaches have been tested on rather small instances, further research on their performance on larger instances is valuable.

Multi-port container stowage planning
In addition to single-port plans, we recognize the importance of considering vessel conditions and cargo forecasts at future ports in multi-port planning (Delgado et al., 2012b). The goal is to find robust plans that maximize vessel utilization and minimize operational costs during the voyage. Table 4 shows the classification of multi-port work, from which can be derived that little consensus exists on the modeling of cargo weights and stability. Most contributions combine stability with varying cargo types, e.g., varying cargo weights (Liu et al., 2011;Hu and Cai, 2017;Parreño-Torres et al., 2021), or special cargo as reefers and dangerous goods (Hamedi, 2011;Liu et al., 2011;Chang et al., 2022). These hydrostatics can be extended with shear forces (Shields, 1984;Pacino et al., 2011) as well as bending moments (Botter and Brinati, 1992). The contributions by Kaisar (2006); Azevedo et al. (2014Azevedo et al. ( , 2018; Li et al. (2018) approximate stability as Ambrosino et al. (2004) by balancing cargo weight with respect to the vertical, longitudinal and transversal dimensions. There is, however, also work that disregards hydrostatics in order to focus on other combinatorial aspects (e.g., Avriel et al. (1998); Wilson and Roach (2000); Pacino (2018)).
The origin of most mathematical models in Table 4 is traced back to Botter and Brinati (1992). The formulation contains two decision variables to load or remove container c into/from a slot with bay b, row r and tier t at any port p between loading port l and discharge port d. This enables the modeling of voluntary restows. In the k-shift problem, both variables are integrated to stow uniform cargo on a box-formed vessel with a single bay (Avriel and Penn, 1993;Avriel et al., 1998). The decision variable indicates whether slot (r, t) is occupied by a container at loading port l with destination d and planned discharging port υ. Note that υ < d causes a restow to an arbitrary slot (r ′ , t ′ ) at port υ, whereas υ = d results in zero restows. Recently, the problem is extended to multiple cargo weights and lengths for medium-sized vessels (Parreño-Torres, 2020;Parreño-Torres et al., 2021). The work by Kang and Kim (2002) assigns cargo to blocks and subsequently creates stacks ordered by destination and weight, thereby reducing mandatory restows. This assignment formulation often scales to mediumsized vessels (e.g., Kaisar (2006); Hamedi (2011);Pacino et al. (2011)). It is extended to a stochastic program with uncertain container weights (Li et al., 2018) and a block stowage problem with crane intensity (Pacino, 2018).
Despite the many implementations in Table 4, it is challenging to compare their performance adequately. On the one hand, little consensus exists on a general problem definition or benchmark instances. Hence, the problem is attempted to be solved from different angles. On the other hand, the k-shift problem is defined clearly and includes multiple benchmarks, but needs to be extended further to become representative.
An optimal solution to a representative multi-port problem is yet to be found. The early work of Botter and Brinati (1992) demonstrates this for their formulation, and therefore suggests a hierarchical decomposition that combines a 0-1 IP with an enumeration tree. Consequently, hybrids of exact and neighborhood-based methods (Wilson and Roach, 2000;Kaisar, 2006;Pacino et al., 2011) or greedy and tree-search heuristics Kang and Kim (2002) are proposed to sequentially solve master and slot planning. More recently, decompositions are substituted by heuristic frameworks, such as genetic algorithms (Hamedi, 2011;Hu and Cai, 2017;Chang et al., 2022), (large) neighborhood search (Pacino, 2018;Li et al., 2018), or a framework of greedy and tabu-search heuristics (Liu et al., 2011).
Early computational experiments have been published by Kang and Kim (2002), who iteratively solve the problem at each port and add constraints to the MP to minimize restows. In Pacino et al. (2011) we instead see a focus on larger problem instances and an increased complexity of SPP constraints. The decomposition is similar to the one proposed in Kang and Kim (2002), but without iterative interaction between MBPP and SPP. Though the experiments are based on very different hardware, it is still possible to analyze the impact of vessel size and the number of planned ports on the computation time. Figure 4 shows a plot of the reported execution time from the two papers. An analysis of the results shows a weak negative correlation between the vessel size and the execution time (-0.29). In contrast, a stronger correlation appears between the execution time and the number of ports (0.67). The red line in the figure shows the increasing linear trend of the results 2 . The collected data is shown in Table B.17 of Appendix B. Due to singleinstance computational studies, we could not include more experiments in this comparison.  (Pacino et al., 2011;Kang and Kim, 2002). In red is the linear trend line.
Regarding the k-shift problem, construction heuristics are used in Avriel et al. (1998); Ding and Chou (2015) to find upper bounds. Moreover, Roberti and Pacino (2018) suggest a branch-and-price framework to solve the problem for medium-sized vessels, while Parreño-Torres et al. (2019) formulates a 0-1 IP with valid inequalities to improve the linear relaxation. A compact formulation of this 0-1 IP is suggested in Parreño-Torres (2020); Parreño-Torres et al. (2021). Despite these efforts, exact methods struggle with solving instances of large vessels. This motivates the use of heuristics, for which promising results are found by GRASP and matheuristics (Parreño-Torres et al., 2019;Parreño-Torres, 2020;Parreño-Torres et al., 2021). Other heuristics such as genetic algorithms, beam search and simulated annealing can solve small vessel instances (Dubrovsky et al., 2002;Azevedo et al., 2014Azevedo et al., , 2018. The first benchmarks are proposed by Avriel et al. (1998), i.e. Mixed, Long and Short instances that refer to the expected time cargo is on-board. The Authentic instances by Ding and Chou (2015) have ensured fully loaded vessels at each port, while the Required instances by Roberti and Pacino (2018) have ensured the presence of shifts in optimal solutions. Table 3 summarizes the computational results of the exact methods for the k-shift problem, which contains formulations of Avriel et al. (1998), Roberti and Pacino (2018), Parreño-Torres et al. (2019) and Parreño-Torres et al. (2021). The number of optimal solutions and upper bounds (feasible solutions) are presented for each method/formulation and instance group. All formulations except PAP can find a feasible upper bound for almost every instance. Moreover, the contributions of PCAR and RP find optimal solutions to almost each Long, Mixed, Short and Authentic instance, while APSW and PAP achieve optimal solutions in most of those instances. Nevertheless, only RP can find optimal solutions in 61 of the Required instances.

Master planning
Though it is an important part of the hierarchical decomposition that many researchers use, the SPP (when solved heuristically) has a minor impact on the runtime of the solution approach and its general objectives. For that reason, a number of scholars find it legitimate to focus their studies to solve the Master Planning Problem (MPP). Table 5 compares publications and shows trends in master planning research. In the MPP, cargo is grouped by weight and sorted into corresponding   (Kebedow and Oppen, 2018). The problem formulations tend to include hydrostatic calculations of varying degrees, often more than just trim and GM estimations. Ambrosino et al. (2015c,a,b) based hydrostatics calculations on a bit older and less accurate model including equilibrium consideration that entails balancing weights on the vessel (Ambrosino et al., 2004). Ambrosino et al. (2018) uses a richer stability model that includes trim, GM, and shear forces. Chao and Lin (2021) did not consider stability constraints in their problem definition at all, but focused instead on a new IP formulation based on a minimum-cost flow problem with a multi-commodity network structure. The objective function contains the cost of the assignment of a container and the cost of using extra bays. There are only a few studies that allow using ballast water to fix possible instabilities (Pacino et al., 2012;Bilican et al., 2020). Pacino et al. (2012) proposed an IP with an approximation of the displacement and a linearization of the centre of gravity calculations to include the effect of the ballast water on the hydrostatic values.
The objective function mostly included balancing crane work and minimizing hatch restows, but some of the formulations focused also on maximizing vessel utilization in addition to port stay optimization (Ambrosino et al., 2015c;Kebedow and Oppen, 2018;Chao and Lin, 2021). While accounting for unnecessary hatch cover moves is considered in the MPP publications, there is rarely a focus on minimizing restows within blocks. Only Bilican et al. (2020); Pacino (2013) Ambrosino et al. (2004) and Pacino et al. (2011). The only scientific work that has proposed a different formulation is that of Chao and Lin (2021), where the problem is modeled using a network-flow representation.
A summary of the solution methods is shown in Table 5. Ambrosino et al. (2015aAmbrosino et al. ( , 2018 introduced the use of matheuristics that decompose the MIP. Firstly, an assignment of container destinations to blocks was found by solving the relaxed MIP with linearly relaxed variables indicating the assignment of containers to blocks. Secondly, a heuristic called the progressive random fixing procedure was used to obtain the feasible solution, where the assign-ment of container destinations to blocks is given from the previous phase and there is no relaxation of the MIP. Ambrosino et al. (2015b,c) introduced two MIP formulations: the first one was a binary representation of the problem, and the second one expressed the number of containers in TEU and resulted in a more compact formulation. For the solution approach, the authors proposed to primarily solve a relaxation of the second model and then use its solution as input for solving the first model. The use of large neighborhood search was explored by Pacino (2013) using the results from a relaxed IP as a warm start. Bilican et al. (2020) proposed a heuristic, where firstly a problem was solved with relaxed trim constraints and secondly a local search was performed to fix eventual instabilities.
By looking at Table 5, we can observe that most of the proposed approaches were tested against large instances (above 15,000 containers).
Though the problems and the formulations are very similar, the lack of a common benchmark has made it impossible to compare results. To remedy this situation, we propose a new set of publicly available benchmark instances based on the vessel data from Larsen and Pacino (2021). For each of the 3 available vessels, 2 random instances are generated for each combination of ports {5, 7, 10} percentage of cargo already on board {0%, 15%, 30%} and vessel utilization {60%, 70%, 80%}. The cargo list simulates an ocean-going service where the long-haul leg (sailing from one region to another) guarantees the provided vessel utilization. The benchmark has a total of 162 instances, all of which are available at https://doi.org/10.11583/DTU.22293412.
Given this new set of benchmark instances, it is now possible to compare the efficiency of the assignment-based (Pacino et al., 2011) and the networkflow formulation (Chao and Lin, 2021). The network-flow formulation does not include any stability constraints as mentioned before and it enforces zero hatch overstowage. The assignment-based formulation has thus been adjusted to follow this problem definition. Chao and Lin (2021) proposes an objective function that diverges from the makespan minimization from the literature. Unfortunately, its description is not accurate enough to be reproduced, hence, we modified the formulation to minimize the makespan as described in Pacino et al. (2011). We have also corrected the capacity constraints, since in the original work they were posted per container type and not for the block as a whole (the two formulations are presented in Appendix B). Table 6 shows the solution time comparison between the two formulations. The first three columns indicate the vessel's size, the number of ports,   and the number of instances solved. Six instances are solved for each of these combinations, which represent all the instances in the benchmark for which the ROB condition is empty (needed due to the hatch overstow constraint). The next two columns are the optimal solution and the time needed to find it. Notice that the problem is solved in the relaxed version, where the decision variables are continuous. As can be seen, both formulations can find optimal solutions to this relaxed problem within a reasonable time for small and medium-sized vessels. The network-flow formulation, however, is clearly underperforming, possibly due to the increasing number of arcs needed as the number of ports increases. The network-flow formulation was not able to find feasible solutions to any of the largest instances (large vessel and 10 ports), while the assignment-based formulation timed out (3600 sec.) only for two of those instances. Table 7 presents the results of the two formulations without the relaxation of the decision variables. The table includes an extra column representing the gap between the returned solution and the lower bound (MIP Gap). The results resemble those of Table 6, where the formulations struggle as the instances increase in size.
Despite the fact that the network-flow formulation performs worse than the assignment-based formulation, further studying its application can be interesting as such formulations are well-studied for decomposition methods.
Tables 8 and 9 report the results of the assignment-based formulation on a rich version of the CSPP, where stability and shear-force constraints are included. The formulation minimizes hatch overstowage and crane makespan. Both tables report aggregated results grouped by vessel size and the number of planned ports (columns 1 and 2). The tables also report the number of instances in each group (N. Inst.), the number of instances solved and which   It can be easily seen from the tables that as the vessel size and the number of ports increase, so does the time required by the solver to find solutions. For the version of the problem where the assignment variables are relaxed, it is possible to find optimal solutions for all the instances within the 3600 sec. time limit used in the experiments. Without the variable relaxation (Table 9), it is hard to find feasible solutions even for instances with a small vessel. The full set of results can be found in Appendix B.

Slot planning
Table 10 provides a summary of the literature concerning exclusively the SPP. As the table shows, some of the important constraints, e.g., hydrostatics or hatch restows are not present in the problem formulations. Since the output of the MPP is the input for the SPP and these constraints are already fulfilled in the MPP part of the problem, they can be ignored in this phase.
There is more consensus reached on the SPP than on the MPP. A plausible reason is that a common definition of the problem and a set of benchmark instances have been available since the publication of Delgado et al. (2009). The proposed formulation was an inspiration to several researchers in this area. This is seen in Table 10, where the definitions of the problem are quite uniform. Delgado et al. (2009) considered a wide spectrum of container types including reefers and highcubes, and important low-level constraints including stacking rules and capacity constraints. The objective function contained several aspects of the CSPP: minimizing port stay by avoiding unnecessary crane moves, consolidation by minimizing the number of used stacks and preserving reefer slots for reefer containers. The assumption is that all the containers from the load list can be stowed in the block. Parreño et al. (2016) modified the objective function based on the fact that not all containers can be stowed in their proposed formulation, so the aim is to load most of them. Since we need to solve the SPP for every block on the vessel separately, the computation time of the proposed approach has to be low, such that the whole process of creating a slot plan is finished in a reasonable time. A slot plan for one block should be created ideally in less than one second (Delgado et al., 2012b).
What is important to underline is that the model proposed by Delgado et al. (2009) considered only creating stowage plans for below deck stacks. This made it possible to ignore constraints related to lashing, line of sight and 45' containers. The study of Kebedow and Oppen (2019b); Jin and Mi (2019) took the on deck section of the vessel into account by using respectively arbitrary height or weight limits to mimic, in a simple way, lashing constraints. Parreño et al. (2016); Kebedow and Oppen (2019b) introduced handling of hazardous cargo and segregation rules in the SPP. Jin and Mi (2019); Yifan et al. (2016) included port operations objectives by minimizing restow containers on the yard and crane moves while loading and discharging the vessel. Table 10 shows the solution methods suggested for the SPP. Delgado et al. (2009Delgado et al. ( , 2012b proposed constraint programming (CP) with the usage of, among others, symmetry-breaking constraints, and branching strategies to achieve better computations time. Constraint-based local search (CBLS) explored by Pacino and Jensen (2010) and Parreño et al. (2016) proposed Greedy Randomized Adaptive Search Procedure (GRASP), with a randomized construction of initial solutions and a local search to make improvements. A hybrid method involving A* and a Genetic Algorithm (GA) was developed by Yifan et al. (2016). A* was used to find a feasible loading sequence and GA to find a feasible allocation of containers to slots. A fuzzy logic algorithm with a rule-based search was presented in Rashed et al. (2021). Additionally, a matheuristic was developed by Korach et al. (2020). It combined a large neighborhood search with a mathematical solver to iteratively destroy and rebuilt parts of the solution. Table 11 shows a comparison between all the slot planning approaches that have adopted the benchmark taken from the work of Delgado et al. (2009). The first column indicated the instance group (we refer the reader to Delgado et al. (2012b) for a detailed description), and the second the number of instances in that group. Next, the table is divided into 6 sections each representing the results of a publication: CBLS is the constraint-based local search of Pacino and Jensen (2013), IP is the integer programming formulation of Delgado et al. (2012b) (with 10 seconds time limit), CP is the constraint programming model of Delgado et al. (2009) (with 10 seconds time limit), Fuzzy is the fuzzy logic approach of Rashed et al. (2021), Matheuristic is the matheuristic approach of Korach et al. (2020), and GRASP is the GRASP approach of Parreño et al. (2016) (run for 1 second). For each of the publications, the table reports the percentage of feasible solutions (Sol) and optimal solutions (Opt) found, plus the time used to compute all the instances in the group. The best results are highlighted in bold.
The results in Table 11 cannot be fully compared as experiments have been run on different hardware. That said, the CPUs used in Korach et al. (2020) and Rashed et al. (2021) are comparable, and even though the hardware used in Parreño et al. (2016) is older, it can be assumed that some improvement can be expected if run on modern machines. With this in mind, the table shows a clear improvement from the original work of Delgado et al. (2009);Pacino and Jensen (2013). Feasible solutions have been found for all instances, and only for a few instances, optimal solutions do not exist. Given these results, this set of benchmarks seems to have achieved its purpose. In Parreño et al. (2016) it was pointed out that the benchmark contains a very limited set of discharge ports, which reduces drastically the complexity of restows, and hence propose a more challenging set of instances and a revised version of the problem including a load maximization objective and the handling of dangerous goods. On the one hand, this new set of benchmark instances brings new challenges to the problem. On the other hand, it is less representative of the kind of instances that a slot planning problem will face when being part of a decomposition algorithm. In the latter case, it is to be expected that the master plan will ensure to have as many  Kebedow and Oppen (2019a), where the focus is on the modeling of a large set (compared to that of Parreño et al. (2016)) of rules for dangerous goods. Unfortunately, the publication did not present the mathematical formulation and did not present results on the original benchmark. The new instances generated in Kebedow and Oppen (2019b) can, however, be found at https://doi.org/10.11583/DTU. 22293991 and be used for future comparison.

Computational complexity
Relatively little work has focused on the study of the computational complexity of the CSPP. The first study focused on the complexity that stability constraints such as metacentric limits had on single-stack (GM-OSOP) and multi-stack overstowage problems (GM-MSOP) with uniform cargo (Aslidis, 1989). A polynomial time algorithm is proved to exist for the GM-OSOP (with a time complexity of O(m 2 n 3 ), where m and n refer to ports and containers respectively), while the computational complexity of the GM-MSOP is conjectured to be NP-Complete. An extension of this work is provided by Avriel et al. (2000), which presented an NP-Completeness proof based on a reduction from the C-coloring problem of circle graphs, where C represents the number of uncapacitated stacks (or the colors of the graph). The authors also proved that a polynomial time algorithm exists for C < 4, and provided an algorithm to calculate upper and lower bounds on the number of stacks needed to find a solution with zero shifts. Further research (Tierney et al., 2014) showed that the capacitated version of the k-shift problem described in Avriel et al. (2000) can be solved in polynomial time for a fixed-sized vessel. The exponent in the polynomial is too large for any practical use, but the proof can be used to demonstrate that conclusions over experimental results conducted on a single vessel are not representative of the problem's complexity. Furthermore, Tierney et al. (2014) study the computational complexity of the Hatch Overstow Problem (HOP) and show that the assignment of containers over and below and hatch cover with at most k hatch overstows is NP-Complete by reduction from the set covering problem.

Other relevant publications
Some studies have focused on other aspects of stowage optimization than solving the CSPP. They are presented in the following subsection.
An extension of the MPP to a selection problem was introduced by Christensen and Pacino (2017); Christensen et al. (2019); Kebedow and Oppen (2019a). They considered a revenue management problem called cargo mix, where the goal was to select which bookings to accept in each port of call to maximize profit. A matheuristic was proposed in Christensen and Pacino (2017) composed of 3 stages: generating schedules of discharge ports by solving the longest path problem in an acyclic-directed graph, solving relaxed MIP where stability constraints are dropped and the final stage was fixing hydrostatics by possibly removing cargo. Stochastic programming was proposed by Christensen et al. (2019) considering uncertain demand per port, rolling horizon heuristic was introduced that decomposed the problem into sub-problems with shorter planning horizons.
The work of Jensen and Ajspur (2018); Ajspur et al. (2019); Jensen and Ajspur (2022) introduced the Standard Capacity Model (SCM). It is a polyhedron model derived from MPP models and contributes the first linear approximations of hydrostatic equilibriums and restows. The purpose of the SCM is to increase the accuracy of cargo network-flow models such as Zurheide and Fischer (2015), while maintaining their scalability. Jensen and Ajspur (2022) applied the SCM to a yield optimization problem over 90 days in 2018 of Maersk's Asia -Europe service network with over 250 port calls. Optimal results could be computed in less than 30 minutes and showed that simple fixed capacity models used by carriers today can overestimate revenue by more than 20%.
The study presented in Lee et al. (2020) proposed a multimodal deep learning model to predict the expected lashing forces for container stowage plans. Calculations for lashing forces are tedious and for this reason are hard to be incorporated into models of the CSPP. With the use of machine learning, this process could be faster and the presented results were promising, i.e., the average gap between predicted and true values was 0.66%.
Two interactive decision support tools were presented with the usage of Binary Decision Diagrams (BDDs) Jensen et al. (2012) and boolean satisfiability (SAT) Kroer et al. (2012). The comparison of both methods was presented in Kroer et al. (2016). The software allowed for marking infeasible areas in a bay, but also suggestions of slots in which containers could be placed, and vice versa for containers and potential slots. The BDDs performed well in real-life instances.

Research Agenda
In light of this review, we present our conclusions on the state-of-the-art and propose possible areas of future research. We will do so by starting to describe the challenges with respect to problem representation. As mentioned in Section 2, the included combinatorial aspects should be representative of the real-world problem. From Section 4 it can be derived that a subset of these aspects has not been studied sufficiently. For instance, we believe that lashing is only modeled by dynamic stack capacity in El Yaagoubi et al. (2022), while Shields (1984) only commented on their approach. In practice, the proper use of lashing rods can significantly increase on-deck capacity, while the effects of different lashing models are yet to be investigated. In addition, a substantial body of work implements voluntary restows to reduce restows at future ports (e.g., Botter and Brinati (1992); Avriel et al. (1998); Roberti and Pacino (2018)). Nevertheless, it remains unclear to what extent these impact port stay and vessel utilization. Similarly, block stowage patterns are limited to block purity in Wilson and Roach (2000); Liu et al. (2011);Pacino (2018); Larsen and Pacino (2021), even though more sophisticated patterns (e.g., paired block stowage) have been adopted by the industry. Thus, future work should also investigate these best practices.
Despite the individual cases, we assess that the interaction between key combinatorial aspects is studied insufficiently. Overall, each additional constraint reduces the capacity at ports or vessels, but how these interact and jointly impact the objectives should be investigated further. To do so, a fully representative model is necessary, which is yet to be modeled for the CSPP and MBPP. With respect to the SPP, most combinatorial aspects, except lashing, have been modeled adequately.
We suggest the following minimum requirements for a representative problem. The cargo model should consider 20/40 ft. lengths, standard and highcube heights, but also special cargo such as reefers and IMDG. In addition, voluntary and hatch restows represent reality well, whereas a combination of GM, trim, list and stress forces must model vessel stability. Any future work worth publishing should be aware of the issue raised from modeling stability constraints as simple balancing of weight (e.g., Ambrosino et al. (2004)). Figure 5 shows a simple example of how such simplifications are too far from reality and cannot be used. Since then, many scientific studies reverted to the use of a center of gravity calculation (i.e. Ambrosino et al. (2015a); Pacino et al. (2011);Christensen and Pacino (2017); Zhu et al. (2020)), while unfortunately, some remain oblivious to this mistake (e.g., disregarding container weights Azevedo et al. (2014Azevedo et al. ( , 2018, or disregarding the position of the weights Li et al. (2018Li et al. ( , 2020; Cruz-Reyes et al. (2015); Kebedow and Oppen (2019b)). Furthermore, lashing forces should be included as they impact on-deck stack capacity, while incorporating crane operations and block stowage enables to evaluate and enhance (un)loading efficiency. The main objectives are to minimize port stay and maximize utilization on at least 15,000 TEU vessels.

90
= 0.33 Figure 5: Example calculation of the transversal center of gravity. According to the balance constraints from Ambrosino et al. (2004) (where the total weight at each side of the center should be equal) the presented example is assumed balances (tcg = 0) while it clearly is not the case.

Solution methods
As representative problems are scarce, the underlying problem can vary greatly. Hence, we should tread carefully before drawing any conclusions from this comparison. Even though plenty of solution methods are proposed in Figure 6, their experiments are often limited. In order to verify their generalizability, implementations should strive for computational studies with multiple realistic instances (e.g., Kang and Kim (2002); Pacino et al. (2011);Parreño-Torres et al. (2019)). The use or extension of benchmark instances enables such comparative studies (e.g., Avriel et al. (1998); Ding and Chou (2015); Larsen and Pacino (2021)). Consequently, these studies will help us to find adequate solution methods.
As in many operations research studies, articles focus on providing new mathematical formulations to a problem (e.g., Botter and Brinati (1992); Ambrosino et al. (2004); Delgado et al. (2012b)), or using those formulations to evaluate the efficiency of heuristic solution methods (e.g., Ambrosino et al. (2010);Pacino (2013); Korach et al. (2020)). Unfortunately, we have seen articles on the container stowage planning problem that either do not properly cite the origin of a mathematical formulation, or even present it as their own with only minor changes (if any). We encourage future authors and reviewers to be more critical, so that the literature is not overwhelmed with minor contributions that do now enhance the state-of-the-art. Tree-based heur.  Table A.12 (S=Small size, M=Medium size, L=Large size).

Future work
In contrast to the work on the k-shift problem, very little consensus can be found on a common definition of the CSPP, a set of benchmark instances or the existence of a research road map. Most of the issues related to this lack of coordination can be attributed to the lack of publicly available data, and the high knowledge entry lever required to truly understand the calculations behind the vessel stability constraints. It is only recently that a textbook detailing the CSPP has been published . Researchers that were lucky enough to collaborate with the industry, were constrained by non-confidentiality agreements from publishing details of their results (e.g., Wilson et al. (2001)), or from making available the benchmark data (e.g., Pacino et al. (2011)).
In this subsection, we suggest future work for each of the areas of research.

Single-Port Container Stowage Planning
The computational results of the single-port stowage planning (e.g., Cho (1981); Ambrosino et al. (2010)) are positive in terms of solution quality and computational efficiency. The impact the procedure has on today's large vessels, however, needs to be better evaluated. Most approaches are tested on small vessels for which the repositioning of a single container can have a significant effect on stability, which is no longer the case for the large vessels the industry now uses.
The KPIs mentioned by Larsen and Pacino (2021) are interesting when compared to some of the model enhancements presented in Zhu et al. (2020), where it was argued that containers should be stowed tier-wise rather than having tall stacks. In contrast, Pacino and Jensen (2010); Delgado et al. (2012a); Larsen and Pacino (2021) argued that leaving free stacks provides a flexible stowage plan for future ports. As proposed by Larsen and Pacino (2021), validation of such KPIs using simulation approaches is necessary. The vessel data mentioned in Subsection 4.1, though simplified by the authors, still presents itself with a high learning curve. Thus, it is advisable that papers studying a specific version of the CSPP derive simplified data instances. An example can be seen in Subsection 4.3, where a benchmark for the multi-port master planning problem is provided.
Research on the single-port container stowage planning problem is far from finished, and we see the following as important future research directions: the design of exact methods for the identification of optimal solutions, the evaluation of the validity and usefulness of the proposed KPIs, and the evaluation of the use of other heuristic methods, e.g., based on container exchanges as proposed in Cho (1981); Ambrosino et al. (2006). Given the currently available data and experimental results, new research that does not include a full set of stability constraints is no longer of scientific interest.

Multi-Port Container Stowage Planning
With respect to the benchmarks for multi-port container stowage planning, given that the solution approach of Roberti and Pacino (2018) provides optimal solutions within a minute, it can be concluded that the Long, Mixed, Short and Authentic instances of Table 3 are now closed. As the formulation of Parreño-Torres et al. (2021) is able to find feasible solutions to all instances, further research on heuristics for the k-shift problem does not seem to be a valuable future direction any longer. Parreño-Torres et al. (2021) arrives at the same conclusion and hence proposes to extend the k-shift problem with variable cargo sizes and simple stability constraints. It is shown that the additional complexity has a negative impact on the IP formulation and hence a matheuristic approach is proposed. It is likely that similar results could be obtained by extending the work of Roberti and Pacino (2018) as the stability constraints would increase the number of constraints posted across the generated columns in the formulation and hence are likely to worsen the quality of the lower-bound found by the column generation within the approach.
As future research directions, we propose the study of exact and heuristic methods for the k-shift CSPP with simple stability constraints. This problem corresponds to the definition provided by Parreño-Torres et al. (2021), where container types, weights and simple stability constraints are added to the original k-shift problem. It is unclear from the results presented in Parreño-Torres et al. (2021), whether instances based on the Short, Mixed and Long transport matrices will result in any mandatory shifts, hence merit can be given also to future research that studies, or leverages, the special case of the zero-shift problem.
To the best of the author's knowledge, limited progress has been made on the identification of a single-phase heuristic procedure for the multi-port container stowage planning problem. The vessel data provided by Larsen and Pacino (2021), in combination with the cargo lists which we will describe in the next section, could be used as a common benchmark for future research. It is also the authors' opinion that future studies on exact methods are better suited as extensions of the k-shift problem (see Parreño-Torres et al. (2021)).

Master Planning
Research on master planning is far from concluded. As a part of a hierarchical decomposition, master planning is most often solved using a relaxation of a mixed-integer programming formulation (e.g., Pacino et al. (2011);Chou and Fang (2021)). Though this has positive outcomes, the method is far from infallible, and its performance is heavily dependent on the features of the specific instance and on the combinatorial aspects included in the problem.
From a problem representation point of view, combinatorial aspects such as block stowage and paired block stowage should be better studied. Only a few works have studied the impact of such stowage patterns on the achieved solutions and the performance of the solution methods (e.g., Wilson and Roach (2000); Liu et al. (2011);Pacino (2018); Larsen and Pacino (2021)). Though the use of mathematical modeling has the flexibility of easily allowing additional side constraints to the problem, research on heuristic methods with more stable performance should also be carried out.
It is our hope that the new set of benchmark instances provided in this article (see Section 4.3) will increase the quality and quantity of research on this problem.

Slot Planning
Thanks to the publicly available benchmarks, slot planning reached a high level of quality, and the problem, as currently defined, is (at least from an industrial point of view) solved. The benchmark, however, focuses on the SPP specific to below deck blocks. Aspects such as lashing forces have not been explored yet.
Lashing forces are particularly interesting as little knowledge is currently available. The position of the container on deck, not only depends on its weight and the general load condition, but also on the type of lashing equipment available on the vessel. To which degree the mechanical calculation of the lashing forces can be simplified, and which assumption can be made to better implement solution algorithms is a field yet unexplored. The inclusion of lashing constraints is an important part of stowage planning, as a miscalculation might disallow an entire tier of a container from being loaded.
Being part of a hierarchical decomposition, slot planning has dependencies on the solution of the master planning problem. As of now, it is assumed that a master planning solution always generates feasible slot planning problems. In reality, this is not true (as shown by Pacino et al. (2011)). Hence, slot planning could be extended to include the entire vessel, thereby allowing for the flexible assignment of containers to exchange between blocks and thus improving the solution quality.
Another interesting extension of the slot planning problem is the integration with terminal operations. Some researchers have already realized this potential (Monaco et al., 2014;Iris et al., 2018), where the individual assignment of containers to container types is optimized with respect to the position of the cargo in the terminal. Other possible integrations include i.e. quay crane assignment and scheduling and container sequencing.

Conclusion
This paper provides a review of the literature that studies the Container Stowage Planning Problem. The studies are summarized according to a classification scheme that outlines the fundamental characteristics of the problem and the applied solution approaches. As there is a lack of a common understanding of the problem characteristics, this paper provided a description of a representative problem definition based on several years of academic and industrial collaborations. In light of this definition, a research agenda is proposed for each of the major branches of research in the Container Stowage Planning Problem (single-port planning, multi-port planning, master planning, and slot planning). Moreover, this paper identifies, and in one case, provides publicly available benchmark sets in the hope that future research will make use of them as a reference point and a way to compare results. Where possible, these benchmarks have been used to compare recent research results, and provide some computational comparison. It is our hope that this survey will help improve the field and acts as inspiration for future developments.      Pacino et al. (2011) and Kang and Kim (2002) Appendix C. Master planning formulations

Appendix A. Classification tables
The master planning problem aims to allocate cargo to subsections of bays. Those are often called locations (Pacino et al., 2011) or blocks (Chou and Fang, 2021). A block can either be a logical grouping of containers or be defined by the position of the hatch covers. The assignment of containers to blocks must ensure that the vessel is seaworthy while minimizing the handling time of the vessel. This appendix briefly presents the master planning formulations used for the computational comparison of Section 4.3. We refer the reader to the original publications for a more in-depth description. Tables C.18 and C.19 show the sets and parameters shared between the Pacino et al. (2011) and Chou and Fang (2021) formulations.

Sets B
The set of bays BL The set of blocks BL b The set of blocks in bay b ∈ B BL O The set of blocks over deck The set of overstowing transports at port p ∈ P where (o, d) ∈ T R where o < p and d > p The 20-,40-foot, and Reefer capacity of block l ∈ L T EU τ The Twenty-Foot Equivalent units of container type τ ∈ T W τ The weight of container type τ ∈ T L τ The length of container type τ ∈ T LD τ t The number of container of type τ ∈ T to be loaded for transport t ∈ T R R τ p,l The number of containers of type τ ∈ T , already on board the vessel with destination p ∈ P .
The lightship weight at bay b ∈ B W max l The maximum weight limit of block l ∈ L D p The total displacement of the vessel leaving port p ∈ P CG α l The centre of gravity components α ∈ L = LCG, V = V CG, T = T CG of block l ∈ BL CG The shear limits at bay b ∈ B t∈T R ON p l∈L CG T l W τ x τ tl ≥ T CG M in D p ∀p ∈ P (C.9) (Chao and Lin, 2021). Following is an extension of the common sets and parameters needed for this formulation.

N
The set of all nodes P The set of ports A The set of all arcs The set of outgoing and incoming arcs of node i ∈ N OD The set of transports (origin/destination port pairs) (o, d) ∈ P × P OD The set of all arcs belonging to the transport t ∈ OD A τ t The set of arcs connecting the transport nodes and the container type nodes A L tl The set of arcs connecting the container type nodes and the block nodes K t The number of containers in transport t ∈ OD E ij The number of containers flowing through the type nodes Parameters S The source node T The sink node q i Is equal to q for i = S, −q for i = T and zero for all other nodes, where q is the total number of containers to be stowed τ L (i) The length of container type node i ∈ T τ W (i) The weight of container type node i ∈ T T EU i The TEU value of container type node i ∈ T As the following is a network-flow formulation, the decision variables x ij ∈ R + represent the flow (the number) of containers from the source to the sink node, through the arcs (i, j) ∈ A.