<!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>Automated Scheduling of Multi-Robot System Missions: An Architectural Perspective</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Gricel Vazquez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>University of York, Department of Computer Science</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <fpage>13</fpage>
      <lpage>17</lpage>
      <abstract>
        <p>The doctoral project summarised in this paper proposes a modular software architecture for the scheduling of multi-robot system (MRS) missions with complex functional and nonfunctional requirements. The new architecture comprises separate components for maintaining specifications of the mission tasks, environment and robot capabilities, for allocating the required tasks to the available robots, for scheduling the tasks executed by each robot, etc.-all of these providing guarantees that the mission requirements will be achieved. Each such component and its elements can be flexibly instantiated using either ofthe-shelf software (e.g., constraint solvers or model checkers) or purpose-built software modules. To show the feasibility of the proposed MRS mission-scheduling architecture, we instantiated it using Alloy Analyzer to allocate mission tasks and the PRISM probabilistic model checker to generate individual robot plans for a hospital case study involving the scheduling of MRS missions that required cleaning, sanitising and moving medical equipment in multiple hospital rooms.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Multi-robot systems MRS</kwd>
        <kwd>Task allocation</kwd>
        <kwd>Task scheduling</kwd>
        <kwd>MRS mission-scheduling architecture</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Research in robotic systems has increased exponentially over the last 50 years [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Nevertheless,
fully automating the deployment and adaptation of multi-robot systems (MRS) to accomplish
complex missions in real-world environments remains an open challenge [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. There are multiple
reasons for this. Such an automated solution would need to consider a wide range of inputs,
including what robots are available for deployment, how the environment looks like, what tasks
need to be performed, at which locations and under what constraints. Moreover, stochastic
behaviour and the adaptation options that can be used to cope with uncertainty must be
considered when dynamically updating the mission plan in unexpected situations [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ].
      </p>
      <p>Developing a software solution for this complex, multifaceted problem requires a modular,
lfexible software architecture. The doctoral project described in this paper aims to develop such
an architecture. Our planned architecture comprises components for handling the required
inputs (including, for instance, information about the available robots and the conflicting
optimisation requirements of their missions) provided in multiple domain-specific languages.
Additionally, it includes model-to-model transformations to convert these inputs into models
that can be supplied to constraint solvers, model checkers and other reasoning engines to allow
the allocation of tasks to individual robots, robot-level planning, etc. Furthermore, we envisage
that, through the use of formal techniques, our solution will provide guarantees that the MRS
will achieve its strict functional and nonfunctional requirements.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Related Work</title>
      <p>
        Most research on the deployment of robots in applications with strict requirements focuses on
the planning problem [
        <xref ref-type="bibr" rid="ref2 ref4 ref5 ref6">2, 4, 5, 6</xref>
        ], assuming that the robots “know” from the beginning the tasks
they must complete. Only a few research projects consider the need to first allocate the mission
tasks to robots, and these employ a monolithic mission scheduling architecture [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ]. Systems
with multiple robots have only been studied in recent years [
        <xref ref-type="bibr" rid="ref4 ref7 ref8 ref9">4, 7, 8, 9</xref>
        ]. Moreover, just a few
studies consider the uncertainty intrinsic to single-robot [
        <xref ref-type="bibr" rid="ref10 ref2">2, 10</xref>
        ] or multi-robot system [
        <xref ref-type="bibr" rid="ref4 ref6">4, 6</xref>
        ].
Pelliccione et al. [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] work with partial robot models that assume unknown information in the
robot and environment models; Guo et al. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and Dimos et al. [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] deal with partially-known
workspace and environment with large uncertainties, applying adaptation in real time.
      </p>
      <p>
        Formal techniques have been used to guarantee robot mission compliance with safety
properties both at the static planning (ofline) [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and at execution time (online) [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. In [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], the
authors work with multi-robot motion coordination (MRMC), i.e., the problem of allowing
robots to resolve conflicts online. Most research so far considers specifications described in
linear temporal logic (LTL).As an exception, [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] uses extended LTL, [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] uses LTL over reals
(RLT), and Metric Interval Temporal Logic (MITL) used by [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Nevertheless, these extended
variants of LTL are still unable to capture nonfunctional requirements related to the reliability,
performance and scalability.
      </p>
      <p>Thus, the research on mission-scheduling architectures for MRS with complex functional and
nonfunctional requirements is still in the early days. Monolithic architectures have been studied,
with only a few considering task allocation as part of the process. The variety of challenges that
need to be solved (uncertainty in the environment and robots, allocation of tasks, scheduling of
tasks, planning, etc.) suggest that a monolithic MRS lacks flexibility to incorporate all these
concerns. Therefore, the adoption of a modular architecture for the deployment of complex
MRS is explored in this doctoral project.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Proposed Approach</title>
      <p>As shown in Figure 1, our MRS mission-scheduling architecture comprises five components:
1) Model repository. A first research question (RQ1) for the project is how to specify the system.
To this end, we use a Model repository with four sub-components. First, a Task specification
describes the types of tasks that can be used to assemble MRS missions, with their hierarchical
composition, probabilities of success, durations, etc. A domain specific language (DSL). Second,
a World model expressed in a suitable DSL is used to capture the relevant characteristics of the
environment in which the MRS missions need to be performed. Third, a Robot specification
provides information about the capabilities, locations, etc. of the robots that could be used to
perform missions. Finally, a Mission specification describes what tasks must be accomplished, at
which locations and with what reliability, performance and other nonfunctional constraints.</p>
      <sec id="sec-3-1">
        <title>Model</title>
      </sec>
      <sec id="sec-3-2">
        <title>Repository</title>
        <sec id="sec-3-2-1">
          <title>Task</title>
          <p>speci cation
)
(
p
B
a Probabilistic
rto ...</p>
          <p>dA model checker, etc.</p>
        </sec>
        <sec id="sec-3-2-2">
          <title>Robot speci cation</title>
        </sec>
        <sec id="sec-3-2-3">
          <title>Mission speci cation</title>
          <p>Constraint
solver, etc.</p>
        </sec>
      </sec>
      <sec id="sec-3-3">
        <title>Task Scheduler</title>
        <sec id="sec-3-3-1">
          <title>World model</title>
        </sec>
      </sec>
      <sec id="sec-3-4">
        <title>Task Allocator</title>
        <p>Tasmkaanlalogceartor
...</p>
        <sec id="sec-3-4-1">
          <title>Task scheduler manager</title>
          <p>Monitor &amp;
Analyse</p>
        </sec>
      </sec>
      <sec id="sec-3-5">
        <title>Deployment &amp; Adaptation</title>
      </sec>
      <sec id="sec-3-6">
        <title>Manager</title>
        <p>Plan
Manager
Execute</p>
        <p>Task
allocation models
Robot
plans</p>
        <sec id="sec-3-6-1">
          <title>Robots</title>
          <p>hhactuatorsii
hhsensorsii</p>
        </sec>
      </sec>
      <sec id="sec-3-7">
        <title>Optimiser</title>
        <p>Optimiser
manager</p>
        <p>Multiobjective
optimiser</p>
        <p>
          Robot
plan
repository
provided interface
required interface
component
dependency
port
2) Task allocator. For the allocation of tasks to robots (RQ2), Adaptor (A) obtains the four
specifications from the Model repository, and transforms them into a model that can be supplied
to one or several reasoning engines (e.g., Constraint solver modules) that a Task allocator manager
uses to create multiple feasible Task allocation models that partition the mission tasks to (a subset
of) the available robots. Each of these task allocations is guaranteed to enable the satisfaction
of all the functional requirements1 of the MRS mission provided that the tasks assigned to each
robot are appropriately scheduled.
3) Task scheduler. Adaptor (B) reads each task allocation model, and the necessary system
information from the model repository (for example, constraints over the tasks) and creates
models and formal specifications readable by scheduling engines such as probabilistic model
checkers. A Task scheduler manager (RQ3) coordinates the models, specifications and scheduling
engines to create feasible Robot plans that define what each robot needs to do and when—and
that are guaranteed to satisfy the functional and nonfunctional requirements of the MRS mission.
This component captures constraints via the model or the logic specifications. Such constrains
may include, for example, the requirement that a task T1 is done immediately after a task T2, or
1Functional requirements refer to the behaviour of the system, how it should "behave", e.g, a) ordered tasks
must be done in the specific order they appear in the compound task; b) compound tasks have two or more tasks
without including themselves; or c) the tasks must be assign to robots that have the capability to do the tasks.
that a task T3 must be performed by two robots at the same time.
4) Optimiser. The Optimiser manager selects the feasible paths that are optimal, i.e., that
minimise or maximise the reliability, performance or utility of the mission, as required in
the Mission specification . This can be done through Multiple-objective optimisation techniques.
The parameters to optimise can be computed using diferent reasoning engines (RQ4), e.g.,
probabilistic model checking can be used to compute the probability of mission success, and
a purpose-built mission time estimator can be used to establish the mission completion time
or the number of robots deployed. The Optimiser manager can also request the Task allocator
and/or the Task scheduler to generate additional feasible allocations of tasks models, or robot
plans if no optimal solution is found. the optimiser also deals with situations where the task
allocator generates no solution that can meet the non-functional requirements The optimisation
can also be carried out within the allocation and scheduling components, e.g. by allocating the
tasks to robots depending on the shortest distance, or by computing only the schedules that
minimise the total completion time.
5) Deployment and Adaptation Manager. At run-time, the system follows a MAPE-K
(Monitor-Analyze-Plan-Execute over a shared Knowledge) loop [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. First, the optimal plans and
specifications are obtained. The MAPE-K loop is especially useful for self-adaptation, in this
case, in response to changes (observed and analysed by a Monitor &amp; Analyse module) in the
model repository, the physical world and the robots. Then, the Plan manager selects the robot
plans to be executed, asks for more plans to be obtained when needed, or adapts the current
one. Finally, the Execute module ensures the execution of the plans by the robots.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Case Study and Preliminary Results</title>
      <p>
        A first version of the MRS mission-scheduling architecture was implemented [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] using the
Alloy analyzer [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] for the task allocation, and PRISM model checker [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] for the task scheduling.
The case study involved the scheduling of simple MRS missions for a hospital with four rooms
(A to D). As an example, one of the missions consists of four tasks: cleaning empty room A and B
(t1 and t2); moving medical equipment in room D (t3); and cleaning patient room (t4). Cleaning
an empty room is comprises two atomic (i.e., indivisible) tasks: floor cleaning (at1) and sanitizing
(at2). Clean patient room requires to ask permission from the patient (at4), followed by at1 and
at2 (executed in any order). Lastly, two robots are required to move a medical equipment.
      </p>
      <p>The world is modelled as a (complete) weighted graph with vertices corresponding to each of
the rooms and initial robot positions, and weighted edges between these (where the weights
represent travelling distances). Two cleaner robots (r1, r2) and two pick-and-place robots (r3,
r4) are available. A total of 672 feasible allocation models where computed by Alloy Analyzer.
Markov decision processs models were created for each of these allocations by the task scheduler,
and appropriate robot plans were synthesised by finding the policy that minimizes the travelling
cost. Details on the case study and results are available at https://git.io/Js1Yj to conserve space.</p>
      <p>The Deployment &amp; adaptation manager component of our architecture is under development.
A MRS mission-scheduling architecture based on the separation of concerns was proposed.
Preliminary results generating the plans for a group of heterogeneous robots in a hospital
scenario show the viability of the approach. As multiple studies consider part of the MRS
scheduling problem (complex nonfunctional requirements, uncertainty, planning, etc.), this
modular architecture allows the adoption of a wide range of of-the-shelf software components,
combined into a robust and flexible MRS scheduling toolset. This doctoral project strives to
build and evaluate this toolset. A further evaluation considering multiple scenarios and a test
bed varying the number of robots, tasks, and rooms is planned to test feasibility and scalability.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>F.</given-names>
            <surname>Sherwani</surname>
          </string-name>
          ,
          <string-name>
            <surname>M. M. Asad</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Ibrahim</surname>
          </string-name>
          ,
          <article-title>Collaborative robots and industrial revolution 4.0 (IR 4.0)</article-title>
          , in: ICETST, IEEE,
          <year>2020</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>5</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>J.</given-names>
            <surname>Cámara</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Schmerl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          ,
          <article-title>Software architecture and task plan co-adaptation for mobile service robots</article-title>
          ,
          <source>in: SEAMS</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>125</fpage>
          -
          <lpage>136</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>R. De Lemos</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Garlan</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Weyns</surname>
          </string-name>
          , et al.,
          <article-title>Software engineering for self-adaptive systems: Research challenges in the provision of assurances</article-title>
          , in: SEAMS,
          <year>2017</year>
          , pp.
          <fpage>3</fpage>
          -
          <lpage>30</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>C.</given-names>
            <surname>Menghi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>García</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Pelliccione</surname>
          </string-name>
          ,
          <string-name>
            <surname>J.</surname>
          </string-name>
          <article-title>Tumova, Multi-robot LTL planning under uncertainty</article-title>
          ,
          <source>in: International Symposium on Formal Methods</source>
          , Springer,
          <year>2018</year>
          , pp.
          <fpage>399</fpage>
          -
          <lpage>417</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Shoukry</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Nuzzo</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Saha</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. L.</given-names>
            <surname>Sangiovanni-Vincentelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Seshia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. J.</given-names>
            <surname>Pappas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Tabuada</surname>
          </string-name>
          ,
          <article-title>Scalable motion planning using lazy SMT-based solving</article-title>
          , in: CDC,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>M.</given-names>
            <surname>Guo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. V.</given-names>
            <surname>Dimarogonas</surname>
          </string-name>
          <article-title>, Multi-agent plan reconfiguration under local LTL specifications</article-title>
          ,
          <source>The International Journal of Robotics Research</source>
          <volume>34</volume>
          (
          <year>2015</year>
          )
          <fpage>218</fpage>
          -
          <lpage>235</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>I. Gavran</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Majumdar</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Saha</surname>
          </string-name>
          ,
          <article-title>Antlab: a multi-robot task server</article-title>
          ,
          <source>ACM Transactions on Embedded Computing Systems</source>
          <volume>16</volume>
          (
          <year>2017</year>
          )
          <fpage>1</fpage>
          -
          <lpage>19</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>P.</given-names>
            <surname>Yu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. V.</given-names>
            <surname>Dimarogonas</surname>
          </string-name>
          ,
          <article-title>Distributed motion coordination for multi-robot systems under LTL specifications</article-title>
          ,
          <source>arXiv preprint arXiv:2103.09111</source>
          (
          <year>2021</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ulusoy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. L.</given-names>
            <surname>Smith</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X. C.</given-names>
            <surname>Ding</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Belta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Rus</surname>
          </string-name>
          ,
          <article-title>Optimal multi-robot path planning with temporal logic constraints</article-title>
          , in: IROS, IEEE,
          <year>2011</year>
          , pp.
          <fpage>3087</fpage>
          -
          <lpage>3092</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Guo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. H.</given-names>
            <surname>Johansson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. V.</given-names>
            <surname>Dimarogonas</surname>
          </string-name>
          ,
          <article-title>Revising motion planning under linear temporal logic specifications in partially known workspaces</article-title>
          ,
          <source>in: ICRA</source>
          ,
          <year>2013</year>
          , pp.
          <fpage>5025</fpage>
          -
          <lpage>5032</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>G. E.</given-names>
            <surname>Fainekos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Girard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Kress-Gazit</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. J.</given-names>
            <surname>Pappas</surname>
          </string-name>
          ,
          <article-title>Temporal logic motion planning for dynamic robots</article-title>
          ,
          <source>Automatica</source>
          <volume>45</volume>
          (
          <year>2009</year>
          )
          <fpage>343</fpage>
          -
          <lpage>352</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A.</given-names>
            <surname>Nikou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Boskos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Tumova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. V.</given-names>
            <surname>Dimarogonas</surname>
          </string-name>
          ,
          <article-title>Cooperative planning for coupled multi-agent systems under timed temporal specifications</article-title>
          ,
          <source>in: ACC</source>
          ,
          <year>2017</year>
          , pp.
          <fpage>1847</fpage>
          -
          <lpage>1852</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>G.</given-names>
            <surname>Vázquez</surname>
          </string-name>
          <string-name>
            <surname>Flores</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Calinescu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Cámara</surname>
          </string-name>
          ,
          <article-title>Scheduling multi-robot missions with joint tasks and heterogeneous robot teams</article-title>
          ,
          <source>in: TAROS</source>
          ,
          <year>2021</year>
          . To appear.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>D.</given-names>
            <surname>Jackson</surname>
          </string-name>
          ,
          <article-title>Alloy: a lightweight object modelling notation</article-title>
          ,
          <source>ACM Transactions on Software Engineering and Methodology</source>
          <volume>11</volume>
          (
          <year>2002</year>
          )
          <fpage>256</fpage>
          -
          <lpage>290</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kwiatkowska</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Norman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Parker</surname>
          </string-name>
          , PRISM
          <volume>4</volume>
          .
          <article-title>0: Verification of probabilistic real-time systems</article-title>
          ,
          <source>in: CAV'11</source>
          ,
          <year>2011</year>
          , pp.
          <fpage>585</fpage>
          -
          <lpage>591</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>