Subscribe Now Subscribe Today
Research Article
 

Tiresa: An Intelligent Agent Application



Alicia Tang Y.C. and Clarence Kuna
 
Facebook Twitter Digg Reddit Linkedin StumbleUpon E-mail
ABSTRACT

Millions of education sites, including of universities and schools, public or private, have utilised the Internet to feed the education community and sometimes there is too much information out there than we could take. The Internet also offers a powerful business transaction known as e-commerce. With e-commerce, users can do item purchasing without being physically present at the purchase location, i.e., in the comfort of their own home. In universities, lecturers are busy individuals who have to prepare for classes and undertaking project supervision works and to conduct research, etc. They would have very limited time to scout around for textbooks. The advent of Intelligent Agent combining with the magic of Internet has inspired us to develop a software agent called Textbook Information Retrieval and Shopper Agent (TIRESA) to take over the role of a human book agent. The prototype is developed using an agent toolkit called JACK and the architecture used is Belief, Desire and Intention (BDI). TIRESA is an agent situated within and a part of an environment that senses that environment and acts on it, over time, in pursuit of its own agenda and so as to effect what it senses in the future and at the same time, it represents, uses and acquires knowledge in order to perceive, plan and act intelligently. TIRESA would help the lecturers to search the World Wide Web for the best textbooks according to the lecturer`s specifications. Adding to that, after a decision has been made, the agent will negotiate the book purchase transaction and keep track of it until the book is delivered.

Services
Related Articles in ASCI
Similar Articles in this Journal
Search in Google Scholar
View Citation
Report Citation

 
  How to cite this article:

Alicia Tang Y.C. and Clarence Kuna , 2003. Tiresa: An Intelligent Agent Application. Journal of Applied Sciences, 3: 296-304.

DOI: 10.3923/jas.2003.296.304

URL: https://scialert.net/abstract/?doi=jas.2003.296.304

Introduction

The growing possibility of a human mind has vastly changed the course of the world today. Thirty years ago, the word ‘Internet’ may not have any meaning at all to our community. Today, it has become somewhat of a necessity; even the television and other mass communication media seemed to be dwarfed by the Internet. And since its introduction, it has grown very rapidly and has influenced our daily life process. The Internet is no stranger to the education field. Millions of education sites, including of universities and schools, public or private, have utilised the Internet to feed the education community and sometimes there is too much information out there than we could take. The Internet also offers a powerful business transaction known as e-commerce. With e-commerce, users can do item purchasing without being physically present at the purchase location, i.e., in the comfort of their own home. Agent is defined in terms of behavior, unlike other conventional software abstraction that is defined in terms of methods and attributes. Agents must be equipped with autonomous and rational properties, meaning it is given a level of independence and reasoning capabilities to react with the environment, just like the human. By the same token, TIRESA is an agent situated within and a part of an environment that senses that environment and acts on it, over time, in pursuit of its own agenda and so as to effect what it senses in the future and at the same time, it represents, uses and acquires knowledge in order to perceive, plan and act intelligently.

Problem statement
In universities, lecturers are busy individuals who have to prepare for classes and undertaking project supervision works and to conduct research, etc. They would have very limited time to scout around for textbooks, or they would do a quick research on the Internet at publisher Web sites and to select books that fulfilled the basic requirements, without really considering other choices which might be better and cheaper. The advent of Intelligent Agent combining with the magic of Internet has inspired us to develop a software agent called Textbook Information Retrieval and Shopper Agent (TIRESA) to take over the role of a human book agent. The prototype is developed using an agent toolkit called Java Agent Compiler Kernel (JACK) and the architecture used is Belief, Desire and Intention (BDI).

Objectives
The objectives of this work is to develop an intelligent agent that would be able to help the lecturers to:

Search the World Wide Web for the best textbooks according to the lecturer’s specifications (such as syllabus).
Recommend a solution to the lecturers as well as alternatives on which textbooks should be considered for use in class.

Agents
Agent Task Environment
In simplest sense an agent task environment is as shown in Fig. 1.

Image for - Tiresa: An Intelligent Agent Application
Fig. 1: Agent Task Environment

Image for - Tiresa: An Intelligent Agent Application
Fig. 2: Agent Components

Image for - Tiresa: An Intelligent Agent Application
Fig. 3: BDI Architecture

Components of an Agent
Basically, an agent consists of three main components (see also Fig. 2):

Agent program: a function that implements a mapping from percepts to actions.
Agent state: includes all the internal representations on which the agent program operates.
Agent architecture: a (possibly virtual) machine that runs the agent program.

Example of agent types implementation in a shopping activity
Navigation

Reflex agents: has the map of the store in its memory.
Goal based agent: creation of internal map, explicit reasoning about the map, usage of signs and adaptation to change.

Gathering

Reflex agent: scouting and acquiring of goods.
Goal based agents: generation of shopping lists.

Menu planning

Goal based agent: making decision when the stated choice is not available (choosing alternatives goods).

Choosing among alternative brands

Utility based agents: trading off quality over price.

Agent architectures
Agent architecture is a (possibly virtual) machine that runs the agent program. There are different classifications of architecture as described by Wooldridge [1], namely:

Logic based architecture
Reactive architecture
BDI (belief/desire/intentions) agents
Layered architecture

The architecture of an agent defines the atomic operations of the agent program and implicitly determines the components of the agent, it also determines which operations happen automatically, without the agent program having to do anything. In this work, TIRESA is developed using JACK, an agent toolkit. And, BDI is the architecture adopted for the development since the architecture of JACK is BDI.

System overview
Books Selection Criteria Used In TIRESA
The criteria that the agent should be aware of when it searches the Web for the textbooks are as follows:

The syllabus that is provided by the lecturer.
The price of the book, including shipping and handling costs.
The quality of the book, in terms of its content and the credibility of the writer and the publisher.

BDI architecture
BDI is an event-driven execution model providing both reactive and deliberative behaviour and ongoing reasoning [2]. In the BDI architecture (Fig. 3), each agent has

A set of beliefs: what the agent knows.
A set of goals: what the agent is trying to achieve.
A set of plans: combinations of actions which achieve certain outcomes or respond to some events.

Image for - Tiresa: An Intelligent Agent Application
Fig. 4: Model of BDI architecture in TIRESA

JACK

JACK agent construction toolkit was developed by Agent Oriented Software Pty. Ltd. (AOS), based in Melbourne, Australia, JACK Intelligent Agents is a framework in Java for Multi-agent system development. JACK consists of architecture-independent facilities, with plug-in components that address the requirements of specific agent architectures. The plug-ins supplied with JACK also includes support for the BDI architecture. In addition, JACK currently consists of three main extensions to Java. Adding to that, JACK uses Java based language, which is a very powerful language and it is relatively simple to use yet could be used to build powerful application [3].

Proposed solution
Building an agent from scratch requires knowledge and skills in various disciplines such as agent architecture, communications technology, agent communication languages and protocols. Some artificial intelligence applications such as reasoning systems and knowledge representation are also required. Model of BDI architecture in TIRESA is shown in Fig. 4.

TIRESA has the following properties:

Agent classification–retrieval, recommend and shopper agent.
Agent type–reflex, goal based and utility agent.
Agent communication–FIPA-ACL or CORBA.
Agent architecture–Belief, Desire, Intention (BDI) architecture.

BDI Implementation in TIRESA
TIRESA is implemented using the BDI architecture, since it is more rooted to practical reasoning (deciding on what and how to achieve goals). BDI also proved to be a simple, yet a powerful architecture, because it combined the advantages of a reactive and deliberative architecture.

Image for - Tiresa: An Intelligent Agent Application
Fig. 5: Agent Type Implementation in TIRESA

Image for - Tiresa: An Intelligent Agent Application
Fig. 6: Workflow for TIRESA

Abstract BDI interpreter
An abstraction of BDI semantics is presented below.

BDI-interpreter
Initialise-state();
Do
  Options := option-generator(event-queue, B, G, I);
Selected-options := deliberate(option, B, G, I);
Update-intentions(selected-options, I);
Execute(I);
Get-new-external-events();
Drop-successful-attitudes(B, G, I);
Drop-impossible-attitudes(B, G, I);
Until Quit.

Fig. 7 depicts a typical JACK BDI execution which is used in this project:

Image for - Tiresa: An Intelligent Agent Application
Fig. 7: JACK BDI execution

Agent Types Implementation in TIRESA

Based on our research, it was identified that TIRESA befits three types of agents, namely:

Reflex agent: When TIRESA navigates through the Internet, it scouts through and maps the path into its memory and acquires the requested information about the books.
Goal based agent: TIRESA creates an internal map on how it managed to find the textbooks and does explicit reasoning on the map, so that it could adapt to changes that occurs to the mapping. When the textbook agreed by the lecturer is not available due to unexpected reasons (books are out of stock), it suggests alternative books that would be available in replacement for the unavailable book.
Utility agent: TIRESA will trade off quality of the books over the price. This is especially beneficial when there is a choice between a high quality book which is too expensive for the students and another book which is just enough for the course syllabus and is much cheaper.

Agent type description for TIRESA is represented in Fig. 5. Workflow of TIRESA is depicted in Fig. 6.

The steps are explained as follows:

Learning process–this is where the agent is initialised, it will go through the learning process, by obtaining user’s input, searching the web and returning queries. All those activities will be recorded in the knowledge base.
Ask user–this would require user input where the user will ask the agent to search for the required textbook, based on the user’s specification.
Search–agent will perform the search through the Internet and the knowledge base will be updated wherever necessary.
Report to user–agent will report its user and at the same time, filter what it would have found and the knowledge base will be updated as well.
Do transaction–after the right book has been chosen, the agent will carry out the transaction and update the knowledge base about the transaction done. If in any case the transaction failed (book not available–out of stock), the agent will revert to the user and suggest another alternative (wait until stock available again or suggest another similar book).
Report to user (2)–the agent will report to the user about the successful transaction and inform the user on when the books will arrive.
Search for new information, updates–the agent will continue its search over the Internet for new versions of the purchased books, as well as other new books and at the same time, it will update its knowledge base.
Update–the process of updating the knowledge base.
Knowledge base–this is where all the information of textbook syllabus, the Internet site visited and other vital intelligent information is stored and they are frequently updated.

Implementation issues
Issues arise during implementation are summarised as follows:

Machine learning capability is not included as such each intention, goals, belief are hard coded hence time consuming.
Decisions about what goal to pursue or event to react to and when to abandon it were a big challenge to this project.
Whether should an agent be allowed to spend unlimited time to decide what to do next or a timeout be set and if so what should be the best value.
Knowledge regularities: Classification of pages in terms of author’s home page, likely links and cue words are not easy to implement.
Search engines: Slow when large amount of information is inserted and stored.

This project was initiated to develop an intelligent agent (TIRESA) to aid the lecturers in UNITEN to find textbooks for their taught courses. The prototype system has been developed. The group will carry out further research in considering other agent architectures and software tools (such as scripting languages) in order to conduct benchmarking test among them. It is hoped that the excitement of agents could be extended to virtual (across environment) marketplace and enterprise.

REFERENCES
1:  Wooldridge, M. and N.R. Jennings, 1995. Intelligent agents: Theory and practice. Knowledge Eng. Rev., 10: 115-152.
Direct Link  |  

2:  Sterling, L., 2002. Intelligent software agents, lecture notes for a course on intelligent software agents. Jack Intelligent Agents, Parkroyal Hotel, Kuala Lumpur, Malaysia.

©  2021 Science Alert. All Rights Reserved