<!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 />
    <article-meta>
      <title-group>
        <article-title>A CBR Approach to the Angry Birds Game</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Adil Paul</string-name>
          <email>adil.paul@upb.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Eyke Hullermeier</string-name>
          <email>eyke@upb.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science University of Paderborn</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <fpage>68</fpage>
      <lpage>77</lpage>
      <abstract>
        <p>In this paper, we present a CBR approach for implementing an agent playing the well-known Angry Birds game. We adopt a preference-based procedure for constructing the case base, collecting experience from a random agent that continually explores the problemsolution space and improves the quality of already found solutions. As the retrieve phase involves nding a game scene similar to a given one, we develop a measure to assess the dissimilarity between two game scenes, which is based on solving appropriate linear assignment problems. A comparison of our agent with state-of-the-art computer programs shows promising results.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Angry Birds is a popular video game, in which the player has to shoot birds
from a slingshot at pigs that are protected with objects from di erent types of
materials, including wood, stone, and ice. Some birds have speci c capabilities
that allow them to explode, split into several birds, pick up speed, etc. The game
has di erent levels, each level coming with its speci c representation of pigs and
objects hiding them. A level is solved when all the pigs are destroyed, and the
goal of a player is to solve all the levels, keeping the number of shot birds as low
as possible.</p>
      <p>Since the rst edition of the Angry Birds AI competition in 2012, di erent
approaches, ranging from qualitative representation and reasoning over
simulation of game scenes to classical supervised machine learning algorithms, have
been leveraged to build agents playing the game. In this paper, we develop an
Angry Birds agent on the basis of the case-based reasoning (CBR) paradigm.
To the best of our knowledge, this is the rst CBR approach to Angry Birds.
One of the main components of our Angry Birds agent is a case base that stores
problem-solution pairs, i.e., game scenes and appropriate best shots. We use
a preference-based approach to build the case base, which compares di erent
solutions for a given problem and maintains the better one.</p>
      <p>The rest of the paper is organized as follows. In the next section, we brie y
review some of the existing approaches for agents playing the Angry Birds game.
In Section 3, we present our approach, and in Section 4, we analyze its
performance experimentally. We conclude our work and outline possible directions for
future work in Section 5.</p>
      <p>Copyright © 2015 for this paper by its authors. Copying permitted for private and
academic purposes. In Proceedings of the ICCBR 2015 Workshops. Frankfurt, Germany.</p>
    </sec>
    <sec id="sec-2">
      <title>Existing Approaches</title>
      <p>
        Most of the work so far has been concerned with the representation of the
different types of objects in Angry Birds. Lin et al. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] classify the objects into
dynamic, which are mainly convex polygons, and static ones, which comprise
concave polygons, and use bounding convex polygons (BCPs) to represent the
former and edge detection and Hough transform to detect the latter. Zhang and
Renz [
        <xref ref-type="bibr" rid="ref12 ref13">12, 13</xref>
        ] also make use of the spatial representation of objects and,
moreover, reason about their stability. They build on an extension of the rectangle
algebra to assess the stability of blocks of objects, upon which they can decide
where to hit a block so as to a ect it maximally.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], the authors assign a numerical score to each reachable object, based
on its physical properties. The score is supposed to re ect the extent of damage
it su ers if being hit, and shoots at objects with low stability but high in uence
on pigs or shelters of pigs. Ferreira et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] also assign a utility value to the
objects based on spatial properties, but because of the lack of certainty in the
position of the objects, they incorporate concepts of probability and uncertainty
to determine the chance of a bird to hit a given target.
      </p>
      <p>
        Simulation-based approaches include the work by Polceanu and Buche [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ],
who build their decision making based on the theory of mental simulation. More
precisely, their agent observes the e ects of performing multiple simulations of
di erent shots in a given game scene and selects the optimal solution based on
these results.
      </p>
      <p>
        The remaining category of approaches encompasses agents that leverage
di erent machine learning algorithms. In order to learn how to judge shots,
Narayan-Chen et al. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] train a weighted majority and a Naive Bayes algorithm
on a data set consisting of good and bad shots in di erent states of the game.
Tziortziotis and Buche [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] use a tree structure to represent the objects in a
game scene, and formulate the problem of selecting an object for shooting as a
regression problem. They associate with each pair of object material and bird
a Bayesian linear regression model, building a competitive ensemble of models,
whose parameters are estimated in an online fashion. The decision is then made
according to the best prediction of the ensemble model.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>A Case-based Angry Birds Agent</title>
      <p>
        We employ the CBR approach [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] to build an agent that plays the Angry Birds
game. The experience-oriented learning and reasoning paradigm of CBR rst of
all requires the creation of a case base that stores problem-solution pairs. As the
problem space in the domain of Angry Birds is in nite, and no exact
characterization of an optimal solution (the best shot) for a problem (a description of a
game scene) exists, a way of gathering expressive pairs of problems and
approximate solutions (game scenes together with reasonably good shots) is needed.
Further, a game scene in Angry Birds comprises objects with di erent shapes,
which should be represented and stored appropriately. Thus, a representation
that re ects the spatial properties of the di erent objects involved in the game
is another concern. Lastly, once the case base is built and appropriately stored,
the problem of retrieving cases similar to a given query case needs to be
addressed, which in turn necessitates assessing the similarity between two game
scenes. In the following, we elaborate on each of these issues.
3.1
      </p>
      <sec id="sec-3-1">
        <title>Case Base Construction</title>
        <p>The core of a CBR system is a case base that stores previously encountered
problems and associated solutions. In the context of Angry Birds, a single case
should enclose a problem description part, with a representation of a game scene,
covering the slingshot and all objects and pigs, and a solution part, containing
the best shot one can execute in the given scene. The notion of an optimal
solution in a given game scene, i.e., the shot that will lead to the highest change
in score, is actually not well-de ned. Therefore, we need a procedure to nd
solutions of at least close-to-optimal quality.</p>
        <p>
          Inspired by the general framework of preference-based CBR [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], we construct
a case base by comparing the quality of solutions that have been tried so far.
The basic principle of the approach consists of randomly trying di erent solutions
for a problem and maintaining the best one. The advantages of this approach
are two-fold. First, because of its self-adaptive nature, it does not rely on any
external domain expert to provide solutions for the potentially in nite number
of problems. Second, as the problem and solution space are explored more and
more, the extent of the case base is enlarged and its quality is improved over
time.
        </p>
        <p>In the context of Angry Birds, we concretise the approach as follows. We let
arbitrary agents play in di erent game scenes and record the game scene along
with the shot executed by the agent and the change in score. Once we encounter
a game scene which is similar to another one already contained in the case base,
and where the agent performs better, we replace the solution part of the old
case (i.e., the shot) with the new one. The steps of the process of case base
construction are outlined in Figure 1 as a owchart diagram.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Case Representation</title>
        <p>
          The Angry Birds game involves di erent types of objects: a sling, hills, pigs,
blocks of stone, wood or ice, TNTs and birds with di erent capabilities
expressed in terms of colours, including red, yellow, blue, black, and white. The
Angry Birds Basic Game Playing Software [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] provides two possibilities of
representing theses objects: the Minimum Bounding Rectangle (MBR) and the real
shape representation. While the MBR segmentation of an object consists solely
of nding a rectangle with minimal area, which completely covers it, the real
shape segmentation represents the objects more precisely using circles,
rectangles and polygons, and distinguishes between hollow and solid objects. As such,
the latter is more precise but also more costly to compute. In this paper, we
con ne ourselves to the MBR representation of objects.
        </p>
        <p>Start</p>
        <p>Observe a game
Play a random shot and</p>
        <p>observe the score
Search for the most similar
game scene to the played one
Store the played game NO
scene, the shot, and
the score achieved</p>
        <p>Similar game
scene found?</p>
        <p>Compare the score achieved
Yes with the score corresponding</p>
        <p>to the most similar scene
NO</p>
        <p>Achieved score &gt;
score of the most
similar scene?</p>
        <p>Yes
Replace the shot and the score
of the most similar scene with
those of the new one</p>
        <p>For describing the rectangles, we adopt the interval-based representation,
where a rectangle in the 2-dimensional space R2 has the following form: R =
[l; u] = [l1; u1] [l2; u2] ; where l = (l1; l2) and u = (u1; u2) are the coordinates of
the lower left and upper right vertex of R, respectively. A complete game scene
is represented through the set of the MBRs of all objects, together with their
type when an object and colour when a bird.</p>
        <p>Besides the game scene, collecting the cases also involves recording shots,
which constitute the solution part of a case. In the Angry Birds Basic Game
Playing Software, a shot is represented in the form of a 6-dimensional vector
s = (x; y; dx; dy; tshot; ttap), where (x; y) and (x + dx; y + dy) are the coordinates
of the focus and release point, respectively, tshot speci es the releasing and ttap
the tapping time of the bird in milliseconds.</p>
        <p>To illustrate how a case is constructed, we consider the situation shown in
Figure 2. The start game scene is shown in the picture on the left. The resulting
scene after performing the shot with the trajectory indicated by the red line is
shown in the picture on the right, where the change in score is seen as well.</p>
        <p>The case extracted from this scenario will contain the original scene, the
performed shot and the achieved score, which we represent as follows:
When the agent is playing, it gets a representation of the current game scene,
searches the case base for the case with the most similar game scene and adopts
its shot. Therefore, an appropriate measure to assess the similarity respectively
dissimilarity between two game scenes is a key prerequisite for a successful agent.
We compute the overall dissimilarity between two game scenes as the sum of the
dissimilarities between their individual components:
diss(scene1; scene2) = diss(scene1:Sling; scene2:Sling)
+ diss(scene1:BirdT ype; scene2:BirdT ype)
+ diss(scene1:Hills; scene2:Hills
+ diss(scene1:P igs; scene2:P igs)
+ diss(scene1:T N T s; scene2:T N T s)
+ diss(scene1:BlocksS ; scene2:BlocksS )
+ diss(scene1:BlocksW ; scene2:BlocksW )
+ diss(scene1:BlocksI ; scene2:BlocksI ) ;
where BlocksS ; BlocksW and BlocksI denote blocks of stone, wood and ice,
respectively.</p>
        <p>The dissimilarity of two slings is just the dissimilarity between their MBRs.
For the bird type, we compute the dissimilarity as follows:
(0;</p>
        <p>if the types are equal;
constant; otherwise:
diss(scene1:BirdT ype; scene2:BirdT ype) =
Measuring the dissimilarity between two game scenes in each of the remaining
components (hills, pigs, TNTs, and blocks) reduces to measuring the
dissimilarity between the two sets of rectangles, with potentially di erent cardinality,
corresponding to the MBRs surrounding them. This requires building pairs from
the elements of the two sets, between which the dissimilarity is to be computed.
The overall dissimilarity between the two sets is then the sum of the
dissimilarities between all pairs. We formulate the task of computing the dissimilarity
between two sets of rectangles as a (potentially unbalanced) linear assignment
problem, where the agents are the elements of one set, tasks are the elements
of the other set and the total cost of an assignment is the overall sum of the
dissimilarities between all built pairs.</p>
        <p>
          In the following, we proceed with the description of the measure we use
for assessing the dissimilarity between two rectangles, prior to detailing our
approach to computing the dissimilarity between two game scenes in the
abovementioned components through solving appropriate assignment problems.
Dissimilarity Between Two Rectangles. Di erent measures exists to assess
the dissimilarity between two rectangles in a p-dimensional space. We use the
vertex-type distance dv [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ], which is de ned for two 2-dimensional rectangles
R1 = l(1); u(1) = hl1(1); u(11)i hl2(1); u(21)i and R2 = l(2); u(2) = hl1(2); u(12)i
hl2(2); u(22)i ; as follows:
dv (R1; R2) = l(1)
1
l1(2) 2 +
Dissimilarity Between Two Sets of Rectangles. As stated above, we build
on solving an assignment problem to compute the dissimilarity between two sets
of rectangles, which represent the MBRs of objects of speci c material in two
game scenes to be compared.
        </p>
        <p>The linear assignment problem consists of mutually assigning objects of two
sets A = fa1; : : : ; ang and B = fb1; : : : ; bng in a cost-optimal manner. Formally,
assignment costs are de ned in terms of a matrix C = (cij ), where cij denotes
the cost of assigning ai to bj (and vice versa), i:j 2 [N ] = f1; : : : ; N g. The goal,
then, is to nd an assignment that minimizes the total cost
with
subject to the following constraints:</p>
        <p>X X
i2[N] j2[N]</p>
        <p>cij xij
xij =
(1; if ai and bj are mutually assigned;
0; otherwise:
;
j2[N]
i2[N]
X xij = 1 for all i 2 [N ];</p>
        <p>
          X xij = 1 for all j 2 [N ];
The Hungarian algorithm [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] is one of the best-known methods for solving the
assignment problem. It is mainly based on the observation that adding or
subtracting a constant from all the entries of a row or a column of the cost matrix
does not change the optimal solution of the underlying assignment problem.
Thus, the algorithm proceeds iteratively, subtracting and adding constants in
each step to speci c rows and columns of the cost matrix, in such a way that
more and more zero-cost pairs are built, until an optimal solution can be found.
We refer to [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] for a detailed description of the Hungarian algorithm.
        </p>
        <p>In the simplest form of the assignment problem, the number of objects in
A and B are equal. For the problem at hand, this assumption does not hold;
instead, we are dealing with an unbalanced assignment problem. To handle such
problems, one usually introduces dummy rows or columns in the cost matrix,
depending on which number exceeds the other. Normally, the introduced entries
are lled with zeros, but this does not t our purpose, because the addition or
removal of objects will normally in uence the best shot in a scene. We overcome
this issue by associating a penalty with objects that remain unassigned. The
penalty term for an unassigned rectangle is its distance to the zero-perimeter
rectangle located at the origin, i.e., R = [0; 0] [0; 0] :
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Experimental Results</title>
      <p>We begin our experimental analysis with the construction of the case base, in
which we proceed as follows. We run a random agent that chooses the coordinates
of the shot to be executed fully at random, and we restrict ourself to the rst 21
levels of the \Poached Eggs" episode of Angry Birds. The agent plays each level
several times and the cases from each level are rst collected in separate les. The
distribution of the number of cases we gathered over the di erent levels of the
game, shown in Table 1, was not uniform. That is, we dedicate more examples
to harder levels than to easier ones. At the end, we combine all cases in one le,
ending up with a case base of total size of 11; 703, which serves as the main case
base for our agent.</p>
      <p>After the case base was constructed, we rst tested the performance of our
agent on the above-mentioned levels. To this end, we let the agent play 10 games
and report the minimal, maximal, and average score for each level, together with
the standard deviation, in Table 2.</p>
      <p>To get an idea of how our agent performs in comparison to others, Figure 3
plots the average score of our agent from Table 2 together with the scores of
the naive agent, the top-3 agents of the 2013 and 2014 participants of the AI
competition, and the average scores of all 30 participants, on all 21 levels, based
on the 2014 benchmarks provided on the aibirds.org website. This comparison
shows that our agent clearly outperforms both the naive and the average agent
in both per-level and total scores, and is even competitive to the top-3 agents.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion and Future Work</title>
      <p>We made use of CBR to build an Angry Birds playing agent. The results of an
experimental study, in which we compared our agent with others, including the
top-3 systems of previous AI competitions, are very promising, especially in light
of the rather simple implementation of our agent so far. In fact, we are convinced
that our agent's performance can be further enhanced through the collection of
more cases and the re nement of the di erent steps of the CBR cycle.</p>
      <p>More concretely, this work can be extended along the following directions.
First, the real shape instead of the MBR representation can be used to represent
the objects involved in the game. Second, a weighted version of the distance
measure between game scenes can be learnt. Third, cases from levels of the
game other than the ones of the \Poached Eggs" episode can be extracted to
increase the size and coverage of the case base. Fourth, since our agent does not
realize any adaptation of the retrieved solutions so far, a sophisticated adaptation
strategy could be another means to improve performance.</p>
      <p>Acknowledgments. This work has been supported by the German Research
Foundation (DFG).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Aamodt</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Plaza</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          :
          <article-title>Case-based reasoning: Foundational issues, methodological variations, and system approaches</article-title>
          .
          <source>Arti cial Intelligence Communications</source>
          <volume>7</volume>
          (
          <issue>1</issue>
          ),
          <volume>3959</volume>
          (
          <year>1994</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Bock</surname>
            ,
            <given-names>H.H.</given-names>
          </string-name>
          <article-title>Analysis of symbolic data: Exploratory methods for extracting statistical information from complex data</article-title>
          . E. Diday (Ed.). Springer-Verlag New York, Inc., Secaucus, NJ, USA (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Ferreira</surname>
            ,
            <given-names>L.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lopes</surname>
            ,
            <given-names>G.A.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santos</surname>
            ,
            <given-names>P.E.</given-names>
          </string-name>
          :
          <article-title>Combining qualitative spatial representation utility function and decision making under uncertainty on the Angry Birds domain</article-title>
          .
          <source>In: IJCAI 2013 Symposium on AI in Angry Birds</source>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Ge</surname>
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gould</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Renz</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abeyasinghe</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Keys</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , Zhang, P.
          <source>Angry Birds basic game playing software, version 1.32. Technical report. Research School of Computer Science</source>
          , The Australian National University (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. Hullermeier, E.,
          <string-name>
            <surname>Schlegel</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Preference-based</surname>
            <given-names>CBR</given-names>
          </string-name>
          :
          <article-title>First steps toward a methodological framework</article-title>
          . In: Ram,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Wiratunga</surname>
          </string-name>
          ,
          <string-name>
            <surname>N. (eds.) ICCBR</surname>
          </string-name>
          <year>2011</year>
          .
          <article-title>LNCS</article-title>
          , vol.
          <volume>6880</volume>
          , pp.
          <fpage>7791</fpage>
          . Springer, Heidelberg (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Kuhn</surname>
            ,
            <given-names>H. W.</given-names>
          </string-name>
          <article-title>The Hungarian method for the assignment problem</article-title>
          .
          <source>Naval Research Logistics</source>
          ,
          <volume>2</volume>
          :
          <fpage>8397</fpage>
          (
          <year>1955</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Lin</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          , Zhang, H.:
          <article-title>Object representation in Angry Birds game</article-title>
          .
          <source>In: IJCAI 2013 Symposium on AI in Angry Birds</source>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Narayan-Chen</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xu</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shavlik</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>An empirical evaluation of machine learning approaches for Angry Birds</article-title>
          .
          <source>In: IJCAI 2013 Symposium on AI in Angry Birds</source>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Polceanu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Buche</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Towards a theory-of-mind-inspired generic decisionmaking framework</article-title>
          .
          <source>In: IJCAI 2013 Symposium on AI in Angry Birds</source>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Tziortziotis</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Papagiannis</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blekas</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <article-title>A Bayesian ensemble regression framework on the Angry Birds game</article-title>
          .
          <source>In: ECAI 2014 Symposium on Arti cial Intelligence in Angry Birds</source>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Wale</surname>
          </string-name>
          ,ga, P.,
          <string-name>
            <surname>Lechowski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zawidzki</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Qualitative physics in Angry Birds: rst results</article-title>
          .
          <source>In: ECAI 2014 Symposium on Arti cial Intelligence in Angry Birds</source>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Renz</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>Qualitative spatial representation and reasoning in Angry Birds: rst results</article-title>
          .
          <source>In: IJCAI 2013 Symposium on AI in Angry Birds</source>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Zhang</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Renz</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>Qualitative spatial representation and reasoning in Angry Birds: the extended rectangle algebra</article-title>
          .
          <source>In: Proceedings of the 14th International Conference on Principles of Knowledge Representation and Reasoning</source>
          , KR14, p. to appear, Vienna, Austria (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>