• No se han encontrado resultados

CAPÍTULO SEGUNDO. DE LA FILIACIÓN QUE RESULTA DEL NACIMIENTO

There are a number of ways in which this work can be extended. These constitute interesting directions for future research.

A critical form of behaviour adaptation stems from the application of machine learning techniques. These have not been explored in this thesis. There are a few areas where machine learning techniques could be useful, such as to replace the heuristic function (e.g. Equation 4.1 and Equation 7.1), to replace the environment behaviour

model in Chapter 8, or even the state update operator. The challenges of utilising machine learning techniques may include having large amount of past instances with annotated outcome values as well as the historical behaviour of the environment.

Additionally, any statistical model may be only applicable to a very specific domain (e.g. for a specific process or environment). With more and more operational data collected in businesses, it is possible, in near future, that there are enough detailed data to support building machine learning or deep learning models.

There are a range of issue relating to game-tree search that have not been explored in this thesis. These include the use of other game-tree search techniques, probabilistic game-tree search, other variants of MCTS and so on. In the case of minimax search and its variants, the use of machine learning techniques in computing the evaluation function have not been explored.

The question of merging business process models (sometimes referred to as the process integration problem), in a manner similar to the merging of agent programs has not been explored in this thesis. However, the chapter on merging agent programs provides enough pointers to make this a potentially easy exercise.

Other possible formal notations for states and state update operators are not explored. The semantics of agent programs and processes are described using propositional logic. The extensions to first-order logic, default logic, and temporal logic will offer much greater expressiveness in different application domains. However, such extensions also increases the computation complexity, and potentially makes the approach less practical in runtime. The use of different formal languages also results in changing the state update operator and its computation complexity.

Other future research directions may include behaviour understanding (intention mining/recognition), discovering new behaviour and detecting undesirable behaviour in autonomous system, preventing autonomous system from reaching undesirable state,

etc.

Process Models

Process01

Model

Capability Library

T01 {a}

T02 {b, c}

T03 {¬b}

T04 {¬c}

Knowledge Base

a ∧ ¬b → c 170

b → a c → a

Process02

Model

Capability Library

T01 {a, b}

T02 {¬b, ¬d}

T03 {¬a, c}

T04 {d}

Knowledge Base

a ∧ ¬b → c c ∧ ¬d → b

Process03

Model

Capability Library

T01 {a, b, c, d, e, f, g}

T02 {¬b, ¬d, ¬f } T03 {¬a, ¬c, ¬e, ¬g}

T04 {b, d, f } T05 {a, c, e, g}

T06 {¬b}

T07 {¬f, ¬g}

T08 {¬a, ¬d}

T09 {¬c}

T10 {b, c}

Knowledge Base

a ∧ ¬b → c c ∧ ¬d → e e ∧ ¬f → g

Process04

Model

Capability Library

T01 {a, b, c, d}

T02 {¬b, ¬d, ¬f, i}

T03 {¬a, ¬c, ¬e}

T04 {b, d, f, ¬h}

T05 {a, c, e, g}

T06 {h, j, ¬l}

T07 {k, m}

Knowledge Base

a ∧ ¬b → c c ∧ ¬d → e e ∧ ¬f → g

¬b → a

¬d → a h → ¬a

¬j → ¬a

Process05

Model

Capability Library

T01 {a, b, c, d, e, f, g}

T02 {¬b, ¬d, ¬f, i}

T03 {¬a, ¬c, ¬e, ¬g, ¬i, j, k}

T04 {b, d, f, ¬h, ¬j, l, m}

T05 {a, c, e, g, i, ¬k, ¬m}

T06 {h, j, ¬l}

T07 {k, m}

Knowledge Base

a ∧ ¬b → c c ∧ ¬d → e e ∧ ¬f → g

¬b → a

¬d → a h → ¬a

¬j → ¬a

Process06

Model

Capability Library

T01 {a}

T02 {c, d}

T03 {¬c, d}

T04 {¬d}

T05 {¬a, c}

T06 {¬c, d, ¬e}

T07 {e}

T08 {¬b, e}

T09 {¬a}

Knowledge Base

a ∧ ¬b → c

¬a → e ∨ d

Process07

Model

Capability Library

T01 {a, d, e, f, g}

T02 {¬f, h, i}

T03 {¬a, ¬c, ¬e, ¬g, ¬i, j, k}

T04 {¬d, f, ¬h, ¬j, l, m}

T05 {a, c, e, g, i, ¬k, ¬m}

T06 {¬b, h, j, ¬l}

T07 {k, m}

T08 {l}

T09 {¬b, ¬k, ¬m}

T10 {b, c, ¬d}

Knowledge Base

a ∧ ¬b ∧ ¬m → c c ∧ ¬d → e e ∧ ¬f → g

¬b ∨ ¬d → a h ∧ ¬j → ¬a l → k ∨ m

Process08

Model

The process (simplified) for an Australian student visa application.

Capability Library

T01 {level1}, {level2}, {level3}, {level4}

T02 {doc01, doc02, doc03, doc04, doc05, doc06}

T03 {doc08, doc09, doc10, doc11}

T04 {doc07}

T05 {onlineApplicationF ormCompleted¬k, ¬m}

T06 {f eeP aidOnline}

T07 {157AF ormCompleted}

T08 {creditCardP aymentAuthorized}

T09 {creditCardP aymentAuthorized}

T10 {healthExaminationBooked}

Knowledge Base

level1 → ¬level2 ∧ ¬level3 ∧ ¬level4 level2 → ¬level1 ∧ ¬level3 ∧ ¬level4 level3 → ¬level1 ∧ ¬level2 ∧ ¬level4 level4 → ¬level1 ∧ ¬level2 ∧ ¬level3

¬level2 ∧ ¬level3 ∧ ¬level4 → level1

¬level1 ∧ ¬level3 ∧ ¬level4 → level2

¬level1 ∧ ¬level2 ∧ ¬level4 → level3

¬level1 ∧ ¬level2 ∧ ¬level3 → level4 online → ¬of f line

of f line → ¬online

of f line → inP erson ∨ byP ost

Process09

Model

The “Customer On Boarding” example process from http://workflowpatterns.

com/ (accessed on 2014).

Capability Library

T01 {requested}

T02 {available}, {¬available}

T03 {rejected}

T04 {inf oChecked}

T05 {valid}, {¬valid}

T06 {open}

T07 {activate}

Knowledge Base

[empty]

The knowledge base is empty because the effect of the tasks and the domain knowledge do not require any extra rules in the knowledge base.

Process10

Model

Capability Library

T01 {invoiceIn}

T02 {invoiceChecked}

T03 {newEntryCreated}

T04 {invoiceDetailInserted}

T05 {customerDetailInserted}

T06 {mismatchChecked}

T07 {invoiceBlocked}

T08 {invoiceOut}

Knowledge Base

[empty]

The knowledge base is empty because the effect of the tasks and the domain knowledge do not require any extra rules in the knowledge base.

[1] B. Abramson. Expected-Outcome: A General Model of Static Evaluation.

IEEE Transactions on Pattern Analysis and Machine Intelligence, 12(2):182–

193, 1990.

[2] N. Alechina, M. Dastani, B. Logan, and J. J. Ch. Meyer. Reasoning about plan revision in BDI agent programs. Theoretical Computer Science, 412(44):6115–

6134, 2011.

[3] R. Alur, T. A. Henzinger, and O. Kupferman. Alternating-time Temporal Logic.

Journal of the ACM (JACM), 49(5):23–60, sep 1998.

[4] P. Auer, N. Cesa-Bianchi, and P. Fischer. Finite-time Analysis of the Multiarmed Bandit Problem. Machine Learning, 47(2):235–256, may 2002.

[5] G. M. Baudet. On the Branching Factor of the Alpha , Beta Pruning Algorithm.

Artificial Intelligence, 10(044):173–199, 1978.

[6] M. Baumann, M. H. Baumann, S. Sch¨onig, and S. Jablonski. Enhancing feasibility of human-driven processes by transforming process models to process checklists. In I. Bider, K. Gaaloul, J. Krogstie, S. Nurcan, H. A. Proper, R. Schmidt, and P. Soffer, editors, Lecture Notes in Business Information Processing, volume 175 LNBIP, pages 124–138. Springer Berlin Heidelberg, Berlin, Heidelberg, 2014.

183

[7] R. Bellman. Dynamic Programming, volume 153. Princeton University Press, Princeton, 1966.

[8] M. Benerecetti and A. Cimatti. Validation of Multiagent Systems by Symbolic Model Checking. In F. Giunchiglia, J. Odell, and G. Weiß, editors, Agent-Oriented Software Engineering III, volume 2585 of Lecture Notes in Computer Science, pages 32–46. Springer Berlin Heidelberg, 2003.

[9] D. L. Berre, A. Parrain, D. Le Berre, and A. Parrain. The Sat4j library, release 2.2 system description. Journal on Satisfiability, Boolean Modeling and Computation, 7(2010):59–64, 2010.

[10] V. Berzins. Software merge: semantics of combining changes to programs. ACM Transactions on Programming Languages and Systems, 16(6):1875–1903, nov 1994.

[11] R. H. Bordini, A. L. C. Bazzan, R. de O. Jannone, D. M. Basso, R. M. Vicari, and V. R. Lesser. AgentSpeak(XL). In Proceedings of the first international joint conference on Autonomous agents and multiagent systems part 3 - AAMAS ’02, page 1294, Bologna, Italy, 2002. ACM Press.

[12] R. H. Bordini, M. Dastani, and M. Winikoff. Current Issues in Multi-Agent Systems Development. In G. O’Hare, A. Ricci, M. O’Grady, and O. guz Dikenelli, editors, Engineering Societies in the Agents World VII, volume 4457 of Lecture Notes in Computer Science, pages 38–61. Springer Berlin Heidelberg, 2007.

[13] R. H. Bordini, L. A. Dennis, B. Farwer, and M. Fisher. Automated Verification of Multi-Agent Programs. In Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, ASE ’08, pages 69–78, Washington, DC, USA, 2008. IEEE Computer Society.

[14] R. H. Bordini, M. Fisher, C. Pardavila, and M. Wooldridge. Model Checking AgentSpeak. In Autonomous Agents and Multiagent Systems (AAMAS), pages 409–416, 2003.

[15] R. H. Bordini, M. Fisher, W. Visser, and M. Wooldridge. Verifiable multi-agent programs. In M. Dastani, J. Dix, and A. El Fallah-Seghrouchni, editors, Programming Multi-Agent Systems, volume LNCS of Lecture Notes in Computer Science, pages 72–89. Springer Berlin Heidelberg, 2004.

[16] R. H. Bordini, M. Fisher, W. Visser, and M. Wooldridge. Verifying multi-agent programs by model checking. Autonomous Agents and Multi-Agent Systems, 12(2):239–256, 2006.

[17] R. H. Bordini, J. F. H¨ubner, and D. M. Tralamazza. Using Jason to implement a team of gold miners. In K. Inoue, K. Satoh, and F. Toni, editors, Computational Logic in Multi-Agent Systems, volume 4371 of Lecture Notes in Computer Science, pages 304–313. Springer Berlin Heidelberg, 2007.

[18] R. H. Bordini, J. F. H¨ubner, and M. Wooldridge. Programming Multi-Agent Systems in AgentSpeak using Jason. Number October in Wiley Series in Agent Technology. Wiley-Blackwell, 2007.

[19] L. Braubach, A. Pokahr, D. Moldt, and W. Lamersdorf. Goal representation for BDI agent systems. In R. Bordini, M. Dastani, J. Dix, and A. Fallah Seghrouchni, editors, Lecture Notes in Computer Science, volume 3346 of Lecture Notes in Computer Science, pages 44–65. Springer Berlin Heidelberg, 2005.

[20] C. B. Browne, E. Powley, D. Whitehouse, S. M. Lucas, P. I. Cowling, P. Rohlfshagen, S. Tavener, D. Perez, S. Samothrakis, and S. Colton. A survey