Aircraft Loading Optimization -- QUBO models under multiple constraints
AAircraft Loading Optimization - QUBO models under multiple constraints
Giovanni Pilon, ∗ Nicola Gugole, † and Nicola Massarenti ‡ (Dated: Thursday 31 st October, 2019)
In this submission we solve the Aircraft Loading Optimization problem of the AirbusQuantum Computing Challenge. Finding the optimal loading for a plane is a challeng-ing task for classical algorithms, especially because the solution must respect severalflight constraints. The contribution of this work is formulating this problem and itsconstraints in a model based on QUBO equations which are compatible with quan-tum annealers. We then benchmarked the model on different solvers to evaluate theperformances and capabilities of current technologies. ∗ [email protected] † nicola [email protected] ‡ [email protected] a r X i v : . [ qu a n t - ph ] F e b I. INTRODUCTION
The objective of the Aircraft Loading Optimization isto maximize the payload of the aircraft while respect-ing several flight constraints [4]. This problem can beviewed as an extension of the knapsack problem, a combi-natorial optimization problem where the goal is to selectthe optimal set of items subject to a budget constraint.The knapsack problem can be written as a QuadraticUnconstrained Binary Optimization (QUBO) problem asshowed in [1].QUBO Models are equivalent to the Ising problem for-mulation, and Quantum Annealers such as those devel-oped by D-Wave Systems can be used as an optimizationtool for these quadratic functions.In this work we show that all the constraints of theAircraft Loading Optimization Challenge proposed by
Airbus can be written in QUBO form, hence by treat-ing them as penalty functions it is possible to assemblea QUBO model whose solution respects all the AircraftLoading constraints. We then present the results ob-tained with a classical solver for QUBO functions andwith a D-Wave Quantum Annealer accessed throughAPI.
II. SUBMISSION SUMMARY
In the section
Detailed Explanation we present theproblem and the modelling for each constraint. In sec-tion
Implementation we explain the implementation andwe present the used solvers. Finally in section
Bench-markig and performances we present the obtained resultsfor both the Quantum Annealer and the classical solver.
III. DETAILED EXPLANATION
As noted in the introduction, the goal is to maximizethe aircraft payload subject to multiple constraints:
PL - Payload Limits:
The payload limits include con-ditions on the maximum capacity, the maximumallowed number of containers and their positionson the aircraft.
CL - Centre of Gravity Limits:
The centre of grav-ity of the fully loaded aircraft must be within givenbounds, moreover it must approach a given targetvalue.
SL - Shear Limits:
The shear of the fully loaded air-craft must be below a maximum shear curve.We will handle the following types of containers:
T1 - Medium Size:
Requires a single position.
T2 - Small Size:
Requires half of a single position.
T3 - Large Size:
Requires two positions.In the following, n will denote the total number of avail-able containers and N the total number of available po-sitions on the empty aircraft. A. Variables
We define the position assignment variables p i,j ,i = 1 , . . . , n, j = 1 , . . . , N , such that (cid:40) p i,j = 1 , if container i occupies position jp i,j = 0 , otherwise (1)We have a total of nN binary target variables. Thisvalue does not include all the possible supplementary bi-nary variables, the slack variables. In order to keep thenotation simple, from now on v k will denote a genericslack variable and c k its coefficient. B. Writing the Problem in QUBO Form
The goal is to write the problem in the QUBO formmin z f ( tot ) ( z ) , f ( tot ) ( z ) . = z T Q z , (2)where Q is a symmetric square matrix of constants and z is a binary vector containing all the binary target vari-ables introduced in (1) and the supplementary slack vari-ables. If we use the notation p . = ( p i,j ) i =1 ,...,n,j =1 ,...,N v . = ( v k ) k we can consider z as the concatenation of p and v . C. Objective Function
Each container i has a given mass m i >
0. Our objec-tive function will be f ( obj ) ( p ) = − n (cid:88) i =1 N (cid:88) j =1 t i m i p i,j where (cid:40) t i = 1 , case T1 and T2 t i = , case T3Since f obj ( p ) is linear in p it is compatible with theQUBO form of equation (2). Maximizing the loadedweight is equivalent to finding the minimum of the ob-jective function. In the following sections we explain indetail how the constraints of the problem can be treatedas penalties that influence the value of the objective func-tion. D. Penalty functions
The constraints of the problem are inequalities thatmust be respected by the solution. By default theQUBO formulation does not allow constraints, however,by rewriting these constraints as quadratic equations wecan treat them as penalties that influence the value of theobjective function (see [1]). In particular these penaltiesare formulated in such a way that their value is zero forfeasible solutions, and a positive amount for invalid so-lutions. The slack variables v k need to be introduced inorder to transform inequalities into equalities (see sec-tion III J). Each penalty should be multiplied by a pos-itive constant to have comparable magnitude with theobjective function, we denote these constant with P ( − ) . E. Payload Limits (PL)
The payload limits (step 1) are composed of severalconstraints.( O ) No-overlaps . The p i,j variables must represent a dis-position of containers that is physically possible. The no-overlaps condition imposes that each position is oc-cupied at maximum by 1 medium/large container or by2 small containers. For every position j = 1 , . . . , N , weimpose n (cid:88) i =1 d i p i,j ≤ , (cid:40) d i = 1 , case T1 and T3 d i = , case T2 (3)which can be translated into the penalty function f ( O ) j ( p , v ) = P ( O ) (cid:32) n (cid:88) i =1 d i p i,j + (cid:88) k c k v k − (cid:33) . (4)Equation (4) assumes positives values if an improperamount of container is assigned to the same position j .( D ) No-duplicates . In the same way, each container mustbe assigned to only one position, except for large contain-ers which must be assigned to 2 adjacent positions. Wepenalize every situation in which a container is assignedto a wrong amount of positions. To do this, for everycontainer i = 1 , . . . , n we impose t i N (cid:88) j =1 p i,j ≤ , (5)which can be translated into the penalty function f ( D ) i ( p , v ) = P ( D ) (cid:32) t i N (cid:88) j =1 p i,j + (cid:88) k c k v k − (cid:33) , P ( D ) > . (6) ( C ) Contiguity for big containers . Equation (5) ensurethat a large container occupies two positions but doesnot grant the contiguity of the two positions. For thisreason, only for large containers, we extend equation (5)by requiring that N − (cid:88) j =1 ( p i,j − p i,j +1 ) + p i, + p i,N = N (cid:88) j =1 p i,j ⇐⇒ N − (cid:88) j =1 p i,j p i,j +1 = 12 N (cid:88) j =1 p i,j . (7)Indeed, if (cid:80) Nj =1 p i,j = 2 (large container case), we have N − (cid:88) j =1 p i,j p i,j +1 = 1 , which is possible if and only if the selected positions arecontiguous. Equation (7) leads to f ( C ) i ( p ) = P ( C ) (cid:32) N (cid:88) j =1 p i,j − N − (cid:88) j =1 p i,j p i,j +1 (cid:33) , (8) P ( C ) >
0. Equation (7) already has degree two, for thisreason it can’t be treated like the other constraints (wecan’t raise it to power two to grant its positivity becauseit would generate a polynomial of order four, which isnot compatible with the QUBO form). However, we canprove that the formulation of f ( C ) ( p ) is already correctand consistent for proper values of P ( D ) and P ( C ) .We need to prove that f ( D ) ( p ) + f ( C ) ( p ) has positivevalue for unfeasible solutions and value zero for feasiblesolutions. From equations (6) and (8) we see that fea-sible solutions have a penalty of zero. It is trivial tosee that f ( D ) ( p ) + f ( C ) ( p ) is strictly greater than zero if (cid:80) Nj =1 p i,j = 1. We need to prove that the penalty valueis strictly positive for the case (cid:80) Nj =1 p i,j > f ( C ) i ( p ) can be negative,specifically f ( C ) i ( p ) < ⇒ N (cid:88) j =1 p i,j > . but if we set P ( D ) > P ( C ) we can guarantee that also in this case f ( D ) ( p ) + f ( C ) ( p ) > . Proof.
If we substitute (cid:80) Nj =1 p i,j = m , then in theworst case (cid:80) N − j =1 p i,j p i,j +1 = m −
1, which gives f ( D ) ( p ) + f ( C ) ( p )= P ( D ) (cid:32) m − (cid:33) + P ( C ) (cid:32) m − ( m − (cid:33) = 14 P ( D ) ( m − − P ( C ) ( m −
2) (9)Then f ( D ) ( s , p ) + f ( C ) ( s , p ) > ⇐⇒ P ( D ) > m − m − P ( C ) The series 2( m − m − , m > m = 3 and maximum value equal to 2.( W ) Maximum capacity . In order to respect the maxi-mum payload capacity of the aircraft W p , we introducethe constraint n (cid:88) i =1 N (cid:88) j =1 t i m i p i,j ≤ W p which we transform into the penality function f ( W ) ( p , v ) = P ( W ) (cid:32) n (cid:88) i =1 N (cid:88) j =1 t i m i p i,j + (cid:88) k c k v k − W p (cid:33) P ( W ) > F. Centre of Gravity Limits (CL)
Given the length
L > j = 1 , . . . , N as x j . = LN (cid:32) j − N (cid:33) − L N .
Again, this step involves the use of multiple constraints.( C t ) Center of gravity - target . We require that the actualcenter of gravity ˆ x cg is equal to the target value x tcg :ˆ x cg . = x cg x cg = (cid:80) ni =1 (cid:80) Nj =1 t i m i p i,j x j + W e x ecg (cid:80) ni =1 (cid:80) Nj =1 t i m i p i,j + W e = x tcg ⇐⇒ x cg = x tcg x cg where W e is the mass of the aircraft without payload, x ecg is the corresponding center of gravity and x j is thehorizontal coordinate for position j (see section III G).Then we obtain the following penalty function f ( Ct ) ( p ) = P ( Ct ) (cid:32) x cg − x tcg x cg (cid:33) , P ( Ct ) > . (10) Moreover, we want that the actual center of gravity iswithin the interval [ x mincg , x maxcg ] and we achieve this byadding the following penalty functions.( C l ) Center of gravity - lower bound . f ( Cl ) ( p , v ) = P ( Cl ) (cid:32) x cg − x mincg x cg − (cid:88) k c k v k (cid:33) (11)( C u ) Center of gravity - upper bound . f ( Cu ) ( p , v ) = P ( Cu ) (cid:32) x cg − x maxcg x cg + (cid:88) k c k v k (cid:33) (12)where P ( Cl ) , P ( Cu ) >
0. Equations (10)-(11)-(12) arecompliant with equation (2).Notice that the value of P ( Cl ) and P ( Cu ) should behigher than P ( Ct ) because the upper and lower boundare hard constraints. However, by setting a high valuefor P ( Ct ) it is possible to prioritize solution with an opti-mal center of gravity. In our implementation we choose P ( Cl ) = P ( Cu ) ≈ P ( Ct ) to allow more flexible solutions. G. Shear Limits (SL)
If we consider the symmetrical and linear case, then S max ( x ) . = S max (cid:16) L +2 xL (cid:17) , x < S max (cid:16) L − xL (cid:17) , x ≥ , S max > . Given the length
L > u = 1 , . . . , N as x u . = LN (cid:32) u − N (cid:33) . By discretizing the integral provided by
Airbus the actualshear force from the left at position u isˆ S l ( u ) . = n (cid:88) i =1 u (cid:88) j =1 t i m i p i,j , u : x u ≤ u isˆ S r ( u ) . = n (cid:88) i =1 N (cid:88) j = u +1 t i m i p i,j , u : x u ≥ N is even.( S l ) Shear - left . We imposeˆ S l ( u ) ≤ S max ( x u ) , u = 1 , . . . , N u = 1 , . . . , N f ( Sl ) x u ( p , v ) = P ( Sl ) (cid:32) ˆ S l ( u ) + (cid:88) k c k v k − S max ( x u ) (cid:33) . where P ( Sl ) > S r ) Shear - right . We imposeˆ S r ( u ) ≤ S max ( x u ) , u = N , . . . , N − u = N , . . . , N − f ( Sr ) x u ( p , v ) = P ( Sr ) (cid:32) ˆ S r ( u ) + (cid:88) k c k v k − S max ( x u ) (cid:33) where P ( Sr ) > N odd is similar; the main difference is thatwe have to consider the additional point x = 0 as follows:ˆ S l ( u ) ≤ S max ( x u ) , u = 1 , . . . , (cid:98) N (cid:99) ˆ S r ( u ) ≤ S max ( x u ) , u = (cid:98) N (cid:99) + 1 , . . . , N − S l ( (cid:98) N (cid:99) ) + n (cid:88) i =1 t i m i p i, (cid:98) N/ (cid:99) +1 ≤ S max , x = 0 n (cid:88) i =1 t i m i p i, (cid:98) N/ (cid:99) +1 S r ( (cid:98) N (cid:99) + 1) ≤ S max , x = 0 . Notice that this formulation is not bonded to the shapeof the shear limit bound S max ( x u ). In fact when writingequations (13) and (14) we don’t need to make assump-tions about the shape of S max ( x u ) (in the implementa-tion we treated S max ( x u ) as an input). H. Total function
The total function is given by the sum of the objectfunction and the penality functions, i.e., when N is even: f ( tot ) = f ( obj ) + f ( W ) + n (cid:88) i =1 f ( D ) i + (cid:88) i : i is T3 f ( C ) i + N (cid:88) j =1 f ( O ) j (cid:124) (cid:123)(cid:122) (cid:125) P L + f ( Ct ) + f ( Cl ) + f ( Cu ) (cid:124) (cid:123)(cid:122) (cid:125) CL + N/ (cid:88) u =1 f ( Sl ) x u + N − (cid:88) u = N/ f ( Sr ) x u (cid:124) (cid:123)(cid:122) (cid:125) SL and similarly for the case in which N is odd. I. Penalties scaling
All the penalties should be opportunely scaled throughtheir scaling coefficients P ( − ) . In fact, the penalty func-tions and the objective functions should have the same magnitude. If a penalty function is order of magnitudelowers to the objective functions it becomes invisible forthe solver, and the corresponding constraints will notbe respected. Hence we calibrated the coefficients P ( − ) through sampling of the objective and penalty functions.The P ( − ) were increased until when the value of thepenalties had at least the same magnitude of the ob-jective function. It must be noted that the problem ofcalibrating the P ( − ) is crucial for a correct implementa-tion, but at the same time it can be a very hard task ifmultiple constraints conflict one with the other. J. Heuristic method for slack variables
Optimization problems with several constraints likethis one need several slack variables. The method usedto find the proper amount of slack variables must grantthat the slack variables are enough but at the same timeit should be parsimonious to avoid wasting resources (es-pecially in this context where the problem dimension isa relevant issue).A possible way to find the correct number of slack vari-ables is to use a binary expansion method. Consider firsta constraint in the formleft side ≤ u, u ≥ ⇒ ∃ s u : left side + s u = u We have0 ≤ s u = u − left side ≤ max { u − left side } = u − min { left side } . = ¯ u (15)There exists an integer r u and a realization of binaryvariables { v k } such that¯ u ≈ r u (cid:88) k =0 k v k . Then we replace the constraint left side ≤ u byleft side + r u (cid:88) k =0 k v k = u. Similarly, a constraint of type left side ≥ l can be re-placed by left side − r l (cid:88) k =0 k v k = l. Although it is theoretically possible to fine tune theamount of slack variables to use for a given dataset, thismethod guarantees that all the constraint upper boundsand lower bounds are reached for any possible inputdataset.
IV. IMPLEMENTATION
The model was coded in Python with the possibility ofcalling different solvers. Specifically we used: • QBsolv : a classical solver for QUBO functions.
QBsolv is an open-source solver released by D-Wave Systems [2], it is based on Tabu-Search, ametaheuristic optimization algorithm. Due to hisheuristic nature this solver does not grant to reachthe optimum of the problem, however it is ableto find good sub-optimal solutions of medium-sizeproblems ( ∼ QBsolv was useful to vali-date the model formalized in section III. We ranthis solver locally on a normal laptop. • D-Wave 2000Q : a Quantum Annealer accessedthrough D-Wave API. One of the main problemsof a real Quantum Annealer hides in the map-ping from a
QUBO function into a graph compat-ible with the hardware. In particular, the D-Wavequantum computer maps the
QUBO function intoa graph, called
Chimera Graph . Our tests run onthe lower noise D-Wave 2000Q (also called
D-Wave2000Q 5 ), with 2048 physical qbits. The
ChimeraGraph of this quantum computer doesn’t allow tomap medium/big problems because the lattice ofqubits isn’t fully connected. To map the QUBOfunction to the
Chimera Graph we used the defaultheuristic created by D-Wave. Although it is possi-ble to customize the embedding into the
ChimeraGraph we did not explore this possibility. Beingaware that the next generation of D-Wave anneal-ers are expected to simplify the embedding we fo-cused on the main challenges related to the model-ing of the problem (the future Pegasus architecturewill have over 5000 qbits, with a connectivity 2.5times higher than the current one). Current an-neling devices are still subject to various sourcesof imperfections and noise [3], and in fact the ob-tained results present high variance and are oftenunfeasible solutions. • Exact solver : a simple brute-force solver thatfinds the global optimum by testing all possible so-lution vectors. Since the time to brute-force thesolution increases exponentially with the problemdimension we used this solver for very small in-stances of the problem. This solver does not actu-ally brute-force through the QUBO model, but justthrough all the possible position assignment vectors p , searching for solution optimality and feasibility.In this way we reduce the computation time (theQUBO model is much harder to brute-force becauseit includes several slack variables). V. BENCHMARKING AND PERFORMANCES
This section shows the results obtained for the differentsolvers and different problem configurations. Section V Apresents examples of solutions obatained with the classi-cal solver. Section V B show the statistical performanceof the classical solver over 500 test. Finally section V Cshows an analysis of the performance on a real Quan-tum Annealer. For both the solvers we used their defaultsettings.
A. Classical solver
Testing the performance of the implementation bymeans of a classical solver allows to verify the correct-ness of the model formalized in Section III A.The input data are shown in Tables II and I, describ-ing the constraints and the containers specifics in compli-ance with the indications provided by
Airbus , we added5 large containers in the container dataset to prove thatthe model was capable of handling them correctly. Foranalyzing the performance of the model we developedseveral experiments involving a combination of the con-straints PL , CL and SL , defined in Section III.
1. Examples • Case PL . To benchmark the model we first testedthe problem considering only the position assign-ment constraint and the capacity limit imposed tothe cargo. The result of one the simulations isshown in Figure 1. • Case PL+CL . In this benchmark the solution haveto be such that all the containers are set in validpositions without exceeding the capacity limit (con-straint PL ) while keeping the center of gravity asclose to the target as possible (constraint CL ). Fig-ure 2 shows one of the obtained solution with theset of constraints PL and CL . • Case PL+CL+SL . The goal of this benchmark wasto find a solution in compliance with the constraints PL , CS and SL . The results can be appreciated inFigure 3.Tables III shows the number of position assignment vari-ables and slack variables used by each example. B. Classical solver - Benchmarking
In order to better analyze the performance of the modelintroduced in Section III, we made 500 runs for each ofthe set of constraints (PL, PL+CL, PL+CL+SL), keep-ing the parameters and input values constant throughthe runs. • Average time to solution . Average times to so-lutions are presented in table V. When constraintsare added the time to solution is higher due to theadditional slack variables. • Success rate comparison . Table IV shows thepercentage of success rate for the different con-dition between the 3 main cases (PL, PL+CL,PL+CL+SL). For the Payload condition (PL)we consider it successful if the no-overlap, no-duplication and maximum weight conditions are allsatisfied. For the Center of gravity condition (CL)we consider it satisfied if the center of gravity ofthe solution is between x mincg and x maxcg . Finally weconsider the shear limit (SL) satisfied if the shearlimit upper bound is respected in every position ofthe aircraft. • Center of gravity . in table IV we see that thecenter of gravity condition is almost always re-spected even if the constraint is not active. How-ever, a detailed analysis of the results showed thatactivating the CL constraints did improve the cen-ter of gravity position. Figure 4 shows the compar-ison of the distribution of center of gravity of thesolution between the cases PL and PL+CL. As wecan see, the second case provides a better distri-bution around the target, where both the left andright bounds are respected. • Shear limit . When activating the SL constraintthe improvement seems less detectable. Table VIshows the comparison between the 3 main cases(PL, PL+CL, PL+CL+SL) with respect to thenumber of positions which led to incorrect valuesfor the shear force. The amount of invalid positionsdecreases only slightly (this could be due to an im-precise calibration of the SL constraint or to con-flicts between the center of gravity condition andthe shear limit one, since both act on the disposi-tion of the containers. Further analysis is neededfor this case).
C. D-Wave 2000Q
When running experiments on the D-Wave 2000Q weused only the payload constraints (PL) and a problemwith n = 6, N = 4. The amount of slack variables v k is automatically determined, as explained in section III.The total number of variables is 48 (of which 24 are slackvariables). In our tests this was the empirical limit forthe mapping to the ChimeraGraph . We were not ableto add the other constraints due to the additional slackvariables that would be required.The problem defined by Table VII with maximum ca-pacity equal to 8000 kg has been submitted 100 times tothe D-Wave 2000Q. We compared the results with 100runs of the
QBsolv in terms of computational time andmean/max loaded weight. The results are presented inTable VIII and IX.
QBsolv was always able to reach fea-sible solution, and reached the optimal solution 33% ofthe times. The D-Wave 2000Q was more noisy, hittingfeasible solutions only 80% of the times and loading onaverage less weight on the aircraft.
VI. CONCLUSION AND FURTHERDEVELOPMENTS
In conclusion
QBsolv proved to be an efficient tool tovalidate the model, matching efficiently the exact solverfor problem of small dimension. However, for problem ofmedium/big dimension it is difficult to estimate how farthe solutions are from the optimal one. Since the mod-elling was completed successfully we believe that the onlymain points where the model could be further improvedis a fine tuning of the penalties scaling and of the amountof slack variables used. The optimal solution would be anadaptive and automated selection of penalties and slackvariables based on the input data that is submitted tothe solver. For the solution through a Quantum Annealera further development is to test the model on the nextgeneration of D-Wave annealers (based on the Pegasusarchitecture) that will be released next year (2020). [1] F. Glover, and G. Kochenberger.
A Tutorial on Formulat-ing and Using QUBO Models . 2019.[2] F. Booth, S.P. Reinhardt, and A.Roy.
Partitioning Op-timization Problem for Hybrid Classical/Quantum Execu-tion . 18 Oct. 2017. [3] J. Brugger, C. Seidel, M. Streif, F.A. Wudarski, and A.Buchleitner.
Quantum Annealing in the presence of disor-der . 27 Dec. 2018.[4] Airbus.
Airbus Quantum Computing Challenge, ProblemStatement n ◦
5, Aircraft Loading Optimization . 2019.
VII. APPENDIX: TABLES
TABLE I: Parameter values used for testing the local solver.
Symbol Value Description[Unit of measure]N 20 [1] Number of available positionsn 35 [1] Number of available containersL 40 [m] Length of the payload area on the aircraft W max W e S max x mincg -0,1 · L Minimum allowed centre of gravity position of the aircraft (forward limit) x maxcg · L Maximum allowed centre of gravity position of the aircraft (aft limit) x tcg · L Target centre of gravity position of the aircraft
TABLE II: Container data used for testing the local solver.
Container Container ContainerID type mass (kg)1 1 21342 1 34553 1 18664 1 16995 1 35006 1 33327 1 25788 1 23159 1 188810 1 178611 1 327712 1 298713 1 253414 1 211115 1 260716 1 156617 1 176518 1 194619 1 173220 1 164121 2 180022 2 98623 2 87324 2 176425 2 123926 2 148727 2 76928 2 83629 2 65930 2 76531 3 313232 3 353033 3 389234 3 346435 3 3282
TABLE III: Number of slack variables used in the examples.
Case Pos. assignment Slackvariables variablesPL 700 71PL+CL 700 118PL+CL+SL 700 386
TABLE IV: Success rate for the different aircraft loading conditions for the different set of constraints
Case % valid PL % valid CL % valid SLPL 94.4% 99.6% 58.4%PL+CL 98.0% 100% 63.0%PL+CL+SL 97.2% 100% 65.6%
TABLE V: Mean time to solution over 500 tests
Case Time (s)PL 32.9 sPL+CL 35.5 sPL+CL+SL 38.2 s
TABLE VI: Shear force errors percentages (0 errors means that all the positions respect the shear limits, 1 errormeans that one position broke the shear limit and so on).
Case % (errors=0) % (errors=1) % (errors=2) % (errors ≥ TABLE VII: Container data for the experiment on the D-Wave 2000Q.
Container Container ContainerID type mass (kg)1 1 21342 1 34553 1 18664 1 16995 1 35006 1 3332
TABLE VIII: Average time to solution, feasibility and optimality for
QBsolv and D-Wave 2000Q. The connectiondelay is not included (only computation time).
Solver Time (s) % Feasible sol. % Optimal sol.exact 104.3 - -qbsolv 0.161 100% 33%dwave 0.072 80% 4%
TABLE IX: Max and Mean solution weight for
QBsolv and D-Wave 2000Q
Solver Max Sol. weight Mean Sol. weightexact 7500 -qbsolv 7500 7394.8dwave 7500 4304.0 VIII. APPENDIX: IMAGES
FIG. 1: Result of the computation with the local solver
Qbsolv with n = 35, N = 20, with parameters of Tables IIand I and constraint PL . (a) Output configuration obtained with the local solver QBsolv , using allthe PL constraints except for f ( W ) . The abscissa represents the availableslots on the aircraft, the ordinate represents the containers, hence position j contains container i if cell p i,j of the matrix is colored in blue. As it can beobserved, each position assignment is correct: the lines reserved to mediumcontainers have only one colored cell both in the horizontal and verticaldirection, the lines reserved to small containers have only one colored cellhorizontally and maximum two vertically, those reserved to big containershave exactly two colored cells horizontally and exacly one vertically.(b) Disposition of the containers of the cargo using all the PL constraints except for f ( W ) : all theavailable positions are occupied, with a total resulting mass of 47739 kg. The red boxes are thecontainers of type T1 , the green boxes are the containers of type T2 and the blue boxes are thecontainers of type T3 .(c) Disposition of the containers of the cargo, using all the PL constraints, with a total resultingmass of 39616 kg. There are empty spaces because the maximum weight is almost saturated( W max = 40000 kg). Qbsolv with n = 35, N = 20, with parameters of Tables IIand I and constraints PL and CL . Total resulting mass of 28075 kg and a center or gravity equal to − .
83. The bluevertical lines represent the bounds (respectively − QBsolv with n = 35, N = 20, withparameters of Tables II and I and constraints PL , CL and SL . The orange line is the upper shear limit, the blueprofile is the shear curve of one solution.FIG. 4: Comparison of the distribution of center of gravity of solution between the cases PL and PL+CL.. The orange line is the upper shear limit, the blueprofile is the shear curve of one solution.FIG. 4: Comparison of the distribution of center of gravity of solution between the cases PL and PL+CL.