# Sorting multibay block stacking storage systems††thanks: This work was
partly funded by the Deutsche Forschungsgemeinschaft (DFG, German Research
Foundation) through the Research Training Group 2193 (Project number:
276879186).

Jakob Pfrommer, Thomas Bömer, Daniyar Akizhanov, Anne Meyer  Jakob
Pfrommer111Corresponding author, TU Dortmund University, Leonhard-Euler-Straße
5, 44227 Dortmund, Germany<EMAIL_ADDRESS>ORCID:
https://orcid.org/0000-0003-2492-0621, Thomas Bömer 222TU Dortmund University,
Leonhard-Euler-Straße 5, 44227 Dortmund, Germany, thomas.boemer@tu-
dortmund.de, ORCID: https://orcid.org/0000-0003-4979-7455, Daniyar Akizhanov
333Rice University, 6100 Main St, Houston, TX 77005, USA<EMAIL_ADDRESS>Anne
Meyer444TU Dortmund University, Leonhard-Euler-Straße 5, 44227 Dortmund,
Germany<EMAIL_ADDRESS>ORCID:
https://orcid.org/0000-0001-6380-1348

###### Abstract

Autonomous mobile robots (AMRs) are increasingly used to automate operations
in intralogistics. One crucial feature of AMRs is their availability, allowing
them to operate 24/7. This work addresses the multibay unit load pre-
marshalling problem, which extends pre-marshalling from a single bay to larger
warehouse configurations with multiple bays. Pre-marshalling leverages off-
peak time intervals to sort a block stacking warehouse in anticipation of
future orders. These larger warehouse configurations require not only the
minimization of the number of moves but also the consideration of distance or
time when making sorting decisions. Our proposed solution for the multibay
unit load pre-marshalling problem is based on our two-step approach that first
determines the access direction for each stack and then finds a sequence of
moves to sort the warehouse. In addition to adapting the existing approach
that integrates a network flow model and an extended A* algorithm, we
additionally present an exact constraint programming approach for the second
stage of the problem-solving process. The results demonstrate that the
presented solution approach effectively enhances the access time of unit loads
and reduces the sorting effort for block stacking warehouses with multiple
bays.

##  1 Introduction

Block stacking storage systems are a very simple and widely used type of
warehouse. Unit loads like pallets, boxes, containers, or movable shelves are
placed on the ground and may be stacked on top of another. The advantage of
block storage is that it does not require high investments in infrastructure,
is highly flexible, and easily scalable. Figure 1 shows an example of a block
stacking warehouse with four bays separated by aisles for traveling. Each bay
contains unit loads that are placed in lanes. Dependent on the available
access directions and the properties of the unit load, access to the outermost
stacks from up to four cardinal directions is possible.

Figure 1: Example of a block stacking warehouse with a robotic forklift

The use of autonomous mobile robots (AMRs) for material handling allows to
increase the storage density by utilizing a shared storage policy and
rearrangement operations that are difficult to implement by human operators.
The reason is the high availability of AMRs, also during off-peak hours and
accurate information on the storage system state. For example, AMRs could
rearrange the storage during idle time and prepare it for a future demand
sequence that may be derived from a production schedule or truck loading time
slots. In Pfrommer, Meyer Tierney (2022), we introduced this problem as unit-
load pre-marshalling problem (UPMP). This work is the continuation of this
paper extending the problem to a larger multibay setup and hence to a much
wider range of applications. Extending the scope to multiple bays requires not
only a highly efficient solution approach but also additional features like
the consideration of travel times/distances of the AMRs.

The main contributions of this paper are:

  1. 1.

We formally introduce the multibay unit-load pre-marshalling problem (MUPMP)
with up to four access directions.

  2. 2.

We show that our two-stage solution approach for the UPMP can be applied to
solve the MUPMP with little modifications.

  3. 3.

We further introduce an optimal constraint programming (CP) approach for the
second stage to evaluate our heuristic tree search approach.

  4. 4.

We show that the approaches can solve real-world size instances and publish
the benchmark datasets.

This paper is structured in the following main sections. We commence this
paper with an introduction of the MUPMP in Section 2 followed by a brief
literature review in Section 3. Subsequently, we introduce the extended
solution approach in Section 4 and conduct a series of experiments presented
in Section 5. Finally, we provide a summary and outlook in Section 6.

##  2 The Multibay unit load Pre-marshalling Problem

The MUPMP is about sorting a block stacking warehouse that may contain
multiple bays until the resolution of all blockage based on the future
retrieval time of each unit load. Similar to the UPMP for a single bay, we
assume that the AMRs are idle and that no unit loads are entering or leaving
the storage system. The warehouse consists of $N$ given bays that are
interconnected via aisle space for traveling. Each bay $n\in\\{1,...,N\\}$ can
be accessed from one or up to four access directions and is filled with a set
of unit loads with a known position and retrieval priority group. Because a
fully shared storage policy is applied, stock keeping units (SKUs) can be
placed anywhere and mixed in lanes as well as stacks. The retrieval priority
group is derived based on a known (e.g., planned truck arrivals or production
schedule) or predicted (e.g., based on material supply precedence graph or
demand forecast) future retrieval time. We define unit loads as blocking when
they have a higher retrieval group compared to the unit loads that are placed
underneath or behind. These unit loads with a lower retrieval group will be
retrieved before the unit load with a higher retrieval group. In block
storage, placing a unit load at higher tiers requires a unit load to be
located underneath. Only the top unit load can be accessed directly. When
filling up or accessing a bay, the available access directions must be
considered to prevent empty gaps. In terms of AMR specifications, we assume
that they cannot reach over a stack in front and can only carry a single unit
load.

Whereas in case of the UPMP, the goal was solely to find a minimum number of
unit-load moves to sort a bay such that there is no blockage, in case of the
MUPMP, the move time or distance must also be considered due to the much
greater time/distance differences between the moves. Minimizing the total move
time allows pre-marshalling to be conducted in short time intervals, thereby
ensuring long operational availability. Hence, our goal for solving the MUPMP
is to minimize the travel time/distance for the pre-marshalling process that
consists of the total travel as well as the handling times (i.g. pick-up and
fine-positioning). To do so, we aim for the minimal total loaded move distance
for the minimal number of moves. Only distances travelled while an AMR is
loaded are taken into account. This allows an allocation of the moves to
multiple AMRs. Because multibay block stacking warehouses are usually operated
by multiple vehicles, it is necessary to split and allocate the resulting
sequence of moves to the AMRs. The allocation of moves is the scope of future
work.

Figure 2 shows the state representation of a block stacking warehouse with
four bays arranged as a square. Within a bay, the storage locations are
represented as a three-dimensional grid with columns $i\in\\{1,...,I\\}$, rows
$j\in\\{1,...,J\\}$, and tiers $t\in\\{1,...,T\\}$ that is filled with unit
loads of priority groups $g_{ijt}\in\\{1,...,G\\}$. Assuming rectangular
warehouse footprints with length $L$ and width $W$, we also use a two-
dimensional global $x$-$y$ coordination system to determine the position of
bays, storage locations, and access points in the warehouse. The access points
$p\in\\{1,...,P\\}$ are located in the aisle space in front of the bays and
specify the stacks that can be accessed directly. This representation with
access points is more detailed than just defining the allowed access
directions, as also partial access via one access direction can be modeled,
which may be necessary due to pillars, for example. An MUPMP-instance is fully
defined by a list of bays, where each bay contains $(I,J,T,G,g_{ijt}\in
G^{I\cdot J\cdot T},P)$.

Figure 2: State representation with four bays of the multibay block stacking
warehouse

The example in 3 (a) shows a warehouse configuration containing two square
bays of the same size with $I=3$, $J=3$, and $T=1$ that can both be accessed
from all four directions. It is filled with unit loads of retrieval groups
$g_{ijt}$ from one to five that are specified on top of each load. 3 (b)
switches the perspective to the top view with white tiles for empty/aisle
space and dark gray tiles for unit loads. The bold red digits are the unit
loads that are blocking the center unit load of the bottom bay. A red-dotted
arrow indicates a possible move to resolve all blockage. Relocating one of the
other blocking unit loads would also be possible, but it requires a longer
transport distance. 3 (c) shows the resulting sorted configuration of the
MUPMP.

Figure 3: Example configuration in (a), top view of the grid-based layout and
red arrow for a possible move in (b) and solution of the MUPMP in (c)

The MUPMP increases the scope to a variety of storage applications considering
not only a single bay but larger multibay warehouses. Hence, the MUPMP is a
generalization of the UPMP in Pfrommer, Meyer Tierney (2022). In the case of
bays that can only be accessed from one access direction, it can be reduced to
the container pre-marshalling problem (CPMP) and is thus also NP-hard (Caserta
., 2011). Bays with more than once access direction require further
investigation on the complexity.

##  3 Related work

Our literature review presents related publications focusing on rearrangement
activities for multibay setups as well as the minimization of travel time. For
an overview of single-bay pre-marshalling literature, we refer to Pfrommer,
Meyer Tierney (2022).

###  3.1 Multiple bays

In maritime transportation, the rearrangement of containers within multiple
bays is known as the remarshalling problem (RMP). Similar to pre-marshalling,
the goal is to sort the scattered containers based on their retrieval priority
with a minimum number of moves until all blockings are resolved Caserta .
(2011). Different problem definitions exist for RMP, which the following
literature review shows.

An early publication by Kim Bae Kim Bae (1998) deals with the RMP and
converting the configuration of a current bay into a target configuration.
Instead of the exact position of each container, the bay configuration is
defined simply as the number of containers per group that are located within
each bay. The group is a collection of containers going to the same
destination on the same vessel. The problem is divided into two sub-problems:
(1) bay matching and move planning and (2) sequencing the moving tasks. In the
first step, dynamic programming and an approach referred to as ”transportation
algorithm” are used to determine the flow and movement between bays to reach
the target configuration. Second, the task sequencing problem is modeled as a
traveling salesperson problem (TSP) with precedence constraints to consider
space availability at the destination bay, with the goal of minimizing travel
time. Because the exact positions of the containers are neglected in the bay
configuration, the rehandling of containers within a bay is not addressed in
this work.

Later publications take exact container positions into account and investigate
the intra-block RMP where containers are sorted based on categories and
retrieval priorities. In successive publications, Kang . Kang . (2006) and
Choe . Choe . (2011) investigate the RMP where, starting from a source, bay
containers are relocated to an empty target bay so that no rehandling is
necessary either during the rearrangement process or later in the ship loading
process. Interference between multiple cranes is taken into account. Both
publications present a similar two-phase solution approach that couples a
simulated annealing algorithm for finding a target configuration and partial
order graph with crane scheduling to determine a minimum-time re-marshalling
plan.

Park . Park . (2009) study the RMP in a container terminal with two cranes.
Whereas one crane is used for loading containers from the storage yard on the
vessel (seaside), the second crane is used to carry in containers from
external trucks (landside). The goal of their solution is to bring containers
from the landside of the storage yard to the seaside where the ship loading
happens and, at the same time, sort the containers based on their retrieval
priority. Therefore, the authors propose a two-stage algorithm: First,
potential stacks where the containers will be moved are selected
heuristically. Second, an algorithm is used to conduct an alternating search
to solve the two sub-problems of determining target slots that are assigned to
each container as well as the order of container movements.

Further approaches deal with rearrangement activities to improve the location
of containers whenever one of the cranes is temporarily idle (called
”housekeeping” (Kemme, 2012, p 148) or ”iterative rescheduling”), where the
re-marshalling jobs that most reduce future loading times are selected with
the objective of minimizing current delay times as well as the overall
makespan Choe . (2015). Besides re-marshalling before a ship is loaded (export
terminal), re-marshalling activities may also be performed after unloading a
ship (import terminal) before containers are retrieved (e.g., to external
trucks). The works of van Asperen .van Asperen . (2013) and Covic Covic (2017)
investigate this type of re-marshalling problem where container departure
times are reported by a truck announcement system.

The presented research for multiple bays deals with a variety of use-case-
specific problems (e.g., moving containers to an empty target bay) using
relaxing assumptions to simplify the problems. We could not find an extension
of the CPMP to the RMP, possibly because cranes are typically installed
permanently for a single block (here: bay) and cannot move between them.

###  3.2 Minimization of crane times

Besides publications that specifically address rearrangement operations
between multiple bays, there are also solution approaches of the CPMP
considering crane times. Instead of minimizing moves, Parreño-Torres .
Parreño-Torres . (2020) address the minimization of crane times for the pre-
marshalling of containers. The authors propose an integer linear model that
builds upon Parreño-Torres . (2019) as well as a branch and bound algorithm,
which is set up as an iterative deepening search. Besides the lower bound from
Tanaka . (2019), a novel lower bound incorporating the travel time, as well as
a heuristic algorithm for an upper bound for the number of moves, are also
introduced. The heuristic algorithm is executed at each iteration of the
search, and the algorithm stops when the depth level reaches the upper bound.
The novel time-based lower bound extends the lower bound for the number of
moves. Each move is multiplied by a minimum time that consists of the travel
time unloaded and loaded, crane lowering and lifting times, and twistlock
time. Further variants of the time-based lower bound also consider the
position of the blocking container and the highest positions they can be moved
to. The time-based lower bound is used as a secondary tie-breaking criterion.
Overall, the branch and bound algorithm outperforms the integer programming
models in terms of solved instances and runtime. In a recent publication,
Parreño-Torres . Parreño-Torres . (2022) propose a beam search algorithm that
is able to find all previously found optimal and more improved solutions (not
necessarily optimal). For the tree search procedure, the authors use several
tie-breaking criteria based on the move type (bad-bad (BB), bad-good (BG),
good-bad (GB) and good-good (GG); see Pfrommer, Meyer Tierney (2022)), develop
a global evaluation heuristic to obtain the most promising nodes, and present
new dominance rules for eliminating nodes that cannot result in a better
solution.

The research on the minimization of crane times by Parreño-Torres . Parreño-
Torres . (2022) uses a lower bound based on minimum travel times multiplied by
the number of moves. In single-bay scenarios, this is a feasible approach.
However, in larger multibay warehouses, using a similar lower bound based on
the minimum move time would not be an effective approach.

##  4 Solving the MUPMP

In this section, we give an overview and briefly describe our adapted two-step
solution approach for the MUPMP based on a network flow model and a tree
search procedure that has been presented in Pfrommer, Meyer Tierney (2022).

Our main extensions are:

  * •

A pre-processing step to determine the access points for each bay and
calculate the distance matrix.

  * •

Multiple outputs when solving the network flow model for each bay applying the
advanced lower bound as an additional tie-breaking rule.

  * •

An improved tree search procedure

    * –

with an incremental calculation of the lower bound heuristics,

    * –

new tie-breaking rule that includes the total loaded move distance,

  * •

An exact CP approach to validate the results of the tree search procedure.

The process flow of our two-step approach is shown in Figure 4.

###  4.1 Two-step Approach

We start this section by giving an overview and briefly describing the steps
of our solution approach based on a network flow model and a tree search
procedure that have been presented in Pfrommer, Meyer Tierney (2022). The
process flow of our two-step approach is shown in Figure 4. Beforehand, a pre-
processing step converts the warehouse representation into a list of bays with
access points that indicate from which aisle locations stacks are accessible.
Based on a graph that is placed in the grid-based layout, we calculate a
static distance matrix with the distances between all access points.

Figure 4:  Illustration of the main components of our extended solution
approach based on Pfrommer, Meyer Tierney (2022).

In the first step, we use the network flow model to determine the access
directions for each stack. The objective is to minimize the blocking unit
loads. Based on the access directions, we can transform the configuration into
a state representation of virtual lanes. Each virtual lane consists of a
sequence of 1 to $\max(I,J)$ stacks in a row/column that can be accessed one
after the other. The access direction for each virtual lane is defined by an
access point, and the length of the lane may be different. In the second step,
we use the virtual lane representation to find a solution for sorting the
warehouse with a minimum number of moves. Therefore, we present an adapted
tree search procedure as well as a CP approach.

In the following subsections, we explain our solution approach in detail and
focus on the newly added adaptations as well as the additional pre- and post-
processing steps.

###  4.2 Input

In the beginning, we add the required inputs. A grid-based warehouse is
represented as a list of bays including the access points and directions to
the respective bay as shown in Figure 5. The purple dots indicate possible
access points from aisle space to the bay. This example allows access from all
four cardinal directions. Next, we lay a graph into the aisle space tiles and
calculate all distances between the access points of all bays via breadth-
first-search. A downside of using such a static distance matrix between all
access points is that possible shortcuts through storage space in case of low
fill levels are not considered.

Figure 5: Example of a warehouse configuration with two bays and possible
access points.

###  4.3 Step 1: Access direction fixing

In this step, we want to define the access direction for each stack. This is
necessary to make the application of our lower bound valid and also because we
want to avoid crossing AMRs when accessing a bay. Fixing the access directions
at the beginning of our approach may lead to additional moves, as discussed in
Pfrommer, Meyer Tierney (2022). To calculate the access direction for each
stack that minimizes the number of misplaced unit loads, we use the network
flow model from Pfrommer, Meyer Tierney (2022). The result is used to
determine a virtual lane representation that defines how each stack is
accessed via a defined access point. In our previous version, we obtained a
single optimal solution in case many symmetrical solutions were available.
Now, we want to utilize situations in which many symmetrical solutions are
available by returning multiple optimal solutions for each bay. We then
compare up to 10 solutions with our more advanced lower bound heuristic that
also considers the priority groups of blocking unit loads and open locations
(see Pfrommer, Meyer Tierney (2022)).

Figure 6 gives an example with two bays that produce a list of virtual lanes.
The two bays on top of the figure show an exemplary result of the network flow
model for the example from Figure 5. Thick black lines and colors illustrate
the virtual lanes with the respective access directions and access points. At
the bottom of the figure, we show the final virtual lane representation that
is used throughout the following procedure to determine the pre-marshalling
moves.

Figure 6: Resulting virtual lanes for the example from 5. Thick black lines in
bay 1 and bay 2 illustrate the virtual lanes. These lanes are transformed into
a representation of one access direction.

###  4.4 Step 2 - Alternative 1: Tree search

The new implementation of the A* algorithm differs in some details from our
previous work. We introduce a new tie-breaking rule that considers the total
loaded move distance for popping nodes out of the priority queue and a faster
incremental calculation of the lower bound heuristics (which is not visible in
the algorithm).

Algorithm 1 shows the modified algorithm. After initialization, the main
search loop runs until a solution with no blocking unit loads is found, until
the open list is empty and no solution exists, or until the time limit has
been reached. In each iteration of the loop, a node $n$ that minimizes the
cost estimation $f(n)=g(n)+h(n)$ is popped off the open list, where $g(n)$ is
the number of moves already performed at node $n$ and $h(n)$ the lower bound
estimating the number of moves until a blockage-free configuration is reached.
If there are many nodes with the same cost estimation $f(n)$, we use a new
tie-breaking rule for node selection that is explained in the subsequent
paragraphs. The only difference in calculating successor nodes is that we
incrementally calculate and update the total loaded move distance. A successor
node is pushed to the open list and added to an f- and distance-dictionary, if
there is not already a node with the same configuration in the f-dictionary
that has a smaller cost estimation or the same cost estimation but a smaller
total loaded move distance. Our procedure guarantees an exact solution for the
minimization of moves. Since the travel distance is considered only for tie-
breaking, the resulting total loaded move distance is not necessarily optimal
for the minimal number of moves. As long as the processing time for handling
exceeds the travel time for each move, we expect good results for the total
processing time as well.

Function  _astar(_root_)_:

open $\leftarrow$ priority_queue();

$\triangleright$ new tie-breaking rules

f_lookup $\leftarrow$ dict();

distance_lookup $\leftarrow$ dict();

$\triangleright$ new distance lookup

closed $\leftarrow$ $\emptyset$;

push(open, root);

f_lookup[root] $\leftarrow$ $f($root$)$;

distance_lookup[root] $\leftarrow$ $0$;

while  _open $>$ $0$ and time $<$ timeout_ do

$n$ $\leftarrow$ pop(open);

closed $\leftarrow$ closed $\bigcup$ {$n$};

if  _blocking( $n$) $=0$_ then

return $n$;

end if

successors $\leftarrow$ branching($n$);

$\triangleright$ new extended branching over all bays

for  _$s$ $\in$ successors_ do

if  _$s$ $\notin$ closed and ($s$ $\notin$ f_lookup or f_lookup[$s$] $>$
f($s$) or (f_lookup[$s$] $=$ f($s$) and distance_lookup[$s$] $>$
total_loaded_distance($s$)))_ then

push(open, $s$);

f_lookup[$s$] $\leftarrow$ f($s$);

distance_lookup[$s$] $\leftarrow$ total_loaded_distance($s$);

end if

end for

end while

Algorithm 1 Modified A* algorithm from Pfrommer, Meyer Tierney (2022).

Tie-breaking rules with travel distance: When selecting the next move, our
algorithm compares the different rules in a lexicographic order. The applied
rules for tie-breaking are the f-value (total cost estimation), h-value (lower
bound heuristics), and the total loaded move distance $dist$ (aggregated from
the root to this node). The distance between two virtual lanes is defined as
the length of the shortest path between their respective access points. The
travel time within each virtual lane is neglected (it can be added by counting
the empty tiles). We build different combinations based on these rules. In our
approach, we always select the possible moves with the lowest f-value first.
Because in many cases (especially large warehouses) there are still plenty of
options with the same minimum f-value, we use the h-value as the first, and
the total loaded move distance $dist$ as the second tie-breaker:
$f\\_h\\_dist$.

Incremental lower bound calculation: The A* search is further optimized by
incremental lower bound calculation, which is not visible in Algorithm 1. If
the configuration and lower bound of a given node are known, calculating the
lower bound of its successor can be simplified. The estimated number of
required moves based on the bad-good and bad-bad (BX) and the good-good and
good-bad (GX) moves can be computed faster if information about its
predecessor is known. The number of misplaced unit loads can be changed only
in the lanes impacted by a move. Therefore, the difference in misplaced unit
loads within these lanes is therefore also the total difference in misplaced
unit loads in the entire warehouse. The BX moves based on the minimum number
of misplaced unit loads per virtual lane, can also be updated simply by
comparing it to the number of misplaced unit loads in the virtual lanes
affected by the most recent move. The calculation of additional GX moves uses
a supply-and-demand model. The change in supply and demand is dependent only
on the change in the virtual lanes affected by the most recent move. To
calculate the difference, the supply and demand of the two virtual lanes
affected by the move must to be determined for the parent node and the
successor. The difference in supply and demand is calculated by subtracting
the parent’s supply and demand from the successor’s supply and demand. Based
on the supply and demand differences, we calculate the cumulative incremental
supply and demand, deriving the demand surplus difference. We then add the
demand surplus difference to the demand surplus of the parent node to obtain
the new demand surplus of the successor. The following steps to derive the GX
moves are the same.

###  4.5 Step 2 - Alternative 2: Constraint programming

To demonstrate the performance of the A* algorithm, we compare its solution to
a CP approach. We employ a CP approach proposed by Jiménez-Piqueras . (2023).
Jiménez-Piqueras . solve the CPMP with the minimum number of moves. The core
concept involves constructing a CP model that allows a limited number of
moves, starting from a lower bound of moves. If no solution emerges after a
complete search, an additional move is incorporated into the model until a
solution is identified. The authors introduce multiple model versions. We opt
for CP5 as it proved to be the most efficient. In the subsequent sections, we
detail only the relevant parts of the model that underwent modifications to
solve the MUPMP. The complete model is described in appendix A.1:

Each stack of containers in the original model equates to a virtual lane, and
each tier equates to a position in the access sequence of the virtual lane
(see section 4.3). To ensure comparability, the variable names used are
matched to the original model. Let $\bar{s}$ denote the number of virtual
lanes and $\bar{t}$ represent the number of positions in each virtual lane
$s$. Accordingly, $\mathcal{S}=\\{1,...,\bar{s}\\}$ is the set of virtual
lanes and $\mathcal{T}_{s}=\\{1,...,\bar{t}\\}$ is the set of positions for
virtual lane $s\in\mathcal{S}$. A slot ($s$,$t$) is defined by a virtual lane
$s\in\mathcal{S}$ and position $t\in\mathcal{T}_{s}$. Let $\bar{k}$ be the
permissible number of moves in the model. $\mathcal{K}$ is the set of stages,
defined as $\mathcal{K}=\\{1,...,\bar{k}\\}$. Stage 0 signifies the initial
layout. $\mathcal{K}^{0}=\\{0,1,...,\bar{k}\\}$ is the set of stages,
including the initial layout. Further, the variables $z^{k}_{s,t}$ and
$y^{k}_{i,j}$ are introduced.

$\displaystyle z^{k}_{s,t}$ $\displaystyle=\begin{cases}1&\text{If a unit load
is removed from slot ($s$,$t$) during stage $k$}\\\
0&\text{Otherwise}\end{cases}$ $\displaystyle\hskip 38.00008pt\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}$
$\displaystyle y^{k}_{s,t}$ $\displaystyle=\begin{cases}1&\text{If a unit load
is moved to slot ($s$,$t$) during stage $k$ }\\\
0&\text{Otherwise}\end{cases}$ $\displaystyle\hskip 38.00008pt\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}$

Let $d_{s,s^{\prime}}$ be the distance between virtual lane $s\in\mathcal{S}$
and $s^{\prime}\in\mathcal{S}$. The total loaded move distance is minimized
for the minimum number of moves. The objective function is defined as:

$min\displaystyle\sum_{k\in\mathcal{K}}\displaystyle\sum_{s\in\mathcal{S}}\displaystyle\sum_{s^{\prime}\in\mathcal{S}}\displaystyle\sum_{t\in\mathcal{T}_{s}}\displaystyle\sum_{t^{\prime}\in\mathcal{T}_{s^{\prime}}}z^{k}_{s,t}\cdot
y^{k}_{s^{\prime},t^{\prime}}\cdot d_{s,s^{\prime}}$ (4.1)

Let $c^{UB}$ be the objective value of the solution of the A* algorithm. To
restrict the search space, the objective value of the A* algorithm is set as
an upper bound for the total loaded move distance in constraint A.23.

$\displaystyle\sum_{k\in\mathcal{K}}\displaystyle\sum_{s\in\mathcal{S}}\displaystyle\sum_{s^{\prime}\in\mathcal{S}}\displaystyle\sum_{t\in\mathcal{T}_{s}}\displaystyle\sum_{t^{\prime}\in\mathcal{T}_{s^{\prime}}}z^{k}_{s,t}\cdot
y^{k}_{s^{\prime},t^{\prime}}\cdot d_{s,s^{\prime}}\leq c^{UB}$ (4.2)

Given that the number of virtual lanes can be substantial for large warehouse
layouts, the symmetry-breaking constraints (27) of CP5 (Jiménez-Piqueras .,
2023) are omitted from the model to reduce the model building time. The
influence of those constraints is inherently diminished by accounting for the
total loaded move distance.

##  5 Experiments

The objective of the analysis is to evaluate the performance of the A*
algorithm approach (see Section 4.4) and to compare it with the CP approach
(see Section 4.5). We refer to the A* algorithm approach as A* and the CP
approach as CP.

###  5.1 Instance generator and dataset

We conduct experiments on 3520 instances and publish an even more extensive
dataset for future research (Pfrommer Bömer, 2024). Table 1 shows an overview
of the configuration parameters for this study. In all instances, we consider
four access directions and one tier. The varied parameters include priority
classes, fill percentage, bay layout, and warehouse layout. For each
configuration, we create 10 randomly generated instances (seeds 1-10).

Parameter | Value
---|---
Access directions | {four}
Tiers | {1}
Priority classes | {5, 10}
Fill percentage | {40 %, 60 %, 80 %, 90 %}
Bay layout | {3x3, 4x4, 5x5, 6x6}
Warehouse layout | {2x2, 3x3, 4x4, 5x5, 6x6, 7x7, 8x8, 9x9, 10x10, 11x11, 12x12}
Table 1: Dataset configurations.

The test instances consider five or 10 different priority classes. Fill
percentages of 40 %, 60 %, 80 %, and 90% are taken into account. For this
study, we only consider quadratic layouts. A 6x6 bay layout describes a bay in
which six lanes are arranged next to each other with a depth of six slots.
This results in 36 slots per bay. A warehouse layout of 5x5 describes a
warehouse that consists of 25 bays that are arranged in a quadratic pattern.
Hence, a 6x6 bay layout and a 5x5 warehouse layout combined results in 900
slots. This study includes bay layouts from 3x3 up to 6x6 and warehouse
layouts from 2x2 up to 12x12. Table 2 shows the resulting number of slots for
each considered bay and warehouse layout configuration. The largest layout
configurations include 1296 slots.

| Warehouse layout
---|---
Bay layout | 2x2 | 3x3 | 4x4 | 5x5 | 6x6 | 7x7 | 8x8 | 9x9 | 10x10 | 11x11 | 12x12
3x3 | 36 | 81 | 144 | 225 | 324 | 441 | 576 | 729 | 900 | 1089 | 1296
4x4 | 64 | 144 | 256 | 400 | 576 | 784 | 1024 |  |  |  |
5x5 | 100 | 225 | 400 | 625 | 900 |  |  |  |  |  |
6x6 | 144 | 324 | 576 | 900 | 1296 |  |  |  |  |  |
Table 2: Number of slots for each layout configuration.

###  5.2 Analysis

We conduct computational experiments on the Linux High-Performance-Computing
Cluster LiDo3 at the Technical University of Dortmund. We run all experiments
on a node with 4 × Intel Xeon E5 4640v4 2.1 GHz and 512 GB RAM. The algorithms
are implemented in Python using Google OR-Tools 9.5 with default parameters
for the network flow model and the CP model. The solution time of the A*
algorithm is limited to 10 minutes. The solution time of the CP model is
limited to 60 minutes. We present the findings using examples. For
completeness, a detailed overview of the results is provided in the appendix
A.2 and A.3.

#### Solved instances

Table 3 shows the number of solved instances by A* for each instance
configuration. The results show that instances with 10 priority classes are
harder to solve than instances with five priority classes. An example is given
for a 5x5 bay layout, 6x6 warehouse layout, and 90 % fill percentage. For five
priority classes, all instances have been solved, for 10 priority classes only
four have been solved. Further, the bay layout has a stronger impact on the
solvability of an instance than the warehouse layout. For example, the
instances with a 5x5 bay layout and 6x6 warehouse layout are solvable for the
A*, while instances with a 6x6 bay layout and 5x5 warehouse layout are barely
solvable for fill percentages over 40 %. Both configurations contain the same
number of slots.

Also, a larger fill percentage seem to make instances harder to solve up to a
certain point. The number of solved instances decreases with a rising fill
percentage from 40 % to 80 %. The comparison of 80 % fill percentage and 90 %
shows that the instances with 80 % fill percentage are harder to solve than
the ones with 90 %. The reason for that is that a high 90 % fill percentage
heavily restricts the potential slots for relocations. Hence, the A* has to
evaluate fewer nodes to find a solution.

| Priority classes | 5 |  | 10
---|---|---|---|---
| Fill percentages | 40 % | 60 % | 80 % | 90 % |  | 40 % | 60 % | 80 % | 90 %
Bay layout | Warehouse layout |  |  |  |  |  |  |  |  |
3x3 | 2x2 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 3x3 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 4x4 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 5x5 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 6x6 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 7x7 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 8x8 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 9x9 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 10x10 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 11x11 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 12x12 | 10 | 10 | 9 | 10 |  | 10 | 10 | 8 | 10
4x4 | 2x2 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 3x3 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 4x4 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 5x5 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 6x6 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 7x7 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 8x8 | 10 | 10 | 10 | 10 |  | 10 | 9 | 3 | 9
5x5 | 2x2 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 3x3 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 4x4 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 9
| 5x5 | 10 | 10 | 10 | 10 |  | 10 | 10 | 10 | 10
| 6x6 | 10 | 10 | 5 | 10 |  | 10 | 10 | 0 | 4
6x6 | 2x2 | 10 | 10 | 10 | 9 |  | 10 | 10 | 10 | 10
| 3x3 | 10 | 10 | 10 | 7 |  | 10 | 10 | 10 | 7
| 4x4 | 10 | 10 | 10 | 6 |  | 10 | 10 | 10 | 1
| 5x5 | 10 | 5 | 0 | 0 |  | 10 | 2 | 0 | 0
| 6x6 | 3 | 0 | 0 | 0 |  | 0 | 0 | 0 | 0
Table 3: Solved instances for A*.

Figure 7 shows the mean number of evaluated nodes for instances with a 4x4 bay
layout. The mean number of evaluated nodes is an indicator of the solution
effort of each instance. The mean number of evaluated nodes for 80 % fill
percentage instances exceeds the number for 90 % fill percentage.
Consequently, the solution effort for 80 % is higher than for 90 % which
results in an A* time-out for smaller layout configurations than for 90 % fill
percentage.

Figure 7: Mean number of evaluated nodes in A* for 10 priority classes.

#### Runtimes

The total runtimes in Figure 8 include the access direction fixing pre-
processing step and the solution time of the A* algorithm itself. The total
runtimes increase with the number of evaluated nodes. Consequently, the total
runtimes increase with the size of the bay and warehouse layout. Further, the
total runtimes increase with the fill percentage until 80 %. However, the
solving times for the 90 % fill percentage instances are lower than for the 80
%. The reason for this is that more nodes have to be evaluated for 80 % fill
percentage than for 90 % fill percentage (see Figure 7).

Figure 8: Total runtimes for A* for a 4x4 bay layout and 10 priority classes.

The runtimes for the access direction fixing pre-processing step are shown in
Figure 9 for the same instances as in Figure 8. Figure 9 shows that the pre-
processing runtime is not dependent on the fill percentages, but only on the
size of the layout configuration. The pre-processing runtime increases in
proportion to the number of bays because the pre-processing step has to be
performed for each bay individually. Larger bay layouts cause longer pre-
processing times. This becomes evident when comparing two layout
configurations with the same number of slots: The mean pre-processing runtime
for a 4x4 bay layout and a 5x5 warehouse layout is 3.31 s for a 5x5 bay layout
and a 4x4 warehouse layout the mean is 4.39 s. The number of priority classes
does not show a significant impact on the pre-processing time. The maximum
pre-processing time of all solved instances is 39.25 s for a 6x6 bay layout,
6x6 warehouse layout, 40 % fill percentage, and five priority classes.

Figure 9: Access direction fixing (pre-processing) runtime for 4x4 bay layout
and 10 priority classes.

#### Objective value

To analyze the A* approach, we compare its objective value (total loaded move
distance for the minimal number of moves) with the exact CP approach. Table 4
shows the number of proven optimally solved instances for each solution
approach. Please note that we only run the CP model if a solution was found by
the A*, because the A* solution serves as an upper bound for the CP model. The
number 20 indicates that all instances for that configuration were solved
proven optimally. If the number of instances for the A* is lower than the
number of optimally solved instances by the CP model, a difference between the
A* objective value and the proven optimal objective value of the CP model is
found. Overall, the CP model found the optimal solution in 1364 instances. The
A* found the same solution in 97.43 % (1329) of these instances. In 35
instances the CP model found an optimal solution that differs from the A*
solution.

The A* can find the proven optimal solution for almost every 3x3 and 4x4 bay
layout configuration that the CP model was able to solve to optimality. Only
for fill percentages of 90 % few suboptimal solutions exist. For 5x5 and 6x6
bay layouts, more instances cannot be optimally solved for 80 % and 90 % fill
percentages by A*. Bay layout and fill percentage have the biggest impact on
the optimality of the A* solution. The warehouse layout has little to no
impact.

| Fill percentages | 40 % | 60 % | 80 % | 90 %
---|---|---|---|---|---
|  | A* | CP | A* | CP | A* | CP | A* | CP
Bay layout | Warehouse layout |  |  |  |  |  |  |  |
3x3 | 2x2 | 20 | 20 | 20 | 20 | 20 | 20 | 18 | 20
| 3x3 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20
| 4x4 | 20 | 20 | 20 | 20 | 20 | 20 | 19 | 20
| 5x5 | 20 | 20 | 20 | 20 | 20 | 20 | 20 | 20
| 6x6 | 20 | 20 | 20 | 20 | 20 | 20 | 18 | 19
| 7x7 | 20 | 20 | 20 | 20 | 20 | 20 | 17 | 17
| 8x8 | 20 | 20 | 20 | 20 | 19 | 19 | 9 | 9
| 9x9 | 20 | 20 | 20 | 20 | 15 | 15 | 9 | 9
| 10x10 | 20 | 20 | 20 | 20 | 8 | 8 | 1 | 1
| 11x11 | 20 | 20 | 20 | 20 | 4 | 4 | 1 | 1
| 12x12 | 10 | 10 | 10 | 10 | 3 | 3 | 1 | 1
4x4 | 2x2 | 20 | 20 | 20 | 20 | 20 | 20 | 18 | 20
| 3x3 | 20 | 20 | 20 | 20 | 20 | 20 | 14 | 19
| 4x4 | 20 | 20 | 20 | 20 | 15 | 15 | 6 | 7
| 5x5 | 20 | 20 | 18 | 19 | 4 | 4 | 0 | 0
| 6x6 | 20 | 20 | 17 | 17 | 1 | 1 | 0 | 0
| 7x7 | 20 | 20 | 12 | 12 | 0 | 0 | 0 | 0
| 8x8 | 20 | 20 | 9 | 9 | 0 | 0 | 0 | 0
5x5 | 2x2 | 20 | 20 | 19 | 20 | 15 | 19 | 6 | 18
| 3x3 | 20 | 20 | 19 | 20 | 2 | 3 | 0 | 0
| 4x4 | 20 | 20 | 8 | 8 | 0 | 0 | 0 | 0
| 5x5 | 20 | 20 | 1 | 1 | 0 | 0 | 0 | 0
| 6x6 | 18 | 18 | 0 | 0 | 0 | 0 | 0 | 0
6x6 | 2x2 | 20 | 20 | 20 | 20 | 3 | 6 | 0 | 0
| 3x3 | 20 | 20 | 2 | 2 | 0 | 0 | 0 | 0
| 4x4 | 15 | 15 | 0 | 0 | 0 | 0 | 0 | 0
| 5x5 | 5 | 5 | 0 | 0 |  |  |  |
| 6x6 | 0 | 0 |  |  |  |  |  |
Table 4: Number of proven optimal solved instances.

Figure 10 shows an overview of the relative difference between the total
loaded move distance in the A* solution and the CP solution if the objective
value differs. A value of 20 % indicates that the loaded move distance of the
A* solution is 20 % longer than the optimal loaded move distance found by the
CP modle. For most layout configurations no or only a few data points exist.
For a 5x5 bay layout and a 2x2 warehouse layout, the A* was not able to find
the loaded move distance optimal solution in overall 19 instances. For this
layout configuration, the mean relative difference of the differing instances
is 17.4 % across all fill percentage groups. The maximum relative difference
for this configuration is 32.6 %.

Figure 10: Relative difference between total loaded move distance of the A*
and CP approach for instances optimally solved by CP.

A closer look into the move sequence of both approaches in comparison explains
why the A* total loaded move distance is not optimal for some instances.
Figure 11 shows the move sequence of the A* (purple) and CP (pink, dotted)
approach in comparison for a 5x5 bay layout, 2x2 warehouse layout, 90 % fill
percentage, and 10 priority classes. Move 1 of the A* is identical to move 2
of the CP approach. The same is true for the moves 2/1, 4/5, and 5/4. The
longer loaded move distance of the A* results from the fact that dependencies
between moves are not taken into account during the search. The A* selects the
shortest moves greedily. However, a shorter move earlier in the sequence can
cause longer distances later in the sequence. For example, the A* performs a
short move 3 that results in a longer distance for move 6 later. A* move 6
causes a greater distance for move 7. The CP model respects these
dependencies, which results in a lower total move distance for the same number
of moves.

Figure 11: Move sequence of A* (purple) and CP (pink, dotted) approach in
comparison for a 5x5 bay layout, 2x2 warehouse layout, 90 % fill percentage
and 10 priority classes

#### Move number and loaded move distance

Figure 12 shows the distribution for the number of moves for five and 10
priority classes in a 5x5 bay layout and 4x4 warehouse layout. For each fill
percentage, the number of moves for 10 priority classes is larger than for
five priority classes. This is because the chance that a unit load is blocking
another unit load increases with the number of priority classes.

Figure 12: Number of moves per fill percentage for each priority class
configuration in a 5x5 bay layout and 4x4 warehouse layout.

For a better understanding, we calculate the mean likelihood that a unit load
is blocking another. We assume that the priority classes are equally
distributed. We sum up the likelihood for each priority class that it is
blocking if it is standing in front of a random unit load in a virtual lane
with a depth of two. Let $\mathcal{P}$ be the set of priority classes and
$\bar{p}$ the maximum priority class $p\in\mathcal{P}$. The mean blockage
likelihood $\mathcal{L}_{\bar{p}}$ is calculated as:

$\mathcal{L}_{\bar{p}}=\frac{1}{\bar{p}}\sum_{p\in\mathcal{P}}\bigg{(}1-\frac{p}{\bar{p}}\bigg{)}$
(5.1)

For five priority classes, the mean likelihood of blocking is
$\mathcal{L}_{5}=$ 40 %. For 10 priority classes, it is $\mathcal{L}_{10}=$ 45
%. The effect of extra blockages decreases as the number of priority groups
increases: $\lim_{{\bar{p}\to\infty}}\mathcal{L}_{\bar{p}}=0.5$.

Figure 13 shows the number of moves and the total loaded move distance for
various fill percentages and layout configurations. Both configurations have
400 slots in total. The combination of a 4x4 bay layout with a 5x5 warehouse
layout requires fewer reshuffling moves than a 5x5 bay layout with a 4x4
warehouse layout. Shallower lanes result in fewer blockages. The total loaded
move distance shows a similar pattern, as the reshuffling move number and
loaded move distance are strongly correlated. Further, the figure displays
that a higher fill percentage results in more reshuffling moves and higher
total loaded move distances. Especially, the step from 80 % to 90 % shows a
substantial increase in the total loaded move distance.

Figure 13: Number of moves and total loaded move distance for two layout
configurations with the same number of slots and 10 priority classes.

Figure 14 presents the mean loaded move distance for instances with a 4x4 bay
layout and 10 priority classes. It shows that the mean loaded move distance
per move increases with the fill percentage. The reason for this is that fewer
repositioning slots are available in close range. Larger warehouse layouts
cause smaller mean loaded move distances because the blocking unit loads are
less likely at the edge of a warehouse. Hence, more potential repositioning
slots are nearby. For a 40 % fill percentage, this effect does not show
because enough open slots are available in the surrounding area of a blocking
unit load.

Figure 14: Mean loaded move distance for instances with 10 priority classes.

##  6 Conclusion

In this work, we extended the UPMP from a single bay to multiple bays. As the
objective, we considered the total loaded move distance for the minimal number
of moves. To solve the problem, we adapted the two-step approach from
Pfrommer, Meyer Tierney (2022) that is based on a network flow model and an A*
tree search procedure. However, given the potential for suboptimal solutions
of the tree search in terms of loaded move distance due to inter-move
dependencies, we devised an alternative strategy proposing an exact CP
approach. In this study, we meticulously evaluated and contrasted the
performance of both approaches.

The experiments show that the A* approach can achieve optimal solutions for
the total loaded move distance in almost all instances that the CP approach
was able to solve optimally while providing a tremendously faster runtime.
Suboptimal solutions were particularly noticeable in instances characterized
by larger bay layouts and high fill levels. At these high fill levels of 80 %
or 90 %, the reduced availability of repositioning options within short
distances heightens the significance of optimizing loaded move distances.
Further, we found that an increase in fill percentage does not necessarily
increase the A* solution time, even though more moves are necessary because of
a reduced branching factor by a smaller number of possible moves. Overall, the
number of reshuffling moves increases with the number of priority classes and
the size of the layout configuration. The bay size has a significantly larger
impact on the number of reshuffling moves than the warehouse size. Hence, it
can be beneficial to split the same number of slots into multiple bays.

Future work should extend the MUPMP to multiple agents. Hence, dispatching
moves to the available AMRs instead of a single-move sequence. The objective
function for multiple agents could focus on the minimization of total travel
time or an evenly distributed workload to minimize the makespan. In addition,
cases in which a lower move distance can be achieved by additional moves
should be discussed. Moreover, exploring the integration of the MUPMP into a
simulation model akin to Pfrommer, Rinciog . (2022), which comprehensively
addresses pertinent operational decision problems Pfrommer Meyer (2020), would
provide valuable insights into the collective effect on warehouse performance.

## References

  * Caserta . (2011) casertaContainerRehandlingMaritime2011Caserta, M., Schwarze, S. Voß, S.  2011\.  Container Rehandling at Maritime Container Terminals Container Rehandling at Maritime Container Terminals.  Handbook of Terminal Planning Handbook of Terminal Planning ( 247–269).
  * Choe . (2015) choe2015craneChoe, R., Kim, TS., Kim, T. Ryu, KR.  2015\.  Crane scheduling for opportunistic remarshaling of containers in an automated stacking yard Crane scheduling for opportunistic remarshaling of containers in an automated stacking yard.  Flexible Services and Manufacturing Journal272331–349.
  * Choe . (2011) choe2011generatingChoe, R., Park, T., Oh, MS., Kang, J. Ryu, KR.  2011\.  Generating a rehandling-free intra-block remarshaling plan for an automated container yard Generating a rehandling-free intra-block remarshaling plan for an automated container yard.  Journal of Intelligent Manufacturing222201–217.
  * Covic (2017) covicRemarshallingAutomatedContainer2017Covic, F.  2017\.  Re-marshalling in automated container yards with terminal appointment systems Re-marshalling in automated container yards with terminal appointment systems.  Flexible Services and Manufacturing Journal293433–503.
  * Jiménez-Piqueras . (2023) jimenez2023constraintJiménez-Piqueras, C., Ruiz, R., Parreño-Torres, C. Alvarez-Valdes, R.  2023\.  A constraint programming approach for the premarshalling problem A constraint programming approach for the premarshalling problem.  European Journal of Operational Research3062668–678.
  * Kang . (2006) kang2006planningKang, J., Oh, MS., Ahn, EY., Ryu, KR. Kim, KH.  2006\.  Planning for intra-block remarshalling in a container terminal Planning for intra-block remarshalling in a container terminal.  International Conference on Industrial, Engineering and Other Applications of Applied Intelligent Systems International conference on industrial, engineering and other applications of applied intelligent systems ( 1211–1220).
  * Kemme (2012) kemme2012designKemme, N.  2012\.  Design and operation of automated container storage systems Design and operation of automated container storage systems.  Springer Science & Business Media.
  * Kim Bae (1998) kim1998reKim, KH. Bae, JW.  1998\.  Re-marshaling export containers in port container terminals Re-marshaling export containers in port container terminals.  Computers & Industrial Engineering353-4655–658.
  * Park . (2009) park2009planningPark, K., Park, T. Ryu, KR.  2009\.  Planning for remarshaling in an automated container terminal using cooperative coevolutionary algorithms Planning for remarshaling in an automated container terminal using cooperative coevolutionary algorithms.  Proceedings of the 2009 ACM symposium on Applied Computing Proceedings of the 2009 acm symposium on applied computing ( 1098–1105).
  * Parreño-Torres . (2022) parreno2022beamParreño-Torres, C., Alvarez-Valdes, R. Parreño, F.  2022\.  A beam search algorithm for minimizing crane times in premarshalling problems A beam search algorithm for minimizing crane times in premarshalling problems.  European Journal of Operational Research.
  * Parreño-Torres . (2020) parreno2020minimizingParreño-Torres, C., Alvarez-Valdes, R., Ruiz, R. Tierney, K.  2020\.  Minimizing crane times in pre-marshalling problems Minimizing crane times in pre-marshalling problems.  Transportation Research Part E: Logistics and Transportation Review137101917.
  * Parreño-Torres . (2019) parreno-torresIntegerProgrammingModels2019Parreño-Torres, C., Alvarez-Valdes, R. Ruiz, R.  2019\.  Integer programming models for the pre-marshalling problem Integer programming models for the pre-marshalling problem.  European Journal of Operational Research2741142–154.
  * Pfrommer Bömer (2024) pfrommerboemer2024dataPfrommer, J. Bömer, T.  2024\.  Multibay unit-load pre-marshalling problem instances Multibay unit-load pre-marshalling problem instances .  https://doi.org/10.5281/zenodo.11093870
  * Pfrommer Meyer (2020) pfrommer2020autonomouslyPfrommer, J. Meyer, A.  2020\.  Autonomously organized block stacking warehouses: A review of decision problems and major challenges Autonomously organized block stacking warehouses: A review of decision problems and major challenges.  Logistics Journal: Proceedings202012.
  * Pfrommer, Meyer Tierney (2022) pfrommer2022solvingPfrommer, J., Meyer, A. Tierney, K.  2022\.  Solving the unit-load pre-marshalling problem in block stacking storage systems with multiple access directions Solving the unit-load pre-marshalling problem in block stacking storage systems with multiple access directions.  arXiv preprint arXiv:2207.09118.
  * Pfrommer, Rinciog . (2022) pfrommer2022slapstackPfrommer, J., Rinciog, A., Zahid, S., Morrissey, M. Meyer, A.  2022\.  SLAPStack: A Simulation Framework and a Large-Scale Benchmark Use Case for Autonomous Block Stacking Warehouses Slapstack: A simulation framework and a large-scale benchmark use case for autonomous block stacking warehouses.  International Conference on Computational Logistics International conference on computational logistics ( 291–305).
  * Tanaka . (2019) tanakaBranchBoundApproach2019Tanaka, S., Tierney, K., Parreño-Torres, C., Alvarez-Valdes, R. Ruiz, R.  2019\.  A branch and bound approach for large pre-marshalling problems A branch and bound approach for large pre-marshalling problems.  European Journal of Operational Research2781211–225.
  * Tierney . (2017) tierneySolvingPremarshallingProblem2017Tierney, K., Pacino, D. Voß, S.  2017\.  Solving the pre-marshalling problem to optimality with A* and IDA* Solving the pre-marshalling problem to optimality with A* and IDA*.  Flexible Services and Manufacturing Journal292223–259.
  * van Asperen . (2013) van2013evaluatingvan Asperen, E., Borgman, B. Dekker, R.  2013\.  Evaluating impact of truck announcements on container stacking efficiency Evaluating impact of truck announcements on container stacking efficiency.  Flexible Services and Manufacturing Journal254543–556.

##  Appendix A Appendix

###  A.1 Complete constraint programming model

In this section, the complete CP model is presented. Let $\bar{s}$ denote the
number of virtual lanes and $\bar{t}$ represent the number of positions in
each virtual lane $s$. Accordingly, $\mathcal{S}=\\{1,...,\bar{s}\\}$ is the
set of virtual lanes and $\mathcal{T}_{s}=\\{1,...,\bar{t}\\}$ is the set of
positions for virtual lane $s\in\mathcal{S}$. A slot ($s$,$t$) is defined by
virtual lane $s\in\mathcal{S}$ and position $t\in\mathcal{T}_{s}$. Let
$d_{s,s^{\prime}}$ be the distance between virtual lane $s\in\mathcal{S}$ and
$s^{\prime}\in\mathcal{S}$. Let $\bar{k}$ be the permissible number of moves
in the model. $\mathcal{K}$ is the set of stages, defined as
$\mathcal{K}=\\{1,...,\bar{k}\\}$. Stage 0 signifies the initial layout.
$\mathcal{K}^{0}=\\{0,1,...,\bar{k}\\}$ is the set of stages, including the
initial layout. Let $\bar{p}$ denote the maximum priority class and let
$\mathcal{P}$ be the set of priority classes
$\mathcal{P}\in\\{1,...,\bar{p}\\}$. An empty slot has the priority class 0.
Further, the variables $x^{k}_{s,t}$, $y^{k}_{s,t}$, $\delta^{k}_{s,t}$,
$z^{k}_{s,t}$, and $w^{k}_{s,t}$ are introduced.

$\displaystyle x^{k}_{s,t}$ $\displaystyle=\begin{cases}0&\text{If the slot
($s$,$t$) is empty during stage $k$}\\\ p&\text{If a unit load with priority
$p$ is placed in slot ($s$,$t$) during stage $k$}\end{cases}$
$\displaystyle\hskip 38.00008pt\forall s\in\mathcal{S},\forall
t\in\mathcal{T}_{s},\forall k\in\mathcal{K}^{0}$ $\displaystyle y^{k}_{s,t}$
$\displaystyle=\begin{cases}1&\text{If a unit load is moved to slot ($s$,$t$)
during stage $k$ }\\\ 0&\text{Otherwise}\end{cases}$ $\displaystyle\hskip
38.00008pt\forall s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall
k\in\mathcal{K}$ $\displaystyle\delta^{k}_{s,t}$
$\displaystyle=\begin{cases}1&\text{If there is a unit load in slot ($s$,$t$)
is empty during stage $k$}\\\ 0&\text{If a slot ($s$,$t$) is empty during
stage $k$}\end{cases}$ $\displaystyle\hskip 38.00008pt\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}^{0}$
$\displaystyle z^{k}_{s,t}$ $\displaystyle=\begin{cases}1&\text{If a unit load
is removed from slot ($s$,$t$) during stage $k$}\\\
0&\text{Otherwise}\end{cases}$ $\displaystyle\hskip 38.00008pt\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}$
$\displaystyle w^{k}_{s,t}$ $\displaystyle=\begin{cases}1&\text{If there is a
blocking unit load in slot ($s$,$t$) during stage $k$}\\\
0&\text{Otherwise}\end{cases}$ $\displaystyle\hskip 38.00008pt\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}$

$\displaystyle
min\displaystyle\sum_{k\in\mathcal{K}}\displaystyle\sum_{s\in\mathcal{S}}\displaystyle\sum_{s^{\prime}\in\mathcal{S}}\displaystyle\sum_{t\in\mathcal{T}_{s}}\displaystyle\sum_{t^{\prime}\in\mathcal{T}_{s^{\prime}}}z^{k}_{s,t}\cdot
y^{k}_{s^{\prime},t^{\prime}}\cdot d_{s,s^{\prime}}$ (A.1) Subject to:
$\displaystyle x_{s,t}^{0}=f_{s,t}\quad$ $\displaystyle\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s}$ (A.2)
$\displaystyle|\\{x^{k}_{s,t}:s\in\mathcal{S},t\in\mathcal{T}_{s},x^{k}_{s,t}=p\\}|=m_{p}\quad$
$\displaystyle p\in\mathcal{P}^{0},k\in\mathcal{K}$ (A.3)
$\displaystyle\displaystyle\sum_{s\in\mathcal{S}}\displaystyle\sum_{t\in\mathcal{T}_{s}}y^{k}_{s,t}=1\quad$
$\displaystyle\forall k\in\mathcal{K}$ (A.4) $\displaystyle
x^{k}_{s,t}\leq\bar{p}\cdot\delta^{k}_{s,t}$ $\displaystyle\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}^{0}$ (A.5)
$\displaystyle\delta^{k}_{s,t}\leq x^{k}_{s,t}$ $\displaystyle\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}^{0}$ (A.6)
$\displaystyle x^{k-1}_{s,t}\leq x^{k}_{s,t}+\bar{p}\,(1-\delta^{k}_{s,t})$
$\displaystyle\forall s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall
k\in\mathcal{K}$ (A.7) $\displaystyle x^{k}_{s,t}\leq
x^{k-1}_{s,t}+\bar{p}\,(1-\delta^{k-1}_{s,t})$ $\displaystyle\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}$ (A.8)
$\displaystyle y^{k}_{s,1}+\delta^{k-1}_{s,1}\leq 1$ $\displaystyle\forall
s\in\mathcal{S},\forall k\in\mathcal{K}$ (A.9) $\displaystyle
y^{k}_{s,t}\leq\delta^{k+1}_{s,t}$ $\displaystyle\forall
s\in\mathcal{S},\forall t\in\mathcal{T},\forall
k\in\mathcal{K}\,\backslash\,\\{\bar{k}\\}$ (A.10)
$\displaystyle\displaystyle\sum_{s\in\mathcal{S}}\displaystyle\sum_{t\in\mathcal{T}_{s}}z^{k}_{s,t}=1\quad$
$\displaystyle\forall k\in\mathcal{K}$ (A.11)
$\displaystyle\delta^{k}_{s,t}+z^{k}_{s,t}=y^{k}_{s,t}+\delta^{k-1}_{s,t}$
$\displaystyle\forall s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall
k\in\mathcal{K}$ (A.12) $\displaystyle
y^{k}_{s,t+1}+\delta^{k-1}_{s,t+1}+z^{k}_{s,t}\leq\delta^{k-1}_{s,t}$
$\displaystyle\forall s\in\mathcal{S},\forall
t\in\mathcal{T}_{s}\,\backslash\,\\{\bar{t}\\},\forall k\in\mathcal{K}$ (A.13)
$\displaystyle
z^{k+1}_{s,\bar{t}}+y^{k}_{s,\bar{t}}\leq\delta^{k}_{s,\bar{t}}$
$\displaystyle\forall s\in\mathcal{S},\forall
k\in\mathcal{K}\,\backslash\,\\{\bar{k}\\}$ (A.14) $\displaystyle
z^{1}_{s,\bar{t}}\leq\delta^{0}_{s,\bar{t}}$ $\displaystyle\forall
s\in\mathcal{S}$ (A.15)
$\displaystyle\displaystyle\sum_{t\in\mathcal{T}_{s}}y^{k}_{s,t}+\displaystyle\sum_{t\in\mathcal{T}_{s}}z^{k+1}_{s,t}\leq
1$ $\displaystyle\forall s\in\mathcal{S},\forall
k\in\mathcal{K}\,\backslash\,\\{\bar{k}\\}$ (A.16) $\displaystyle
x^{k}_{s,t+1}\leq x^{k}_{s,t}+\bar{p}\cdot w^{k}_{s,t+1}$
$\displaystyle\forall s\in\mathcal{S},\forall
t\in\mathcal{T}_{s}\,\backslash\,\\{\bar{t}\\},\forall k\in\mathcal{K}$ (A.17)
$\displaystyle w^{k}_{s,t}+\delta^{k}_{s,t+1}\leq w^{k}_{s,t+1}+1$
$\displaystyle\forall s\in\mathcal{S},\forall
t\in\mathcal{T}_{s}\,\backslash\,\\{\bar{t}\\},\forall k\in\mathcal{K}$ (A.18)
$\displaystyle w^{k}_{s,t}\leq\delta^{k}_{s,t}$ $\displaystyle\forall
s\in\mathcal{S},\forall t\in\mathcal{T}_{s},\forall k\in\mathcal{K}$ (A.19)
$\displaystyle w^{k}_{s,1}=0$ $\displaystyle\forall s\in\mathcal{S},\forall
k\in\mathcal{K}$ (A.20) $\displaystyle x^{k}_{s,t}+1\leq
x^{k}_{s,t+1}+(\bar{p}+1)\cdot(1-w^{k}_{s,t+1}+w^{k}_{s,t})$
$\displaystyle\forall s\in\mathcal{S},\forall
t\in\mathcal{T}_{s}\,\backslash\,\\{\bar{t}\\},\forall k\in\mathcal{K}$ (A.21)
$\displaystyle\displaystyle\sum_{s\in\mathcal{S}}\displaystyle\sum_{t\in\mathcal{T}_{s}}w^{k}_{s,t}+k\leq\bar{k}$
$\displaystyle\forall k\in\mathcal{K}$ (A.22)
$\displaystyle\displaystyle\sum_{k\in\mathcal{K}}\displaystyle\sum_{s\in\mathcal{S}}\displaystyle\sum_{s^{\prime}\in\mathcal{S}}\displaystyle\sum_{t\in\mathcal{T}_{s}}\displaystyle\sum_{t^{\prime}\in\mathcal{T}_{s^{\prime}}}z^{k}_{s,t}\cdot
y^{k}_{s^{\prime},t^{\prime}}\cdot d_{s,s^{\prime}}\leq c^{UB}$ (A.23)

The objective function (A.1) minimizes the total loaded move distance.
Constraints (A.2) assign the initial layout to the virtual lanes of the
warehouse. Constraints (A.3) ensure that the number of unit loads per priority
group and the number of empty slots stays consistent for each stage. The
number of moves per stage is restricted to one by constraints (A.4).
Constraints (A.5) and (A.6) link the variables $x^{k}_{s,t}$ and
$\delta^{k}_{s,t}$. $\delta^{k}_{s,t}$ is 0 if $x^{k}_{s,t}$ is 0, else
$\delta^{k}_{s,t}$ is 1. Unit loads that are not moved are fixed to their
position by constraints (A.7) and (A.8). Constraints (A.9) impose that a unit
load can only be moved to a slot that was empty in the previous stage.
Constraints (A.10) prevent the unit loads from being moved in two consecutive
stages because the two moves could have been performed in one move. This rule
is also called ”transitive move avoidance” (Tierney ., 2017). Constraints
(A.11) set the number of unit loads removed from the virtual lanes to 1 for
each stage. Constrains (A.12) make sure that if a unit load is in a slot. It
has been there in the previous stage or was moved there in the current stage.
(A.13) impose that a unit load can be removed from a certain slot in a stage
$k$ only if the respective slot was occupied and the slot in front ($s,t+1$)
was empty during the previous stage. Constraints (A.14) impose that a unit
load can only be moved to a slot ($s,t$) that was empty during the previous
stage. It also requires that the slot ($s,t-1$) was occupied. Constraints
(A.15) do the same for the first stage. Constraints (A.16) impose that when a
unit load is moved to a certain virtual lane, no unit load can be removed from
that virtual lane in the next stage. Constraints (A.17) express that a unit
load that is in front of another unit load with a higher priority class is a
blocking unit load. Constraints (A.18) require that if there is a blocking
unit load on slot ($s,t$) and slot ($s,t+1$) is occupied, there is also a
blocking unit load on slot ($s,t+1$). Constraints (A.19) impose that empty
slots can not be blocking. Constraints (A.20) define that the first position
of a virtual lane is never blocking because access is always granted.
Constraints (A.21) determine that if there is no blocking unit load in slot
($s,t$) and there is no higher priority unit load in the slot in front of it,
then there is no blocking unit load in slot ($s,t+1$). Constraints (A.22)
impose that the number of blocking unit loads at each stage cannot be greater
than the number of blocking unit loads in the following stages. Constraint
(A.23) limits the total loaded move distance to the objective value of the A*
algorithm.

###  A.2 Detailed Results for A*

Layout | Fill % | Priority | Number | Number | Mean | Mean | Mean (solved) | Mean (all) | Mean (all)
---|---|---|---|---|---|---|---|---|---
(Bay-Warehouse) |  | classes | solved | optimal | moves | distance | total runtime [s] | total runtime [s] | evaluated nodes
3x3-2x2 | 40% | 5 | 10 | 10 | 0 | 0 | 0.19 | 0.19 | 0
3x3-2x2 | 40% | 10 | 10 | 10 | 0 | 0 | 0.19 | 0.19 | 0
3x3-2x2 | 60% | 5 | 10 | 10 | 0.1 | 0.3 | 0.18 | 0.18 | 26.50
3x3-2x2 | 60% | 10 | 10 | 10 | 0.1 | 0.3 | 0.17 | 0.17 | 26.50
3x3-2x2 | 80% | 5 | 10 | 10 | 0.1 | 0.4 | 0.18 | 0.18 | 18.70
3x3-2x2 | 80% | 10 | 10 | 10 | 0.2 | 0.7 | 0.17 | 0.17 | 36.80
3x3-2x2 | 90% | 5 | 10 | 9 | 0.6 | 3.3 | 0.19 | 0.19 | 68.90
3x3-2x2 | 90% | 10 | 10 | 9 | 0.5 | 2.9 | 0.18 | 0.18 | 57.10
3x3-3x3 | 40% | 5 | 10 | 10 | 0 | 0 | 0.44 | 0.44 | 0
3x3-3x3 | 40% | 10 | 10 | 10 | 0 | 0 | 0.44 | 0.44 | 0
3x3-3x3 | 60% | 5 | 10 | 10 | 0.3 | 1 | 0.45 | 0.45 | 412.60
3x3-3x3 | 60% | 10 | 10 | 10 | 0.3 | 1 | 0.45 | 0.45 | 412.60
3x3-3x3 | 80% | 5 | 10 | 10 | 0.3 | 1.2 | 0.44 | 0.44 | 274.60
3x3-3x3 | 80% | 10 | 10 | 10 | 0.4 | 1.5 | 0.45 | 0.45 | 370.20
3x3-3x3 | 90% | 5 | 10 | 10 | 1.3 | 6.3 | 0.49 | 0.49 | 670.30
3x3-3x3 | 90% | 10 | 10 | 10 | 1.4 | 6.9 | 0.49 | 0.49 | 724.30
3x3-4x4 | 40% | 5 | 10 | 10 | 0 | 0 | 0.88 | 0.88 | 0
3x3-4x4 | 40% | 10 | 10 | 10 | 0 | 0 | 0.87 | 0.87 | 0
3x3-4x4 | 60% | 5 | 10 | 10 | 0.2 | 0.6 | 0.92 | 0.92 | 890
3x3-4x4 | 60% | 10 | 10 | 10 | 0.3 | 0.9 | 0.94 | 0.94 | 1324.40
3x3-4x4 | 80% | 5 | 10 | 10 | 0.7 | 2.4 | 1.02 | 1.02 | 2077.40
3x3-4x4 | 80% | 10 | 10 | 10 | 1.1 | 3.4 | 1.13 | 1.13 | 3318.20
3x3-4x4 | 90% | 5 | 10 | 9 | 1.5 | 9.1 | 1.07 | 1.07 | 2446.70
3x3-4x4 | 90% | 10 | 10 | 10 | 1.8 | 10.1 | 1.1 | 1.10 | 2939.80
3x3-5x5 | 40% | 5 | 10 | 10 | 0 | 0 | 1.57 | 1.57 | 0
3x3-5x5 | 40% | 10 | 10 | 10 | 0 | 0 | 1.56 | 1.56 | 0
3x3-5x5 | 60% | 5 | 10 | 10 | 0.2 | 0.6 | 1.69 | 1.69 | 2172.60
3x3-5x5 | 60% | 10 | 10 | 10 | 0.2 | 0.6 | 1.69 | 1.69 | 2181.20
3x3-5x5 | 80% | 5 | 10 | 10 | 1 | 3.9 | 2.17 | 2.17 | 7156.80
3x3-5x5 | 80% | 10 | 10 | 10 | 1.4 | 5 | 2.47 | 2.47 | 10127.90
3x3-5x5 | 90% | 5 | 10 | 10 | 2.3 | 11.3 | 2.38 | 2.38 | 9170.30
3x3-5x5 | 90% | 10 | 10 | 10 | 2.9 | 14.3 | 2.61 | 2.61 | 11519.60
3x3-6x6 | 40% | 5 | 10 | 10 | 0 | 0 | 2.61 | 2.61 | 0
3x3-6x6 | 40% | 10 | 10 | 10 | 0 | 0 | 2.58 | 2.58 | 0
3x3-6x6 | 60% | 5 | 10 | 10 | 0.2 | 0.2 | 2.97 | 2.97 | 4526.10
3x3-6x6 | 60% | 10 | 10 | 10 | 0.3 | 0.3 | 3.2 | 3.20 | 6770.30
3x3-6x6 | 80% | 5 | 10 | 10 | 1.6 | 5.1 | 4.97 | 4.97 | 24022.30
3x3-6x6 | 80% | 10 | 10 | 10 | 2.2 | 6.9 | 6.14 | 6.14 | 33202.50
3x3-6x6 | 90% | 5 | 10 | 10 | 2.4 | 11.9 | 4.58 | 4.58 | 19762.90
3x3-6x6 | 90% | 10 | 10 | 8 | 3.4 | 17.8 | 5.59 | 5.59 | 28070.70
3x3-7x7 | 40% | 5 | 10 | 10 | 0 | 0 | 4.07 | 4.07 | 0
3x3-7x7 | 40% | 10 | 10 | 10 | 0 | 0 | 4.03 | 4.03 | 0
3x3-7x7 | 60% | 5 | 10 | 10 | 0.6 | 1.6 | 6.95 | 6.95 | 24955.50
3x3-7x7 | 60% | 10 | 10 | 10 | 0.5 | 1.5 | 6.5 | 6.50 | 20901.70
3x3-7x7 | 80% | 5 | 10 | 10 | 2 | 6.8 | 10.52 | 10.52 | 55077.20
3x3-7x7 | 80% | 10 | 10 | 10 | 2.4 | 7.6 | 12.32 | 12.32 | 66775.80
3x3-7x7 | 90% | 5 | 10 | 10 | 3.1 | 16.2 | 9.77 | 9.77 | 47855.10
3x3-7x7 | 90% | 10 | 10 | 7 | 4.8 | 26 | 13.17 | 13.17 | 74456.70
3x3-8x8 | 40% | 5 | 10 | 10 | 0 | 0 | 6.17 | 6.17 | 0
3x3-8x8 | 40% | 10 | 10 | 10 | 0 | 0 | 6.1 | 6.10 | 0
3x3-8x8 | 60% | 5 | 10 | 10 | 0.4 | 0.8 | 9.82 | 9.82 | 28259.30
3x3-8x8 | 60% | 10 | 10 | 10 | 0.6 | 1.5 | 12.19 | 12.19 | 42748.20
3x3-8x8 | 80% | 5 | 10 | 10 | 2.6 | 8.6 | 22.57 | 22.57 | 122547.40
3x3-8x8 | 80% | 10 | 10 | 9 | 3.4 | 10.9 | 28.81 | 28.81 | 161588.10
3x3-8x8 | 90% | 5 | 10 | 5 | 4.4 | 21.9 | 22.13 | 22.13 | 117164.20
3x3-8x8 | 90% | 10 | 10 | 4 | 6.3 | 30.6 | 30.36 | 30.36 | 168428.00
3x3-9x9 | 40% | 5 | 10 | 10 | 0 | 0 | 8.98 | 8.98 | 0
3x3-9x9 | 40% | 10 | 10 | 10 | 0 | 0 | 8.89 | 8.89 | 0
3x3-9x9 | 60% | 5 | 10 | 10 | 0.7 | 2 | 21.23 | 21.23 | 79208.10
3x3-9x9 | 60% | 10 | 10 | 10 | 1.3 | 3.8 | 32.8 | 32.80 | 148341.30
3x3-9x9 | 80% | 5 | 10 | 9 | 4 | 13.2 | 57.04 | 57.04 | 302799.20
3x3-9x9 | 80% | 10 | 10 | 6 | 5.1 | 16.4 | 73.03 | 73.03 | 389257.90
3x3-9x9 | 90% | 5 | 10 | 5 | 5.2 | 22 | 43.63 | 43.63 | 221346.80
3x3-9x9 | 90% | 10 | 10 | 4 | 7.8 | 33.4 | 62.57 | 62.57 | 333319.70
3x3-10x10 | 40% | 5 | 10 | 10 | 0 | 0 | 12.74 | 12.74 | 0
3x3-10x10 | 40% | 10 | 10 | 10 | 0 | 0 | 12.6 | 12.60 | 0
3x3-10x10 | 60% | 5 | 10 | 10 | 1.1 | 3.3 | 46.56 | 46.56 | 189601.20
3x3-10x10 | 60% | 10 | 10 | 10 | 1.5 | 4.2 | 61.78 | 61.78 | 261124.70
3x3-10x10 | 80% | 5 | 10 | 5 | 5.2 | 17.3 | 120.22 | 120.22 | 599225.80
3x3-10x10 | 80% | 10 | 10 | 3 | 6.3 | 21.3 | 151.67 | 151.67 | 731393.00
3x3-10x10 | 90% | 5 | 10 | 1 | 7.4 | 33.5 | 98.1 | 98.10 | 482019.00
3x3-10x10 | 90% | 10 | 10 | 0 | 10.3 | 49 | 139.47 | 139.47 | 673714.80
3x3-11x11 | 40% | 5 | 10 | 10 | 0 | 0 | 17.68 | 17.68 | 0
3x3-11x11 | 40% | 10 | 10 | 10 | 0 | 0 | 17.42 | 17.42 | 0
3x3-11x11 | 60% | 5 | 10 | 10 | 0.9 | 1.5 | 64.44 | 64.44 | 227332.80
3x3-11x11 | 60% | 10 | 10 | 10 | 1.5 | 3.2 | 96.08 | 96.08 | 381905.20
3x3-11x11 | 80% | 5 | 10 | 3 | 5.8 | 19.6 | 225.66 | 225.66 | 981061.40
3x3-11x11 | 80% | 10 | 10 | 1 | 7.3 | 25.4 | 277.2 | 277.20 | 1244995.00
3x3-11x11 | 90% | 5 | 10 | 1 | 8.3 | 37.2 | 183.35 | 183.35 | 791859.00
3x3-11x11 | 90% | 10 | 10 | 0 | 11.7 | 53.3 | 250.88 | 250.88 | 1121264.80
3x3-12x12 | 40% | 5 | 10 | 10 | 0 | 0 | 23.82 | 23.82 | 0
3x3-12x12 | 40% | 10 | 10 | 0 | 0 | 0 | 23.61 | 23.61 | 0
3x3-12x12 | 60% | 5 | 10 | 10 | 1.2 | 3.3 | 123.81 | 123.81 | 427072.60
3x3-12x12 | 60% | 10 | 10 | 0 | 1.9 | 5.4 | 182.69 | 182.69 | 683436.70
3x3-12x12 | 80% | 5 | 9 | 3 | 6.11 | 21.33 | 375.64 | 404.01 | 1576710.10
3x3-12x12 | 80% | 10 | 8 | 0 | 7.38 | 26.12 | 441.62 | 484.71 | 1950353.70
3x3-12x12 | 90% | 5 | 10 | 1 | 9.2 | 43 | 319.42 | 319.42 | 1242832.90
3x3-12x12 | 90% | 10 | 10 | 0 | 13.3 | 62.8 | 447.59 | 447.59 | 1803927.20
4x4-2x2 | 40% | 5 | 10 | 10 | 0.2 | 0.2 | 0.45 | 0.45 | 140.50
4x4-2x2 | 40% | 10 | 10 | 10 | 0.2 | 0.2 | 0.44 | 0.44 | 143.60
4x4-2x2 | 60% | 5 | 10 | 10 | 0.1 | 0.1 | 0.4 | 0.40 | 74.30
4x4-2x2 | 60% | 10 | 10 | 10 | 0.3 | 1.1 | 0.4 | 0.40 | 225.40
4x4-2x2 | 80% | 5 | 10 | 10 | 1.6 | 4.7 | 0.48 | 0.48 | 765.80
4x4-2x2 | 80% | 10 | 10 | 10 | 2.3 | 9 | 0.52 | 0.52 | 1113.00
4x4-2x2 | 90% | 5 | 10 | 9 | 1.7 | 10.6 | 0.46 | 0.46 | 431.90
4x4-2x2 | 90% | 10 | 10 | 9 | 2.2 | 14.1 | 0.46 | 0.46 | 577.10
4x4-3x3 | 40% | 5 | 10 | 10 | 0.5 | 0.5 | 1.21 | 1.21 | 1824.80
4x4-3x3 | 40% | 10 | 10 | 10 | 0.5 | 0.5 | 1.2 | 1.20 | 1845.50
4x4-3x3 | 60% | 5 | 10 | 10 | 0.9 | 1.6 | 1.28 | 1.28 | 3362.40
4x4-3x3 | 60% | 10 | 10 | 10 | 1.2 | 2.5 | 1.36 | 1.36 | 4488.90
4x4-3x3 | 80% | 5 | 10 | 10 | 3 | 9 | 1.65 | 1.65 | 7370.80
4x4-3x3 | 80% | 10 | 10 | 10 | 4.3 | 11.8 | 1.98 | 1.98 | 10582.70
4x4-3x3 | 90% | 5 | 10 | 7 | 4.2 | 21.7 | 1.54 | 1.54 | 5790.30
4x4-3x3 | 90% | 10 | 10 | 7 | 5.6 | 25.9 | 1.74 | 1.74 | 7738.40
4x4-4x4 | 40% | 5 | 10 | 10 | 0.5 | 0.5 | 2.59 | 2.59 | 5733.80
4x4-4x4 | 40% | 10 | 10 | 10 | 0.6 | 0.7 | 2.73 | 2.73 | 7010
4x4-4x4 | 60% | 5 | 10 | 10 | 2.1 | 3.3 | 4.57 | 4.57 | 24637.80
4x4-4x4 | 60% | 10 | 10 | 10 | 2.5 | 4.5 | 5.12 | 5.12 | 29887.30
4x4-4x4 | 80% | 5 | 10 | 8 | 4.3 | 13.2 | 5.46 | 5.46 | 33630.40
4x4-4x4 | 80% | 10 | 10 | 7 | 5.6 | 17.8 | 6.7 | 6.70 | 44190.50
4x4-4x4 | 90% | 5 | 10 | 4 | 6.8 | 32.4 | 5.29 | 5.29 | 31007.10
4x4-4x4 | 90% | 10 | 10 | 2 | 8.5 | 42.3 | 6.18 | 6.18 | 38524.00
4x4-5x5 | 40% | 5 | 10 | 10 | 0.9 | 0.9 | 6.59 | 6.59 | 25710.90
4x4-5x5 | 40% | 10 | 10 | 10 | 1.1 | 1.4 | 7.49 | 7.49 | 31678.50
4x4-5x5 | 60% | 5 | 10 | 10 | 3.2 | 5.3 | 14.61 | 14.61 | 92090.40
4x4-5x5 | 60% | 10 | 10 | 8 | 3.7 | 6.3 | 17.11 | 17.11 | 107858.60
4x4-5x5 | 80% | 5 | 10 | 2 | 7.7 | 21.8 | 21.52 | 21.52 | 148077.00
4x4-5x5 | 80% | 10 | 10 | 2 | 9.8 | 27.2 | 28.82 | 28.82 | 190096.30
4x4-5x5 | 90% | 5 | 10 | 0 | 11.4 | 52.5 | 18.73 | 18.73 | 124148.00
4x4-5x5 | 90% | 10 | 10 | 0 | 13.5 | 62.1 | 22.56 | 22.56 | 146985.60
4x4-6x6 | 40% | 5 | 10 | 10 | 0.9 | 1.4 | 13.05 | 13.05 | 53388.10
4x4-6x6 | 40% | 10 | 10 | 10 | 1.1 | 1.7 | 15.59 | 15.59 | 65781.70
4x4-6x6 | 60% | 5 | 10 | 9 | 3.9 | 5.9 | 38.97 | 38.97 | 231822.10
4x4-6x6 | 60% | 10 | 10 | 8 | 4.7 | 8.3 | 48.73 | 48.73 | 282370.50
4x4-6x6 | 80% | 5 | 10 | 1 | 10.8 | 32.5 | 67.87 | 67.87 | 429111.60
4x4-6x6 | 80% | 10 | 10 | 0 | 14.5 | 40.7 | 95 | 95.00 | 581696.30
4x4-6x6 | 90% | 5 | 10 | 0 | 15.7 | 71 | 58.2 | 58.20 | 358401.80
4x4-6x6 | 90% | 10 | 10 | 0 | 18.9 | 88.6 | 71.56 | 71.56 | 430959.40
4x4-7x7 | 40% | 5 | 10 | 10 | 1.2 | 1.3 | 30.99 | 30.99 | 131013.60
4x4-7x7 | 40% | 10 | 10 | 10 | 1.6 | 1.7 | 39.83 | 39.83 | 176378.10
4x4-7x7 | 60% | 5 | 10 | 7 | 5.9 | 10.9 | 121.01 | 121.01 | 644435.70
4x4-7x7 | 60% | 10 | 10 | 5 | 7.5 | 14.2 | 162.66 | 162.66 | 830804.90
4x4-7x7 | 80% | 5 | 10 | 0 | 13.4 | 35.7 | 183.59 | 183.59 | 985488.20
4x4-7x7 | 80% | 10 | 10 | 0 | 18 | 46.4 | 257.77 | 257.77 | 1335510
4x4-7x7 | 90% | 5 | 10 | 0 | 20.8 | 91.2 | 163 | 163.00 | 869454.60
4x4-7x7 | 90% | 10 | 10 | 0 | 26.6 | 125.5 | 213.88 | 213.88 | 1114507.90
4x4-8x8 | 40% | 5 | 10 | 10 | 1.3 | 2.1 | 60.29 | 60.29 | 242777.50
4x4-8x8 | 40% | 10 | 10 | 10 | 1.5 | 2.4 | 72.8 | 72.80 | 283148.40
4x4-8x8 | 60% | 5 | 10 | 6 | 7.9 | 12.2 | 315.95 | 315.95 | 1471892.00
4x4-8x8 | 60% | 10 | 9 | 3 | 9.22 | 14.22 | 385.38 | 409.41 | 1830648.00
4x4-8x8 | 80% | 5 | 10 | 0 | 17 | 47.7 | 455.63 | 455.63 | 2136719.20
4x4-8x8 | 80% | 10 | 3 | 0 | 17 | 39 | 480.73 | 588.24 | 2658906.30
4x4-8x8 | 90% | 5 | 10 | 0 | 28.4 | 134 | 429.52 | 429.52 | 2013887.50
4x4-8x8 | 90% | 10 | 9 | 0 | 35.44 | 170.11 | 551.01 | 558.03 | 2541578.90
5x5-2x2 | 40% | 5 | 10 | 10 | 0.2 | 0.2 | 1.19 | 1.19 | 279.00
5x5-2x2 | 40% | 10 | 10 | 10 | 0.1 | 0.1 | 1.06 | 1.06 | 143.90
5x5-2x2 | 60% | 5 | 10 | 10 | 1.4 | 2 | 1.13 | 1.13 | 2062.30
5x5-2x2 | 60% | 10 | 10 | 9 | 1.9 | 3 | 1.18 | 1.18 | 2894.70
5x5-2x2 | 80% | 5 | 10 | 8 | 4.8 | 16.9 | 1.46 | 1.46 | 4931.40
5x5-2x2 | 80% | 10 | 10 | 7 | 5.6 | 20.2 | 1.52 | 1.52 | 5791.50
5x5-2x2 | 90% | 5 | 10 | 3 | 6.3 | 40.4 | 1.87 | 1.87 | 3633.20
5x5-2x2 | 90% | 10 | 10 | 3 | 6.5 | 42.7 | 1.71 | 1.71 | 3811.30
5x5-3x3 | 40% | 5 | 10 | 10 | 0.8 | 1.4 | 3.25 | 3.25 | 5887.10
5x5-3x3 | 40% | 10 | 10 | 10 | 0.9 | 1.5 | 3.19 | 3.19 | 6911.80
5x5-3x3 | 60% | 5 | 10 | 9 | 4 | 5.6 | 5.44 | 5.44 | 30512.20
5x5-3x3 | 60% | 10 | 10 | 10 | 5.1 | 8 | 6.38 | 6.38 | 39562.40
5x5-3x3 | 80% | 5 | 10 | 2 | 9.3 | 28.3 | 7.64 | 7.64 | 48149.60
5x5-3x3 | 80% | 10 | 10 | 0 | 11 | 35.5 | 8.73 | 8.73 | 57883.80
5x5-3x3 | 90% | 5 | 10 | 0 | 12.9 | 78.6 | 7.16 | 7.16 | 36873.70
5x5-3x3 | 90% | 10 | 10 | 0 | 15 | 103.6 | 11.08 | 11.08 | 43014.20
5x5-4x4 | 40% | 5 | 10 | 10 | 1.6 | 2 | 9.56 | 9.56 | 38372.20
5x5-4x4 | 40% | 10 | 10 | 10 | 2 | 2.4 | 11.11 | 11.11 | 49292.20
5x5-4x4 | 60% | 5 | 10 | 7 | 6.4 | 10.4 | 23.81 | 23.81 | 154610
5x5-4x4 | 60% | 10 | 10 | 1 | 8.3 | 14.9 | 31.43 | 31.43 | 204025.80
5x5-4x4 | 80% | 5 | 10 | 0 | 16.4 | 49.6 | 39.64 | 39.64 | 269769.20
5x5-4x4 | 80% | 10 | 10 | 0 | 19.3 | 63.1 | 48.41 | 48.41 | 318932.60
5x5-4x4 | 90% | 5 | 10 | 0 | 22.3 | 129.3 | 32.29 | 32.29 | 203788.00
5x5-4x4 | 90% | 10 | 9 | 0 | 25.67 | 202.11 | 46.82 | 105.66 | 223789.70
5x5-5x5 | 40% | 5 | 10 | 10 | 2.6 | 2.9 | 31.58 | 31.58 | 152807.90
5x5-5x5 | 40% | 10 | 10 | 10 | 3.2 | 3.7 | 39.27 | 39.27 | 193354.70
5x5-5x5 | 60% | 5 | 10 | 1 | 10 | 14.8 | 101.65 | 101.65 | 587673.70
5x5-5x5 | 60% | 10 | 10 | 0 | 12.1 | 20.6 | 126.81 | 126.81 | 723945.20
5x5-5x5 | 80% | 5 | 10 | 0 | 25.9 | 74.9 | 179.58 | 179.58 | 1034880.90
5x5-5x5 | 80% | 10 | 10 | 0 | 30.4 | 92.2 | 216.08 | 216.08 | 1229095.20
5x5-5x5 | 90% | 5 | 10 | 0 | 34 | 222.2 | 140.45 | 140.45 | 756237.40
5x5-5x5 | 90% | 10 | 10 | 0 | 40 | 320.2 | 214.51 | 214.51 | 892873.00
5x5-6x6 | 40% | 5 | 10 | 9 | 4.5 | 5.9 | 119.25 | 119.25 | 554191.00
5x5-6x6 | 40% | 10 | 10 | 9 | 5 | 6.1 | 139.05 | 139.05 | 629140.20
5x5-6x6 | 60% | 5 | 10 | 0 | 14.4 | 21.8 | 358.22 | 358.22 | 1764740.10
5x5-6x6 | 60% | 10 | 10 | 0 | 17.5 | 28.4 | 455.78 | 455.78 | 2165744.20
5x5-6x6 | 80% | 5 | 5 | 0 | 33.4 | 95.8 | 554.65 | 591.85 | 2936941.50
5x5-6x6 | 80% | 10 | 0 | 0 | - | - | - | 629.84 | 2978653.50
5x5-6x6 | 90% | 5 | 10 | 0 | 49.9 | 294.6 | 474.75 | 474.75 | 2321518.40
5x5-6x6 | 90% | 10 | 4 | 0 | 55 | 398.75 | 558.31 | 599.97 | 2474100.70
6x6-2x2 | 40% | 5 | 10 | 10 | 1.3 | 1.6 | 3.73 | 3.73 | 3524.90
6x6-2x2 | 40% | 10 | 10 | 10 | 1.8 | 1.9 | 3.62 | 3.62 | 4814.50
6x6-2x2 | 60% | 5 | 10 | 10 | 3.8 | 6.1 | 3.98 | 3.98 | 10097.90
6x6-2x2 | 60% | 10 | 10 | 10 | 4.1 | 7.2 | 3.77 | 3.77 | 11035.50
6x6-2x2 | 80% | 5 | 10 | 3 | 9 | 30.8 | 5.21 | 5.21 | 16101.90
6x6-2x2 | 80% | 10 | 10 | 0 | 10 | 38.4 | 4.72 | 4.72 | 18053.00
6x6-2x2 | 90% | 5 | 9 | 0 | 15.22 | 109.22 | 32.38 | 89.70 | 53779.20
6x6-2x2 | 90% | 10 | 10 | 0 | 17.8 | 134.9 | 28.51 | 28.51 | 17581.10
6x6-3x3 | 40% | 5 | 10 | 10 | 2.5 | 3 | 11.58 | 11.58 | 34221.90
6x6-3x3 | 40% | 10 | 10 | 10 | 3.4 | 3.6 | 12.56 | 12.56 | 46321.70
6x6-3x3 | 60% | 5 | 10 | 1 | 9.2 | 14.9 | 22.48 | 22.48 | 125896.90
6x6-3x3 | 60% | 10 | 10 | 1 | 10.7 | 17.9 | 25.15 | 25.15 | 147818.40
6x6-3x3 | 80% | 5 | 10 | 0 | 21.4 | 76.7 | 32.22 | 32.22 | 196502.70
6x6-3x3 | 80% | 10 | 10 | 0 | 23.6 | 90.6 | 36.14 | 36.14 | 217582.90
6x6-3x3 | 90% | 5 | 7 | 0 | 29.86 | 243.14 | 128.16 | 275.12 | 143359.60
6x6-3x3 | 90% | 10 | 7 | 0 | 34.71 | 309.57 | 240.95 | 354.19 | 161045.90
6x6-4x4 | 40% | 5 | 10 | 8 | 5.2 | 6.3 | 49.28 | 49.28 | 225499.70
6x6-4x4 | 40% | 10 | 10 | 7 | 6.6 | 8.3 | 60.31 | 60.31 | 289254.70
6x6-4x4 | 60% | 5 | 10 | 0 | 16.9 | 28.6 | 129.11 | 129.11 | 723113.90
6x6-4x4 | 60% | 10 | 10 | 0 | 20.1 | 34.7 | 157.83 | 157.83 | 872274.70
6x6-4x4 | 80% | 5 | 10 | 0 | 37.3 | 127.6 | 190.62 | 190.62 | 1068095.50
6x6-4x4 | 80% | 10 | 10 | 0 | 42.3 | 160.3 | 221.23 | 221.23 | 1225004.20
6x6-4x4 | 90% | 5 | 6 | 0 | 51.33 | 420 | 430.3 | 540.33 | 521842.80
6x6-4x4 | 90% | 10 | 1 | 0 | 57 | 561 | 604.41 | 662.54 | 237768.50
6x6-5x5 | 40% | 5 | 10 | 4 | 7.7 | 9.1 | 183.49 | 183.49 | 805432.80
6x6-5x5 | 40% | 10 | 10 | 1 | 9.9 | 12 | 243.01 | 243.01 | 1055137.80
6x6-5x5 | 60% | 5 | 5 | 0 | 24.4 | 37.4 | 538.7 | 589.32 | 2816754.70
6x6-5x5 | 60% | 10 | 2 | 0 | 27 | 48 | 620.84 | 636.79 | 2915731.00
6x6-5x5 | 80% | 5 | 0 | 0 | - | - | - | 638.69 | 3055372.20
6x6-5x5 | 80% | 10 | 0 | 0 | - | - | - | 636.58 | 2896008.00
6x6-5x5 | 90% | 5 | 0 | 0 | - | - | - | 776.20 | 372995.60
6x6-5x5 | 90% | 10 | 0 | 0 | - | - | - | 916.25 | 109171.70
6x6-6x6 | 40% | 5 | 3 | 0 | 7.67 | 8.67 | 450.96 | 602.21 | 2219468.90
6x6-6x6 | 40% | 10 | 0 | 0 | - | - | - | 674.83 | 2406356.67
6x6-6x6 | 60% | 5 | 0 | 0 | - | - | - | 672.85 | 2457076.10
6x6-6x6 | 60% | 10 | 0 | 0 | - | - | - | 655.50 | 2423895.50
6x6-6x6 | 80% | 5 | 0 | 0 | - | - | - | 668.63 | 2457173.50
6x6-6x6 | 80% | 10 | 0 | 0 | - | - | - | 656.12 | 2323745.33
6x6-6x6 | 90% | 5 | 0 | 0 | - | - | - | 1048.79 | 690075.70
6x6-6x6 | 90% | 10 | 0 | 0 | - | - | - | 1273.73 | 422809.60

###  A.3 Detailed Results for CP

Layout | Fill % | Priority | Number | Number | Mean | Mean | Model build time [s] | Model runtime [s]
---|---|---|---|---|---|---|---|---
(Bay-Warehouse) |  | Classes | solved | optimal | moves | distance | solved | all | solved | all
3x3-2x2 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-2x2 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-2x2 | 60% | 5 | 10 | 10 | 0.1 | 0.3 | 0.39 | 0.39 | 0.05 | 0.05
3x3-2x2 | 60% | 10 | 10 | 10 | 0.1 | 0.3 | 0.45 | 0.45 | 0.05 | 0.05
3x3-2x2 | 80% | 5 | 10 | 10 | 0.1 | 0.4 | 0.4 | 0.4 | 0.05 | 0.05
3x3-2x2 | 80% | 10 | 10 | 10 | 0.2 | 0.7 | 0.46 | 0.46 | 0.05 | 0.05
3x3-2x2 | 90% | 5 | 10 | 10 | 0.6 | 2.9 | 0.48 | 0.48 | 0.07 | 0.07
3x3-2x2 | 90% | 10 | 10 | 10 | 0.5 | 2.5 | 0.6 | 0.6 | 0.09 | 0.09
3x3-3x3 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-3x3 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-3x3 | 60% | 5 | 10 | 10 | 0.3 | 1 | 1.75 | 1.75 | 0.2 | 0.2
3x3-3x3 | 60% | 10 | 10 | 10 | 0.3 | 1 | 1.93 | 1.93 | 0.21 | 0.21
3x3-3x3 | 80% | 5 | 10 | 10 | 0.3 | 1.2 | 2.62 | 2.62 | 0.38 | 0.38
3x3-3x3 | 80% | 10 | 10 | 10 | 0.4 | 1.5 | 2.42 | 2.42 | 0.34 | 0.34
3x3-3x3 | 90% | 5 | 10 | 10 | 1.3 | 6.3 | 3.28 | 3.28 | 1.32 | 1.32
3x3-3x3 | 90% | 10 | 10 | 10 | 1.4 | 6.9 | 3.37 | 3.37 | 1.33 | 1.33
3x3-4x4 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-4x4 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-4x4 | 60% | 5 | 10 | 10 | 0.2 | 0.6 | 5.31 | 5.31 | 0.59 | 0.59
3x3-4x4 | 60% | 10 | 10 | 10 | 0.3 | 0.9 | 5.76 | 5.76 | 0.65 | 0.65
3x3-4x4 | 80% | 5 | 10 | 10 | 0.7 | 2.4 | 10.65 | 10.65 | 1.07 | 1.07
3x3-4x4 | 80% | 10 | 10 | 10 | 1.1 | 3.4 | 10.06 | 10.06 | 2.36 | 2.36
3x3-4x4 | 90% | 5 | 10 | 10 | 1.5 | 8.7 | 11.48 | 11.48 | 7.81 | 7.81
3x3-4x4 | 90% | 10 | 10 | 10 | 1.8 | 10.1 | 10.51 | 10.51 | 6 | 6
3x3-5x5 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-5x5 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-5x5 | 60% | 5 | 10 | 10 | 0.2 | 0.6 | 13.29 | 13.29 | 1.63 | 1.63
3x3-5x5 | 60% | 10 | 10 | 10 | 0.2 | 0.6 | 14.77 | 14.77 | 1.67 | 1.67
3x3-5x5 | 80% | 5 | 10 | 10 | 1 | 3.9 | 18.21 | 18.21 | 2.42 | 2.42
3x3-5x5 | 80% | 10 | 10 | 10 | 1.4 | 5 | 23.16 | 23.16 | 6.83 | 6.83
3x3-5x5 | 90% | 5 | 10 | 10 | 2.3 | 11.3 | 38.44 | 38.44 | 45.09 | 45.09
3x3-5x5 | 90% | 10 | 10 | 10 | 2.9 | 14.3 | 46.28 | 46.28 | 62.92 | 62.92
3x3-6x6 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-6x6 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-6x6 | 60% | 5 | 10 | 10 | 0.2 | 0.2 | 26.41 | 26.41 | 3.75 | 3.75
3x3-6x6 | 60% | 10 | 10 | 10 | 0.3 | 0.3 | 29.01 | 29.01 | 3.5 | 3.5
3x3-6x6 | 80% | 5 | 10 | 10 | 1.6 | 5.1 | 57.51 | 57.51 | 11.56 | 11.56
3x3-6x6 | 80% | 10 | 10 | 10 | 2.2 | 6.9 | 78.06 | 78.06 | 201.29 | 201.29
3x3-6x6 | 90% | 5 | 10 | 10 | 2.4 | 11.9 | 92.23 | 92.23 | 116.16 | 116.16
3x3-6x6 | 90% | 10 | 10 | 9 | 3.4 | 17.6 | 101.76 | 101.76 | 419.37 | 419.37
3x3-7x7 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-7x7 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-7x7 | 60% | 5 | 10 | 10 | 0.6 | 1.6 | 74.04 | 74.04 | 11.73 | 11.73
3x3-7x7 | 60% | 10 | 10 | 10 | 0.5 | 1.5 | 85.65 | 85.65 | 12.46 | 12.46
3x3-7x7 | 80% | 5 | 10 | 10 | 2 | 6.8 | 129 | 129 | 36.77 | 36.77
3x3-7x7 | 80% | 10 | 10 | 10 | 2.4 | 7.6 | 169.58 | 169.58 | 52.28 | 52.28
3x3-7x7 | 90% | 5 | 10 | 10 | 3.1 | 16.2 | 233.86 | 233.86 | 436.21 | 436.21
3x3-7x7 | 90% | 10 | 7 | 7 | 3.86 | 21 | 212.36 | 263.01 | 1027.18 | 1802.76
3x3-8x8 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-8x8 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-8x8 | 60% | 5 | 10 | 10 | 0.4 | 0.8 | 175.42 | 175.42 | 27.84 | 27.84
3x3-8x8 | 60% | 10 | 10 | 10 | 0.6 | 1.5 | 183.57 | 183.57 | 34.53 | 34.53
3x3-8x8 | 80% | 5 | 10 | 10 | 2.6 | 8.6 | 247.44 | 247.44 | 75.62 | 75.62
3x3-8x8 | 80% | 10 | 10 | 9 | 3.4 | 10.9 | 330.63 | 330.63 | 869.04 | 869.04
3x3-8x8 | 90% | 5 | 7 | 5 | 3.57 | 19.14 | 342.61 | 404.96 | 1097.71 | 1852.4
3x3-8x8 | 90% | 10 | 6 | 4 | 5 | 24 | 472.05 | 1374.17 | 1564.24 | 2378.25
3x3-9x9 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-9x9 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-9x9 | 60% | 5 | 10 | 10 | 0.7 | 2 | 241.11 | 241.11 | 44.03 | 44.03
3x3-9x9 | 60% | 10 | 10 | 10 | 1.3 | 3.8 | 311.2 | 311.2 | 70.72 | 70.72
3x3-9x9 | 80% | 5 | 9 | 9 | 3.67 | 11.11 | 522.64 | 1000.59 | 423.01 | 736.28
3x3-9x9 | 80% | 10 | 7 | 6 | 3.86 | 10.71 | 570.28 | 1462.72 | 846.28 | 1676.38
3x3-9x9 | 90% | 5 | 6 | 5 | 4 | 15.67 | 561.16 | 1579.6 | 863.1 | 1955.96
3x3-9x9 | 90% | 10 | 4 | 4 | 4.5 | 19.25 | 734.26 | 3050.75 | 716.62 | 2433.85
3x3-10x10 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-10x10 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-10x10 | 60% | 5 | 10 | 10 | 1.1 | 3.3 | 255.22 | 255.22 | 38.02 | 38.02
3x3-10x10 | 60% | 10 | 10 | 10 | 1.5 | 4.2 | 374.04 | 374.04 | 68.28 | 68.28
3x3-10x10 | 80% | 5 | 7 | 5 | 4.43 | 15 | 942.06 | 1649.37 | 1244.67 | 1946.85
3x3-10x10 | 80% | 10 | 6 | 3 | 5 | 18.5 | 1097.4 | 3201.49 | 2221.12 | 2755.72
3x3-10x10 | 90% | 5 | 2 | 1 | 5 | 14.5 | 1058.54 | 4626.94 | 1934.16 | 3233.6
3x3-10x10 | 90% | 10 | 1 | 0 | 6 | 22 | 1464.67 | 5021.39 | 3616.94 | 3663.17
3x3-11x11 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-11x11 | 40% | 10 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-11x11 | 60% | 5 | 10 | 10 | 0.9 | 1.5 | 389.95 | 389.95 | 54.76 | 54.76
3x3-11x11 | 60% | 10 | 10 | 10 | 1.5 | 3.2 | 565.83 | 565.83 | 121.78 | 121.78
3x3-11x11 | 80% | 5 | 5 | 3 | 4.6 | 13.6 | 1589.32 | 4067.93 | 1743.9 | 2669.01
3x3-11x11 | 80% | 10 | 4 | 1 | 5.25 | 17 | 1734.45 | 5001.65 | 2837.93 | 3316.58
3x3-11x11 | 90% | 5 | 1 | 1 | 4 | 11 | 1993.87 | 6248.04 | 516.67 | 3322.09
3x3-11x11 | 90% | 10 | 0 | 0 | - | - | - | 7595.76 | - | 3495.12
3x3-12x12 | 40% | 5 | 10 | 10 | 0 | 0 | - | - | - | -
3x3-12x12 | 40% | 10 | - | - | - | - | - | - | - | -
3x3-12x12 | 60% | 5 | 10 | 10 | 1.2 | 3.3 | 572.23 | 572.23 | 85.14 | 85.14
3x3-12x12 | 60% | 10 | - | - | - | - | - | - | - | -
3x3-12x12 | 80% | 5 | 4 | 3 | 4.25 | 15.25 | 2094.34 | 6332.23 | 1378.22 | 2549.2
3x3-12x12 | 80% | 10 | - | - | - | - | - | - | - | -
3x3-12x12 | 90% | 5 | 1 | 1 | 4 | 15 | 1891.16 | 5854.54 | 824.39 | 2232.68
3x3-12x12 | 90% | 10 | - | - | - | - | - | - | - | -
4x4-2x2 | 40% | 5 | 10 | 10 | 0.2 | 0.2 | 1.12 | 1.12 | 0.12 | 0.12
4x4-2x2 | 40% | 10 | 10 | 10 | 0.2 | 0.2 | 1.17 | 1.17 | 0.13 | 0.13
4x4-2x2 | 60% | 5 | 10 | 10 | 0.1 | 0.1 | 1.15 | 1.15 | 0.12 | 0.12
4x4-2x2 | 60% | 10 | 10 | 10 | 0.3 | 1.1 | 1.22 | 1.22 | 0.13 | 0.13
4x4-2x2 | 80% | 5 | 10 | 10 | 1.6 | 4.7 | 2.04 | 2.04 | 1.79 | 1.79
4x4-2x2 | 80% | 10 | 10 | 10 | 2.3 | 9 | 2.61 | 2.61 | 4.11 | 4.11
4x4-2x2 | 90% | 5 | 10 | 10 | 1.7 | 10 | 2.46 | 2.46 | 3.91 | 3.91
4x4-2x2 | 90% | 10 | 10 | 10 | 2.2 | 13.5 | 2.79 | 2.79 | 3.45 | 3.45
4x4-3x3 | 40% | 5 | 10 | 10 | 0.5 | 0.5 | 7.35 | 7.35 | 0.8 | 0.8
4x4-3x3 | 40% | 10 | 10 | 10 | 0.5 | 0.5 | 6.71 | 6.71 | 0.83 | 0.83
4x4-3x3 | 60% | 5 | 10 | 10 | 0.9 | 1.6 | 7.36 | 7.36 | 0.88 | 0.88
4x4-3x3 | 60% | 10 | 10 | 10 | 1.2 | 2.5 | 9.18 | 9.18 | 3.12 | 3.12
4x4-3x3 | 80% | 5 | 10 | 10 | 3 | 9 | 18.82 | 18.82 | 19.04 | 19.04
4x4-3x3 | 80% | 10 | 10 | 10 | 4.3 | 11.8 | 23.87 | 23.87 | 38.84 | 38.84
4x4-3x3 | 90% | 5 | 10 | 10 | 4.2 | 21.2 | 22.68 | 22.68 | 278.89 | 278.89
4x4-3x3 | 90% | 10 | 10 | 9 | 5.6 | 25.6 | 32.34 | 32.34 | 1135.08 | 1135.08
4x4-4x4 | 40% | 5 | 10 | 10 | 0.5 | 0.5 | 28.09 | 28.09 | 6.21 | 6.21
4x4-4x4 | 40% | 10 | 10 | 10 | 0.6 | 0.7 | 27.41 | 27.41 | 5.42 | 5.42
4x4-4x4 | 60% | 5 | 10 | 10 | 2.1 | 3.3 | 45.47 | 45.47 | 12.32 | 12.32
4x4-4x4 | 60% | 10 | 10 | 10 | 2.5 | 4.5 | 49.97 | 49.97 | 19.61 | 19.61
4x4-4x4 | 80% | 5 | 10 | 8 | 4.3 | 13.2 | 84.02 | 84.02 | 854.3 | 854.3
4x4-4x4 | 80% | 10 | 10 | 7 | 5.6 | 17.7 | 100.25 | 100.25 | 1269.42 | 1269.42
4x4-4x4 | 90% | 5 | 8 | 4 | 6.25 | 27.75 | 108.64 | 118.32 | 2073.2 | 2379.79
4x4-4x4 | 90% | 10 | 5 | 3 | 7 | 29.6 | 130.32 | 154.46 | 2301.81 | 2954.73
4x4-5x5 | 40% | 5 | 10 | 10 | 0.9 | 0.9 | 69.7 | 69.7 | 10.89 | 10.89
4x4-5x5 | 40% | 10 | 10 | 10 | 1.1 | 1.4 | 77.77 | 77.77 | 13.37 | 13.37
4x4-5x5 | 60% | 5 | 10 | 10 | 3.2 | 5.3 | 149.12 | 149.12 | 63.44 | 63.44
4x4-5x5 | 60% | 10 | 10 | 9 | 3.7 | 6.2 | 161.21 | 161.21 | 417.62 | 417.62
4x4-5x5 | 80% | 5 | 4 | 2 | 5.5 | 12.25 | 273.39 | 350.14 | 1823.63 | 2899.28
4x4-5x5 | 80% | 10 | 3 | 2 | 6 | 15.33 | 258.74 | 420.07 | 1336.06 | 2939.9
4x4-5x5 | 90% | 5 | 1 | 0 | 8 | 27 | 337.39 | 1145.73 | 3611.32 | 3427.68
4x4-5x5 | 90% | 10 | 0 | 0 | - | - | - | 2155.33 | - | 3359.57
4x4-6x6 | 40% | 5 | 10 | 10 | 0.9 | 1.4 | 115.81 | 115.81 | 20.93 | 20.93
4x4-6x6 | 40% | 10 | 10 | 10 | 1.1 | 1.7 | 156.06 | 156.06 | 22.46 | 22.46
4x4-6x6 | 60% | 5 | 10 | 9 | 3.9 | 5.9 | 369.12 | 369.12 | 597.78 | 597.78
4x4-6x6 | 60% | 10 | 9 | 8 | 4.22 | 7.33 | 376.79 | 420.6 | 634.33 | 931.58
4x4-6x6 | 80% | 5 | 1 | 1 | 5 | 5 | 533 | 3438.81 | 144.97 | 3234.02
4x4-6x6 | 80% | 10 | 0 | 0 | - | - | - | 4463.78 | - | 3617.62
4x4-6x6 | 90% | 5 | 0 | 0 | - | - | - | 4758.33 | - | 3596.25
4x4-6x6 | 90% | 10 | 0 | 0 | - | - | - | 4608.67 | - | 3633.29
4x4-7x7 | 40% | 5 | 10 | 10 | 1.2 | 1.3 | 280.76 | 280.76 | 46.36 | 46.36
4x4-7x7 | 40% | 10 | 10 | 10 | 1.6 | 1.7 | 317.15 | 317.15 | 59.3 | 59.3
4x4-7x7 | 60% | 5 | 7 | 7 | 4.43 | 7.29 | 809.11 | 1528.97 | 676.15 | 1544.67
4x4-7x7 | 60% | 10 | 6 | 5 | 6 | 11 | 1032.33 | 2212.51 | 1498.65 | 2326.8
4x4-7x7 | 80% | 5 | 1 | 0 | 8 | 10 | 1455.04 | 5085.65 | 3612.17 | 3667.92
4x4-7x7 | 80% | 10 | 0 | 0 | - | - | - | - | - | -
4x4-7x7 | 90% | 5 | 0 | 0 | - | - | - | 4356.87 | - | 3782.87
4x4-7x7 | 90% | 10 | 0 | 0 | - | - | - | - | - | -
4x4-8x8 | 40% | 5 | 10 | 10 | 1.3 | 2.1 | 517.87 | 517.87 | 100.96 | 100.96
4x4-8x8 | 40% | 10 | 10 | 10 | 1.5 | 2.4 | 588.7 | 588.7 | 124.77 | 124.77
4x4-8x8 | 60% | 5 | 6 | 6 | 6 | 7.83 | 1622.96 | 4291.83 | 1693.18 | 2418.77
4x4-8x8 | 60% | 10 | 5 | 3 | 7.4 | 9.8 | 2201.89 | 4501.86 | 2431.16 | 2953.2
4x4-8x8 | 80% | 5 | 0 | 0 | - | - | - | 5056.85 | - | 3648.01
4x4-8x8 | 80% | 10 | 0 | 0 | - | - | - | 8545.23 | - | 3819.07
4x4-8x8 | 90% | 5 | 0 | 0 | - | - | - | 36987.4 | - | -
4x4-8x8 | 90% | 10 | 0 | 0 | - | - | - | - | - | -
5x5-2x2 | 40% | 5 | 10 | 10 | 0.2 | 0.2 | 2.9 | 2.9 | 0.27 | 0.27
5x5-2x2 | 40% | 10 | 10 | 10 | 0.1 | 0.1 | 2.7 | 2.7 | 0.34 | 0.34
5x5-2x2 | 60% | 5 | 10 | 10 | 1.4 | 2 | 4.77 | 4.77 | 0.76 | 0.76
5x5-2x2 | 60% | 10 | 10 | 10 | 1.9 | 2.9 | 5.07 | 5.07 | 1.93 | 1.93
5x5-2x2 | 80% | 5 | 10 | 10 | 4.8 | 16.4 | 13.23 | 13.23 | 436.51 | 436.51
5x5-2x2 | 80% | 10 | 10 | 9 | 5.6 | 18.6 | 15.03 | 15.03 | 438.64 | 438.64
5x5-2x2 | 90% | 5 | 10 | 10 | 6.3 | 35.7 | 24.25 | 24.25 | 428.03 | 428.03
5x5-2x2 | 90% | 10 | 10 | 8 | 6.5 | 35.6 | 18.8 | 18.8 | 921.79 | 921.79
5x5-3x3 | 40% | 5 | 10 | 10 | 0.8 | 1.4 | 20.82 | 20.82 | 2.92 | 2.92
5x5-3x3 | 40% | 10 | 10 | 10 | 0.9 | 1.5 | 22.97 | 22.97 | 3.79 | 3.79
5x5-3x3 | 60% | 5 | 10 | 10 | 4 | 5.4 | 52.16 | 52.16 | 128.76 | 128.76
5x5-3x3 | 60% | 10 | 10 | 10 | 5.1 | 8 | 70.62 | 70.62 | 306.87 | 306.87
5x5-3x3 | 80% | 5 | 5 | 3 | 7 | 20.2 | 95.78 | 126.65 | 1893.9 | 2748.42
5x5-3x3 | 80% | 10 | 4 | 0 | 8.75 | 27.5 | 169.3 | 178.79 | 3605.36 | 3607.13
5x5-3x3 | 90% | 5 | 1 | 0 | 10 | 62 | 127.47 | 194.85 | 3602.96 | 3608.21
5x5-3x3 | 90% | 10 | 0 | 0 | - | - | - | 202.12 | - | 3608.51
5x5-4x4 | 40% | 5 | 10 | 10 | 1.6 | 2 | 81.85 | 81.85 | 16.16 | 16.16
5x5-4x4 | 40% | 10 | 10 | 10 | 2 | 2.4 | 99.35 | 99.35 | 22.92 | 22.92
5x5-4x4 | 60% | 5 | 10 | 7 | 6.4 | 10.4 | 257.08 | 257.08 | 1247.23 | 1247.23
5x5-4x4 | 60% | 10 | 8 | 1 | 8.25 | 13.88 | 365.33 | 368.24 | 3170.97 | 3258.17
5x5-4x4 | 80% | 5 | 0 | 0 | - | - | - | 2209.49 | - | 2936.74
5x5-4x4 | 80% | 10 | 0 | 0 | - | - | - | 3658.71 | - | 3108.33
5x5-4x4 | 90% | 5 | 0 | 0 | - | - | - | 4058.58 | - | 3408.84
5x5-4x4 | 90% | 10 | 0 | 0 | - | - | - | - | - | -
5x5-5x5 | 40% | 5 | 10 | 10 | 2.6 | 2.9 | 284.35 | 284.35 | 58.25 | 58.25
5x5-5x5 | 40% | 10 | 10 | 10 | 3.2 | 3.7 | 320.39 | 320.39 | 77.78 | 77.78
5x5-5x5 | 60% | 5 | 4 | 1 | 8.75 | 12.5 | 907.63 | 1431.99 | 3428.61 | 3539.99
5x5-5x5 | 60% | 10 | 0 | 0 | - | - | - | 3795.2 | - | 3552.09
5x5-5x5 | 80% | 5 | 0 | 0 | - | - | - | 5447.5 | - | 3730.5
5x5-5x5 | 80% | 10 | 0 | 0 | - | - | - | 6135.13 | - | 3678.31
5x5-5x5 | 90% | 5 | 0 | 0 | - | - | - | 5071.32 | - | 3969.73
5x5-5x5 | 90% | 10 | 0 | 0 | - | - | - | - | - | -
5x5-6x6 | 40% | 5 | 10 | 9 | 4.5 | 5.9 | 968.01 | 968.01 | 920.15 | 920.15
5x5-6x6 | 40% | 10 | 10 | 9 | 5 | 6.1 | 1028.72 | 1028.72 | 866.77 | 866.77
5x5-6x6 | 60% | 5 | 0 | 0 | - | - | - | 8179.91 | - | 3591.7
5x5-6x6 | 60% | 10 | 0 | 0 | - | - | - | 7964.47 | - | 3627.83
5x5-6x6 | 80% | 5 | 0 | 0 | - | - | - | - | - | -
5x5-6x6 | 80% | 10 | 0 | 0 | - | - | - | - | - | -
5x5-6x6 | 90% | 5 | 0 | 0 | - | - | - | - | - | -
5x5-6x6 | 90% | 10 | 0 | 0 | - | - | - | - | - | -
6x6-2x2 | 40% | 5 | 10 | 10 | 1.3 | 1.6 | 11.78 | 11.78 | 3.23 | 3.23
6x6-2x2 | 40% | 10 | 10 | 10 | 1.8 | 1.9 | 10.79 | 10.79 | 3.56 | 3.56
6x6-2x2 | 60% | 5 | 10 | 10 | 3.8 | 6.1 | 20.57 | 20.57 | 24.4 | 24.4
6x6-2x2 | 60% | 10 | 10 | 10 | 4.1 | 7.2 | 22.13 | 22.13 | 41.51 | 41.51
6x6-2x2 | 80% | 5 | 6 | 4 | 7 | 21.67 | 37.45 | 56.52 | 1905.4 | 2582.87
6x6-2x2 | 80% | 10 | 6 | 2 | 8.33 | 29 | 67.07 | 67.98 | 2933.08 | 3201.05
6x6-2x2 | 90% | 5 | 0 | 0 | - | - | - | 89.45 | - | 3600.53
6x6-2x2 | 90% | 10 | 1 | 0 | 14 | 148 | 77.42 | 99.21 | 3603.21 | 3602.85
6x6-3x3 | 40% | 5 | 10 | 10 | 2.5 | 3 | 70.33 | 70.33 | 17.13 | 17.13
6x6-3x3 | 40% | 10 | 10 | 10 | 3.4 | 3.6 | 98.12 | 98.12 | 38.97 | 38.97
6x6-3x3 | 60% | 5 | 7 | 1 | 8.29 | 13 | 229.2 | 251.08 | 3111.47 | 3258.98
6x6-3x3 | 60% | 10 | 6 | 1 | 9 | 12.67 | 251.07 | 314.45 | 3044.07 | 3270.57
6x6-3x3 | 80% | 5 | 0 | 0 | - | - | - | 1036.94 | - | 3354.02
6x6-3x3 | 80% | 10 | 0 | 0 | - | - | - | 2850.4 | - | 2692.97
6x6-3x3 | 90% | 5 | 0 | 0 | - | - | - | 3542.83 | - | 3231.76
6x6-3x3 | 90% | 10 | 0 | 0 | - | - | - | - | - | -
6x6-4x4 | 40% | 5 | 8 | 8 | 4 | 4.75 | 366.35 | 470.71 | 120.5 | 815.27
6x6-4x4 | 40% | 10 | 8 | 7 | 5.25 | 6 | 468.81 | 581.25 | 794.58 | 1356.79
6x6-4x4 | 60% | 5 | 0 | 0 | - | - | - | 5359.21 | - | 3563.36
6x6-4x4 | 60% | 10 | 0 | 0 | - | - | - | 5628.63 | - | 3587.41
6x6-4x4 | 80% | 5 | 0 | 0 | - | - | - | 5786.41 | - | 3615.39
6x6-4x4 | 80% | 10 | 0 | 0 | - | - | - | 6510.6 | - | 3705.79
6x6-4x4 | 90% | 5 | 0 | 0 | - | - | - | - | - | -
6x6-4x4 | 90% | 10 | 0 | 0 | - | - | - | - | - | -
6x6-5x5 | 40% | 5 | 6 | 4 | 6.67 | 8 | 1450.83 | 2545.86 | 1807.87 | 2504.45
6x6-5x5 | 40% | 10 | 5 | 1 | 7.8 | 9 | 1609.39 | 2549.4 | 3160.58 | 3346.92
6x6-5x5 | 60% | 5 | 0 | 0 | - | - | - | 17886.9 | - | 1868.99
6x6-5x5 | 60% | 10 | 0 | 0 | - | - | - | 30407 | - | -
6x6-5x5 | 80% | 5 | 0 | 0 | - | - | - | - | - | -
6x6-5x5 | 80% | 10 | 0 | 0 | - | - | - | - | - | -
6x6-5x5 | 90% | 5 | 0 | 0 | - | - | - | - | - | -
6x6-5x5 | 90% | 10 | 0 | 0 | - | - | - | - | - | -
6x6-6x6 | 40% | 5 | 0 | 0 | - | - | - | - | - | -
6x6-6x6 | 40% | 10 | 0 | 0 | - | - | - | - | - | -
6x6-6x6 | 60% | 5 | 0 | 0 | - | - | - | - | - | -
6x6-6x6 | 60% | 10 | 0 | 0 | - | - | - | - | - | -
6x6-6x6 | 80% | 5 | 0 | 0 | - | - | - | - | - | -
6x6-6x6 | 80% | 10 | 0 | 0 | - | - | - | - | - | -
6x6-6x6 | 90% | 5 | 0 | 0 | - | - | - | - | - | -
6x6-6x6 | 90% | 10 | 0 | 0 | - | - | - | - | - | -