<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Lernen, Wissen, Daten, Analysen. October</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Eficient Light Source Placement using Quantum Computing</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Sascha Mücke</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Thore Gerlach</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Fraunhofer IAIS</institution>
          ,
          <addr-line>Sankt-Augustin</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Lamarr Institute, TU Dortmund University</institution>
          ,
          <addr-line>Dortmund</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2023</year>
      </pub-date>
      <volume>0</volume>
      <fpage>9</fpage>
      <lpage>11</lpage>
      <abstract>
        <p>NP-hard problems regularly come up in video games, with interesting connections to real-world problems. In the game Minecraft, players place torches on the ground to light up dark areas. Placing them in a way that minimizes the total number of torches to save resources is far from trivial. In this paper, we use Quantum Computing to approach this problem. To this end, we derive a QUBO formulation of the torch placement problem, which we uncover to be very similar to another NP-hard problem. We employ a solution strategy that involves learning Lagrangian weights in an iterative process, adding to the ever growing toolbox of QUBO formulations. Finally, we perform experiments on real quantum hardware using real game data to demonstrate that our approach yields good torch placements.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Quantum Computing</kwd>
        <kwd>QUBO</kwd>
        <kwd>Constrained Optimization</kwd>
        <kwd>ADMM</kwd>
        <kwd>Minecraft</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Intriguing scientific problems pop up when you would rather take your mind of them for a
while, e.g., when playing video games — although, of course, it comes as no complete surprise
to encounter them in this domain. Video games, by nature, pose a wide range of problems that
players are expected to solve in order to progress, such as slaying enemies, traversing mazes
or solving logical puzzles. Some games have even been shown to be NP-complete [1]. It is,
however, a mild surprise to encounter them in Minecraft, which is an exceptionally serene
open-world sandbox game developed by Mojang and first published around 2010 1. In Minecraft,
players can roam around a vast world containing mountains, oceans and caves made up entirely
of cubic blocks, giving the game its unique and slightly retro visual quality (see Fig. 1). The
game has been praised for fostering creativity in children (and adults) and has even been used
as a tool for teaching [2].</p>
      <p>However, in the darkness of a cave, hostile monsters can spawn on top of blocks that are
insuficiently lit, either by the sun or a light source such as a torch or lantern. These monsters
will attack the player, who therefore wants to light up dark areas as best as they can while
exploring. At the same time, building torches requires valuable resources, which is why the
(a) Players approaching a village
(b) Dimly lit cave with hostile creature
player wants to use them sparingly, which leaves us with an interesting constrained optimization
problem: Where should we place torches to properly light up an area using as few torches as
possible?</p>
      <p>The first key observation is that, given the discrete nature of Minecraft, solutions to this
problem can be described by binary variables  ∈ {0, 1} =.. B, where  = 1 indicates that
(a) 20 × 15
(b) 20 × 15
(c) 40 × 30
(d) same as above, with torches
(e) same as above, with torches
(f) same as above, with torches
we should place a torch at location . Problems of this kind can be approached with Quantum
Computing, which has been a promising focus of research in recent years. Quantum Computers
use Qubits to perform computations, which can take values 0 and 1, but also be in a superposition
of both at once. In particular, Quantum Annealers are being built that can be used to find the
ground state of Ising models by means of quantum tunneling efects [ 3, 4]. This model is
equivalent to a class of quadratic binary optimization problems called Qubo: Given an upper
triangular weight matrix  ∈ R× , we want to find a binary vector * such that
* = arg min ()</p>
      <p>∈B
with () ..= ⊤ =</p>
      <p>
        ∑︁
1≤ ≤ ≤ 
  ,
(
        <xref ref-type="bibr" rid="ref1">1</xref>
        )
where  is called the energy function. This problem is NP-hard, and numerous problems have
been re-formulated to be solvable in the form of Qubo, ranging from economics and finance
[5, 6, 7] over satisfiability [ 8], resource allocation and routing problems [9, 10] to machine
learning [11, 12, 13, 14, 15, 16]. The promise of eficient solvability on Quantum Hardware has
renewed and intensified research eforts for finding Qubo formulations of various problems.
      </p>
      <p>In this paper, we derive a formulation for the TorchPlacement problem. Due to the large
number of constraints, our method involves a learning procedure for Lagrangian weights. This is
performed in an iterative fashion on a real quantum computer, similar to [17]. We demonstrate
our method in a range of experiments, using both generated and actual game data from a
Minecraft world. Further, we discuss the surprising connection to another optimization problem
that we uncovered in the process of working on this article.</p>
      <p>In Section 2, we give a formal description of the TorchPlacement problem. In Section 3,
we develop a Qubo formulation that attempts to solve it, combining quantum-enhanced
optimization with an iterative learning scheme. In Section 4, we use our method to solve a range of
example instances of TorchPlacement and discuss our observations. Section 5 puts our work
in the context of similar work and related problems. Finally, in Section 6 we summarize our
ifndings.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Problem Statement</title>
      <p>As input, we are given a heightmap of a room, consisting of a rectangular grid of tiles, as
shown in Fig. 2. The grid has integer width  and height ℎ. Additionally, each grid site
 = (, ) ∈ [ℎ] × [] has an elevation value () ∈ N0 ∪ {∞}, where N0 denotes the set of
natural numbers including 0. We use the notation [] ..= {1, . . . , }. Intuitively, () is the “floor
level” of . If () = ∞, the tile is considered to be a wall. Let  = { ∈ [ℎ] × [] | () &lt; ∞}
the set of all grid sites that are not walls.</p>
      <p>Intuitively, the height map describes the top-down view of a 3-dimensional room consisting of
cubic blocks that can be either empty or non-empty (see Fig. 4). Assuming a discrete coordinate
system, each block has a location (, , )⊤ ∈ Z3. If (, ) = , then ∀′ &lt;  ≤ ′′ : (, , ′′)⊤
is empty and (, , ′)⊤ is non-empty. Let the predicate E() ≡ ⊤ (true) if and only if the block
at  is empty. Two blocks at  and ′ are considered neighbors if ‖ − ′‖1 = 1, i.e., if they
1
min</p>
      <p>| |
subject to ( |  , torch) ≥ min
with  ⊆ 
∀ ∈  .</p>
      <p>In this article, we set torch = 14 and min = 8, which are the same values as in Minecraft.
share a face. The set of empty neighbors of  is  () = { +  |  ∈ Z3, ‖‖1 = 1, E( + )}.
Finally, the distance between two sites  = (, ) and  = (′, ′), denoted by (, ), is the
shortest path from (, , ())⊤ to (′, ′, ())⊤ moving through empty neighboring blocks:
(, ) =
{︃0</p>
      <p>if  = ,
1 + min′∈ () (′, ) otherwise
If there is no path between the two blocks, we set (, ) = ∞. Examples of heightmaps with
distances are shown in Fig. 3.</p>
      <p>
        Given a heightmap, our objective is to place torches on some of the tiles in such a way that
all tiles have a minimal light level of min, using as few torches as possible. Light levels are
integers  ∈ N0, where 0 indicates complete darkness. If a torch is placed on a tile, the tile itself
receives a light level of torch. The light spreads to surrounding tiles and decreases gradually
with distance  described in Eq. (
        <xref ref-type="bibr" rid="ref2">2</xref>
        ), both horizontally and with elevation. If a tile is illuminated
by multiple nearby torches, it assumes the maximum over all light levels. Note that the way
that light spreads in Minecraft does not at all align with physical reality, but is game-specific.
Where in reality we would expect light to move in straight lines and be blocked by obstacles,
light in Minecraft has no sense of direction, but spreads evenly to all neighboring blocks, and
can even “creep around corners”. Let  ⊆  be the set of all tile sites that have a torch. The
light level of each tile  can then be described mathematically as
( |  , torch) = max max{0, torch − (, )} .
      </p>
      <p>
        ∈
If  = ∅, then we set ∀ : ( | ∅) = 0. Overall, the problem we are trying to solve can be
formalized as
(
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
(
        <xref ref-type="bibr" rid="ref3">3</xref>
        )
(
        <xref ref-type="bibr" rid="ref4">4</xref>
        )
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. A QUBO formulation for TorchPlacement</title>
      <p>
        as
As hinted at in the introduction to this article, TorchPlacement lends itself to Qubo as its
candidate solution space is the set of binary vectors B. In order to derive a Qubo formulation
for TorchPlacement, we need to (
        <xref ref-type="bibr" rid="ref1">1</xref>
        ) embed the candidate solutions into binary vectors and (
        <xref ref-type="bibr" rid="ref2">2</xref>
        )
formulate a 2nd order polynomial whose minimizing binary vector corresponds to a solution
of our original problem. The latter is done by computing the Qubo parameter values  (see
Eq. (
        <xref ref-type="bibr" rid="ref1">1</xref>
        )) from our problem instance at hand, which in our case is a heightmap with tiles  and
its corresponding distance function  :  ×  →
N0 as described in Section 2.
      </p>
      <p>We firstly arrange the elements of  in an arbitrary but fixed order , such that  denotes
the location of the -th tile for all  ∈ [] with  ..= ||. A subset  ⊆ 
binary vector  ∈ B via  ∧= (1{ ∈  })⊤∈[], where 1{·} is the indicator function defined
then corresponds to a
1{B} ..=
{︃1 if B ≡ ⊤ ,</p>
      <p>0 otherwise .
min
‖‖1</p>
      <p>
        with  ∈ B .
for some Boolean expression B. Equation (
        <xref ref-type="bibr" rid="ref3">3</xref>
        ) can now be written as
It is easy to see that if we set  =  ∀ ∈ [] with some arbitrary positive value  &gt; 0, the
energy function  will only be minimal for the binary vector 0 with (0) = 0 = ‖0‖1.
      </p>
      <p>
        Embedding the constraints from Eq. (
        <xref ref-type="bibr" rid="ref4">4</xref>
        ) into Qubo is far more challenging: Given a candidate
solution , we need to ensure that the light level is at least min, which is equivalent to saying
that the distance to the nearest torch must be short enough that the light coming from it is still
bright enough. To ensure this, the torch’s distance can be at most torch − min:
∈[],
=1
min (,  ) ≤ torch − min ∀ ∈ [] .
(
        <xref ref-type="bibr" rid="ref5">5</xref>
        )
      </p>
      <p>There are two problems with this set of inequalities: Firstly, max is a non-linear operation,
and Qubo can only represent quadratic energy functions. Secondly, Qubo is unconstrained by
definition, which is why we need to employ techniques to embed the constraints directly into
the weight matrix  such that the unconstrained solution still obeys our constraints. In the
following subsections we describe how we approached both of these challenges.</p>
      <sec id="sec-3-1">
        <title>3.1. Eliminating the Maximum Function</title>
        <p>There are several smooth approximations of the max functions, such as the LogSumExp, -norm
or the Boltzmann operator. As an example, consider the first-mentioned function
LSE (1, . . . , ) ..=</p>
        <p>
          log ∑︁   .

1

=1
We can re-write our inequality constraints in Eq. (
          <xref ref-type="bibr" rid="ref5">5</xref>
          ) by inverting the sign and incorporating
the condition  = 1 to max∈[](( − (,  )) − ) ≥ min − torch for some  &gt;
min̸= (,  ), which using LSE yields
        </p>
        <p>⇔
⇔

1</p>
        <p>log ∑︁  (− (,))−  
∑︁ −    (− (,))
≥ min − torch
≥  (min− torch)
 + ∑︁ −   ( (− (,)) − 1) ≥  (min− torch)
⊤() +  ≤ 0 ,
constraint
Thanks to all  being binary, we can re-write  as ( − 1) + 1, which yields a linear
where () = −  
−</p>
        <p>−  (,) and  =  (min− torch) − . LSE approaches max better
the larger we choose  . We implemented these constraints and found that approximations of
max lead to numerical instability due to the large magnitude diferences between the coeficients,
rendered solutions output from the Qubo solvers useless.</p>
        <p>However, there is a simpler formulation that exploits the binary nature of our constraints.
For that, we define the matrix  ∈ {0, 1}×  with entries  to be
 = 1{(,  ) ≤ torch − min},
∀,  ∈ [] .</p>
        <p>In order to ensure that min (,  ) ≤ torch − min, we can check whether
which immediately yields linear constraints and circumvents the max function entirely.</p>
        <p>
          Using Eq. (
          <xref ref-type="bibr" rid="ref6">6</xref>
          ) the optimization problem in Eqs. (
          <xref ref-type="bibr" rid="ref3">3</xref>
          ) and (
          <xref ref-type="bibr" rid="ref4">4</xref>
          ) can be reformulated to
∑︁   = () ≥ 1 ,
        </p>
        <p>min</p>
        <p>
          1⊤
subject to  ≥ 1 ,
(
          <xref ref-type="bibr" rid="ref6">6</xref>
          )
(
          <xref ref-type="bibr" rid="ref7">7</xref>
          )
(
          <xref ref-type="bibr" rid="ref8">8</xref>
          )
where 1 is the -dimensional vector consisting only of ones, and ≥ is applied element-wise.
Realizing this, we find that TorchPlacement has striking similarity to the SetCover problem:
Theorem 1. TorchPlacement is a special case of SetCover.
        </p>
        <p>
          Proof. In SetCover, we are given a set  and a collection of subsets  with  ⊆
 for
⋃︀
each  ∈ , and ⋃︀
∈  = . Given a heightmap with tiles  and distance function  as defined in Eq. (
          <xref ref-type="bibr" rid="ref2">2</xref>
          ),
∈  = . The objective is to find a  ⊆  such that | | is minimal and
we set  = ,  = [] and  = { ∈  : (, ) ≤
torch − min} for all  ∈ []. Thus, a
solution  ⊆  with minimal | | is a minimal set of torches that illuminates all other tiles.
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Handling Inequality Constraints</title>
        <p>
          The question remains how to obtain a Qubo from the constrained formulation in Eqs. (
          <xref ref-type="bibr" rid="ref7">7</xref>
          ) and (
          <xref ref-type="bibr" rid="ref8">8</xref>
          ).
To answer this question, we remark that the linear inequality constraint in Eq. (
          <xref ref-type="bibr" rid="ref8">8</xref>
          ) can be
reformulated with using an auxiliary vector  ∈ N0 with positive integer entries
 ≥ 1 ⇔  − 1 =  ,
leading to the slightly diferent but equivalent problem formulation
        </p>
        <p>min
∈{0,1},∈Z</p>
        <p>
          1⊤ +  1⊤Θ()
subject to  (, ) = 0 ,
min
and (
          <xref ref-type="bibr" rid="ref10">10</xref>
          ) is to introduce a matrix of binary slack variables  ∈ {0, 1}×  with  ..= ⌈log2 ⌉ [18].
Considering the vector  corresponding to all powers of two up to 2, i.e.,  = (1, 2, 4, . . . , 2)⊤,
we find that  = . The constrained problem in Eqs. (
          <xref ref-type="bibr" rid="ref9">9</xref>
          ) and (
          <xref ref-type="bibr" rid="ref10">10</xref>
          ) can then be reformulated to
an equivalent unconstrained problem by introducing a penalty parameter  &gt; 0
min
∈{0,1},∈{0,1}× 
1⊤ +  ‖ − 1
− ‖2 .
        </p>
        <p>Using this formulation, however, comes with the overhead of introducing  additional binary
variables leading to a total Qubo dimension of ( + 1). As we are still in the era of noisy
intermediate-scale quantum (NISQ) computers [19], it is better to resort to a Qubo formulation
that uses fewer qubits.</p>
        <p>To this end, we use an iterative method called Alternating Direction Method of Multipliers
(ADMM) [20]. Firstly, we establish a new problem formulation
with  &gt;</p>
        <p>
          0,  (, ) ..=  − 1 − , and Θ being an element-wise step function defined
as Θ() ..= (1{1 &lt; 0}, . . . , 1{ &lt; 0}). The term 1⊤Θ() penalizes vectors  ∈ Z with
negative entries, since we want  ∈ N0. Note that optimal solution vectors  ∈ {0, 1},  ∈ Z
of Eq. (
          <xref ref-type="bibr" rid="ref13">13</xref>
          ) are also optimal for the problem in Eqs. (
          <xref ref-type="bibr" rid="ref9">9</xref>
          ) and (
          <xref ref-type="bibr" rid="ref10">10</xref>
          ). We then introduce the augmented
Lagrangian [21, 22]
 (, ,  ,  ) ..= 1⊤ +  1⊤Θ() +  ⊤ (, ) +

2 ‖ (, )‖2 ,
with  and  being coeficients and multipliers for the penalty terms. For minimizing Eq. (
          <xref ref-type="bibr" rid="ref14">14</xref>
          ),
we use ADMM, which is outlined in Algorithm 1. The vectors  and  are updated in an
alternating fashion. In our case, line 5 can be written as
arg min  (, ,  ,  ) = arg min 1⊤ +  ⊤ (, ) +
∈{0,1}
∈{0,1}

2 ‖ (, )‖2
        </p>
        <p>
          (
          <xref ref-type="bibr" rid="ref9">9</xref>
          )
(
          <xref ref-type="bibr" rid="ref10">10</xref>
          )
(
          <xref ref-type="bibr" rid="ref11">11</xref>
          )
(
          <xref ref-type="bibr" rid="ref12">12</xref>
          )
(
          <xref ref-type="bibr" rid="ref13">13</xref>
          )
(
          <xref ref-type="bibr" rid="ref14">14</xref>
          )
Algorithm 1 Alternating Direction Method of Multipliers (ADMM)
Input: Initial  0 &gt; 0,
Output: * , * ,  * ,  * optimizing  (, ,  ,  )
1: * ←
2:  * ←
3:  * ←
4: repeat
0
0
9: until a convergence criterium is met
◁ Quantum annealer can be used
= arg min 1⊤ +  ⊤ +
corresponding to a Qubo formulation in Eq. (
          <xref ref-type="bibr" rid="ref1">1</xref>
          ), which can be solved with a quantum computer.
Line 6 can be reduced to
        </p>
        <p>∈Z
arg min  (, ,  ,  ) = arg min  1⊤Θ() +  ⊤ (, ) +
∈Z
∈Z
= arg min  1⊤Θ() +
= max{0,  − 1} ,

where 0 is the -dimensional vector consisting only of zeros and max is taken element-wise.</p>
        <p>
          For solving our original problem in Eqs. (
          <xref ref-type="bibr" rid="ref7">7</xref>
          ) and (
          <xref ref-type="bibr" rid="ref8">8</xref>
          ) we solve a sequence of Qubo problems
and update the other parameters according to Algorithm 1. Using a quantum computer for the
Qubo instances results in a hybrid quantum-classical algorithm. Let the subscript  denote
the state of the parameters * , ,*  * ,  * after the -th iteration of ADMM. We choose the
following update rule for  * in line 8
 +1 =
⎧
⎪
⎨
 ,
 /,
⎪
⎩ ,
if ‖ (, )‖ &gt; 10  ‖ ( − +1)‖ ,
if ‖ ( − +1)‖ &gt; 10  ‖ (, )‖ ,
else ,
with a fixed learning rate  ≥
we use a fixed budget of  of calls to the quantum computer.
        </p>
        <p>1, following [20]. In place of a convergence criterium in line 9</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Experimental Evaluation</title>
      <p>We conduct experiments on diferent exemplary heightmaps. Some heightsmaps are randomly
generated from 2D Perlin noise [23], others are created from cave sections within a Minecraft
world. We compare four diferent Qubo solvers utilizing the D-Wave Ocean2 Python package:
Simulated annealing (SA), Tabu search (Tabu), a combination of those two (TabuSA) and a
real quantum annealer (QA), namely a D-Wave Advantage System 5.4 with 5614 qubits and
40,050 couplers. The combination of SA and Tabu is achieved by using the D-Wave Hybrid3
Python package, parellelizing both methods, leading to better performance. For all solvers we
use the standard parameters. As a pre-processing step we perform parameter compression [24],
which leads to improved results for QA. The ADMM is repeated 10 times for every solver and
heightmap and we plot the mean performance along with the 95%-confidence intervals. We
found the hyperparameters  0 = 0.01 and  = 1.1 to yield the best results, hence we fix these
values for the upcoming experiments.</p>
      <p>In Fig. 5, we compare the performances of the diferent Qubo solvers for one real Minecraft
cave from Fig. 4 (right) with  = 67. For this, we plot the number of torches as well as the
number of violated constraints over the iterations of ADMM. We can see that the four Qubo
solvers converge to fulfilling all constraints, while QA places the most torches. This indicates
that its solution quality falls behind the other methods, which is a common problem of NISQ
devices. However, in Fig. 6 we depict the result of ADMM with QA for a particular run, after 2,
5 and 10 iterations. After 10 iterations, an optimal solution is found, such that every block is lit.</p>
      <p>From now on, we use TabuSA, since the dimension of the upcoming problems is too large
to obtain useful results with QA. Fig. 7 depicts solutions after a certain number of ADMM
iterations on the heightmaps of the other real Minecraft cave from Fig. 4 (left) with  = 195.
Again, we can see that with more iterations, more torches are placed and the constraints become
fulfilled. In Figs. 8 to 11 we depict ADMM solutions for randomly generated heightmaps of
varying sizes, using the TabuSA solver. For every map, two intermediate results during the
Lagrangian learning phase are shown. We can see that fewer and fewer constraints are violated,
until finally all tiles are lit with a small number of torches.</p>
      <p>2https://docs.ocean.dwavesys.com/en/stable/
3https://docs.ocean.dwavesys.com/projects/hybrid/en/stable/</p>
      <p>Tabu</p>
      <p>TabuSA</p>
    </sec>
    <sec id="sec-5">
      <title>5. Related Work</title>
      <p>Analyzing games in terms of their computational complexity has been part of computer science
research for decades [1, 25, 26]. Minecraft, in particular, has been used as a tool for research [2].</p>
      <p>As mentioned in Section 3.1, it turns out that TorchPlacement is a special case of SetCover,
where the subsets have a spatial interpretation in discrete 3D space. A Qubo formulation of
SetCover is given in [27], where auxiliary qubits are used to encode inequality constraints.
We chose a diferent strategy by employing ADMM [ 20] to learn the Lagrange multipliers
 iteratively in a hybrid quantum-classical fashion, which leads to smaller Qubo instances
with fewer qubits. A similar approach is followed in [28] using a custom iterative Lagrangian
algorithm, which we tried and found not to yield good results with our inequality constraints.
ADMM, which we chose instead, is more firmly grounded in theory.</p>
      <p>
        We also find that TorchPlacement and SetCover are similar to other problems such
(b) 2 iterations (23)
(c) 5 iterations (
        <xref ref-type="bibr" rid="ref14">14</xref>
        )
(d) After 20 iterations (0)
as MaximumCoverage, where an upper limit  is given, and – staying in the context of
TorchPlacement– we are looking to light up the largest possible area using at most  torches.
      </p>
    </sec>
    <sec id="sec-6">
      <title>6. Conclusion</title>
      <p>
        In this article, we showed that the TorchPlacement problem arising from the video game
Minecraft can be solved on quantum computers. To this end, we used an ADMM-based procedure
to learn Lagrange multipliers in a Qubo formulation, which we then solved on a quantum
(b) 2 iterations (243)
(c) 10 iterations (
        <xref ref-type="bibr" rid="ref16">16</xref>
        )
(d) 30 iterations (0)
annealer. In contrast to other methods for solving the more general SetCover problem we
require no auxiliary variables. The results demonstrated that the method works well for
heightmaps with up to 700 floor tiles. Due to limitations of today’s noisy quantum hardware, we
were able to solve the problem on an actual quantum annealer with heightmaps up to  ≤ 100.
      </p>
      <p>While we considered TorchPlacement from a video game perspective, it generalizes to
similar setups, where we want to cover a certain area by using as few resources as possible:
Sensors or surveillance cameras with a fixed finite set of possible locations come to mind. When
we can define a distance between these locations, and we require a maximum distance from
each location to the nearest resource, our method is applicable.</p>
      <p>To the best of our knowledge, this article is the first instance of quantum computing being
applied to solving a problem arising from Minecraft. While this is a more lighthearted context
to employ this relatively new computing resource, it has the potential to grant us insights that
may be useful for applications to real-word problems, and serve as an illustrative example of
how to approach problems from a quantum computing perspective.</p>
    </sec>
    <sec id="sec-7">
      <title>Acknowledgments</title>
      <p>This research has been funded by the Federal Ministry of Education and Research of Germany
and the state of North Rhine-Westphalia as part of the Lamarr Institute for Machine Learning
and Artificial Intelligence.
annealing optimization, in: Quantum Technology and Optimization Problems: First
International Workshop, QTOP 2019, Munich, Germany, March 18, 2019, Proceedings 1,
Springer, 2019, pp. 11–22.
[19] J. Preskill, Quantum computing in the nisq era and beyond, Quantum 2 (2018) 79.
[20] S. Boyd, N. Parikh, E. Chu, B. Peleato, J. Eckstein, et al., Distributed optimization and
statistical learning via the alternating direction method of multipliers, Foundations and
Trends® in Machine learning 3 (2011) 1–122.
[21] M. J. Powell, A method for nonlinear constraints in minimization problems, Optimization
(1969) 283–298.
[22] D. Gabay, B. Mercier, A dual algorithm for the solution of nonlinear variational problems
via finite element approximation, Computers &amp; mathematics with applications 2 (1976)
17–40.
[23] K. Perlin, An image synthesizer, ACM Siggraph Computer Graphics 19 (1985) 287–296.
[24] S. Mücke, T. Gerlach, N. Piatkowski, Optimum-preserving QUBO parameter compression,
arXiv preprint arXiv:2307.02195 (2023).
[25] G. Kendall, A. Parkes, K. Spoerer, A Survey of NP-Complete Puzzles, ICGA Journal 31
(2008) 13–34. doi:10.3233/ICG-2008-31103.
[26] L. Gualà, S. Leucci, E. Natale, Bejeweled, Candy Crush and other match-three games are
(NP-)hard, in: 2014 IEEE Conference on Computational Intelligence and Games, 2014, pp.
1–8. doi:10.1109/CIG.2014.6932866.
[27] A. Lucas, Ising formulations of many NP problems, Frontiers in Physics 2 (2014). doi:10.</p>
      <p>3389/fphy.2014.00005.
[28] H. N. Djidjev, Quantum annealing with inequality constraints: The set cover problem,
2023.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>R.</given-names>
            <surname>Kaye</surname>
          </string-name>
          ,
          <article-title>Minesweeper is NP-complete</article-title>
          ,
          <source>Mathematical Intelligencer</source>
          <volume>22</volume>
          (
          <year>2000</year>
          )
          <fpage>9</fpage>
          -
          <lpage>15</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>S.</given-names>
            <surname>Nebel</surname>
          </string-name>
          , S. Schneider,
          <string-name>
            <given-names>G. D.</given-names>
            <surname>Rey</surname>
          </string-name>
          ,
          <article-title>Mining learning and crafting scientific experiments: A literature review on the use of minecraft in education and research</article-title>
          ,
          <source>Journal of Educational Technology &amp; Society</source>
          <volume>19</volume>
          (
          <year>2016</year>
          )
          <fpage>355</fpage>
          -
          <lpage>366</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>T.</given-names>
            <surname>Kadowaki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Nishimori</surname>
          </string-name>
          ,
          <article-title>Quantum annealing in the transverse Ising model</article-title>
          ,
          <source>Physical Review E</source>
          <volume>58</volume>
          (
          <year>1998</year>
          )
          <fpage>5355</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>E.</given-names>
            <surname>Farhi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Goldstone</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Gutmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Sipser</surname>
          </string-name>
          ,
          <article-title>Quantum computation by adiabatic evolution</article-title>
          ,
          <source>arXiv preprint quant-ph/0001106</source>
          (
          <year>2000</year>
          ).
          <source>arXiv:quant-ph/0001106.</source>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>DJ</surname>
          </string-name>
          .
          <article-title>Laughhunn, Quadratic binary programming with application to capital-budgeting problems</article-title>
          ,
          <source>Operations research 18</source>
          (
          <year>1970</year>
          )
          <fpage>454</fpage>
          -
          <lpage>461</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>P. L.</given-names>
            <surname>Hammer</surname>
          </string-name>
          , E. Shlifer,
          <article-title>Applications of pseudo-Boolean methods to economic problems, Theory and decision 1 (</article-title>
          <year>1971</year>
          )
          <fpage>296</fpage>
          -
          <lpage>308</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>D.</given-names>
            <surname>Biesner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Gerlach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bauckhage</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Kliem</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sifa</surname>
          </string-name>
          ,
          <article-title>Solving subset sum problems using quantum inspired optimization algorithms with applications in auditing and financial data analysis</article-title>
          ,
          <source>in: 2022 21st IEEE International Conference on Machine Learning and Applications (ICMLA)</source>
          , IEEE,
          <year>2022</year>
          , pp.
          <fpage>903</fpage>
          -
          <lpage>908</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>G.</given-names>
            <surname>Kochenberger</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Glover</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Alidaee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Lewis</surname>
          </string-name>
          ,
          <article-title>Using the unconstrained quadratic program to model and solve Max 2-SAT problems</article-title>
          ,
          <source>International Journal of Operational Research</source>
          <volume>1</volume>
          (
          <year>2005</year>
          )
          <fpage>89</fpage>
          -
          <lpage>100</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F.</given-names>
            <surname>Neukart</surname>
          </string-name>
          , G. Compostella,
          <string-name>
            <given-names>C.</given-names>
            <surname>Seidel</surname>
          </string-name>
          , D. von Dollen,
          <string-name>
            <given-names>S.</given-names>
            <surname>Yarkoni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Parney</surname>
          </string-name>
          ,
          <article-title>Trafic Flow Optimization Using a Quantum Annealer, Frontiers in ICT 4 (</article-title>
          <year>2017</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>T.</given-names>
            <surname>Stollenwerk</surname>
          </string-name>
          , E. Lobe,
          <string-name>
            <given-names>M.</given-names>
            <surname>Jung</surname>
          </string-name>
          ,
          <article-title>Flight Gate Assignment with a Quantum Annealer</article-title>
          ,
          <source>in: Quantum Technology and Optimization Problems, Lecture Notes in Computer Science</source>
          , Springer International Publishing,
          <year>2019</year>
          , pp.
          <fpage>99</fpage>
          -
          <lpage>110</lpage>
          . doi:
          <volume>10</volume>
          .1007/ 978-3-
          <fpage>030</fpage>
          -14082-3\_9.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>C.</given-names>
            <surname>Bauckhage</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Ojeda</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sifa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Wrobel</surname>
          </string-name>
          ,
          <article-title>Adiabatic quantum computing for kernel k= 2 means clustering</article-title>
          .,
          <source>in: LWDA</source>
          ,
          <year>2018</year>
          , pp.
          <fpage>21</fpage>
          -
          <lpage>32</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>S.</given-names>
            <surname>Mücke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Piatkowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Morik</surname>
          </string-name>
          ,
          <article-title>Learning Bit by Bit: Extracting the Essence of Machine Learning</article-title>
          ,
          <source>in: Proceedings of the Conference on "Lernen</source>
          , Wissen, Daten,
          <source>Analysen" (LWDA)</source>
          , volume
          <volume>2454</volume>
          <source>of CEUR Workshop Proceedings</source>
          ,
          <year>2019</year>
          , pp.
          <fpage>144</fpage>
          -
          <lpage>155</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>P.</given-names>
            <surname>Date</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Arthur</surname>
          </string-name>
          ,
          <string-name>
            <surname>L.</surname>
          </string-name>
          <article-title>Pusey-Nazzaro, QUBO Formulations for Training Machine Learning Models</article-title>
          , arXiv:
          <year>2008</year>
          .
          <volume>02369</volume>
          (
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>S.</given-names>
            <surname>Mücke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Heese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Müller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Wolter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Piatkowski</surname>
          </string-name>
          ,
          <article-title>Feature selection on quantum computers</article-title>
          ,
          <source>Quantum Machine Intelligence</source>
          <volume>5</volume>
          (
          <year>2023</year>
          ). doi:
          <volume>10</volume>
          .1007/s42484-023-00099-z.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>N.</given-names>
            <surname>Piatkowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Gerlach</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Hugues</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sifa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bauckhage</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Barbaresco</surname>
          </string-name>
          ,
          <article-title>Towards bundle adjustment for satellite imaging via quantum machine learning</article-title>
          ,
          <source>in: 2022 25th International Conference on Information Fusion (FUSION)</source>
          , IEEE,
          <year>2022</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>C.</given-names>
            <surname>Bauckhage</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Piatkowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sifa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Hecker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Wrobel</surname>
          </string-name>
          ,
          <article-title>A qubo formulation of the k-medoids problem</article-title>
          .,
          <source>in: LWDA</source>
          ,
          <year>2019</year>
          , pp.
          <fpage>54</fpage>
          -
          <lpage>63</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>K.</given-names>
            <surname>Yonaga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Miyama</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ohzeki</surname>
          </string-name>
          ,
          <article-title>Solving inequality-constrained binary optimization problems on quantum annealer</article-title>
          , arXiv preprint arXiv:
          <year>2012</year>
          .
          <volume>06119</volume>
          (
          <year>2020</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>T.</given-names>
            <surname>Vyskočil</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Pakin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. N.</given-names>
            <surname>Djidjev</surname>
          </string-name>
          ,
          <article-title>Embedding inequality constraints for quantum</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>