<!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>Extracting CCGs for Plan Recognition in RTS Games</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Pavan Kantharaju and Santiago Ontan˜ o´n</string-name>
          <email>fpk398, so367g@drexel.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Christopher W. Geib</string-name>
          <email>cgeib@sift.net</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Drexel University</institution>
          ,
          <addr-line>3141 Chestnut St, Philadelphia, PA 19104</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>SIFT LLC.</institution>
          ,
          <addr-line>319 1st Ave. South, Suite 400, Minneapolis, MN 55401</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Domain-configurable planning and plan recognition approaches such as Hierarchical Task Network and Combinatory Categorial Grammar-based (CCG) planning and plan recognition require a domain expert to handcraft a domain definition for each new domain in which we want to plan or recognize. This paper describes an approach to automatically extracting these definitions from plan traces acquired from Real-Time Strategy (RTS) game replays. Specifically, we present a greedy approach to learning CCGs from sets of plan trace, goal pairs that extends prior work on learning CCGs for plan recognition. We provide an empirical evaluation of our learning algorithm in the challenging domain of RTS games. Our results show that we are able to learn a CCG that represents larger sequences of actions, and use them for plan recognition. Our results also demonstrate how scaling the size of the plan traces affects the size of the learned representation, which paves the road for interesting future work.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Domain-configurable planning and plan recognition have
been used in various applications such as robotics and
games. Each approach requires a domain definition that
represents knowledge about the structures of plans and actions
in an application domain. This knowledge can be
represented using Planning Domain Definition Language
        <xref ref-type="bibr" rid="ref19">(McDermott et al. 1998)</xref>
        , Hierarchical Task Networks
        <xref ref-type="bibr" rid="ref3">(Erol,
Hendler, and Nau 1994)</xref>
        , and Combinatory Categorial
Grammars (CCG)
        <xref ref-type="bibr" rid="ref27">(Steedman 2001)</xref>
        . CCGs are a grammar
formalism that has been shown to effectively capture phenomenon
in real-world language
        <xref ref-type="bibr" rid="ref6">(Geib and Steedman 2007)</xref>
        and more
recently represent and recognize plans in the form of the
ELEXIR framework
        <xref ref-type="bibr" rid="ref28 ref4 ref7">(Geib 2009; Geib and Goldman 2011)</xref>
        .
      </p>
      <p>
        Past work on CCG-based planning and plan recognition
used handcrafted domain definition, which can be
timeconsuming and error-prone to construct. Recent work in
form of LexLearn successfully learned CCGs by
enumerating all possible abstractions for a set of plan traces
        <xref ref-type="bibr" rid="ref14 ref5">(Geib
and Kantharaju 2018)</xref>
        given a set of templates. LexLearn
was then later used to learn reactive behaviors for the
RealTime Strategy Game RTS, and applied to the problem of
adversarial planning
        <xref ref-type="bibr" rid="ref14 ref5">(Kantharaju, Ontan˜ o´ n, and Geib 2018)</xref>
        .
However, exhaustive enumeration may not scale well when
learning from long plan traces.
      </p>
      <p>
        This paper presents a greedy CCG learning algorithm
called LexGreedy motivated by work on probabilistic HTN
learning by
        <xref ref-type="bibr" rid="ref17">Li et al. (2014)</xref>
        that improves the scalability of
learning, allowing knowledge extraction from longer plan
traces. Our learning algorithm employs a greedy approach
to abstract common sequences of actions from a set of plan
trace, goal pairs, and then estimates probabilities for each
abstraction. We evaluate our approach for CCG-based plan
recognition in the domain of RTS games using the AI RTS
testbed RTS. RTS games provide a challenge for both CCG
learning and plan recognition as strategies employed by RTS
game-playing agents can be long, and the learned CCG
representation must be compact to handle these long plans.
      </p>
      <p>This paper is structured as follows. First, we provide some
related work in the area of CCG learning and
hierarchical plan learning. Second, we provide a brief description
of our application domain RTS. Third, we provide
background knowledge on CCGs, CCG-based plan recognition,
and CCG learning. Fourth, we describe our greedy CCG
learning algorithm LexGreedy . Fifth, we provide our
experimental evaluation and analysis. Finally, we conclude with
directions for future work.</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        There are two major areas of related work: CCG
learning for Natural Language Processing (NLP) and plan
hierarchy learning.
        <xref ref-type="bibr" rid="ref29">Zettlemoyer and Collins (2005)</xref>
        use
supervised CCG learning to learn a mapping between
sentences and their semantic representations.
        <xref ref-type="bibr" rid="ref28">Thomforde and
Steedman (2011)</xref>
        presents Chart Inference, an
unsupervised learner for deriving structured CCG categories for
unknown words using a partial parse chart.
        <xref ref-type="bibr" rid="ref1">Bisk and
Hockenmaier (2012)</xref>
        introduce an unsupervised learner to
generate categories from part-of-speech tagged text that relies
on minimal language-specific knowledge.
        <xref ref-type="bibr" rid="ref15">Kwiatkowski et
al. (2012)</xref>
        define a learning approach for learning sentence
and semantic representation pairs from child utterances.
      </p>
      <p>
        Our work differs from CCG learning for NLP in that
the learned CCG represents plan knowledge about different
strategies employed in RTS games instead of the syntactic
and semantic structure of sentences. Specifically, this work
learns plan hierarchies that abstract common sequences of
actions into abstract plan structures like those in
Hierarchical Task Network (HTN) learning. Nejati,
        <xref ref-type="bibr" rid="ref16">Langley, and
Konik (2006)</xref>
        learns teleoreactive logic programs
        <xref ref-type="bibr" rid="ref16 ref22">(Langley
and Choi 2006)</xref>
        , a specialized class of HTNs, from expert
traces.
        <xref ref-type="bibr" rid="ref13">Hogg, Mun˜oz Avila, and Kuter (2008</xref>
        ) present
HTNMaker, an HTN learning algorithm that learns HTN
methods from analyzing the state of the world before and
after a given sequence of actions. Hogg, Kuter, and
Mun˜ozAvila (2010) build off HTN-Maker and introduces Q-Maker,
a learning algorithm that combines HTN-Maker with
reinforcement learning.
        <xref ref-type="bibr" rid="ref30">Zhuo, Mun˜oz-Avila, and Yang (2014</xref>
        )
presents HTNLearn which builds an HTN from
partiallyobservable plan traces.
        <xref ref-type="bibr" rid="ref10">Gopalakrishnan, Mun˜oz-Avila, and
Kuter (2016</xref>
        ) introduce Word2HTN, which learns both tasks
and methods using Word2Vec
        <xref ref-type="bibr" rid="ref20">(Mikolov et al. 2013)</xref>
        .
        <xref ref-type="bibr" rid="ref23">Nguyen
et al. (2017)</xref>
        present a technique for learning HTNs for
Minecraft, a sandbox video game, using Word2Vec and
Hierarchical Agglomerative Clustering.
      </p>
      <p>
        The closest related work to our learning approach is
that of
        <xref ref-type="bibr" rid="ref17">Li et al. (2014)</xref>
        , who successfully learns
probabilistic HTNs using techniques from Probabilistic CFG
learning. They abstract both looping constructs and frequent
sequences of actions given a set of non-parameterized
sequences of actions. Our work, on the other hand, learns a
CCG representation from parameterized actions, but only
abstracts common sequences of actions.
      </p>
      <p>RTS</p>
      <p>
        RTS1 is a minimalistic Real-Time Strategy game designed
to evaluate AI research in an RTS setting
        <xref ref-type="bibr" rid="ref25">(Ontan˜o´n 2013)</xref>
        .
Figure 1 shows two scripted agents playing against each
other in RTS. Compared to complex commercial RTS
games such as StarCraft, RTS still maintains those
properties of RTS games that make them complex from an AI
point of view (i.e. durative and simultaneous actions,
realtime combat, large branching factors, and full or partial
observability). For the purposes of this paper, RTS games
are deterministic, and fully observable. RTS has been used
in previous work to evaluate RTS AI research,
        <xref ref-type="bibr" rid="ref24 ref26">(Shleyfman,
Komenda, and Domshlak 2014; Ontan˜o´n and Buro 2015)</xref>
        and has also been used in AI competitions.2
      </p>
      <p>This work specifically focuses on learning different
strategies employed by scripted game agents. In this work, we
use a collection of scripted game agents to generate plan
traces. One such game agent uses a strategy called Rush.
Rush strategies consist of quickly constructing many units
of a specific type, and having all those units attack the
enemy. An example of a rush strategy from the commercial
RTS game Starcraft is Zerg rush. Plan traces are constructed
using replay data from gameplay of the scripted agents. A
replay is a trace of a game represented as a sequence of
state, action tuples containing the evolution of the game state
as well as the actions performed by each player during the
game. We extract sequences of actions from these replays
1https://github.com/santiontanon/microrts
2https://sites.google.com/site/
micrortsaicompetition/home
to create plan traces. We provide a formal definition of plan
traces and replays in the next section.</p>
    </sec>
    <sec id="sec-3">
      <title>Background</title>
      <p>
        This section describes a restricted form of Combinatory
Categorial Grammars (CCGs), using the definition of CCGs
from
        <xref ref-type="bibr" rid="ref7">Geib (2009)</xref>
        , and defines CCG-based plan recognition,
plan traces and replays. Each action in a domain is
associated with a set of CCG categories C, defined as follows:
Atomic categories: A set of category units A, B, C::: 2 C.
Complex categories: Given a set of atomic categories C,
where Z 2 C and fW, X, Y:::g 6= ; and fW, X, Y:::g 2 C,
then Z=fW, X, Y:::g 2 C and ZnfW; X; Y; :::g 2 C:
Intuitively, categories are functions that take other functions
as arguments. Atomic categories are zero-arity functions,
whereas complex categories are curried functions
        <xref ref-type="bibr" rid="ref2">(Curry
1977)</xref>
        , defined by two operators: “n” and “=”. These
operators each take a set of arguments (the categories on the
right hand side of the slash, fW, X, Y:::g), and produce the
result (the category on the left hand side of the slash, Z).
We define the root of some category G (atomic or complex)
if it is the leftmost atomic category in G. For example, for
the complex category ((C)nfAg)nfBg, the root would be C.
The slash operators define ordering constraints for plans,
indicating where other actions are to be found relative to an
action. Those categories associated with the forward slash
operator are after the action, and those associated with the
backward slash are before it.
      </p>
      <p>CCGs are lexicalized grammars. As such, we define a
CCG by a plan lexicon, = h ; C; f i, where is a finite
set of action types, C is a set of CCG categories, and f is a
mapping function such that 8a 2 ,</p>
      <p>
        f (a) ! fci : p(cija); :::; cj : p(cj ja)g
where ci : : : cj 2 C and 8a Pjk=i p(ckja) = 1. Given a
sequence of actions, these probabilities represent the
likelihood of assigning a category to an action for plan
recognition. For more details on these probabilities and how they
are used for plan recognition, see
        <xref ref-type="bibr" rid="ref7">Geib (2009)</xref>
        .
      </p>
      <p>
        Similar to the work by
        <xref ref-type="bibr" rid="ref5">Geib and Kantharaju (2018)</xref>
        , we
assume that all complex categories are leftward applicable
(all arguments with the backward slash operator are
discharged before any forward ones), and we only consider
      </p>
      <p>WrkRush</p>
      <p>Harvest(U4,R)
Train(U1,T)</p>
      <p>Train(U1,T)</p>
      <p>
        Attack(U2,U3) Harvest(U4,R) Harvest(U4,R)
complex categories with atomic categories for arguments.
We also extend the definitions of action types and atomic
categories to a first-order representation by introducing
parameters to represent domain objects and variables. A
discussion of CCGs with parameterized actions and categories
is presented by
        <xref ref-type="bibr" rid="ref8">Geib (2016)</xref>
        .
      </p>
      <p>One major benefit of using CCGs is that the same
representation can be used to plan and recognize goals. In this
work, goals correspond to strategies employed by scripted
agents. Below is an example CCG representation with
parameterized actions and categories for executing and
recognizing a Worker Rush strategy in RTS. We let = fTrain,
Attack, Harvestg and C = fTrain, Harvest, WrkRushg:
f (Train(U1; T )) ! fTrain(U1; T )) : 1g
f (Attack(U2; U3)) !</p>
      <p>f((WrkRush)=fHarvest(U4; R)g)nfTrain(U1; T )g : 1g
f (Harvest(U4; R)) ! fHarvest(U4; R)) : 1g
The action types Train(U1; T ), Attack(U2; U3), and
Harvest(U4; R) each have parameters representing different
units U1; U2; U3; U4, unit type T , and resource R. Since each
action has only a single category, P (cija) = 1.</p>
      <p>
        Figure 2 provides a hierarchical representation of the
above plan lexicon. Action types are denoted by ovals
and categories are denoted by rectangles. The atomic
categories “Train” and “Harvest” breaks down “Train” and
“Harvest” into the action types Train and Harvest. The
complex category “((WrkRush)=fHarvestg)nfTraing”
associated with the action type Attack, breaks down the
strategy “WrkRush” into the following sequence of atomic
categories and actions: hTrain; Attack; Harvesti. We note that
CCG categories are similar to methods from the Hierarchical
Task Network literature
        <xref ref-type="bibr" rid="ref3">(Erol, Hendler, and Nau 1994)</xref>
        .
      </p>
      <p>
        We now define a few terminology relevant to CCG-based
plan recognition and learning. We define a plan as a
sequence of observed actions a1; a2; : : : am and a partial plan
as a subsequence of these actions a1; a2; : : : ak, 1 k m.
A partial plan can be a plan. Next, we define the CCG plan
recognition problem as PR = ( 0; ; s0), where 0 is a
partial plan, is a CCG, and s0 is the initial state of the world
from where 0 was executed. The solution to the plan
recognition problem is a pair (G; 00), where G is the predicted
goal of 0, and 00 is the predicted sequence of actions such
that 0 + 00 results in G. We refer readers to
        <xref ref-type="bibr" rid="ref7">Geib (2009)</xref>
        for
a description on how CCGs are used for plan recognition.
      </p>
      <p>A plan trace is a plan that is fed into a learning algorithm.
Recall that actions in a plan trace are extracted from replay
data. For a given two-player game, replay data is defined as a
sequence of game state and action pairs seen over the course
of a game session, R = [(s0; a10; a20); :::; (sn; a1n; a2n)],
where i is a game frame, si is the current game state and
ai1 and ai2 are the actions done by player 1 and player 2.
From this, we can create two plan traces: one for player 1
(a10; a11; : : : ; a1 ) and one for player 2 (a20; a21; : : : ; a2n). We
n
ignore states s0 : : : sn because we do not learn state
information for our representation, and leave this to future work.</p>
    </sec>
    <sec id="sec-4">
      <title>Greedy Learning of Combinatory Categorial</title>
    </sec>
    <sec id="sec-5">
      <title>Grammars</title>
      <p>
        Prior work on CCG planning and plan recognition required
hand-authored domain definitions representing the structure
of plans in a domain. This process can be time consuming
and error-prone for complex domains. Recent work by
        <xref ref-type="bibr" rid="ref5">Geib
and Kantharaju (2018)</xref>
        used LexLearn learn these CCGs.
However, LexLearn was not able to scale to longer plan
traces because it enumerated all possible abstractions for
the set of plan traces, and relied on a breadth-first (BF)
search based plan recognition algorithm. The complexity of
BF plan recognition lies in the branching factor (average
number of categories per action) and length of the plan. If
the branching factor and plan length are high enough, plan
recognition becomes intractable. In terms of CCGs, scaling
means having a low average number of categories per action
while still recognizing plans with high accuracy. The
purpose of this work is to scale learning of CCGs to longer plan
traces. This grammar can then be used for CCG planning
and plan recognition.
      </p>
      <p>
        We describe our greedy approach for generating action
category pairs from plan traces, motivated by
        <xref ref-type="bibr" rid="ref17">Li et al. (2014)</xref>
        that reduces the number of learned abstractions and does not
rely on a plan recognizer. Our learning process is split into
two processes: generating action category pairs
(GreedyGen), and estimating action category pair conditional
probabilities (GreedyProbEst). Algorithm 1 is the high level
pseudocode for our learning algorithm, LexGreedy, where
refers to the learned CCG.
      </p>
      <p>LexGreedy takes two inputs: an initial lexicon, init, and
a set of training pairs, D = f( i; Gi) : i = 1:::ng, where
each i is a plan trace, a1; :::; am, that achieves some
toplevel task, denoted by the atomic category Gi. For the
domain of RTS, Gi denotes strategies employed by
gameplaying agents. LexGreedy assumes that each each i results
in its respective Gi, and the initial lexicon, init, contains a
single atomic category for each action type. The atomic
category’s parameters are identical to those of its action type.</p>
      <sec id="sec-5-1">
        <title>Greedy Category Generation</title>
        <p>
          The task of GreedyGen is to hypothesize a set of complex
categories that yield common sequences of actions from a
set of plan traces i 2 D. This is divided into two steps:
hypothesizing abstractions (tasks), and generating complex
categories given these tasks. We borrow the term tasks from
the HTN literature, which is a symbolic representation of an
activity in a domain
          <xref ref-type="bibr" rid="ref12">(Hogg, Kuter, and Mun˜oz-Avila 2010)</xref>
          .
Algorithm 2 outlines GreedyGen in high-level pseudocode.
Algorithm 1 Greedy Learning Algorithm - LexGreedy
        </p>
        <p>end if
until t = ; _ PT 0 = ;
init [ CreateCommonCategories(PT )
[ CreateGoalCategories( )
This process takes, as input, a set of plan traces and their
corresponding goals D, and initial lexicon init, and returns
a lexicon containing the set of hypothesized categories .</p>
        <p>We define as a set of abstract traces which contain both
actions and tasks generated during the learning process, and
PT as the set of learned common abstractions. Initially,
contains plan traces from D. GreedyGen iteratively
hypothesizes new tasks that abstract some common sequence of
actions and tasks 0 : : : u found in , and replaces them
with the new task. Since k 2 f 0 : : : ug can be a task,
this makes the learned abstractions hierarchical. We ignore
parameters of actions and tasks when searching for the most
common sequence. If we considered their parameters, each
action and task in the sequence and their parameters have
to match exactly when searching for the most common
sequence, which can reduce abstraction.</p>
        <p>We look at each function in Algorithm 2 below. The
function CreateCommon creates a new task t for the most
common sequence of actions and tasks 0 : : : u in the set of
abstract traces above a given tunable abstraction threshold
. We define this threshold as the percentage of instances
in D. If there are ties for the most common sequence, then
the first encountered sequence is considered. We note that
this sequence must contain at least one action. If no sequence
contains at least one action, then CreateCommon returns ;.</p>
        <p>Next, Update updates each trace in with this
newlycreated task t, and parameterizes ht; ( 0 : : : u)i. For each
!i 2 , the function replaces each occurrence of 0 : : : u
with t and creates a pair ht0; 00 : : : u0i, where t0 is the
parameterized task and ( 00 : : : u0) are parameterized actions
and tasks. The parameters for task t0 is defined by the set
union of the parameters of 00 : : : u0. The parameters for any
action is defined by their original parameters from i.
Update replaces the common sequences in !i if and only if the
result still contains at least one action. Update returns the
revised traces 0 and the set of parameterized task, sequence
pairs PT 0, and updates and PT if PT 0 is non-empty. If
Update can not replace any actions in each abstract trace
(PT 0 = ;), the loop terminates.</p>
        <p>Once the loop terminates, GreedyGen creates complex
categories for the common sequences in PT
(CreateCommonCategories) and the abstract traces in
(CreateGoalCategories). Both functions create complex categories using
the following template:
k !</p>
        <p>(x)=f ( u)g= : : : =f ( k+1)g
nf ( 0)gn : : : nf ( k 1)g
where k (where 0 k u) is the action whose action
type will be assigned the complex category, x is a task, and
is a function that either creates an atomic category for a
task or retrieves the atomic category in init for an action.
In our experiments, k is the action closest to the middle
of 0 : : : u. If the action type of k is already assigned the
complex category, the category is then ignored.</p>
        <p>CreateCommonCategories creates complex categories for
each pair ht0; 00 : : : u0i 2 PT . We let k = k0, x = t0
and i = i0, where i0; k0 2 00 : : : u0 and k0 is an
action. CreateGoalCategories creates complex categories that
yields each !i 2 . Here, we let (x) = Gi, i = i, and
k = k, where !i = 0 : : : u and k is an action.</p>
        <p>We illustrate the greedy generation process through an
example. Suppose we have an initial lexicon init as follows:
f (Train(U1; T )) ! fTrain(U1; T ) : 1g
f (Attack(U2; U3)) ! fAttack(U2; U3) : 1g
f (Harvest(U4; R)) ! fHarvest(U4; R) : 1g
f (Return(U5; B1)) ! fReturn(U5; B) : 1g
where U1; U2; U3; U4; U5 are units, R is a resource, B is a
base, T represents a unit type, = fTrain, Attack,
Harvest, Returng, and C = fTrain, Attack, Harvest, Returng.
Next, suppose we have the following two plan traces:
1 = hHarvest(U1; R1);Return(U1; B1); Train(U3; H)i
2 = hHarvest(U2; R2);Return(U2; B2); Attack(U4; U1)i
and 1 corresponds to strategy HeavyRush and 2
corresponds to strategy WorkerRush. First, we create = f!1 =
1; !2 = 2g. Next, CreateCommon creates a task tx for
the most common sequence hHarvest; Returni. Next,
Update replaces this common sequence in ,
, GreedyProbEst gets the set of categories C assigned to
actions in with . Next, for c 2 f( ), Hc; is computed,
!1 = htx; Train(U3; H)i
!2 = htx; Attack(U4; U1)i
creates a set of parameterized task, sequence pairs and adds
them to PT :
ht0x(U1; R1; B1); (Harvest(U1; R1); Return(U1; B1))i
ht0x(U2; R2; B2); (Harvest(U2; R2); Return(U2; B2))i
Since there are no more common sequences in , we exit
the loop. Next, CreateCommonCategories creates a complex
category for each pair in PT using the previously defined
template:
Harvest(U1; R1) !
Harvest(U1; R1) !
(t0x(U1; R1; B1))=fReturn(U1; B1)g
(t0x(U2; R2; B2))=fReturn(U2; B2)g
where each action in the sequence is replaced with its initial
category in init and k = Harvest(U1; R1). Finally,
CreateGoalCategories creates complex categories to yield both
!1 and !2,</p>
        <p>Return(U1; B1) ! HeavyRushnf (t0x(U1; R1; B1))g
Return(U1; B1) ! WorkerRushnf (t0x(U2; R2; B2))g
where k = Return(U1; B1). These categories are added to
the lexicon and the category generation process is complete.</p>
      </sec>
      <sec id="sec-5-2">
        <title>Greedy Probability Estimation</title>
        <p>
          Probability estimation is the process of estimating action
type, category conditional probabilities P (cja), which are
used during CCG plan recognition. Recall that the CCG plan
recognition problem is defined as PR = ( 0; ; s0), where
0 is a partial plan, is a CCG, and s0 is the initial state
of the world from where 0 was executed. CCG-based plan
recognition assigns a single category from to each
action in 0 and parses these categories using CCG
combinators
          <xref ref-type="bibr" rid="ref7">(Geib 2009)</xref>
          .
          <xref ref-type="bibr" rid="ref5">Geib and Kantharaju (2018)</xref>
          used
stochastic gradient ascent to estimate the conditional probability as
a normalized weighted frequency of assigning category c to
action a during plan recognition, where a breadth-first plan
recognizer was used to acquire these frequencies. We
propose a greedy approach (GreedyProbEst) to estimate
probabilities without a plan recognizer.
        </p>
        <p>The GreedyGen process creates complex categories and
assigns these categories to a subset of actions and their types
in each plan trace i 2 . GreedyProbEst assigns the
remaining actions in each i that are not assigned a
complex category during the GreedyGen process to atomic
categories from init. This essentially simulates part of the plan
recognition process (assignment of categories to actions in
a plan) without actually executing a plan recognition
algorithm. From this, we can infer the number of times a
complex category c is assigned to some action type, denoted by
Hc; where is the action type of action a 2 i.</p>
        <p>GreedyProbEst computes Hc; as follows. Let indicate
the lexicon created by GreedyGen, and f( ) refer to the
set of categories assigned to . For each action type
where F (c; C) is the frequency of c in C. GreedyProbEst
then computes the probability p(cj ) for 2 as:
p(cj ) = P</p>
        <p>Hc;
c02 f( ) Hc0;</p>
        <p>LexGreedy successfully learns a CCG upon
completing the probability estimation process. However, the
generated CCG may not be tractable for plan recognition. Thus,
LexGreedy prunes categories from with an estimated
probability lower than a given pruning threshold (lines
4-12 in Algorithm 1). Intuitively, this represents the
maximum number of allowable categories per action. Finally,
LexGreedy re-normalizes the conditional probabilities (lines
10-12 in Algorithm 1) and the learning process is complete.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Experiments</title>
      <p>
        The purpose of our experiments is to evaluate both the
scalability of CCG learning and performance of the learned CCG
for CCG-based plan recognition. To this end, we compare
against the exhaustive CCG learning technique LexLearn
by
        <xref ref-type="bibr" rid="ref5">Geib and Kantharaju (2018)</xref>
        . All experiments were run
on a machine with 3.40GHz Intel i7-6700 CPU and 32 GB
RAM. We start by describing the learning dataset used in our
experiments. Next, we define the tunable parameters for both
LexLearn and LexGreedy. Finally, for each experiment, we
describe metrics and experiment setup, and analyze results.
      </p>
      <p>We generated a learning dataset of plan traces paired
with their corresponding goals using a replay dataset
generated from gameplay sessions on the RTS testbed.
Recall that replay data is a sequence of game state/action pairs
seen over the course of a game session. These actions are
player actions, i.e., the set of all the unit actions issued to
each unit controlled by a player at the current game state.
For example, if three actions are done by a player’s units,
fAttack, Harvest, Produceg, the player action would be</p>
      <sec id="sec-6-1">
        <title>Attack Harvest Produce.</title>
        <p>Our replay dataset was created by running a
5iteration round-robin tournament using the following
builtin scripted agents: POLightRush, POHeavyRush,
PORangedRush, POWorkerRush, EconomyMilitaryRush,
EconomyRush, HeavyDefense, LightDefense, RangedDefense,
WorkerDefense, WorkerRushPlusPlus. Each agent played
against each other as both player 1 and player 2 on the open
maps of the CIG 2018 RTS tournament.3 We chose these
agents over other agents such as NaiveMCTS because they
execute a defined strategy which we could use as the goal
for learning and plan recognition.</p>
        <p>Using the replay dataset, we constructed our learning
dataset as follows. For each replay in the replay dataset, we
generated two plan trace/goal pairs: one for each agent in the
3https://sites.google.com/site/
micrortsaicompetition/rules
replay. Each pair was constructed by parsing player actions
done by an agent, and using the agent itself as the goal (i.e.,
the goal of plan recognition will be to identify which of the
agents does a plan trace come from).</p>
        <p>
          Next, we define the tunable parameters for each learning
approach. Both LexGreedy and LexLearn have one
common parameter: pruning threshold , which effectively
limits the maximum number of categories per action. This
parameter was set to allow for tractable plan recognition using
the learned CCGs. After initial experimentation, we chose
= 0:1 for LexLearn, and = 0:01 for LexGreedy. All
other parameters for LexLearn were set according to the
original paper
          <xref ref-type="bibr" rid="ref14 ref5">(Geib and Kantharaju 2018)</xref>
          . LexGreedy’s
abstraction threshold was set based on the experiment. For
Experiment 1, ranged from 25% to 100% in increments of
25 and for Experiment 2, was 75% and 100%.
Experiment 1: The first experiment focuses on analyzing
the scalability of LexGreedy and LexLearn. We measure
scalability by computing the average number of categories
per action, defined as the total number of categories over the
total number of action types in the CCG. We use this
metric because it directly impacts the tractability of breadth-first
plan recognition, and the compactness of the learned
representations. An optimal CCG would have an average of 1.0.
        </p>
        <p>For this experiment, we averaged our results over 5 runs.
For each run, we randomly shuffled all plan trace/goal
pairs in the learning dataset, and learned CCGs using both
LexLearn and LexGreedy. The learning dataset was
shuffled because LexLearn is an incremental algorithm, and its
learned CCG depends on the ordering of the plan traces.
Figure 3 shows the number of categories per action plotted
against the maximum number of allowed actions per plan
trace (ranging from 3 to 50 actions). Overall, we see that all
values of (25-100%) almost followed the same pattern for
plans with less than 10 actions. After 10 actions, = 25%
diverged from the rest of the values and continued a
positive trend while the others maintained a negative trend. This
implies that longer plans benefit from than smaller plans.</p>
        <p>However, there was no overall trend in the results. This is
a result of pruning the number of categories per action after
learning the CCG. To prove this, we ran LexGreedy where
we set = 0, preventing LexGreedy from pruning any
categories. Figure 4 shows the results of this experiment. We
see that all values of have similar average number of
categories per action. We also notice a positive linear correlation
between plan lengths and average number of categories per
action, which is the expected result.</p>
        <p>Figure 5 provides a comparison between the scalability
of LexLearn (Exhaustive) and LexGreedy (Greedy), plotting
plan length against number of categories per action. We only
provided results for LexGreedy with a = 100% as results
with other thresholds were relatively similar to it. We note
that LexLearn was only able to execute for plans of length
3 because it ran out of memory for longer plans. Recall that
LexLearn’s probability estimation technique uses
breadthfirst plan recognition. LexLearn will run out of memory if
the average number of categories per action is high enough.</p>
        <p>LexGreedy was able to successfully learn a CCG
representation for plans with 50 actions with a low average
number of categories per action, successfully demonstrating the
scalability of our learning technique. We also notice that the
average number of categories per action was close to 1,
indicating that both LexLearn and LexGreedy learned a near
optimal CCG. Despite this, there was a large variance in the
number of categories assigned to each action where some
actions had 1 category and others had significantly more.
Therefore, as we will see in Experiment 2, this large
variance will result in our CCG plan recognizer running out of
memory for plans with more than 10 actions.</p>
        <p>
          Experiment 2: The second experiment focuses on the
performance of the learned CCGs for plan recognition. We
use the ELEXIR framework developed by
          <xref ref-type="bibr" rid="ref7">Geib (2009)</xref>
          for
breadth-first plan recognition. Recall that the CCG plan
recognition problem is defined as PR = ( 0; ; s0) and its
solution as (G; 00). We set s0 = ; as ELEXIR can
recognize plans with an empty s0, and focus on predicting G.
        </p>
        <p>
          We use two metrics from the original LexLearn
paper
          <xref ref-type="bibr" rid="ref14 ref5">(Geib and Kantharaju 2018)</xref>
          . The first metric,
following
          <xref ref-type="bibr" rid="ref30">Zhuo, Mun˜oz-Avila, and Yang (2014</xref>
          ) is the F1 Score:
        </p>
        <p>Precision Recall
F 1 = 2</p>
        <p>
          Precision + Recall
where precision and recall
          <xref ref-type="bibr" rid="ref29">(Zettlemoyer and Collins 2005)</xref>
          adapted for the problem of plan recognition are:
Precision =
        </p>
        <p>Recall =
# correctly recognized
# of parsed plan traces
# correctly recognized</p>
        <p>
          # of plan traces
The second metric is Mean-Time-To-Recognition (MTTR)
or the average percentage of actions in a plan required to
recognize the goal. The formal definition of this can be found
in
          <xref ref-type="bibr" rid="ref5">Geib and Kantharaju (2018)</xref>
          . A high-performing CCG
would have a high F1 score and a low MTTR.
        </p>
        <p>All metrics are averaged over 5 runs. For each round, we
randomly shuffled all plan trace/goal pairs in the learning
dataset, split the dataset into 80% training and 20% testing,
trained LexLearn and LexGreedy, and recognized the plan
traces in the testing dataset using the learned CCG.</p>
        <p>Figure 6 provides average F1 scores for plan lengths
ranging from 3 to 10 for LexGreedy (Greedy), LexLearn
(Exhaustive), and random recognition (Random) (higher is
better). Random recognition recognizes a plan by choosing a
goal at random from the set of possible goals (recall goals
are the agents). Similar to Experiment 1, LexLearn ran out
of memory for plans with more than 3 actions, and both
= 0:75 and = 1:0 didn’t have any significant difference
in performance. However, both LexLearn and LexGreedy
were able to outperform random recognition with an F1
score of 0.0909. We note that pruning can have a significant
impact on the F1 score as categories in the learned CCG that
are needed for plan recognition can be removed. This may
have resulted in LexGreedy outperforming LexLearn as the
latter approach had a significantly higher pruning threshold.
In terms of RTS games, pruning results in the reduction of
strategy execution knowledge. While pruning helps scale the
learned CCGs, it can prevent a game-playing agent from
recognizing less-frequently used strategies.</p>
        <p>Figure 7 shows average MTTR plotted against plan
lengths from 3 to 10 for both LexGreedy and LexLearn
(lower is better). We see that LexGreedy (MTTR of
approximately 92%) was able to outperform LexLearn (MTTR of
approximately 93%) for plans with 3 actions. Similar to the
F1 scores, = 75% and = 100% do not have significantly
different average MTTR over all plan lengths. The main
takeaway from this is that both LexLearn and LexGreedy
were both able to recognize plans prior to completion. This
is important for agents playing RTS games because early
recognition results in a higher chance of winning a game.</p>
        <p>We restricted the plan lengths to a maximum of 10
actions because ELEXIR ran out of memory when
recognizing plans greater than length 10. However, from Experiment
1, we see that LexGreedy was able to learn plans for length
50. This indicates that, while we are able to learn CCGs for
longer plans, we can not yet use the learned representations
for plan recognition. We believe that if we gave ELEXIR
more memory or used a non-breadth-first plan recognizer,
we may have recognized plans with more than 10 actions.</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>Conclusion and Future Work</title>
      <p>
        This paper presented a greedy CCG learning algorithm
called LexGreedy motivated by work on probabilistic HTN
learning by
        <xref ref-type="bibr" rid="ref17">Li et al. (2014)</xref>
        that improves the scalability of
learning. We evaluated our learned representations on
CCGbased plan recognition in the domain of RTS games using
the AI RTS testbed RTS, and evaluated the scalability of
learning. Our results demonstrate LexGreedy can learn
compact CCGs for long plans in RTS, allowing us to
automated the authoring of CCG domain definitions. However,
the learned CCGs are still too large for plan recognition.
      </p>
      <p>There are a few avenues for future work that build
directly from this work. First, we would like to analyze the
scaling from LexGreedy for planning in and playing RTS.
Second, we want to develop a plan recognizer that can
recognize plans using the representations learned by LexGreedy.
Third and finally, we would like to improve LexGreedy by
making it an incremental learning algorithm.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Bisk</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Hockenmaier</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <year>2012</year>
          .
          <article-title>Simple robust grammar induction with combinatory categorial grammars</article-title>
          .
          <source>In Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence</source>
          , AAAI'
          <fpage>12</fpage>
          ,
          <fpage>1643</fpage>
          -
          <lpage>1649</lpage>
          . Palo Alto, California, USA: AAAI Press.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Curry</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <year>1977</year>
          .
          <article-title>Foundations of Mathematical Logic</article-title>
          . Dover Publications Inc.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Erol</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Hendler</surname>
          </string-name>
          , J.; and
          <string-name>
            <surname>Nau</surname>
            ,
            <given-names>D. S.</given-names>
          </string-name>
          <year>1994</year>
          .
          <article-title>UMCP: A sound and complete procedure for hierarchical task network planning</article-title>
          .
          <source>In Proceedings of the Second International Conference on Artificial Intelligence Planning Systems (AIPS 94)</source>
          ,
          <fpage>249</fpage>
          -
          <lpage>254</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Geib</surname>
            ,
            <given-names>C. W.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Goldman</surname>
            ,
            <given-names>R. P.</given-names>
          </string-name>
          <year>2011</year>
          .
          <article-title>Recognizing plans with loops represented in a lexicalized grammar</article-title>
          .
          <source>In Proceedings of the Twenty-Fifth AAAI Conference on Artificial Intelligence</source>
          , AAAI'
          <fpage>11</fpage>
          ,
          <fpage>958</fpage>
          -
          <lpage>963</lpage>
          . Palo Alto, California, USA: AAAI Press.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Geib</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Kantharaju</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <year>2018</year>
          .
          <article-title>earning Combinatory Categorial Grammars for Plan Recognition</article-title>
          .
          <source>In Proceedings of the Thirty-Second AAAI Conference on Artificial Intelligence.</source>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Geib</surname>
            ,
            <given-names>C. W.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Steedman</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <year>2007</year>
          .
          <article-title>On Natural Language Processing and Plan Recognition</article-title>
          .
          <source>In Proceedings of the International Joint Conferences on Artificial Intelligence.</source>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Geib</surname>
            ,
            <given-names>C. W.</given-names>
          </string-name>
          <year>2009</year>
          .
          <article-title>Delaying commitment in plan recognition using combinatory categorial grammars</article-title>
          .
          <source>In Proceedings of the 21st International Jont Conference on Artifical Intelligence</source>
          , IJCAI'
          <volume>09</volume>
          ,
          <fpage>1702</fpage>
          -
          <lpage>1707</lpage>
          . San Francisco, CA, USA: Morgan Kaufmann Publishers Inc.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Geib</surname>
            ,
            <given-names>C. W.</given-names>
          </string-name>
          <year>2016</year>
          .
          <article-title>Lexicalized reasoning about actions</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <source>Advances in Cognitive Systems</source>
          Volume
          <volume>4</volume>
          :
          <fpage>187</fpage>
          -
          <lpage>206</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <surname>Gopalakrishnan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ;
          <article-title>Mun˜oz-</article-title>
          <string-name>
            <surname>Avila</surname>
            , H.; and Kuter,
            <given-names>U.</given-names>
          </string-name>
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <article-title>Word2HTN:Learning Task Hierarchies Using Statistical Semantics and Goal Reasoning</article-title>
          .
          <source>In Proceedings of the IJCAI 2016 Workshop on Goal Reasoning.</source>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <surname>Hogg</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Kuter</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ;
          <article-title>and Mun˜oz-</article-title>
          <string-name>
            <surname>Avila</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <year>2010</year>
          .
          <article-title>Learning Methods to Generate Good Plans: Integrating HTN Learning and Reinforcement Learning</article-title>
          .
          <source>In Aaai.</source>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <surname>Hogg</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ; Mun˜oz Avila, H.; and Kuter,
          <string-name>
            <surname>U.</surname>
          </string-name>
          <year>2008</year>
          .
          <article-title>Htn-maker: Learning htns with minimal additional knowledge engineering required</article-title>
          .
          <source>In Proceedings of the 23rd National Conference on Artificial Intelligence -</source>
          Volume
          <volume>2</volume>
          , AAAI'
          <fpage>08</fpage>
          ,
          <fpage>950</fpage>
          -
          <lpage>956</lpage>
          . AAAI Press.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <surname>Kantharaju</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ; Ontan˜o´n, S.; and
          <string-name>
            <surname>Geib</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <year>2018</year>
          .
          <article-title>CCG, a CCG-based Game-Playing Agent for microRTS</article-title>
          .
          <source>In IEEE Conference on Computational Intelligence in Games (CIG</source>
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <surname>Kwiatkowski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Goldwater</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Zettlemoyer</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ; and Steedman,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <year>2012</year>
          .
          <article-title>A probabilistic model of syntactic and semantic acquisition from child-directed utterances and their meanings</article-title>
          .
          <source>In Proceedings of the 13th Conference of the European Chapter of the Association for Computational Linguistics</source>
          , EACL '
          <volume>12</volume>
          ,
          <fpage>234</fpage>
          -
          <lpage>244</lpage>
          . Stroudsburg, PA, USA: Association for Computational Linguistics.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <surname>Langley</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Choi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <year>2006</year>
          .
          <article-title>Learning Recursive Control Programs From Problem Solving</article-title>
          .
          <source>Journal of Machine Learning Research</source>
          <volume>7</volume>
          (Mar):
          <fpage>493</fpage>
          -
          <lpage>518</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <string-name>
            <surname>Li</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Cushing</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ; Kambhampati,
          <string-name>
            <given-names>S.</given-names>
            ; and
            <surname>Yoon</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          <string-name>
            <given-names>ACM</given-names>
            <surname>Trans. Intell</surname>
          </string-name>
          .
          <source>Syst. Technol</source>
          .
          <volume>5</volume>
          (
          <issue>2</issue>
          ):
          <volume>29</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>29</lpage>
          :
          <fpage>32</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          <string-name>
            <surname>McDermott</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ; Ghallab,
          <string-name>
            <given-names>M.</given-names>
            ;
            <surname>Howe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ;
            <surname>Knoblock</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ;
            <surname>Ram</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ;
            <surname>Veloso</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ;
            <surname>Weld</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ; and
            <surname>Wilkins</surname>
          </string-name>
          ,
          <string-name>
            <surname>D.</surname>
          </string-name>
          <year>1998</year>
          .
          <article-title>PDDL - The Planning Domain Definition Language</article-title>
          .
          <source>Technical report</source>
          , CVC TR-
          <volume>98</volume>
          -003/DCS TR-
          <volume>1165</volume>
          ,
          <article-title>Yale Center for Computational Vision</article-title>
          and Control.
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          <string-name>
            <surname>Mikolov</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Corrado</surname>
          </string-name>
          , G.; and
          <string-name>
            <surname>Dean</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <year>2013</year>
          .
          <article-title>Efficient Estimation of Word Representations in Vector Space</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          <source>arXiv preprint arXiv:1301</source>
          .
          <fpage>3781</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          <string-name>
            <surname>Nejati</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Langley</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ; and Konik,
          <string-name>
            <surname>T.</surname>
          </string-name>
          <year>2006</year>
          .
          <article-title>Learning hierarchical task networks by observation</article-title>
          .
          <source>In Proceedings of the 23rd international conference on Machine learning</source>
          ,
          <fpage>665</fpage>
          -
          <lpage>672</lpage>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          <string-name>
            <surname>Nguyen</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Reifsnyder</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Gopalakrishnan</surname>
            ,
            <given-names>S.;</given-names>
          </string-name>
          <article-title>and Mun˜oz-</article-title>
          <string-name>
            <surname>Avila</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <year>2017</year>
          .
          <article-title>Automated Learning of Hierarchical Task Networks for Controlling Minecraft Agents</article-title>
          .
          <source>In 2017 IEEE Conference on Computational Intelligence and Games (CIG)</source>
          ,
          <fpage>226</fpage>
          -
          <lpage>231</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          <article-title>Ontan˜o´n, S., and</article-title>
          <string-name>
            <surname>Buro</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <year>2015</year>
          .
          <article-title>Adversarial hierarchicaltask network planning for complex real-time games</article-title>
          .
          <source>In Twenty-Fourth International Joint Conference on Artificial Intelligence.</source>
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          <article-title>Ontan˜o´n</article-title>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          <year>2013</year>
          .
          <article-title>The combinatorial multi-armed bandit problem and its application to real-time strategy games</article-title>
          .
          <source>In Proceedings of the AAAI Artificial Intelligence and Interactive Digital Entertainment conference (AIIDE</source>
          <year>2013</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          <string-name>
            <surname>Shleyfman</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Komenda</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ; and
          <string-name>
            <surname>Domshlak</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <year>2014</year>
          .
          <article-title>On combinatorial actions and cmabs with linear side information</article-title>
          .
          <source>In Proceedings of the Twenty-first European Conference on Artificial Intelligence</source>
          ,
          <fpage>825</fpage>
          -
          <lpage>830</lpage>
          . IOS Press.
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          <string-name>
            <surname>Steedman</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <year>2001</year>
          .
          <article-title>The Syntactic Process</article-title>
          . Cambridge, MA, USA: MIT Press.
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          <string-name>
            <surname>Thomforde</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Steedman</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <year>2011</year>
          .
          <article-title>Semi-supervised ccg lexicon extension</article-title>
          .
          <source>In Proceedings of the Conference on Empirical Methods in Natural Language Processing</source>
          , EMNLP '
          <volume>11</volume>
          ,
          <fpage>1246</fpage>
          -
          <lpage>1256</lpage>
          . Stroudsburg, PA, USA: Association for Computational Linguistics.
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          <string-name>
            <surname>Zettlemoyer</surname>
            ,
            <given-names>L. S.</given-names>
          </string-name>
          , and Collins,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <year>2005</year>
          .
          <article-title>Learning to map sentences to logical form: Structured classification with probabilistic categorial grammars</article-title>
          .
          <source>In UAI '05, Proceedings of the 21st Conference in Uncertainty in Artificial Intelligence</source>
          , Edinburgh, Scotland,
          <source>July 26-29</source>
          ,
          <year>2005</year>
          , UAI'
          <volume>05</volume>
          ,
          <fpage>658</fpage>
          -
          <lpage>666</lpage>
          . AUAI Press.
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          <string-name>
            <surname>Zhuo</surname>
            ,
            <given-names>H. H.</given-names>
          </string-name>
          ;
          <article-title>Mun˜oz-</article-title>
          <string-name>
            <surname>Avila</surname>
          </string-name>
          , H.; and
          <string-name>
            <surname>Yang</surname>
            ,
            <given-names>Q.</given-names>
          </string-name>
          <year>2014</year>
          .
          <article-title>Learning hierarchical task network domains from partially observed plan traces</article-title>
          .
          <source>Artificial Intelligence</source>
          <volume>212</volume>
          :
          <fpage>134</fpage>
          -
          <lpage>157</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>