ISSN: 2229-371X

All submissions of the EM system will be redirected to Online Manuscript Submission System. Authors are requested to submit articles directly to Online Manuscript Submission System of respective journal.

A MULTI AGENT BASED E-SHOPPING SYSTEM

Sougata Khatua*1, Zhang Yuheng 2, Arijit Das 3 and N.Ch.S.N. Iyengar 4
School of Computing Science and Engineering, VIT University, Vellore-632014, Tamil Nadu, INDIA
Corresponding Author: Sougata Khatua, E-mail: sougatakhatua@yahoo.com
Related article at Pubmed, Scholar Google

Visit for more related articles at Journal of Global Research in Computer Sciences

Abstract

Current e-shopping systems use the Internet as its primary medium for transactions. e-shopping has grown in popularity over the years, mainly because people find it convenient and easy to buy various items comfortably from their office or home. This paper has proposed a personalized e-shopping system, which makes use of agent technology to enhance the automation and efficiency of shopping process in Internet commerce. The agent technology is used to enhance the customer‟s needs which include availability, speedy response time, and efficiency. Agent for e-Shopping creates connectivity on an anytime-anywhere-any-device-basis to provide the specific goods required by the consumers based on transaction cost optimization and scalability. The client agent connects with the controller agent which controls all the agent information. The controller agent sends the item information to the client agent and the client chooses items and puts in to the shopping cart. Finally the conclusion shows that the system performs efficiently and can help customers to save enormous time for Internet shopping.

Keywords

JADE, multi-agent, client agent, controller agent, e-shopping

INTRODUCTION

The e-shopping is defined as the use of computers and electronic networks to organize shopping with customers over the internet or any other electronic network. Online shopping has grown in popularity over the years, mainly because people find it convenient and easy to buy various items comfortably from their office or home. One of the most advantages of online shopping, particularly during a holiday season, is that it eliminates the need to wait in long lines or search from store to store for a particular item. The unpredictable growth of the Internet users in world opened a new business opportunity to the whole world. Shopping activities over the internet have been growing in an exponential manner over the last few years. One of such environments in which there is a prominent job for the agents would be e-shopping in which a user is able to give those agents the responsibility of buying and selling, instead of searching the e-shopping himself [5]. There are no proper mechanisms to facilitate electronic transaction and automate shopping process on behalf of customers. So a human buyer is still responsible for gathering commodity information from multiple suppliers on Internet, making decisions about each commodity, then making the best possible selection, and ultimately performing the e-payment. So it takes lot of time to buy things over the Internet [2]. Hence, to reduce the time and to enhance the automation of the e-shopping system a multi agent environment is used.

LITERATURE REVIEW

Related Work
Software agent technologies provide a new scenario that is used to develop the new-generation e-commerce system, in which the most time-consuming stages of the customer‟s shopping process will be automated [9].
Moreover, there are now many different shopping sites on the Internet; however, most of these sites lack a user-friendly interface design, which is essential for the success of online software [6]. The interface of e-shopping systems must be pleasing to the eye, effortless to learn and easy to use [2]. Otherwise, people in general will likely become less interested in e-shopping applications. The JADE technology can be used [7] to build a user friendly, easy to learn and pleasant.
At now on the internet most of the e-shopping systems are using the normal webpage implementation. That will take the more heavy work for the web servers [1]. In some paper, the intelligent e-shopping system has been proposed using data mining [12]. But it is too slow. The agent technology can be used to reduce the enormous time taken by the e-shopping system based on web application and data mining.
Amazon, a well known online book seller, uses web based application which is relatively slow and less efficient because it has the following disadvantages [3]:
1. It requires user‟s direct interventions.
2. It is time consuming.
3. Product comparison is difficult.
Besides these, the web based applications are difficult to scale [5], but the agent based applications are very easy to scale.
Proposed Work
To address all the above said disadvantages, the JADE technology is used in this project. Using the JADE technology, all the disadvantages of the existing e-shopping systems can be overcome. JADE is a completely distributed middleware system with a flexible infrastructure allowing easy extension with add-on modules. The framework facilitates the development of complete agent-based applications by means of a run- time environment implementing the life-cycle support features required by agents, the core logic of agents themselves, and a rich suite of graphical tools. As JADE is written completely in Java, it benefits from the huge set of language features and third-party libraries on offer, and thus offers a rich set of programming abstractions allowing developers to construct JADE multi-agent systems with relatively minimal expertise in agent theory. JADE was initially developed by the Research & Development department of Telecom Italia s.p.a [10].
The JADE agent has the following advantages [1]:
Agent is Autonomous: the JADE agent is Autonomous, the each of the agent have own thread of execution, they can control own life-cycle and decide autonomous when to perform which actions.
The system is peer-to-peer: each agent can be identified by globally name, and using the name join and leave a host platform any time, they also can discover other agents through both white-page and yellow-page services.
Is fully distributed system: the each of the agent running as a separate thread, they can running in different machines, and also can communication between them.
A library of interaction protocols: they already give some of the protocol option in the JADE library, when need just using the function implementation.
Support for J2SE, J2EE, J2ME platform and wireless environment.
Platform independent: It can be used in any operating system.
Using the JADE agent technology, the proposed e-shopping system has the following characteristics [8]:
1. Autonomy: The system has the autonomous transaction facility. It reduces the user intervention during purchasing activity.
2. User adaptability: The user preference changes all the time. The system reflects the user‟s up to date preferences in an adaption mechanism.
3. Multiple store server access: It compares the price at different shopping systems and provides the best price for the commodity product chosen by the customer.
4. Scalability: Using JADE technology, the system can easily scale up to 1500 agents and 300000 ACL messages.
5. Faster: The proposed e-shopping system is faster than the existing systems.

DESIGN ANALYSIS

The design of the e-shopping system is divided into two parts:
Architectural diagram: It describes the overall design of the system how it works and what are the functional components and what is their functionality.
Sequence flow diagram: It shows how the how the components of the e-shopping communicate with each other the messages with respect to time.
Architectural diagram
image
Functional Components and their functionalities
Client Agent (CA): When the customer logs in to the e-shopping system, the customer must prove his/her authenticity to the system. The Client Agent (CA) checks the username and password of the customer and if these are correct, then only the customer can enter into the e-shopping system. After that the CA show different items available in various shops in the e-shopping system. The customer can choose any number of items from any shop. After putting items into the shopping cart, the customer enters the credit card number and password. These two information is checked by the CA and produces a receipt if the credits card number and the password provided by the customer, is correct.
System Server: The system server stores all the information into a database. The system server does not perform the task of checking user name and password and the credit card information. It only stores all those information. If the credit card information is correct, then it passes it to the merchant bank.
Controller Agent (CTA): The controller agent (CTA) performs the entire task on behalf of the system server. It supplies the commodity information or the item details to the Client Agent (CA) according to the customer demand. It also helps the system server to store the customer details in to the system server‟s database. Besides these, one of the main function of the CTA is the capability to kill a Client Agent (CA).
Database Server: The database server stores all the data. It stores the following information:
The user information.
The username and password of the customer.
The credit card number information.
The commodity or the item details available for shopping in the shopping system.
Merchant bank: The bank which has a business relationship with the e-shopping system receives the data from the e-shopping system. This type of transaction is called as business to business transaction. The merchant bank first checks, if the customer is the user of this bank or not. If the customer is a user of this bank, then it transfers the money from customer‟s account to the e-shopping system‟s account. If the customer is not a user of this bank, then the data sent by the e-shopping is sent to the customer‟s bank.
Customer’s bank: It receives the data from the merchant bank. This type of transaction is called as business to consumer transaction. The merchant bank first checks, if the customer is the user of this bank or not. If the customer is a user of this bank, then it transfers the money from customer‟s account to the merchant bank and the money is credited to the e-shopping system‟s account. After that the merchant bank sends an approval message to the e-shopping system and then the e-shopping system verifies the delivery address and then sends a confirmation to the customer.
Post manager: The post manager receives the receipt document from the Controller Agent (CTA) and then post to the brought commodity items through the post office.
The confirmation message is in the form of a number which is called as “receipt number”. The receipt number is unique for each shopping. This number is generated only after the successfully completion of the transaction.
The customer should keep the receipt number so that he/she can verify the receipt number at the time of delivery of the items which he/she has brought.
Sequence flow diagram
image
As illustrated in Fig. 2, following are the steps:
1. At first the Client Agent (CA) sends request to the Controller Agent (CTA) to create the CA.
2. After that the CTA creates the Client Agent (CA).
3. Then, the customer login to the system by providing userID and password through the CA and CA passes this information to the CTA.
 CTA passes this information to the system server.
 The system server sends the validation information to the CTA
4. The e-shopping system returns validation success to the CTA if the customer is an authenticated user of the e-shopping system and the customer enters into the e-shopping system.
5. After that the CA requests to the Controller Agent (CTA) for commodity items.
 Then the CTA requests for the commodity items to the system server.
 After getting the message, the system server sends the commodity items to the CTA as per customer demand.
6. Then the CTA receives the information from the system server and supply this information to the CA which displays this information to the customer.
7. The customer selects items and put into the shopping cart or deletes items as he/she wishes.
8. The CA make payment request on behalf of the customer to the CTA.
9. Then the CA make payment and send this information to the CTA.
10. After receiving this information, the CTA sends this information to the system server.
11. After getting the customer‟s details, the shopping system (merchant) it contacts to the merchant bank for customer authorization and payment.
12. Merchant‟s bank will contact to the customer‟s bank and send authorization request.
13. If the customer is authorized, then customer‟s bank will send authorization response to the merchant‟s bank.
14. Merchant‟s bank i.e. the e-shopping system‟s bank will send authorization approval to the e-shopping system.
15. Then the system server sends the balance information to the CTA.
16. After getting the balance information from the system server, the CTA forwards it to the CA and CA displays it to the customer.
17. The customer, then sends the confirms the transaction through the Client Agent (CA).
18. After, that CTA, sends the transaction information to the system server.
19. After receiving the transaction information from the CTA, the system server sends it to the merchant bank.
20. Then, the merchant bank sends it to the customer bank and it processes the transaction.
21. When, the transaction successfully completed, it sends a message to the merchant bank.
22. Then, the merchant bank sends a message to the system server that the transaction has successfully completed.
23. Then the system server sends the commit transaction message to the Controller Agent (CTA).
24. At last, CTA sends the confirmation message to Client Agent (CA).

IMPLEMENTATION

To implement the agent based e-shopping system, we are using JADE (Java Agent Development Environment) 4.01. JADE is a software platform that provides basic middleware-layer functionalities which are independent of the specific application and which simplify the realization of distributed applications that exploit the software agent abstraction. A significant merit of JADE is that it implements this abstraction over a well-known object-oriented language, Java, providing a simple and friendly API. The following simple design choices were influenced by the agent abstraction.
Server Initialization
The execution of the following java file, “database.java”, the following tables ,”iteminfo”, “shopcardinfo” and “useragent” is created in the database server in the system server.
The “useragent” table contains the following information which is shown in Table I:
image
In the above table, Table I, the attribute “Replay No.” denotes the status of the item. It is 9 characters long means that at a time at most 9 items can be purchased by the customer. If the value of one character is 0, then it is empty, if it is 1, then it is active state and 2 mean that the item is delivered to the customer.
The “iteminfo” table contains details information about all the items stored in the database server of the system server. This information is illustrated in the Table II as follows:
image
image
The “shopcardinfo” table contains the information about the credit/debit card. That means it stores the information of credit card number, name and the Pin number of the customer. This information is illustrated below in Table III:
image
JADE Architecture
JADE platform is composed of agent containers that can be distributed over the network. Agents live in containers which are the Java process that provides the JADE run-time and all the services needed for hosting and executing agents. There is a special container, called the main container, which represents the bootstrap point of a platform: it is the first container to be launched and all other containers must join to a main container by registering with it. The containers are identified by simply using a logical name; by default the main container is named „Main Container‟ while the others are named „Container-1‟, „Container-2‟, etc. When the main-container is launched, two special agents are automatically instantiated and started by JADE [10].
1. The Agent Management System (AMS) is the agent that supervises the entire platform. Every agent is required to register with the AMS (automatically carried out by JADE at agent start-up) in order to obtain a valid AID.
2. The Directory Facilitator (DF) is the agent that implements the yellow pages service, used by any agent wishing to register its services or search for other available services. The JADE DF also accepts subscriptions from agents that wish to be notified whenever a service registration or modification is made that match some specified criteria.
This GUI which is illustrated in Fig. 3, is actually provided by a JADE system agent called the Remote Monitoring Agent (RMA) and allows a platform administrator to manipulate and monitor the running platform.
image
Controller Agent (CTA)
The Controller Agent (CTA) is created by executing the program “ControllerAgent.java” and the design frame of controller is created by “ControllerAgentGui.java”. The controller works as the agent manager of the e-shopping system. It creates the Client Agent (CA) as per request and it has the ability to kill the Client Agent (CA) to stop any malfunction of the system. It also sends the commodity
image
Client Agent (CA)
In the Figure 4 if we click the button “Login agent” then a new Client Agent will be created. After that, customer provides the password. If it is correct, then the customer enters into the e-shopping system with the help of Client Agent (CA). The design frame of the Client Agent GUI is information or the item details from the server side to the Client Agent (CA). By executing the java program “listitem.java”, the CTA automatically counts the number of available items for each shop and also any number of items can be added into or deleted from the database. The controller agent GUI is illustrated as follows:
build by executing the java program “ClientAgentGui.java”. The CA sends the credit card information to the CTA and CTA checks verifies and updates the agent information to the database. Besides these, CA shows the customer the various shops in the e-shopping system and the total amount which is received from the CTA. This is illustrated in the Fig. 5, 6, 7 and 8:
image
The e-shop manager can see the “Receipt No” and the corresponding order details of the customer and using this information, the manager post the corresponding order to respective address which is shown in Fig. 9, 10 and 11.
which is selected Figure 9 in post management system of the corresponding receipt number will be deleted and the new receipt will be generated. The post manager sends the receipt bill and it is delivered to the customer.
image
When the customer gets the bill as illustrated in Fig. 6 and gets the message and “Receipt No.” as illustrated in Fig. 7, the transaction successfully completed. The message as illustrated in Fig. 7 is treated as the confirmation message. The customer keeps the “Receipt No.” and later it verifies this number when the shopping items are to be delivered to the corresponding address.
image
image
Post manager
When we click the button “Post” in Fig. 10, the details which is selected Fig. 9 in post management system of the corresponding receipt number will be deleted and the new receipt will be generated and delivered to the customer by the post manager.
image
Message passing between the agents
From proposed system design viewpoint, Fig. 12 represents message sequence for the connection between the GUI agent and Client Agent, Controller Agent, RMA, AMS, DF using a series of requests through JADE agent ACL Messages.
image
PERFORMANCE ANALYSIS
After the completion of the development phase, the performance of the e-shopping system is analyzed against the existing e-shopping systems most of which use normal web application without agent technology.
Analysis of execution time
Here, the analysis of the agent based e-shopping system is done with the existing e-shopping system which do not use the agent technology.
Platform: Intel Core 2 Duo processor @ 2.2 GHz with 3GB RAM, Windows XP using JDK 1.7, NetBeans 6.9.1 and JADE Agent.
The comparison table and chart to analysis the performance in terms of execution time is given below:
image
The value from the above table (Table IV) is plotted in to the following bar chart to compare the execution time of the two systems:
image
From the above figure, Fig. 12, it is clear that agent based e-shopping system needs much less time about 37% less time than the normal e-shopping system which does not uses the agent technology.
Analysis of CPU Utilization
Here, the analysis of the agent based e-shopping system is done with the existing e-shopping system which do not use the agent technology.
Platform: Intel Core 2 Duo processor @ 2.2 GHz with 3GB RAM, Windows XP using JDK 1.7, NetBeans 6.9.1 and JADE Agent.
The comparison chart to analysis the performance in terms of CPU Utilization is given below:
image
From, the above figure, it is clear that, the agent based eshopping system uses little bit more resource i.e. CPU utilization than the normal e-shopping system which does not use the agent technology. Hence, from the above, it is clear that the agent based eshopping system performs better than the general web implementation of e-shopping system. Agent based eshopping system saves enormous time taken by the general web based e-shopping system with the cost of little bit more using the resources.

CONCLUSION AND FUTURE WORK

The rapid development of the Internet and e-commerce including online shopping made it important that the need to automate shopping process on Internet and provide more personalized information services for customers. The above analysis suggests that the agent based e-shopping system performs better than the e-shopping system which is not based on the agent technology. It out performs the general web based e-shopping system in terms of execution time. In future, an intelligent shopping system can be developed. In this work, a multi-agent system to provide shopping service for the commodities that a consumer does not buy frequently. The system integrates built-in expert knowledge [4] and the customer‟s current needs, and recommends optimal products based on multi-attribute decision making method. To reduce the effort of systemcustomer interactions, the system utilizes customer-based collaboration filtering approach [11] to recommend the products. Besides, in order to maintain a semantic conversation with sellers, the commodity ontology is also utilized to support sharable information format and representation.

References

  1. Zhang Yuheng and N.Ch.S.N. Iyengar, "Agent Based Architecture Media On Demand With Service Continuity" International Journal of Advances in Science and Technology,Vol. 2, No. 1, 2011
  2. Ziming Zeng, "An Agent-based Online Shopping System in Ecommerce", Computer and Information Science,Vol.2, No. 4, November 2009
  3. Michał Drozdowicz,Maria Ganzha, Maciej Gawinecki, Paweł Kobzdej, Marcin Paprzycki,"DESIGNING AND IMPLEMENTING DATA MART FOR AN AGENT-BASED ECOMMERCE SYSTEM", IADIS International Journal,Vol. 6, No. 1, pp. 37-49,ISSN: 1645 – 7641,2008
  4. Zeng Zi-ming and Meng Bo," An Intelligent Shopping System Based on Multi-agent Collaborative Working Model", CCECE/CCGEI, Saskatoon, May 2005, 0-7803-8886-0/05,©2005 IEEE
  5. Braz, Christina,Ncho, Ambroise, "MBAOS: A Mobile Bargain Agent for Online Shopping", IFT6862 ARTIFICIAL INTELLIGENCE (WINTER 2003)
  6. Kwang Hyoun JOO, Tessuo KINOSHITA,Nario SHIRATORI, "Design and Implementation of an Agent Based Grocery Shopping System", IEICE, Vol.E83-D,NO.11,November 2000
  7. Courtney McTavish,Suresh Sankaranarayanan, "Intelligent Agent based Hotel Search & Booking System", Proceedings of the 9th WSEAS International Conference on Telecommunications and INFORMATICS,2009
  8. Hesham M. Kamel,Moza Al-Nasseri,Maryam Al-Aryany, Hamda Al-Awar, "The Smart Shopping System (SSS): An Adaptive Eshopping Application for Reflecting the User‟s Personal Model", ftp://amd64gcc.dyndns.org/WORLDCOMP06/EEE4609.pdf
  9. Tan Xueqing , Zeng Ziming "A Shopping Model in Agentmediated Electronic Commerce" http://www.seiofbluemountain.com/upload/product/200911/2006zx qyhy09a1.pdf
  10. Developing Multi-Agent Systems with JADE Fabio Bellifemine, Giovanni Caire, Dominic Greenwood Copyright © 2007 John Wiley & Sons, Ltd
  11. Javier Bajo, Ana de Luis, Angelica Gonzalez, Alberto Saavedra and Juan M.Corchado, "A Shopping Mall Multiagent System: Ambient Intelligence in Practice", http://bisite.usal.es/webisite/archivos/publicaciones/otrosCongresos /2006/wucami06-shoppingmallambientintelligencev2.pdf
  12. http://trichy.quikr.com/study-on-intelligent-e-shoppingsystem- based-on-data-mining-Education-Learning/study-onintelligent- e-shopping-system-based-on-datamining/ x18222208482?page=17