Please use this identifier to cite or link to this item: https://open.uns.ac.rs/handle/123456789/27409
Title: Adaptable Java Agents (AJA) — a Tool for Programming o f Multi-Agent Systems
Adaptabilni java agenti – alat za programiranje multi-agentskih sistema
Authors: Bađonski Mihal
Keywords: agent, multi-agent system, programming languages, Java, distributed artificial intelligence;agent, muiti-agentski sistem , programski jezici, Java, distribuirana veštačka inteligencija
Issue Date: 7-Apr-2004
Publisher: Univerzitet u Novom Sadu, Prirodno-matematički fakultet u Novom Sadu
University of Novi Sad, Faculty of Sciences at Novi Sad
Abstract: <p>The main goal of this thesis is the creation o f the tool agent-oriented programming tool AJA. AJA is the acronym for Adaptable Java Agents. AJA consists o f two programming languages:<br />- A higher-level language used for the description of the main agent parts. This language is called HADL, which is the acronym for Higher Agent Definition Language.<br />- A lower-level language used for the programming o f the agent parts defined in HADL. This language is called Java+. It is actually Java enriched with the constructs for accessing higher-level agent parts defined in HADL.<br />A translator from AJA to Java is implemented in the practical part o f the thesis. AJA agents have the following features: - Agent communicates with other agents using a construct called negotiation. The messages sent can be encrypted or digitally signed in order to ensure the security of the system. - Agent possesses adaptable&nbsp; parameters and neural nets that adapt themselves when the environment changes.<br />- Agent has reflexes, which are the reactive component o f the agent architecture.<br />- Agent can perform its actions parallel. Actions execution is synchronized.<br />- Agent is accessible via Internet, because it acts as a simple HTTP server. People can use this way to communicate with an agent.<br />- Agent has Java Swing based graphical user interface. Its owner uses this interface to communicate with the agent.<br />- Because o f the fact that Java-i- language extends Java, it is possible to use all useful Java features in the implementation o f AJA agents (e.g. JDBC for the database access). The thesis also presents an original approach of integrating artificial intelligence techniques, such as neural nets, with a programming language. Having the artificial intelligence components as a part of the programming language runtime environment makes their use straightforward. A programmer uses the language constructs that are implemented using the artificial intelligence<br />without the need for understanding their background and theory.<br />The thesis contains eight chapters and three appendixes. In the first chapter, an overview of agents and multi-agent systems is given. The second chapter surveys existing agent-oriented programming languages and tools. The third chapter introduces AJA and describes the architecture of AJA agents. The syntax and semantics o f AJA languages HADL and Java+ is described in the fourth chapter. The fifth chapter presents adaptable AJA constructs in more details. To demonstrate and test the created tool, a case-study multi-agent system has been implemented in AJA. There are four personal digital assistant agents in the system. The sixth chapter describes the example agents and positively evaluates the tool. In the seventh chapter the related work and tools are analyzed and compared to AJA. The last chapter concludes the thesis. The first appendix describes the implementation details of the AJA to Java translator. The second appendix is a guide for the installation and usage of the implemented AJA to Java translator. Finally, the third<br />appendix describes step by step how to translate, compile, run, and use the example agents. The thesis contains many references, which include almost all the most important and the most actual papers in the field. The reference list can be found at the end o f the thesis.</p>
<p>Glavni doprinos doktorske teze je napravljeni alat za programiranje agenata AJA . AJA - Adaptabilni Java Agenti je jezički alat za programsku implementaciju agenata Sastoji se od dva programska jezika:<br />- Jezik vi&scaron;eg nivoa kojim se opisuju glavne kom ponente agenta. Ovaj jezik se naziva HADL - Higher Agent Definition Language.<br />- Jezik nižeg nivoa koji služi za implementaciju pojedinih komponenti agenta specificiranih HADL jezikom . Ovaj jezik se najava Java+, jer je on zapravo programski jezik Java obogaćen konstrukcijama pomoću kojih je moguće pristupati komponentama agenta, definisanim u jezik u HADL.<br />AJA agent poseduje sledeće osobine:<br />- Sigurna kom unikacija sa drugim A JA agentim a koristeći mehanizam pregovaranja, &scaron;ifrovanje i digitalno potpisivanje poruka.<br />- Mogućnost adaptiranja na promene u okruženju u kom se nalazi, koristeći neuralne mreže i adaptabilne parametre.<br />- Reaktivnost zasnovana n a kom ponenti zvanoj refleks.<br />- Paralelno izvr&scaron;avanje akcija agenta u z njihovu internu sinhronizaciju.<br />- D ostupnost agenta preko Interneta. Agent se pona&scaron;a kao jednostavan HTTP server. Na ovaj način se drugim osobama omogućuje da komuniciraju sa agentom .<br />- G rafički korisnički interfejs zasnovan n a Java Swing tehnologiji<br />- Po&scaron;to se u program iranju agenta koristi Java+, moguće je uposliti sve pogodnosti Jave, kao &scaron;to su na primer pristup bazama podataka koristeći JDBC , rad sa multimedijalnim sadržajem , itd.<br />U tezi je predstavljen i originalni pristup integrisanja tehnika ve&scaron;tačke inteligencije sa program skim jezikom . U građujući kom ponente ve&scaron;tačke inteligencije u izvr&scaron;nu okolinu je z ik a čini n jihovo kori&scaron;ćenje veom a jednostavnim . Programer ne mora da bude ekspert iz ve&scaron;tačke inteligencije a da pri tome koristi konstrukcije jezika koje su implementirane pomoću ve&scaron;tačke inteligencije. AJA specifikacija agenta se sastoji od HADL i Java+ delova. U tezi je implementiran prevodioc kojim se A JA specifikacija prevodi u skup klasa programskog jezika Java. Implementiran je i jedan multi-agentski sistem kojim se praktično pokazuje kori&scaron;ćenje i mogućnosti napravljenog alata D oktorska teza sadrži i detaljan pregled oblasti o agentskpj m etodologiji. O n a kruni&scaron;e vi&scaron;egodi&scaron;nji rad kandidata i njegovog mentora u ovoj sve značajnijoj oblasti računarstva.<br />Teza sadrži o sam glava i tri dodatka. U prvoj glavi se opisuje oblast agenata i m ulti-agentskih sistem a. Pregled postojećih agentskih program skih jezik a i alata se daje u drugoj glavi. O pis A JA agenata i njihove arhitekture je dat u trećoj glavi teze. Četvrta glava se bavi sintaksom i sem antikom oba A JA jezika: H A D L -a i Jave+. Adaptabilni elem enti A JA agenata se opisuju u petoj glavi. U &scaron;estoj glavi je opisan m ulti-agentski sistem koji j e ujed n o i prim er prim ene A JA alata. A JA se sa drugim postojećim agentskim alatim a upoređuje u sedm oj glavi. Osma glava sadrži zaključak. N a kraju se u tri dodatka detaljno opisuju im plem entacija prevodioca A JA -e u Javu, instalacija prevodioca i kori&scaron;ćenje napravljenog m ulti-agentskog sistema respektivno. U doktorskom radu su kori&scaron;ćene i navedene brojne reference kojim a su obuhvaćeni gotovo svi najznačajniji i najaktuelniji radovi iz oblasti multi-agentskih sistema. Lista referenci je navedena na kraju teze.</p>
URI: https://open.uns.ac.rs/handle/123456789/27409
Appears in Collections:PMF Teze/Theses

Show full item record

Page view(s)

21
Last Week
7
Last month
0
checked on May 3, 2024

Google ScholarTM

Check


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.