Intelligent Multiagent Systems Based on Distributed Non-Axiomatic Reasoning
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSITY OF NOVI SAD FACULTY OF SCIENCES DEPARTMENT OF MATHEMATICS AND INFORMATICS Dejan Mitrovi´c Intelligent Multiagent Systems based on Distributed Non-Axiomatic Reasoning { Doctoral Dissertation { Advisor: Prof. dr Mirjana Ivanovi´c Novi Sad, 2015 ii Abstract The agent technology represents one of the most consistent approaches to dis- tributed artificial intelligence. Agents are characterized by autonomous, reactive, pro-active, and social behavior. In addition, more complex, intelligent agents are often defined in terms of human-like mental attitudes, such as beliefs, desires, and intentions. This thesis deals with software agents and multiagent systems in several ways. First, it defines a new reasoning architecture for intelligent agents called Distributed Non-Axiomatic Reasoning System (DNARS). Instead of the popular Belief-Intention-Desire model, it uses Non-Axiomatic Logic, a formalism devel- oped for the domain of artificial general intelligence. DNARS is highly-scalable, capable of answering questions and deriving new knowledge over large knowledge bases, while, at the same time, concurrently serving large numbers of external clients. Secondly, the thesis proposes a novel agent runtime environment named Siebog. Based on the modern web and enterprise standards, Siebog tries to reduce the gap between the agent technology and industrial applications. Like DNARS, Siebog is a distributed system. Its server side runs on computer clusters and provides advanced functionalities, such as automatic agent load-balancing and fault-tolerance. The client side, on the other hand, runs inside web browsers, and supports a wide variety of hardware and software platforms. Finally, Siebog depends on DNARS for deploying agents with unique reason- ing capabilities. iii iv ABSTRACT Saˇzetak Agentska tehnologija predstavlja dosledan pristup razvoju distribuirane veˇstaˇcke inteligencije. Ono ˇstoagente izdvaja od ostalih pristupa su autonomno, reak- tivino, pro-aktivno, i socijalno ponaˇsanje.Pored toga, kompleksniji, inteligentni agenti se ˇcestodefiniˇsukoriste´ciljudske mentalne konstrukcije, kao ˇstosu vero- vanja, ˇzeljei namere. Disertacija se bavi softverskim agentima i multiagentskim sistemima sa neko- liko aspekata. Prvo, definisana je nova arhitektura za rasudivanje sa primenom u razvoju inteligentnih agenata, nazvana Distribuirani sistem za ne-aksiomatsko rasudivanje (eng. Distributed Non-Axiomatic Reasoning System) (DNARS). Umesto popularnog BDI modela za razvoj inteligentnih agenata (eng. Belief- Desire-Intention), arhitektura se zasniva na tzv. Ne-aksiomatskoj logici, formal- izmu razvijenom u domenu veˇstaˇcke opˇsteinteligencije. DNARS je skalabilan softverski sistem, sposoban da odgovara na pitanja i da izvodi nove zakljuˇcke na osnovu veoma velikih baza znanja, sluˇze´cipri tome veliki broj klijenata. Zatim, u disertaciji je predloˇzenanova multiagentska platforma nazvana Siebog. Siebog je zasnovan na modernim standardima za razvoj veb aplikacija, ˇcimepokuˇsava da smanji razliku izmedu multiagentskih sistema i sistema koji se koriste u industriji. Kao DNARS, i Siebog je distribuiran sistem. Na server- skoj strani, Siebog se izvrˇsava na raˇcunarskimklasterima, pruˇzaju´cinapredne funkcionalnosti, poput automatske distribucije agenata i otporonosti na greˇske. Sa klijentske strane, Siebog se izvrˇsava u veb pretraˇzivaˇcimai podrˇzava ˇsiroku lepezu hardverskih i softverskih platformi. Konaˇcno,Siebog se oslanja na DNARS za ravoj agenata sa jedinstvenim sposobnostima za rasudivanje. v vi SAZETAKˇ Contents Abstract iii Saˇzetak v List of Figures xi List of Tables xiii Preface xv I Foundations 1 1 An Overview of the Agent Technology 3 1.1 Agents . .3 1.1.1 Reactive agent architecture . .4 1.1.2 Belief-Desire-Intention . .6 1.1.3 Hybrid architectures . .7 1.2 Interaction in agent societies . .8 1.2.1 Peer-to-peer communication . .8 1.2.2 The Contract Net protocol . .9 1.2.3 Blackboards . 11 1.2.4 Cooperative learning . 11 1.2.5 Swarm intelligence . 12 1.2.6 Reinforcement learning . 13 1.3 Multiagent platforms and frameworks . 15 1.3.1 Cougaar . 16 1.3.2 JADE . 17 1.3.3 Magentix . 18 1.3.4 SPADE . 19 1.4 Agent-oriented programming languages . 19 1.4.1 2APL . 19 1.4.2 AgentSpeak and Jason . 20 1.4.3 ALAS . 21 1.4.4 GOAL . 22 vii viii CONTENTS 1.5 Mobility . 22 1.6 Summary . 23 2 Non-Axiomatic Reasoning 25 2.1 Experience and truth-values . 26 2.2 Forward inference rules . 28 2.3 The similarity copula . 29 2.4 Instance and property copulas . 30 2.5 Compound terms . 31 2.6 Relational terms . 32 2.7 Handling inconsistencies . 32 2.8 Answering questions . 33 2.9 Summary . 34 II DNARS and Siebog 37 3 Distributed Non-Axiomatic Reasoning System 41 3.1 Motivation and main features of DNARS . 41 3.2 General overview of the architecture . 42 3.2.1 DNARS inference engines . 44 3.2.2 Backend knowledge base overview . 44 3.3 Large-scale graph processing . 46 3.3.1 NoSQL databases . 46 3.3.2 The MapReduce programming model . 48 3.3.3 Bulk Synchronous Parallel . 49 3.3.4 The TinkerPop stack . 49 3.4 Backend knowledge base as a graph database . 50 3.5 Inference based on the TinkerPop stack . 51 3.5.1 Forward inference engine . 51 3.5.2 Resolution engine . 55 3.6 Event manager . 57 3.7 Inference based on MapReduce . 59 3.7.1 Forward inference engine . 60 3.7.2 Resolution engine . 61 3.8 Summary . 64 4 The Siebog Multiagent Middleware 65 4.1 Main features of Siebog . 66 4.2 The server-side architecture . 67 4.2.1 An overview of Enterprise JavaBeans . 68 4.2.2 Agent management . 69 4.2.3 Clustering features . 69 4.2.4 Message management . 71 4.3 The client-side architecture . 72 4.3.1 Mapping agents to Web Workers . 72 CONTENTS ix 4.3.2 Two-way communication through WebSockets . 73 4.3.3 Client-side agents . 73 4.3.4 Agent state persistence . 75 4.3.5 Security concerns . 76 4.4 Client-server integration . 76 4.4.1 A web services-based layer . 77 4.4.2 Cross-platform interaction . 80 4.5 DNARS-based intelligent agents in Siebog . 82 4.6 Summary . 85 5 Case Studies 87 5.1 Heterogeneous agent mobility and its application . 87 5.2 Creating a large knowledge base for DNARS . 90 5.2.1 Resource Description Framework . 90 5.2.2 DBpedia . 92 5.3 Evaluating the speed of question answering . 94 5.3.1 Speed benchmarks . 95 5.4 Deriving new knowledge for DBpedia . 99 5.4.1 A concrete execution example . 100 5.4.2 Analysis of the reasoning process . 102 5.5 Summary . 103 III Related and Future Work 105 6 Related Work 107 6.1 Multiagent middlewares . 107 6.1.1 Web-based multiagent middlewares . 107 6.1.2 Comparing the server-side features of Siebog . 109 6.2 Reasoning and cognitive architectures . 110 6.2.1 Symbolic and hybrid architectures . 111 6.2.2 Concrete BDI implementations . 113 6.3 Summary . 115 7 Conclusions and Future Work 117 7.1 The work done . 117 7.2 Open questions and opportunities for future work . 118 Proˇsireniizvod 121 Osnovni pojmovi i definicije . 122 Agenti . 122 Ne-Aksiomatska Logika . 123 Rezultati disertacije . 126 DNARS . 126 Siebog . 128 x CONTENTS Bibliography 133 Kratka biografija 151 A Short Biography 151 Kljucna dokumentacijska informacija 153 Key Words Documentation 157 List of Figures 1.1 Simple reactive football playing agent designed as a finite state machine. Taken from (Mitrovi´cet al., 2013b) . .6 1.2 General architecture of BDI agents as proposed by (Wooldridge, 1999) . .7 1.3 The process of selecting the shortest path from the ant nest to the food source. Ants deposit pheromone on their way back from the food source (marked by dotted lines). As the pheromone level increases on the upper path, and decreases (through evaporation) on the lower path, all ants will eventually take the shorter path to the food source . 14 1.4 Simple action coordination in Reinforcement learning. In addition to choosing the maximum Q-value, agents need to avoid colliding into each other while avoiding the obstacle (adapted from (Buso- niu et al., 2008)) . 15 1.5 Outline of an agent platform comprised of three main components: Agent Management System, Directory Facilitator, and Message Transport Service . 17 1.6 On-the-fly compilation of an ALAS source code into the exe- cutable code of the concrete multiagent platform (taken from (Mitrovi´cet al., 2012a)) . 21 3.1 General architecture of the proposed Distributed Non-Axiomatic Reasoning System and the organization of knowledge . 43 3.2 A set of arbitrary NAL statements and the corresponding prop- erty graph. Note that edges representing similarities are bidirec- tional, expressing the symmetric nature of the copula . 47 3.3 An example of a forward inference process in DNARS, from the initial knowledge base (a), after the addition of a new judgment cat ! mammalh1:0; 0:9i (b), after applying induction and ex- tensional comparison (c), and finally, after applying analogy (d). Unidirectional arrows represent inheritance, while bidirectional arrows represent similarity . 54 xi xii LIST OF FIGURES 3.4 For the question cat ! ?, the best answer is feline. Knowledge base initially includes three cat-related statements (a), which are sorted during the question answering process, and according the edge indexes (b) . 57 3.5 Internal organization of the Event manager . 58 3.6 Possible execution of the Scalding job presented in Listing 3.7. The entire job can be executed using only mappers . 62 3.7 Execution scheme of the question answering job presented in List- ings 3.8 and 3.9 . 63 4.1 Siebog operates in a symmetric cluster: each node is connected to every other node. A single node is recognized as the master and can be used to remotely control the cluster . 70 4.2 The final integrated architecture of Siebog . ..