<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Proceedings of the SQAMIA</journal-title>
      </journal-title-group>
      <issn pub-type="ppub">1613-0073</issn>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>On Software Complexity of Agent-Oriented Logic Programs: an Empirical Analysis</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>AMELIA ˘ DICA˘</string-name>
          <email>ameliabd@yahoo.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>COSTIN ˘ DICA˘</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>ION BULIGIU</string-name>
          <email>buligiu.ion@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>University of Craiova MIRJANA IVANOVIC´</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>University of Novi Sad</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>MARIA GANZHA, Polish Academy of Sciences and Warsaw University of Technology MARCIN PAPRZYCKI, Polish Academy of Sciences and Warsaw Management Academy</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2018</year>
      </pub-date>
      <volume>7</volume>
      <fpage>27</fpage>
      <lpage>30</lpage>
      <abstract>
        <p>The aim of this paper is to brie y introduce some of our experiences with agent oriented programming, in particular combined with logic programming paradigm, in the context of software engineering, and with a focus on formal approaches for software development. The paper brie y reports some of the lessons learnt from carrying out few small research applications, employing agent-oriented logic programming languages including ECLiPSe-CLP and AgentSpeak(L) / Jason. The main contribution is to present complexity results of few small agent-oriented programming projects based on logical reasoning. Such approaches are traditionally the focus of arti cial intelligence research, while our concern here is on the more pragmatic perspective of software complexity.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. INTRODUCTION</title>
      <p>2:2
nity, that focuses on sound and robust software development methodologies, in particular showcasing
formal approaches based on computational logic. Different flavors of logic programming, including
for example constraint logic programming (CLP hereafter) or satisfiability checking (SAT) have been
proposed for tackling various software engineering problems such as: testing, verification, symbolic
execution, and quality assurance [Meudec 2001; Doyle and Meudec 2003; Anderson et al. 2005; Rojas
and Go´mez-Zamalloa 2013; Visser et al. 2014]. On the other hand, agent-oriented logic programming
practices are by far less mature and under-represented from the software engineering point of view
than other programming paradigms, like for example object-orientation.</p>
      <p>The main contribution of this paper is to present complexity results of few small agent-oriented
programming projects based on logical reasoning. Such approaches are traditionally the focus of artificial
intelligence research, while our concern here is on the more pragmatic perspective of software
complexity. We employ basic complexity measures specific to rule-based and logic programming, adapted
to the agent-oriented context, and we provide estimations of these measures for the projects briefly
reviewed in this paper. In our opinion these results could be of interest to both artificial intelligence
and software engineering research communities.</p>
      <p>Our paper is structured as follows. We start in Section 2 with a brief overview of agent-oriented
logic programming. In Section 3 we introduce a number of small research projects that employ
agentoriented logic programming in different application areas, including logistics, reinforcement learning,
as well as modeling and simulation of dynamic systems. For each application we provide summary
complexity figures emphasizing various aspects, like size of the knowledge base, size of belief base,
size of plan base, number of agents, as well as number of agent interactions. Section 4 concludes the
paper and points to future works.</p>
    </sec>
    <sec id="sec-2">
      <title>2. LOGIC-BASED AGENT-ORIENTED PROGRAMMING</title>
      <p>Computational logic has a quite long tradition in the field of classical artificial intelligence that
advocates the use of logic for knowledge representation and reasoning. This led to the development of a
plethora of AI methods and languages which allow the capturing of the cognitive and problem solving
capabilities of intelligent agents.</p>
    </sec>
    <sec id="sec-3">
      <title>2.1 Logic Programming</title>
      <p>Logic Programming is a programming paradigm comprising a collection of declarative programming
languages that use logic as the underlying computational mechanism of intelligent agents [Levesque
2012]. The prototypical language of this class is Prolog, while state-of-the-art extensions refer to
Answer Set Programming and Constraint Logic Programming.</p>
      <p>A logic program is a set of facts and a set of rules. In the context of intelligent agents, a logic program
is sometimes called knowledge base. Facts are atomic formulae composed of a predicate name and a
number of arguments. Arguments can be constants, variables or compound terms. Facts can be used
to capture the description of a situation, problem case or an agent’s belief base.</p>
      <p>Prolog rules are logical formulae equivalent to definite clauses. A definite clause is a disjunction of
literals (direct or negated atomic formulas) such that exactly one literal is positive. Rules can be used
to capture reasoning patterns of problem solving strategies of intelligent agents.</p>
      <p>Intelligence is extracted, consulted and applied using queries addressed to the agent’s knowledge
base. A query may have an external origin from another agent or human, seeking for consultancy of
the intelligent agent or internally, from the intelligent agent itself through introspection mechanisms,
during the problem solving process.</p>
      <p>CLP in general and ECLiPSe-CLP in particular distinguish between normal Prolog predicates as
used by standard Prolog and constraints that are specific to CLP [Schimpf and Shen 2012]. This
distinction is mandatory as constraints are handled by specialized constraint satisfaction algorithms that
provide more efficient problem solving methods than the standard Prolog’s backtracking search.</p>
    </sec>
    <sec id="sec-4">
      <title>2.2 Agent Oriented Programming Using AgentSpeak(L) / Jason</title>
      <p>AgentSpeak(L) is an abstract agent-oriented programming language introduced in [Rao 1996]. Jason
is a Java-based implementation, as well as an extension of AgentSpeak(L) [Bordini et al. 2007].</p>
      <p>AgentSpeak(L) follows the paradigm of practical reasoning, i.e. reasoning directed towards actions,
and it provides an implementation of the Belief-Desire-Intention (BDI hereafter) architecture of
software agents. According to this view an agent is a software module that (i) provides a software interface
with the external world and (ii) contains three components: belief base, plan library and reasoning
engine.</p>
      <p>The agent’s external world consists of the outer environment, as well as possibly other agents. The
agent interface provides three elements: sensing interface, actuation interface and communication
interface. The integration of agents with their external environment can be done using a Java API.</p>
      <p>The belief base defines what an agent “knows” or “believes” about its environment at a certain time
point. The BDI architecture does not impose a specific structuring of the belief base other than as a
generic container of beliefs. By default AgentSpeak(L) and Jason are using a logical model of beliefs
by structuring the belief base as a logic program composed of facts and rules. So, the agent can reason
about its own beliefs using logic programming.</p>
      <p>The plan library defines the agent’s “know-how” structured as a set of behavioral elements called
plans. A plan follows the general pattern of event-condition-action rules and it is composed of three
elements: triggering event, context and body. Events are triggered by belief and goal updates.
AgentSpeak(L) distinguishes between test goals and achievement goals. Test goals closely correspond to logic
programming queries addressed to the agent belief base. Moreover, plan context matching with agent’s
belief base is also using logic programming queries.</p>
      <p>The reasoning engine implements an update-select-act cycle that includes several activities:
perception and communication, event handling and plan selection, as well as action selection and execution.</p>
    </sec>
    <sec id="sec-5">
      <title>3. APPLICATIONS AND DISCUSSION</title>
      <p>In this section we introduce a series of small applications having in common the use of logic and
agent-oriented programming for problem solving in the following areas: optimization, learning, and
simulation. These applications mainly serve research needs, but they can be also used in an
educational setting centered on artificial intelligence and / or multi-agent systems curricula. We provide a
brief description of each application, highlighting the role of agents and logic.</p>
    </sec>
    <sec id="sec-6">
      <title>3.1 Declarative Approach to Freight Brokering</title>
      <p>Freight brokering business aims to coordinate transportation arrangements of transport customers
with transport resource providers. In this work we focused on the main function of this business to
find available trucks and to define their feasible routes for serving customer transportation requests.
We proposed a knowledge-based freight broker based on agents and constraint programming.</p>
      <p>The brokering function is defined as a special type of vehicle routing with pickup and delivery
problem. Our main achievement was the development of a declarative optimization model based on
constraint logic programming [Ba˘ dica˘ et al. 2018b]. This model was implemented and evaluated using the
state-of-the-art ECLiPSe-CLP engine [Schimpf and Shen 2012].</p>
      <p>We focus on the freight broker agent that mediates the indirect interaction between customer agents
and freight transportation provider agents. This agent records the transport requests issued by
customer agents, records provisions of transportation resources, including available trucks and/or
vehicles, as well as their characteristics, and determines feasible and possibly optimal allocations of
transport resources to transport requests.</p>
      <p>The freight broker agent is a typical knowledge-based agent composed of knowledge base and
inference engine. The knowledge base is structured into: facts, rules &amp; queries, and constraints. The
input description of the scheduling problem (vehicles characteristics, customer orders, transportation
hops) is converted to an internal representation captured by a set of logical facts that share a
predefined and self-explanatory schema. The constraints are general and they represent reusable knowledge
for solving different problem instances. The rules and queries define additional predicates, including
the generic search predicates, that are internally used by the agent to solve the given transportation
scheduling problem. The inference engine is represented by a constraints solver engine.</p>
      <p>Useful metrics of the freight broker agent refer to the size of the knowledge base estimated by the
number of facts, number of rules, and number of constraints.</p>
    </sec>
    <sec id="sec-7">
      <title>3.2 Reinforcement Learning</title>
      <p>This research was conducted in the context of approaching reinforcement learning (RL hereafter), a
typical task calling for intelligence of agents acting in an environment [Sutton and G. Barto 1998],
within the framework of agent-oriented programming. Agents, single or in group, can use RL to learn
how to choose their actions in an uncertain, dynamic and possibly unknown environment, in order to
improve their long-term utility.</p>
      <p>Our research was concerned with somehow trying to narrow the gap between agent research and
the practical use of agent-oriented programming. In particular we approached classical RL methods
based on temporal-difference learning (TDL hereafter) and Q-learning using BDI languages. Using our
proposal, BDI agents programmed in Jason can be endowed with RL skills, possibly resulting in new
forms of hybrid reasoning that can benefit from combining BDI reasoning and machine learning into
a unique cognitive architecture [Ba˘ dica˘ et al. 2015].</p>
      <p>Our prototype system was designed to serve the purpose of assisting researchers in experimenting
with BDI learning agents [B a˘dica˘ et al. 2018a]. It contains RL agents situated in a two dimensional
grid environment. Agents can take one step up, down, left or right in this grid. The result of their
action is stochastic, i.e. it can produce a successful move to the desired direction, or an erroneous move
by slightly deviating to left or right from the desired direction. The action’s effect uncertainty captures
the agents ignorance about their environment.</p>
      <p>A basic abstraction for the development of our system was to decouple the agents from their
environment. The simple sensing and acting interface provided by Jason platform proved very useful to
effortlessly achieve this desiderate. Agents can use their sensorial capabilities to perceive their
environment, while percepts can provide reward and state information, according to the RL paradigm.
Moreover, agents can use their acting capabilities specific to practical reasoning in order to perform
their actions, again complying with the RL paradigm. This model can be easily extended to multiple
agents sharing their environment that can act either asynchronously (in isolation) through
independent actions or synchronously (in coordination) through joint actions.</p>
      <p>The specific RL method was encoded using event-condition-action plans of BDI agents. We devised
BDI representations for the basic TDL approach in passive context, when the agent is only interested to
accurately estimate its long-term utility, as well as for classic Q-learning and SARSA methods in active
context, when the agent is interested to improve its long-term utility. Finally, taking into account the
rigor of our approach, we have reasons to believe that this method can be adapted for agent-oriented
programming languages following the BDI paradigm, thus supporting its generality [Ba˘ dic a˘ et al.
2011; Kravari and Bassiliades 2015].</p>
      <p>Useful metrics for the RL agents are: size of the belief base in number of facts and number of rules,
as well as size of plan base in number of plans and number of agent actions.
3.3</p>
    </sec>
    <sec id="sec-8">
      <title>Modelling and Simulation of Dynamic Systems</title>
      <p>In this section we consider three research applications having in common the modelling and simulation
of continuous and discrete dynamic systems using BDI agents implemented in Jason in the areas of
game theory, business processes and ecology.</p>
      <p>3.3.1 Patrolling Games. This project was focused on developing a BDI-based modelling and
simulation framework of patrolling games. This topic is part of the larger domain of game theory for security
that is interested in the development of intelligent defence strategies for enhancing the
trustworthiness of cyber-physical systems.</p>
      <p>We introduce a formal model of two-person patrolling game as Bayesian normal form game
[LeytonBrown and Shoham 2008]. This game involves two agents (robber and guardian) and it is suitable for
the scheduling of guardian patrols in surveillance applications. The model is mapped to agent-based
simulation using Jason agent-oriented language [Ba˘ dica˘ et al. 2017].</p>
      <p>The application involves two BDI agents representing the robber and the guardian that iteratively
play the patrolling game in a sequence of rounds. During each round the agents submit a joint action
to the game environment that reacts by providing to each of them the corresponding utilities in the
form of agent percepts1. In our experiments agents adopt mixed strategies that are fixed during a
playing round [Leyton-Brown and Shoham 2008]. Sampling of mixed strategy spaces and agent decision
making based on these strategies were implemented using logic programming.</p>
      <p>We can observe that this application uses the same model as the RL application, by letting the
agents to indirectly interact by jointly acting upon and separately perceiving their environment. The
game logic is encapsulated by the environment that exposes a sense and act interface allowing the
agents to play the game and to receive the corresponding utilities. This framework can be used to
experiment with more complex agent strategies possibly combining results of game theory and RL.</p>
      <p>Similarly to the RL application, useful metrics for the robber and guardian agents are: size of the
belief base and size of plan base.</p>
      <p>3.3.2 Knowledge Based Business Agents. This project was focused on modeling and enactment of
business processes using state-of-the-art agent-oriented programming. In particular we proposed a
method of capturing business process models expressed using role-activity diagrams [Ould 2005] by
AgentSpeak(L) / Jason programs. This approach of combining sound methods of business process and
agent-oriented modeling paves the way for the development of agent-based business organizations.</p>
      <p>Roles chunk business processes into units of responsibility that structure the set of activities they
are carrying out into single of multiple threads of work. Each role is mapped to a proactive Jason agent,
while the state of each role is captured by the set of beliefs of its corresponding agent. State transitions
are modeled by event-condition-action rules. Role coordination is achieved by letting involved agents
share their beliefs about their current state by direct interaction via message exchange.</p>
      <p>Our main achievement in this work was the generalization of the mapping of role activity diagrams
to Jason by proposing a generic knowledge-based business agent architecture (KB2A2 in what
follows) [Ba˘ dica˘ et al. 2016]. KB2A2 proposes the configuration of each agent representing a role of a
business process using the following components: i) a knowledge base defined as the set of facts
capturing the operational knowledge of the role; ii) a set of template plans capturing the generic behavioral
patterns of business agents.
1https://github.com/IntelligentDistributedSystems/Antoine-Conor</p>
      <p>2 2 compliant multi-agent system based on are: number of agents, size</p>
      <p>Some useful metrics of a KB A
of the knowledge base as number of facts, and number of agent interactions. Note that the plan base
is unique and shared by all the agents of the business organization.</p>
      <p>3.3.3 Modeling and Simulation of Graph-Based Predator-Prey Systems. The goal of this research
was to investigate the suitability of multi-agent systems based on BDI architecture for capturing the
details of the simulation models of continuous dynamic systems, as encountered in science and
engineering. Our achievement is the proposal of a framework based on BDI agents for the macroscopic
modeling and simulation of continuous dynamic systems. Our framework was used for the modeling
and simulation of an ecological system comprising a number of species that behave according to a given
set of predator-prey relationships described by an acyclic directed graph [Ba˘ dica˘ et al. 2018].</p>
      <p>While traditionally, agent-based modeling has been mostly applied for micro-modeling and
microsimulation, this work can be seen as a contribution of employing BDI-based agent-oriented
programming for the macro-modeling and macro-simulation of dynamic systems.</p>
      <p>The idea was to break down the target system model into a collection of autonomous and
looselycoupled interacting components endowed with message-based interfaces and local intelligence. Each
component has a type that precisely characterizes its behavior as a (possibly state-based) mathematical
function, as well as a finite number of inputs and outputs.</p>
      <p>Each component is mapped to a Jason agent that captures its state as a set of logical facts and its
behavioral patterns as a set of plans. Agents are configured to include: the agent type, the set of
parameters completely defining the mathematical function performed by the agent, the component state,
and the agent acquaintance model that is necessary for the dissemination of simulation information.</p>
      <p>This approach provides a natural mapping of a dynamic system model to a distributed computational
system that can bring modularity, scalability, reusability, and flexibility to a network-based
implementation. The building blocks of our solution are highly reusable. Their configuration is simply achieved
by initializing accordingly the agents’ belief bases.</p>
      <p>Useful metrics include number of agents and number of agent types. Agents of a given type share
their plan base, while agent interaction is achieved by message passing, like the KB2A2 architecture.</p>
    </sec>
    <sec id="sec-9">
      <title>3.4 Discussion</title>
      <p>The analysis of software complexity is an important problem in software engineering. Moreover,
multiagent systems are a special type of software developed using multi-agent platforms and languages.
Therefore, their systematic analysis from the complexity and performance points of view attracted
the interest of the computer science research community [Camacho and Aler 2005; Jordan and Collier
2012; Ivanovic´ et al. 2016].</p>
      <p>In this section we propose a brief comparative analysis of the software projects introduced in this
paper, based on their quantitative and qualitative characteristics. In principle, we can reuse already
existing analysis proposals and frameworks. Nevertheless, our endeavour is a bit special because our
work is focused on logic based agent-oriented programming languages. The research literature
contains also proposals for measuring software complexity of logic programs, in particular based on Prolog
language [Moores 1998], as well as of rule-based expert systems [Chen and Suen 1994]. These works
provided us some source of inspiration, as reasoning with agent beliefs in Jason is actually based on
logic programming, while Jason plans resemble some-how production rules of expert systems.</p>
      <p>In what follows we consider the five agent-based software projects presented in this paper from the
following perspectives. The resulted summary figures are presented in Table I.</p>
      <p>On Software Complexity of Agent-Oriented Logic Programs: an Empirical Analysis 2:7
n
u
] r
m b
8 n
y ˘a y ˘a r ˘a
l c l c o c
n i n i f i
o d o d d</p>
      <p>˘a ˘a ly ˘a
s
n
o
i
t
a
c
i
l
p ts + +
p n
a ia ) 1
2
)
5
r
d t
e s
t n ++ )n
o
t
n s
e n
g la
a P
d #
e
s
a s</p>
      <p>e
b l
- u 7
c R 1
i
g e #
o s
l a
5 B 2</p>
      <p>f k
r e
y
t
i n
x io
e t
l c
p ra</p>
      <p>e
m t
o n
c I
m s
u t
S en
. A
I</p>
      <p>#
e
l
b
a
T</p>
      <p>t t
y n c
r e e
a g ir</p>
      <p>A d
m
r
e
k
o
r
b
n
o
i
t
p t
i
rc igh tn
s e e
e r g
D F a
.
o</p>
      <p>N
: g 1</p>
      <p>1 2 3
7</p>
      <p>6
9 4 1
1 1 1</p>
      <p>0
+ 5</p>
      <p>6
1. In the case of the freight brokering system introduced in Section 3.1, the analysis is exclusively
focused on the freight broker agent.
2. In the case of RL agents introduced in Section 3.2, the analysis is focused on the implementation of
classic RL strategies in Jason (so the Java-based implementation of the environment, as well as the
other components of the system that use classical object-oriented programming are ignored).
3. In the case of the patrolling game simulation introduced in Section 3.3.1, we focus only on the
guardian and robber agents, while the Java-based implementation of the environment, as well as
the other components of the system are omitted.
4. In the case of KB2A2 framework introduced in Section 3.3.2, we focus on the sample project
management process presented in [Ba˘ dica˘ et al. 2016].
5. In the case of the BDI-based framework for the modeling and simulation of continuous dynamic
systems from Section 3.3.3, we consider the predator-prey system introduced in [Ba˘ dica˘ et al. 2018].</p>
      <p>Table I reveals interesting aspects. In 2 projects (1 and 2) the number of facts in the belief base
depends on the problem instance, actually increasing with the values of the input parameters of the
problem. On the other hand, number of rules and plans are constant for each agent. Finally, for the
constraint-based agent (project 1), the number of constraints also depends on the problem instance,
actually increasing drastically with the values of the input parameters of the problem. Frankly speaking,
constrains are actually represented as Prolog facts, so this observation is consistent with our finding
referring to the number of facts of the belief base.</p>
      <p>Moreover, while application 3 can be described as relatively simple, involving the modeling and
simulation of the strategic interaction of two intelligent agents, applications 4 and 5 actually incorporate
hidden sources of complexity that are not immediately noticeable from the quantitative figures
presented in Table I. The sources are represented by the size of the the RAD process model, respectively
by the size of the dynamic system under consideration. They directly impact the size of the agents’
belief base and the number of agents (in project 4), as well as the number of agents (in project 5).</p>
      <p>Finally, it is interesting to observe that with the modular approach employed by project 5, the
complexity of the dynamic system under consideration is reflected into the complex interaction structure
(acquaintance model) of the multi-agent system, while the internal model, as well as the belief base of
each agent are kept as simple as possible.</p>
      <p>This simple analysis provides some useful insights into the main sources of complexity of
knowledgebased applications based on logical reasoning. We can observe that, in our simple projects, the
number of logical facts (representing agents’ belief bases or problem constraints), as well as the number
of agents and their interactions can represent the main source of complexity. Both (beliefs and
constraints) are actually derived from the domain conceptualization that in our opinion plays a crucial
aspect in knowledge-based systems. This supports the conclusion that the knowledge engineer’s
experience, as well as his or her insight into the problem domain have a significant impact on the provided
solution. Finally, the number of agents and their interactions clearly depend on the problem solving
approach, also carrying out a significant impact on the provided solution.</p>
    </sec>
    <sec id="sec-10">
      <title>4. CONCLUSIONS AND FUTURE WORKS</title>
      <p>We briefly reviewed from a software engineering perspective, several research prototypes employing
logic-based agent programming. We provided a comparative analysis of summary complexity figures of
these projects. As future work, this analysis can be further deepened and consequently the conclusions
strengthened, by considering more complexity figures, possibly applied to other research prototypes
involving logic-based agent programming. This will involve at least two aspects that we plan to
consider in our future work: i) expanding the repository of considered applications with more projects in
the area of agent-based logic programming; one source could be the sample applications and
examples available within Jason distribution; ii) developing a more systematic analysis approach, possibly
enabled by a suitable tool support.</p>
      <p>ACKNOWLEDGMENT
This paper is a part of the Serbia-Romania-Poland collaboration within multilateral agreement on
“Agent systems and applications” and Romania-Poland collaboration within bilateral project “Semantic
foundation of the Internet of Things”.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Bonnie Brinton Anderson</surname>
            ,
            <given-names>James V.</given-names>
          </string-name>
          <string-name>
            <surname>Hansen</surname>
            , Paul Benjamin Lowry,
            <given-names>and Scott L.</given-names>
          </string-name>
          <string-name>
            <surname>Summers</surname>
          </string-name>
          .
          <year>2005</year>
          .
          <article-title>Model checking for E-business control and assurance</article-title>
          .
          <source>IEEE Transactions on Systems, Man, and Cybernetics</source>
          , Part C (
          <article-title>Applications</article-title>
          and Reviews)
          <volume>35</volume>
          ,
          <issue>3</issue>
          (
          <year>2005</year>
          ),
          <fpage>445</fpage>
          -
          <lpage>450</lpage>
          . DOI:http://dx.doi.org/10.1109/TSMCC.
          <year>2004</year>
          .843181
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <given-names>Amelia</given-names>
            <surname>Ba</surname>
          </string-name>
          <article-title>˘ dic a˘, Costin Ba˘ dica˘ , Mirjana Ivanovic´, and Dana D a˘nciulescu. 2018. Multi-agent modelling and simulation of graphbased predator-prey dynamic systems: A BDI approach</article-title>
          .
          <source>Expert Systems (Jun</source>
          <year>2018</year>
          ). DOI:http://dx.doi.org/10.1111/exsy.12263
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Amelia B</surname>
          </string-name>
          <article-title>a˘dica˘ , Costin Ba˘ dic a˘, Mirjana Ivanovic´</article-title>
          , and
          <string-name>
            <given-names>Dejan</given-names>
            <surname>Mitrovic</surname>
          </string-name>
          .
          <year>2015</year>
          .
          <article-title>An Approach of Temporal Difference Learning Using Agent-Oriented Programming</article-title>
          .
          <source>In Proceedings of the 20th International Conference on Control Systems and Computer Science</source>
          (CSCS'
          <year>2015</year>
          ). IEEE,
          <fpage>735</fpage>
          -
          <lpage>742</lpage>
          . DOI:http://dx.doi.org/10.1109/CSCS.
          <year>2015</year>
          .71
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <given-names>Amelia</given-names>
            <surname>Ba</surname>
          </string-name>
          <article-title>˘ dic a˘, Costin Ba˘ dic a˘, Florin Leon</article-title>
          , and Ionut¸ Buligiu.
          <year>2016</year>
          .
          <article-title>Modeling and Enactment of Business Agents Using Jason</article-title>
          .
          <source>In Proceedings of the 9th Hellenic Conference on Artificial Intelligence, SETN 16. ACM</source>
          ,
          <volume>376</volume>
          -
          <fpage>380</fpage>
          . DOI:http://dx.doi.org/10.1145/2903220.2903253
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Costin B</surname>
          </string-name>
          <article-title>a˘dica˘ , Amelia Ba˘ dic a˘, Catalina Sitnikov</article-title>
          , and
          <string-name>
            <given-names>Florin</given-names>
            <surname>Leon</surname>
          </string-name>
          .
          <year>2017</year>
          .
          <article-title>A Formal Model of Patrolling Game and its AgentBased Simulation Using Jason</article-title>
          .
          <source>In Proceedings of the 25th Euromicro International Conference on Parallel, Distributed and Network-based Processing (PDP2017)</source>
          . IEEE,
          <fpage>376</fpage>
          -
          <lpage>380</lpage>
          . DOI:http://dx.doi.org/10.1109/PDP.
          <year>2017</year>
          .95
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <given-names>Costin</given-names>
            <surname>Ba</surname>
          </string-name>
          <article-title>˘ dic a˘, Alex Becheru, and Samuel Felton. 2018a. Integration of Jason Reinforcement Learning Agents into an Interactive Application</article-title>
          .
          <source>In Post-Proceedings of the 19th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing</source>
          ,
          <string-name>
            <surname>SYNASC</surname>
          </string-name>
          <year>2017</year>
          .
          <article-title>IEEE</article-title>
          . in press.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Costin B</surname>
          </string-name>
          <article-title>a˘dica˘ , Florin Leon, and Amelia B a˘dica˘</article-title>
          . 2018b.
          <article-title>Freight transportation broker agent based on constraint logic programming</article-title>
          .
          <source>Evolving Systems (Jun</source>
          <year>2018</year>
          ). DOI:http://dx.doi.org/10.1007/s12530-018-9230-3
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Rafael H. Bordini</surname>
            , Jomi Fred Hu¨ bner, and
            <given-names>Michael</given-names>
          </string-name>
          <string-name>
            <surname>Wooldridge</surname>
          </string-name>
          .
          <year>2007</year>
          .
          <article-title>Programming Multi-Agent Systems in AgentSpeak Using Jason</article-title>
          . John Wiley &amp; Sons.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <given-names>Costin</given-names>
            <surname>Ba</surname>
          </string-name>
          ˘ dica˘ ,
          <string-name>
            <surname>Zoran</surname>
            <given-names>Budimac</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hans-Dieter Burkhard</surname>
          </string-name>
          , and Mirjana Ivanovic´.
          <year>2011</year>
          .
          <article-title>Software agents: Languages, tools, platforms</article-title>
          .
          <source>Computer Science and Information Systems</source>
          <volume>8</volume>
          ,
          <issue>2</issue>
          (
          <year>2011</year>
          ),
          <fpage>255</fpage>
          -
          <lpage>298</lpage>
          . DOI:http://dx.doi.org/10.2298/CSIS110214013B
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <given-names>David</given-names>
            <surname>Camacho</surname>
          </string-name>
          and
          <string-name>
            <given-names>Ricardo</given-names>
            <surname>Aler</surname>
          </string-name>
          .
          <year>2005</year>
          .
          <article-title>Software and Performance Measures for Evaluating Multi-Agent Frameworks</article-title>
          .
          <source>Applied Artificial Intelligence</source>
          <volume>19</volume>
          ,
          <issue>6</issue>
          (
          <year>2005</year>
          ),
          <fpage>645</fpage>
          -
          <lpage>657</lpage>
          . DOI:http://dx.doi.org/10.1080/08839510590962050
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <given-names>Zhisong</given-names>
            <surname>Chen</surname>
          </string-name>
          and
          <string-name>
            <given-names>Ching Y.</given-names>
            <surname>Suen</surname>
          </string-name>
          .
          <year>1994</year>
          .
          <article-title>Measuring the complexity of rule-based expert systems</article-title>
          .
          <source>Expert Systems with Applications 7</source>
          ,
          <issue>4</issue>
          (
          <year>1994</year>
          ),
          <fpage>467</fpage>
          -
          <lpage>481</lpage>
          . DOI:http://dx.doi.org/10.1016/
          <fpage>0957</fpage>
          -
          <lpage>4174</lpage>
          (
          <issue>94</issue>
          )
          <fpage>90072</fpage>
          -
          <lpage>8</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <given-names>J.</given-names>
            <surname>Doyle</surname>
          </string-name>
          and
          <string-name>
            <given-names>Christophe</given-names>
            <surname>Meudec</surname>
          </string-name>
          .
          <year>2003</year>
          .
          <article-title>IBIS: An Interactive Bytecode Inspection System, Using Symbolic Execution and Constraint Logic Programming</article-title>
          .
          <source>In Proceedings of the 2nd International Conference on Principles and Practice of Programming in Java - PPPJ '03</source>
          . Computer Science Press, Inc., New York, NY, USA,
          <fpage>55</fpage>
          -
          <lpage>58</lpage>
          . http://dl.acm.org/citation.cfm?id=
          <volume>957289</volume>
          .
          <fpage>957307</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <surname>Mirjana</surname>
            <given-names>Ivanovic´</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Marcin</surname>
            <given-names>Paprzycki</given-names>
          </string-name>
          , Maria Ganzha, Costin Ba˘ dica˘ ,
          <source>and Amelia Ba˘ dic a˘</source>
          .
          <year>2016</year>
          .
          <article-title>Software Metrics for Agent Technologies and Possible Educational Usage</article-title>
          .
          <source>In Proceedings of the Fifth Workshop on Software Quality Analysis</source>
          , Monitoring, Improvement, and Applications,
          <string-name>
            <surname>SQAMIA</surname>
          </string-name>
          <year>2016</year>
          ,
          <article-title>Zoran Budimac, Zolta´ n Horv a´th, and</article-title>
          <source>Tama´ s Kozsik (Eds.)</source>
          , Vol.
          <volume>1677</volume>
          . CEUR Workshop Proceedings,
          <fpage>17</fpage>
          -
          <lpage>27</lpage>
          . http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>1677</volume>
          /paper03.pdf
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <given-names>Howell R.</given-names>
            <surname>Jordan</surname>
          </string-name>
          and
          <string-name>
            <given-names>Rem</given-names>
            <surname>Collier</surname>
          </string-name>
          .
          <year>2012</year>
          .
          <article-title>Evaluating Agent-oriented Programs: Towards Multi-paradigm Metrics</article-title>
          .
          <source>In Proceedings of the 8th International Conference on Programming Multi-Agent Systems - ProMAS'10. Lecture Notes in Computer Science</source>
          , Vol.
          <volume>6599</volume>
          . Springer-Verlag, Berlin, Heidelberg,
          <fpage>63</fpage>
          -
          <lpage>78</lpage>
          . DOI:http://dx.doi.
          <source>org/10.1007/978-3-642-28939-2 4</source>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <given-names>Kalliopi</given-names>
            <surname>Kravari</surname>
          </string-name>
          and
          <string-name>
            <given-names>Nick</given-names>
            <surname>Bassiliades</surname>
          </string-name>
          .
          <year>2015</year>
          .
          <article-title>A Survey of Agent Platforms</article-title>
          .
          <source>Journal of Artificial Societies and Social Simulation</source>
          <volume>18</volume>
          ,
          <issue>1</issue>
          (
          <year>2015</year>
          ),
          <fpage>11</fpage>
          . DOI:http://dx.doi.org/10.18564/jasss.2661
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          <string-name>
            <given-names>Hector J.</given-names>
            <surname>Levesque</surname>
          </string-name>
          .
          <year>2012</year>
          .
          <article-title>Thinking as Computation: A First Course</article-title>
          . The MIT Press.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          <string-name>
            <given-names>Kevin</given-names>
            <surname>Leyton-Brown</surname>
          </string-name>
          and
          <string-name>
            <given-names>Yoav</given-names>
            <surname>Shoham</surname>
          </string-name>
          .
          <year>2008</year>
          .
          <article-title>Essentials of Game Theory: A Concise Multidisciplinary Introduction</article-title>
          . Morgan &amp; Claypool. DOI:http://dx.doi.org/10.2200/S00108ED1V01Y200802AIM003
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          <string-name>
            <given-names>Christophe</given-names>
            <surname>Meudec</surname>
          </string-name>
          .
          <year>2001</year>
          .
          <article-title>ATGen: automatic test data generation using constraint logic programming and symbolic execution</article-title>
          .
          <source>Software: Testing, Verification and Reliability</source>
          <volume>11</volume>
          ,
          <issue>2</issue>
          (
          <year>2001</year>
          ),
          <fpage>81</fpage>
          -
          <lpage>96</lpage>
          . DOI:http://dx.doi.org/10.1002/stvr.225
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          <string-name>
            <surname>Trevor T Moores</surname>
          </string-name>
          .
          <year>1998</year>
          .
          <article-title>Applying complexity measures to rule-based prolog programs</article-title>
          .
          <source>Journal of Systems and Software 44</source>
          ,
          <issue>1</issue>
          (
          <year>1998</year>
          ),
          <fpage>45</fpage>
          -
          <lpage>52</lpage>
          . DOI:http://dx.doi.org/10.1016/S0164-
          <volume>1212</volume>
          (
          <issue>98</issue>
          )
          <fpage>10042</fpage>
          -
          <lpage>0</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          <string-name>
            <given-names>Martyn A.</given-names>
            <surname>Ould</surname>
          </string-name>
          .
          <year>2005</year>
          .
          <article-title>Business Process Management: A Rigorous Approach</article-title>
          . Meghan Kiffer Pr.
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          <string-name>
            <given-names>Anand S.</given-names>
            <surname>Rao</surname>
          </string-name>
          .
          <year>1996</year>
          .
          <string-name>
            <surname>AgentSpeak</surname>
          </string-name>
          (L):
          <article-title>BDI agents speak out in a logical computable language</article-title>
          .
          <source>In Agents Breaking Away: Proc.of the 7th European Workshop on Modelling Autonomous Agents in a Multi-Agent World, MAAMAW '96</source>
          ,
          <string-name>
            <surname>Walter Van de Velde</surname>
          </string-name>
          and John W. Perram (Eds.).
          <source>Lecture Notes in Computer Science</source>
          , Vol.
          <volume>1038</volume>
          . Springer,
          <fpage>42</fpage>
          -
          <lpage>55</lpage>
          . DOI:http://dx.doi.org/10.1007/BFb0031845
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          <article-title>Jose´ Miguel Rojas and Miguel Go´mez-</article-title>
          <string-name>
            <surname>Zamalloa</surname>
          </string-name>
          .
          <year>2013</year>
          .
          <article-title>A Framework for Guided Test Case Generation in Constraint Logic Programming</article-title>
          .
          <source>In Logic-Based Program Synthesis and Transformation, Elvira Albert (Ed.). Lecture Notes in Computer Science</source>
          , Vol.
          <volume>7844</volume>
          . Springer Berlin Heidelberg, Berlin, Heidelberg,
          <fpage>176</fpage>
          -
          <lpage>193</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          <string-name>
            <surname>Joachim</surname>
            . Schimpf and
            <given-names>Kish</given-names>
          </string-name>
          <string-name>
            <surname>Shen</surname>
          </string-name>
          .
          <year>2012</year>
          .
          <article-title>ECLiPSe - from LP to CLP</article-title>
          .
          <source>Theory and Practice of Logic Programming</source>
          <volume>12</volume>
          ,
          <fpage>1</fpage>
          -
          <lpage>2</lpage>
          (
          <year>2012</year>
          ),
          <fpage>127</fpage>
          -
          <lpage>156</lpage>
          . DOI:http://dx.doi.org/10.1017/S1471068411000469
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          <string-name>
            <given-names>Richard S.</given-names>
            <surname>Sutton</surname>
          </string-name>
          and
          <string-name>
            <given-names>Andrew G.</given-names>
            <surname>Barto</surname>
          </string-name>
          .
          <year>1998</year>
          .
          <article-title>Reinforcement Learning: An Introduction</article-title>
          . The MIT Press, Cambridge, MA,.
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          <string-name>
            <given-names>Willem</given-names>
            <surname>Visser</surname>
          </string-name>
          , Nikolaj Bjørner, and
          <string-name>
            <given-names>Natarajan</given-names>
            <surname>Shankar</surname>
          </string-name>
          .
          <year>2014</year>
          .
          <article-title>Software Engineering and Automated Deduction</article-title>
          .
          <source>In Proceedings of the on Future of Software</source>
          Engineering - FOSE'
          <year>2014</year>
          . ACM, New York, NY, USA,
          <fpage>155</fpage>
          -
          <lpage>166</lpage>
          . DOI:http://dx.doi.org/10.1145/2593882.2593899
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>