17
Research Article A Dynamic Recommender System for Improved Web Usage Mining and CRM Using Swarm Intelligence Anna Alphy and S. Prabakaran Department of Computer Science and Engineering, SRM University, Chennai 603203, India Correspondence should be addressed to Anna Alphy; [email protected] Received 6 March 2015; Revised 13 April 2015; Accepted 15 April 2015 Academic Editor: Rafael Valencia-Garc´ ıa Copyright © 2015 A. Alphy and S. Prabakaran. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. In modern days, to enrich e-business, the websites are personalized for each user by understanding their interests and behavior. e main challenges of online usage data are information overload and their dynamic nature. In this paper, to address these issues, a WebBluegillRecom-annealing dynamic recommender system that uses web usage mining techniques in tandem with soſtware agents developed for providing dynamic recommendations to users that can be used for customizing a website is proposed. e proposed WebBluegillRecom-annealing dynamic recommender uses swarm intelligence from the foraging behavior of a bluegill fish. It overcomes the information overload by handling dynamic behaviors of users. Our dynamic recommender system was compared against traditional collaborative filtering systems. e results show that the proposed system has higher precision, coverage, F1 measure, and scalability than the traditional collaborative filtering systems. Moreover, the recommendations given by our system overcome the overspecialization problem by including variety in recommendations. 1. Introduction e customer relationship management (CRM) entails the interaction of an organization with the current and future customers. e competitions in e-business require the effi- cient management of web usage data because a competitor’s website may be only one click away. An improved under- standing of customers’ interest and their behaviors increases the profit of an organization. A personalized website in view of the customer’s interests may bring customer’s attention to the site more and thus increases the customer utility. e information regarding customer’s interest and behavior also helps a website administrator to personalize or customize a web page for a user. Such increased usage of business websites online creates a huge amount of web usage information to manage causing information overload. To manage this information overload, efficient data mining techniques can be applied in addition to storing, retrieving, and managing these web usage data. ese data mining techniques also may be used to identify the interesting patterns from web log data or online usage data. e major challenges of online web usage data, in addi- tion to information overloading, are its high dimensionality and dynamic nature caused by thousands of users. e online usage data is high dimensional because it contains huge number of clicks made by the users to purchase items. e online usage data represents the interest of human beings that are highly dynamic in nature. ese dynamic behaviors may be due to the changes in the user’s interest or due to the addition or deletion of web pages in a website. e personalization of the web for a user should also cope with these issues. Designing and developing a suitable recommender sys- tem may be very much helpful in web personalization. It uses the recommendations provided by the recommender systems for providing the users with their items of interest. In the past many research works have been done in recommender systems. But most of the traditional recommender systems cannot handle the dynamic nature of online usage data. Moreover the traditional recommender systems give lim- ited recommendations. In traditional recommender systems, the number of iterations before convergence is high and also Hindawi Publishing Corporation e Scientific World Journal Volume 2015, Article ID 193631, 16 pages http://dx.doi.org/10.1155/2015/193631

Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

Research ArticleA Dynamic Recommender System for Improved Web UsageMining and CRM Using Swarm Intelligence

Anna Alphy and S Prabakaran

Department of Computer Science and Engineering SRM University Chennai 603203 India

Correspondence should be addressed to Anna Alphy annaurumbathgmailcom

Received 6 March 2015 Revised 13 April 2015 Accepted 15 April 2015

Academic Editor Rafael Valencia-Garcıa

Copyright copy 2015 A Alphy and S Prabakaran This is an open access article distributed under the Creative Commons AttributionLicense which permits unrestricted use distribution and reproduction in any medium provided the original work is properlycited

In modern days to enrich e-business the websites are personalized for each user by understanding their interests and behaviorThe main challenges of online usage data are information overload and their dynamic nature In this paper to address these issuesa WebBluegillRecom-annealing dynamic recommender system that uses web usage mining techniques in tandem with softwareagents developed for providing dynamic recommendations to users that can be used for customizing a website is proposed Theproposed WebBluegillRecom-annealing dynamic recommender uses swarm intelligence from the foraging behavior of a bluegillfish It overcomes the information overload by handling dynamic behaviors of users Our dynamic recommender system wascompared against traditional collaborative filtering systems The results show that the proposed system has higher precisioncoverage F1 measure and scalability than the traditional collaborative filtering systems Moreover the recommendations givenby our system overcome the overspecialization problem by including variety in recommendations

1 Introduction

The customer relationship management (CRM) entails theinteraction of an organization with the current and futurecustomers The competitions in e-business require the effi-cient management of web usage data because a competitorrsquoswebsite may be only one click away An improved under-standing of customersrsquo interest and their behaviors increasesthe profit of an organization A personalized website in viewof the customerrsquos interests may bring customerrsquos attention tothe site more and thus increases the customer utility Theinformation regarding customerrsquos interest and behavior alsohelps a website administrator to personalize or customize aweb page for a user Such increased usage of business websitesonline creates a huge amount of web usage informationto manage causing information overload To manage thisinformation overload efficient data mining techniques canbe applied in addition to storing retrieving and managingthese web usage dataThese data mining techniques also maybe used to identify the interesting patterns from web log dataor online usage data

The major challenges of online web usage data in addi-tion to information overloading are its high dimensionalityand dynamic nature caused by thousands of usersThe onlineusage data is high dimensional because it contains hugenumber of clicks made by the users to purchase items Theonline usage data represents the interest of human beingsthat are highly dynamic in nature These dynamic behaviorsmay be due to the changes in the userrsquos interest or dueto the addition or deletion of web pages in a website Thepersonalization of the web for a user should also cope withthese issues

Designing and developing a suitable recommender sys-temmay be very much helpful in web personalization It usesthe recommendations provided by the recommender systemsfor providing the users with their items of interest In thepast many research works have been done in recommendersystems But most of the traditional recommender systemscannot handle the dynamic nature of online usage data

Moreover the traditional recommender systems give lim-ited recommendations In traditional recommender systemsthe number of iterations before convergence is high and also

Hindawi Publishing Corporatione Scientific World JournalVolume 2015 Article ID 193631 16 pageshttpdxdoiorg1011552015193631

2 The Scientific World Journal

the quality of recommendations reduces with the increase inthe number of users The traditional recommender systemalso cannot balance the quality measures such as coverageand precision

To overcome the above issues we propose a WebBlue-gillRecom-annealing dynamic recommender system whichcould also provide recommendations to users The pro-posed dynamic recommender systemuses swarm intelligenceapproach That is in our dynamic recommender system therecommendations are given not only based on usersrsquo interestbut also based on the interest of the neighborhood usersOur dynamic recommender system also overcomes the over-specialization problem in many traditional recommendersystems by providing variety in recommendations

The performance of the proposed algorithm is comparedwith the traditional collaborative filtering recommendersystems The results of performance evaluation show thatthe proposed dynamic recommender system gives betterpredictions in less time without losing the quality in termsof coverage precision 1198651 measure and scalability com-pared with the traditional approaches WebBluegillRecom-annealing recommender system overcomes the informationoverload and dynamic behavior challenges of many otherrecommendation systems

The rest of the paper is organized as follows Section 2describes the related works in the recommender systemsSection 3 provides basic knowledge required Section 4 intro-duces the proposed WebBluegillRecom-annealing recom-mender system and Section 5 describes experimental resultsand performance evaluations

2 Literature Survey

Ben Schafer et al [1] introduced a collaborative filtering (CF)system that predicts a personrsquos interest for an item by usingthat personrsquos recorded interest with the recorded interest ofa community of like-minded people In the collaborativefiltering approach the neighbors of an active user 119906 aredefined as the users that are similar to 119906 above a similaritythreshold Collaborative filtering supports group modelingIt gives recommendations based items liked by the users ofthe same interest Dai et al [2] introduced particle swarmchaos optimization mining algorithm (PSCOMA) It usesthe strong global search ability of PSO and the strong localsearch ability of chaos optimization for the process of webusage mining It offers a balancing between exploration andexploitation Celik et al [3] introduced artificial bee colonydata miner (ABC-Miner algorithm) for mining classifica-tion rules from large datasets It uses intelligent foragingbehavior of honey bees Balabanovic [4] introduced Fabadaptive content based recommendation system It givesweb page recommendation service to users based on therecommendations of other users and also by analyzing theircontentThemain limitation of this approach is that since therecommendations are based only on usersrsquo previous ratingsof items users cannot explore new items other than theitems mentioned in user profiles The main advantage ofthis technique is that since group modeling is not usedfor recommendations brand new items can be easily added

in the recommendations Pazzani [5] recommends items tousers based on demographic information about the usersHere the demographic attributes such as age gender andeducation can be used to classify users and predictions aregiven to a user based on this demographic informationNasraoui and Petenes [6] presented a fuzzy interface enginethat uses rules derived from user profiles that are used to giverecommendations to the user The rules are generated fromthe user profiles The user profiles are created by clusteringthe userrsquos web click streams The main advantage of thisapproach is the very low cost when compared to collaborativerecommendation systems it can efficiently handle overlapsin usersrsquo interest and low main memory is required duringrecommendation time Berners-Lee et al [7] introducedsemantic web The semantic web is an extension of theWorld Wide Web In semantic web the meaning of the webpages is well defined and structured in such a way thatthe computers and humans can work in cooperation Thesemantic web creates an environment in which agents freelymove from pages to pages and bring essential informationto the users Chau et al [8] introduced a multiagent systemnamed collaborative spider to support user collaboration inweb mining It supports collaboration by sharing completesearch sessions based on postretrieval analysis Dorigo andSttzle [9] introduced ant colony optimization (ACO) wherethe ants coordinated actions and self-organizing principlesare used to solve computational problems ACO is inspiredfrom the foraging behavior of ant colonies Labroche et al[10] introduced AntClust algorithm for grouping web usagesessions using chemical recognition systems in artificial antsAntClust algorithm gains inspiration from antsrsquo ability todifferentiate between the nest mates and outsiders usingthe exchange of some chemicals AntClust computes thesimilarity between the objects and groups the input webuser sessions that represent the number of hits per pageinto clusters Here users with similar interest come in thesame cluster Kennedy and Eberhart [11] presented particleswarm optimization (PSO) which is an evolutionary swarmintelligence based computational model PSO is inspiredfrom bird flocks Here each swarm represents a solutionsset The swarms or particles fly through the solution spaceEach position of the particle in the problem space representsa solution At each move a fitness function is evaluated toidentify closeness of particles solution to the global optimalsolution Here global best solution (119892best) of the particle isthe best solution found in the neighborhood and the personalbest solution (119897best) is the best position visited by the particlewhich until now are used to find the particles new positionMoawad et al [12] introduced a newmultiagent system basedapproach for personalizing the web search results In thisapproach dynamic user profiles are created and maintainedthrough implicit user feedback system Saka and Nasraoui[13] introduced flocks of agent based recommendation sys-tem (Flock-Recom) to give recommendations to user for webpersonalization It gains inspiration from the collaborativebehavior of flocks of birds Each agent represents a userAgents are allowed to freely move in the visualization panelAgents iteratively adjust the velocity and position on thevisualization panel Based on the neighboring agents on

The Scientific World Journal 3

the visualization panel top-119899 recommendations are given tothe user

3 Background

31 Web Usage Mining Web usage mining is the process ofapplying data mining techniques to web log data to discoverinteresting usage patterns [14] It consists of the followingsteps

(1) Preprocessing the web log files(2) Pattern discovery using data mining techniques [14ndash

17](3) Postprocessing(4) Tracking evolving user profiles [18]

311 Preprocessing the Web Log Files Each entry in the weblog files consists of IP address URL viewed and access timeThe web log files extracted from the web server contain ahuge amount of information All these pieces of informationare not needed for further processing The quality of thepatterns discovered after web usage mining process dependson how well you perform data cleaning and user sessionidentification Data cleaning includes filtering the crawlerrsquosrequest request to graphics and identifying unique sessionsThe user session identification includes identifying the pagesreferenced by a user during a single visit to a site

312 Pattern Discovery Using Data Mining Techniques Oncethe user sessions are identified various data mining methodssuch as frequent item sets clustering classification associa-tion rule mining path analysis neural network approachesand heuristic approach methods can be applied to extractuseful patterns from web log files These discovered patternsidentify usersrsquo interests behavior habits and changes in theirinterest A website can be personalized or customized for auser based these pieces of information thereby increasing theprofit of an organization

313 Postprocessing and Tracking Evolving User Profiles Usersession categories [18] are summarized into user profilesTracking evolving user profiles includes comparing the userprofiles generated in different months This helps in identi-fying new groups of user profiles and merging or splitting ofuser profiles and inactive user profiles All these changes inuser profiles represent the changes in customerrsquos interests orbehaviors

32 Swarm Intelligence Swarm intelligence gains inspirationfrom several communities in nature such as fish schools antcolonies honey bees and bird flocks Swarm intelligence usesintelligent agents to handle copious information An agentperceives the environment through sensors and it acts onthe environment through actuators [19] Intelligent agentscan continuously perceive the dynamic conditions in theenvironment it can perform actions to affect the conditionsin the environment and performs reasoning to interpret

perceptions The flexibility of the software agents makes itpossible to dynamically choose which actions to performand their sequence in response to the state of its externalenvironment

33 Stimulated Annealing Stimulated annealing [20] pro-vides an optimal solution for the nearest neighbor searchAnnealing is the process of heating ametal to itsmelting pointand then cooling it back into solid state Final structure of themetal depends upon cooling function Slow cooling resultsin large crystals with low energy whereas fast cooling resultsin high energy state resulting in imperfections Slow coolingalways gives a better result

4 The Proposed System

In the past many research works were done in swarmintelligence for web usage mining like AntClust [10] particleswarmoptimization (PSO) [11] Fab [4] collaborative filtering(CF) [1] and so forth All these methods cannot model thedynamic behavior of users efficiently and the recommenda-tions given to users lack ability to handle seasonality in usersrsquointerest Because of the information overload problem in webusage data in many traditional swarm intelligence methodssuch as ACO and PSO the number of iterations needed forthe system before convergence is high

In the present work we propose a WebBluegillRecom-annealing dynamic recommender system It uses the simu-lated annealing and swarm intelligence for identifying theinteresting items to be recommended for the users TheWebBluegillRecom-annealing algorithm gains inspirationfrom the foraging behavior of bluegill fish Swarm intelligenceuses intelligent agents to handle abundant information on theweb thereby increasing scalability Here intelligent softwareagents are used to model artificial life Intelligent softwareagents can handle the dynamic nature of online usage therebyovercoming information overload problem This flexibilityproperty permits the artificial bluegill fish to model foragingbehavior of real bluegill fish in different densities of preyin water The learning capability of software agents allowscontinuous monitoring of users dynamic behaviors and givespredictions

The proposed WebBluegillRecom-annealing algorithmuses a cooling schema to make all agents in stable state Thecooling algorithmhas been developed based on the simulatedannealing approach The cooling schema in the proposedWebBluegillRecom-annealing algorithm reduces the numberof iterations required for the agents to enter into a stablelow energy state Figure 1 shows the steps involved in theproposed dynamic recommender system

In the proposed WebBluegillRecom-annealing dynamicrecommender system initially each user obtained after thedata cleaning process is mapped to an agent The agents areplaced randomly on the 2D visualization panel A coolingalgorithm is then applied to bring similar agents nearer toeach other in the visualization panel This gives an initialneighborhood for agents A better neighborhood is formedin each iteration of the algorithm by iteratively adjusting the

4 The Scientific World Journal

Cooling algorithm

Random placement of agents on 2D visualization panel

Cluster-creation algorithm

Bluegill-BestPredictions algorithm

Position of agents on visualization panel

Updated position ofagents on the

visualization panel

Initial N clusters

New data

User sessions

Best I recommendations

WebBluegillRecom-annealing algorithm

Map each user to an agent

Stored data

Preprocessing

Bluegill-BestPredictions algorithm

Web log

M clusters where M ≪ N

Figure 1 Steps involved in WebBluegillRecom-annealing dynamic recommender system

position of the agents on the visualization panel That is theusers that exhibit similar behavior will form a hinterland Inorder to handle dynamic data that is collected incessantly andto improve the quality of neighborhood a dynamic clusteringtechnique is applied Recommendations are given to users asbest 119868 items preferred by the userrsquos latest neighborhood

The proposed WebBluegillRecom-annealing recom-mender system can handle the following challenges ofweb usage mining such as information overload problemdynamic behavior of users large number of iterationsbefore convergence and scalability and overspecialization inrecommendations problem

41 Preprocessing of Web Logs to Extract Input User SessionsWeb server log files are preprocessed and input user sessionsare identified Here the 119894th user session is encoded as an119860-dimensional binary attribute vector [21] Useri with thefollowing property

User119894=

1 if user 119894 accessed URL 119895

0 otherwise(1)

42 User Profile Creation Based on Data Mining TechniquesIn this paper a dynamic clustering based data mining tech-nique is used to discover interesting online usage patternsUnlike conventional clustering in dynamic clustering [22]the whole input data need not be made available initially

The input data is collected continuously over time Dynamicclustering technique has the ability to manage incomingdynamic data that represents the dynamic behaviors of usersDynamic behaviors of users are due to the changes in userrsquosinterest or behavior or due to the addition or deletion of a webpage These discovered patterns can be used for the creationof user profiles and for giving recommendation to users

421 The Proposed WebBluegillRecom-Annealing AlgorithmIn the proposed WebBluegillRecom-annealing algorithm(Algorithm 1) each user is mapped to an agent All theagents are placed on the visualization panel randomly Tobring similar agents closer and dissimilar agents far aparta cooling algorithm (Algorithm 2) is applied Then theclusters of agents are formed using cluster-creation algo-rithm (Algorithm 3) It groups similar agents into the samecluster That is users having similar interests belong to thesame cluster This initial set of clusters can be used forfurther processing These initial clusters are given as inputto the Bluegill-BestPredictions algorithm (Algorithm 4) TheBluegill-BestPredictions algorithm can optimize these initialclusters by identifying a better neighborhood for agentsin each cluster forming another hinterland Moreover itcan assign new dynamic data representing a new dynamicbehavior of user to the most similar cluster It performsdynamic clustering of dynamic data and gives the users thefinest recommendations by predicting the best 119868 items pre-ferred by the neighborhood agents Bluegill-BestPredictions

The Scientific World Journal 5

Notations used 119863 = dataset 119889 = number of data items 119877119899 = 119899 dimensional real number space

Input dataset 119863 isin 119877119899 where |119863| = 119889

Output 1198621 1198622 119862

119898clusters best 119899 recommendations

Steps(1) Repeat(2) read a new input record data

119886reads dynamic data

(3) if data119886is not assigned an agent

(4) Assign new agent119886to data

119886

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) end if(8) until no more data records(9) Place the agents randomly on the visualization panel(10) Run Cooling algorithm returns the best position for the agents in the visualization panel(11) Visualize agents with their updated positions in the visualization panel(12) Run Cluster- creation algorithm returns initial clusters(13) While (1) do(14) Run Bluegill-BestPredictions algorithm performs dynamic clustering and returns best I recommendations for new and

old users(15) End While(16) Until stopping condition

Algorithm 1 WebBluegillRecom-annealing algorithm

Notations usedΩ = agents plus their position on the visualization plane TL = temperature length Ω

lowast = agents plus their updated positionon the visualization plane 119860

119894= 119894th agent on the visualization panel Pos(119860

119894) = position of agent on the visualization plane

119899 = total number of agents on the visualization planeInput 119860

119894where 119894 = 1 to 119899 Ω TL 119899

Output Ωlowast

Steps(1) Generate an initial solution Ω

0mΩ Ω

lowast= Ω0

(2) Generate initial temperature 119879 gt 0

(3) Repeat(4) For 1 le 119879 le TL(5) Identify agent 119860

119895neighboring Ω

lowast

(6) Let Δ = CS(119860119894 119860119895) minus CS(119860

119894 119860119894+1

) where CS = (119860119894sdot 119860119895)119860119894119860119895

Where 119860119894sdot 119860119895

= sum119899

119896=1119860119894

119896119860119895

119896119860119894 = radic119860

119894sdot 119860119894

(7) If Δ le 0 downhill move(8) Ω

lowast= 119860119895Pos(119860

119895)

(9) Else(10) IF random(0 1) lt eand(Δ119879) then Ω

lowast= 119860119895Pos(119860

119895)

(11) End if(12) Increment 119894 by one(13) End for(14) 119879 = rT reduce temperature(15) until stopping condition(16) Return Ω

lowast

Algorithm 2 Cooling algorithm

algorithm gives dynamic recommendations to users Sincethe recommendations are dynamic the WebBluegillRecom-annealing algorithm can satisfy the needs of old and newusers The following part explains each of these algorithmsin detail

In the proposedWebBluegillRecom-annealing algorithminitially each user is mapped to an agent Agents are placed

on the visualization panel randomly Visualization panel is atwo-dimensional plane represented by 119909-119910 coordinates The119909-axis and 119910-axis values range from 0 to 1

To bring similar agents closer and dissimilar agents farapart in the visualization panel we use a cooling algorithmbased on annealing concept used in metals The attributesof this thermodynamic simulation can be mapped into

6 The Scientific World Journal

Notations used Pos(Agent119894) = position of agent on the visualization plane 119889th = distance threshold

Input Agent119894 Pos(Agent

119894)

Output Clusters 1198621 1198622 119862

119899

Steps(1) read the agent

119894

(2) assign the agent to cluster 119862119896

(3) for all agent 119860119895do

(4) if (Distance(119860119894 119860119895)) lt 119889th and 120590

119896

2lt 120590th2

(5) assign 119860119895to 119862119896

(6) Else(7) assign 119860

119895to 119862119896+1

(8) End if(9) End for(10) Return Clusters

Algorithm 3 Cluster-creation algorithm

stimulated annealing optimization where a system staterepresents feasible solutions energy represents costs changeof state represents the neighboring function temperaturerepresents control parameter and frozen state represents finalsolution Initially when the temperature is high it accepts badmoves This is because starting solution may not be too goodbecause of the difficulty of escaping from neighborhood Butwhen the temperature is low it almost rejects bad movesThebest ever result is kept as the final solution

The inputs to the cooling algorithm (Algorithm 2) areagents their position on the visualization panel and thetemperature length In Step (1) of Algorithm 2 an initialsolution Ω

0is generated randomly and assign this as the

final solution Ωlowast In Step (2) initial temperature value is

generated In line 5 a new solution is created by selectingneighboring agent that is similar to the solution Ω

lowast Inthis algorithm a cost function is calculated using cosinesimilarity of agents Here the cost function is tomaximize thecosine similarity (CS) of agents Cosine similarity betweenany two agents represents the similarity between users thatare mapped to that agent Cosine similarity can handlequalitative and quantitative data It can also handle highdimensional sparse data In Step (6) the change in the costfunction is calculated In line 7 it checks whether the changein cost function (energy) is decreased If energy is decreasedthen the new state is accepted (line 8) Otherwise the newstate with probability 119890

and(Δ119879) (line 10) is accepted In line

14 a geometric temperature reduction is used where 08 le

119903 le 099 To get good results 119879 should be adjusted in sucha way with small number of iterations at higher temperatureand larger number of iterations at low temperature For thefinal solution to be independent of the starting one the initialtemperature should be high enough When the temperatureis low there are no uphill moves When a given minimumvalue of temperature is reached or when a certain amountof looping has been performed without accepting a newsolution the algorithm is stopped (line 14)

The cooling algorithm applied is a greedy heuristicallowing the agents to move from current positions to thebest neighboring solution The cooling algorithm returns theagents with their new position on the visualization panel

Now similar agents lie close in the visualization panel Asthe distances between the agents on the visualization panelincrease their similarity decreases To avoid local minima itsupports uphill moves After applying the cooling functionagents converge to a frozen low energy state where similaragents are located nearer to each other The usage of coolingalgorithm reduces the number of iterations These agentswith their updated positions on the visualization panel afterapplying cooling algorithm are given as input to the cluster-creation algorithm

In cluster-creation algorithm (Algorithm 3)Distance (119860119894

119860119895) represents the distance between agents 119860

119894and 119860

119895on the

visualization panel 120590119896

2 represents the mean squared error oraverage dissimilarity between the cluster prototype and thedata records [21] Mean squared error is calculated using

120590119896

2=

sum119878(119894)m120594119896 119889

2119896119894

10038161003816100381610038161205941198961003816100381610038161003816

(2)

where 119878(119894) represents the 119894th user session and120594

119896represents the

set of sessions assigned to 119896th cluster 119889119896119894is the distance from

119878(119894) to 120594

119896 Initial clusters of agents are formed by grouping the

agents that lie within a distance threshold and whose meansquared error lies within 120590th

2 into a cluster (lines 4 to 6)Thus the agents within a cluster represent similar usersTheseclusters are given as input to the Bluegill-BestPredictionsalgorithm

In the Bluegill-BestPredictions algorithm (Algorithm 4)the foraging behavior of bluegill fish is used to give dynamicrecommendations to user A bluegill sunfish [23] eats a preyto maximize its energy intake At high density of prey thebluegill fish eats a diet made up of larger prey At a mediumdensity of prey bluegill fish eats large prey over a small preyAt this time bluegill fish becomes more selective That isinstead of time spent in capturing and eating smaller onesthe bluegill fish canmaximize its energy by eating larger onesAt a low density of prey the bluegill fish eats large mediumand small prey as they are encountered thus maximizingits energy intake The behavior of bluegill fish is dynamicbecause the way in which it catches its prey is different in

The Scientific World Journal 7

Input Extracted Clusters 119873 newdata data119886

Output Extracted Clusters 119872 ≪ 119873 Visualization of Clusters Recommendations to usersSteps(1) REPEAT(2) Map each cluster centroid as Lake and define 119896 = 1 Now N Lakes(3) If data

119886is not assigned an agent

(4) Then map agent119886to data

119886119886119892119890119899119905

119886represents the bluegill

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) End if(8) FOR 1 le 119894 le 119899

(9) IF Sim(agent119886 Lake

119894) gt Maxth where the 119894 ranges from 1 to 119873 bluegill enters the lake containing high density of prey

and identifies neighboring preys(10) Repeat(11) If Sim(agent

119886 neighbor agent

119896119886) m high range bluegill eats large size prey

(12) Then Eat neighbor agent119896119886

(13) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(14) Update energy = Sum(nosh119886)

(15) Increment 119896 by one(16) Else(17) Increment 119896 by one(18) End if(19) Until energy = 1(20) ELSE IF Sim(agent

119886 Lake

119894) lt Minth where 119894 ranges from 1 to 119873 bluegill enters the lake containing low density of preys

and identifies the neighboring preys(21) Repeat(22) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(23) Then Eat neighbor agent119896119886

(24) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(25) Update energy = Sum(nosh119886)

(26) Increment 119896 by one(27) Else(28) Break(29) End if(30) Until energy = 1(31) Repeat(32) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(33) Then Eat neighbor agent119896119886

(34) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(35) Update energy = Sum(nosh119886)

(36) Increment 119896 by one(37) Else(38) Break(39) End if(40) Until energy = 1(41) Repeat blue gill eats small size prey(42) Eat neighbor agent

119896119886

(43) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(44) Update energy = Sum(nosh119886)

(45) Increment 119896 by one(46) Until energy = 1(47) ELSE bluegill enters a lake containing medium density of prey and identifies neighboring preys(48) Repeat(49) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(50) Then Eat neighbor agent119896119886

(51) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(52) Update energy = Sum(nosh119886)

(53) Increment 119896 by one(54) Else(55) Break(56) End if

Algorithm 4 Continued

8 The Scientific World Journal

(57) Until energy = 1(58) Repeat(59) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(60) Then Eat neighbor agent119896119886

(61) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(62) Update energy = Sum(nosh119886)

(63) Increment 119896 by one(64) Else(65) Break(66) End if(67) Until energy = 1(68) END IF(69) END FOR(70) Keep the clusters with Clus threshold sessions(71) Plot Clusters on visualization panel according to cluster names visualize clusters in x y coordinates where different

cluster elements are represented in different shapes(72) For each cluster do(73) Find the URLrsquos which are visited more than Url count threshold in all the sessions of that cluster display URLs

accessed frequently in all the sessions of that cluster as user profiles(74) End For(75) For each agent agent

119895do

(76) Find the cluster 119862 to which agent119895belongs

(77) 119866(119909) = neighboring agents of agent119895in cluster 119862 within distance 119889best

(78) 119865(119866(119909)) = frequently preferred items by each agents in 119866(119909)

(79) Recommend most frequent 119868 items in 119865(119866(119909)) to user 119906 represented by agent119895

(80) End For(81) UNTIL there is no more data records(82) End

Algorithm 4 Bluegill-BestPredictions algorithm

different densities of prey The bluegill fish maximizes itsenergy in an optimized way that is more energy in lesstime These behaviors of bluegill fish can be used to givedynamic recommendations to users The proposed dynamicrecommender system gives users better recommendationsin less time that is lesser number of iterations withoutcompromising the quality in terms of coverage and precisionThe usage of intelligent software agents helps us to simulatethis artificial life The intelligent agents are highly flexible toadapt to the dynamic behavior of users

The Bluegill-BestPredictions algorithm described asAlgorithm 4 supports dynamic clustering of dynamic dataitems and provides dynamic predictions to users Fordynamic clustering [19] the complete data set need not bemade available initially The data is continuously collectedover time Whenever new data is added it requires costlyupdate of the clusters The new web click streams may bedue to change in userrsquos interest or due to the addition ordeletion of a web page from given website Application ofcooling algorithm and cluster formation algorithm results inthe visualization of initial clusters in the visualization paneland similar agents belonging to the same cluster Distancebetween the agents in the visualization panel represents thesimilarity between the users

In line 2 of Algorithm 4 the centroid of each clus-ter obtained as the output of cluster-creation algorithm ismapped as a lake In line 3 dataa represents the input dynamic

data and is mapped to the corresponding agent in lines 4 and6Thedataa is considered as the bluegill fishHere each clusteris considered as a lake with different density of prey and theagents in each cluster (lake) are considered as the prey In line9 the similarity of the agenta and Lakei is compared using (3)Here we use web session similarity [19 21] between URLs assimilarity measure based on the fact that an agent representsuser sessions

Web session similarity (vec119894 vec119895)

=

sum119860

119896119894=1 sum119860

119896119895=1 vec119894119896119894vec119895

119896119895119878119906

(119896119894 119896119895)

sum119860

119896119894=1 vec119894119896119894 sum119860

119896119895=1 vec119895119896119895

(3)

where vec119894represents the user session vectors that are

prepared in the preprocessing step and 119878119906(119894 119895) represents the

syntactic similarity between the 119894th and 119895th URLs Consider

119878119906

(119894 119895) = min(1

10038161003816100381610038161003816119901119894cap119901119895

10038161003816100381610038161003816

max (1max (1003816100381610038161003816119901119894

1003816100381610038161003816 10038161003816100381610038161003816119901119895

10038161003816100381610038161003816) minus 1)

) (4)

For a given URL Ui 119901119894represents the path traversed

from the root node which is the main page to the nodecorresponding to the 119894th URL |119901

119894| indicates the length of this

path [19]If the similarity of agenta and Lakei is greater than a

predefined threshold (Maxth) value we assume that bluegill

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 2: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

2 The Scientific World Journal

the quality of recommendations reduces with the increase inthe number of users The traditional recommender systemalso cannot balance the quality measures such as coverageand precision

To overcome the above issues we propose a WebBlue-gillRecom-annealing dynamic recommender system whichcould also provide recommendations to users The pro-posed dynamic recommender systemuses swarm intelligenceapproach That is in our dynamic recommender system therecommendations are given not only based on usersrsquo interestbut also based on the interest of the neighborhood usersOur dynamic recommender system also overcomes the over-specialization problem in many traditional recommendersystems by providing variety in recommendations

The performance of the proposed algorithm is comparedwith the traditional collaborative filtering recommendersystems The results of performance evaluation show thatthe proposed dynamic recommender system gives betterpredictions in less time without losing the quality in termsof coverage precision 1198651 measure and scalability com-pared with the traditional approaches WebBluegillRecom-annealing recommender system overcomes the informationoverload and dynamic behavior challenges of many otherrecommendation systems

The rest of the paper is organized as follows Section 2describes the related works in the recommender systemsSection 3 provides basic knowledge required Section 4 intro-duces the proposed WebBluegillRecom-annealing recom-mender system and Section 5 describes experimental resultsand performance evaluations

2 Literature Survey

Ben Schafer et al [1] introduced a collaborative filtering (CF)system that predicts a personrsquos interest for an item by usingthat personrsquos recorded interest with the recorded interest ofa community of like-minded people In the collaborativefiltering approach the neighbors of an active user 119906 aredefined as the users that are similar to 119906 above a similaritythreshold Collaborative filtering supports group modelingIt gives recommendations based items liked by the users ofthe same interest Dai et al [2] introduced particle swarmchaos optimization mining algorithm (PSCOMA) It usesthe strong global search ability of PSO and the strong localsearch ability of chaos optimization for the process of webusage mining It offers a balancing between exploration andexploitation Celik et al [3] introduced artificial bee colonydata miner (ABC-Miner algorithm) for mining classifica-tion rules from large datasets It uses intelligent foragingbehavior of honey bees Balabanovic [4] introduced Fabadaptive content based recommendation system It givesweb page recommendation service to users based on therecommendations of other users and also by analyzing theircontentThemain limitation of this approach is that since therecommendations are based only on usersrsquo previous ratingsof items users cannot explore new items other than theitems mentioned in user profiles The main advantage ofthis technique is that since group modeling is not usedfor recommendations brand new items can be easily added

in the recommendations Pazzani [5] recommends items tousers based on demographic information about the usersHere the demographic attributes such as age gender andeducation can be used to classify users and predictions aregiven to a user based on this demographic informationNasraoui and Petenes [6] presented a fuzzy interface enginethat uses rules derived from user profiles that are used to giverecommendations to the user The rules are generated fromthe user profiles The user profiles are created by clusteringthe userrsquos web click streams The main advantage of thisapproach is the very low cost when compared to collaborativerecommendation systems it can efficiently handle overlapsin usersrsquo interest and low main memory is required duringrecommendation time Berners-Lee et al [7] introducedsemantic web The semantic web is an extension of theWorld Wide Web In semantic web the meaning of the webpages is well defined and structured in such a way thatthe computers and humans can work in cooperation Thesemantic web creates an environment in which agents freelymove from pages to pages and bring essential informationto the users Chau et al [8] introduced a multiagent systemnamed collaborative spider to support user collaboration inweb mining It supports collaboration by sharing completesearch sessions based on postretrieval analysis Dorigo andSttzle [9] introduced ant colony optimization (ACO) wherethe ants coordinated actions and self-organizing principlesare used to solve computational problems ACO is inspiredfrom the foraging behavior of ant colonies Labroche et al[10] introduced AntClust algorithm for grouping web usagesessions using chemical recognition systems in artificial antsAntClust algorithm gains inspiration from antsrsquo ability todifferentiate between the nest mates and outsiders usingthe exchange of some chemicals AntClust computes thesimilarity between the objects and groups the input webuser sessions that represent the number of hits per pageinto clusters Here users with similar interest come in thesame cluster Kennedy and Eberhart [11] presented particleswarm optimization (PSO) which is an evolutionary swarmintelligence based computational model PSO is inspiredfrom bird flocks Here each swarm represents a solutionsset The swarms or particles fly through the solution spaceEach position of the particle in the problem space representsa solution At each move a fitness function is evaluated toidentify closeness of particles solution to the global optimalsolution Here global best solution (119892best) of the particle isthe best solution found in the neighborhood and the personalbest solution (119897best) is the best position visited by the particlewhich until now are used to find the particles new positionMoawad et al [12] introduced a newmultiagent system basedapproach for personalizing the web search results In thisapproach dynamic user profiles are created and maintainedthrough implicit user feedback system Saka and Nasraoui[13] introduced flocks of agent based recommendation sys-tem (Flock-Recom) to give recommendations to user for webpersonalization It gains inspiration from the collaborativebehavior of flocks of birds Each agent represents a userAgents are allowed to freely move in the visualization panelAgents iteratively adjust the velocity and position on thevisualization panel Based on the neighboring agents on

The Scientific World Journal 3

the visualization panel top-119899 recommendations are given tothe user

3 Background

31 Web Usage Mining Web usage mining is the process ofapplying data mining techniques to web log data to discoverinteresting usage patterns [14] It consists of the followingsteps

(1) Preprocessing the web log files(2) Pattern discovery using data mining techniques [14ndash

17](3) Postprocessing(4) Tracking evolving user profiles [18]

311 Preprocessing the Web Log Files Each entry in the weblog files consists of IP address URL viewed and access timeThe web log files extracted from the web server contain ahuge amount of information All these pieces of informationare not needed for further processing The quality of thepatterns discovered after web usage mining process dependson how well you perform data cleaning and user sessionidentification Data cleaning includes filtering the crawlerrsquosrequest request to graphics and identifying unique sessionsThe user session identification includes identifying the pagesreferenced by a user during a single visit to a site

312 Pattern Discovery Using Data Mining Techniques Oncethe user sessions are identified various data mining methodssuch as frequent item sets clustering classification associa-tion rule mining path analysis neural network approachesand heuristic approach methods can be applied to extractuseful patterns from web log files These discovered patternsidentify usersrsquo interests behavior habits and changes in theirinterest A website can be personalized or customized for auser based these pieces of information thereby increasing theprofit of an organization

313 Postprocessing and Tracking Evolving User Profiles Usersession categories [18] are summarized into user profilesTracking evolving user profiles includes comparing the userprofiles generated in different months This helps in identi-fying new groups of user profiles and merging or splitting ofuser profiles and inactive user profiles All these changes inuser profiles represent the changes in customerrsquos interests orbehaviors

32 Swarm Intelligence Swarm intelligence gains inspirationfrom several communities in nature such as fish schools antcolonies honey bees and bird flocks Swarm intelligence usesintelligent agents to handle copious information An agentperceives the environment through sensors and it acts onthe environment through actuators [19] Intelligent agentscan continuously perceive the dynamic conditions in theenvironment it can perform actions to affect the conditionsin the environment and performs reasoning to interpret

perceptions The flexibility of the software agents makes itpossible to dynamically choose which actions to performand their sequence in response to the state of its externalenvironment

33 Stimulated Annealing Stimulated annealing [20] pro-vides an optimal solution for the nearest neighbor searchAnnealing is the process of heating ametal to itsmelting pointand then cooling it back into solid state Final structure of themetal depends upon cooling function Slow cooling resultsin large crystals with low energy whereas fast cooling resultsin high energy state resulting in imperfections Slow coolingalways gives a better result

4 The Proposed System

In the past many research works were done in swarmintelligence for web usage mining like AntClust [10] particleswarmoptimization (PSO) [11] Fab [4] collaborative filtering(CF) [1] and so forth All these methods cannot model thedynamic behavior of users efficiently and the recommenda-tions given to users lack ability to handle seasonality in usersrsquointerest Because of the information overload problem in webusage data in many traditional swarm intelligence methodssuch as ACO and PSO the number of iterations needed forthe system before convergence is high

In the present work we propose a WebBluegillRecom-annealing dynamic recommender system It uses the simu-lated annealing and swarm intelligence for identifying theinteresting items to be recommended for the users TheWebBluegillRecom-annealing algorithm gains inspirationfrom the foraging behavior of bluegill fish Swarm intelligenceuses intelligent agents to handle abundant information on theweb thereby increasing scalability Here intelligent softwareagents are used to model artificial life Intelligent softwareagents can handle the dynamic nature of online usage therebyovercoming information overload problem This flexibilityproperty permits the artificial bluegill fish to model foragingbehavior of real bluegill fish in different densities of preyin water The learning capability of software agents allowscontinuous monitoring of users dynamic behaviors and givespredictions

The proposed WebBluegillRecom-annealing algorithmuses a cooling schema to make all agents in stable state Thecooling algorithmhas been developed based on the simulatedannealing approach The cooling schema in the proposedWebBluegillRecom-annealing algorithm reduces the numberof iterations required for the agents to enter into a stablelow energy state Figure 1 shows the steps involved in theproposed dynamic recommender system

In the proposed WebBluegillRecom-annealing dynamicrecommender system initially each user obtained after thedata cleaning process is mapped to an agent The agents areplaced randomly on the 2D visualization panel A coolingalgorithm is then applied to bring similar agents nearer toeach other in the visualization panel This gives an initialneighborhood for agents A better neighborhood is formedin each iteration of the algorithm by iteratively adjusting the

4 The Scientific World Journal

Cooling algorithm

Random placement of agents on 2D visualization panel

Cluster-creation algorithm

Bluegill-BestPredictions algorithm

Position of agents on visualization panel

Updated position ofagents on the

visualization panel

Initial N clusters

New data

User sessions

Best I recommendations

WebBluegillRecom-annealing algorithm

Map each user to an agent

Stored data

Preprocessing

Bluegill-BestPredictions algorithm

Web log

M clusters where M ≪ N

Figure 1 Steps involved in WebBluegillRecom-annealing dynamic recommender system

position of the agents on the visualization panel That is theusers that exhibit similar behavior will form a hinterland Inorder to handle dynamic data that is collected incessantly andto improve the quality of neighborhood a dynamic clusteringtechnique is applied Recommendations are given to users asbest 119868 items preferred by the userrsquos latest neighborhood

The proposed WebBluegillRecom-annealing recom-mender system can handle the following challenges ofweb usage mining such as information overload problemdynamic behavior of users large number of iterationsbefore convergence and scalability and overspecialization inrecommendations problem

41 Preprocessing of Web Logs to Extract Input User SessionsWeb server log files are preprocessed and input user sessionsare identified Here the 119894th user session is encoded as an119860-dimensional binary attribute vector [21] Useri with thefollowing property

User119894=

1 if user 119894 accessed URL 119895

0 otherwise(1)

42 User Profile Creation Based on Data Mining TechniquesIn this paper a dynamic clustering based data mining tech-nique is used to discover interesting online usage patternsUnlike conventional clustering in dynamic clustering [22]the whole input data need not be made available initially

The input data is collected continuously over time Dynamicclustering technique has the ability to manage incomingdynamic data that represents the dynamic behaviors of usersDynamic behaviors of users are due to the changes in userrsquosinterest or behavior or due to the addition or deletion of a webpage These discovered patterns can be used for the creationof user profiles and for giving recommendation to users

421 The Proposed WebBluegillRecom-Annealing AlgorithmIn the proposed WebBluegillRecom-annealing algorithm(Algorithm 1) each user is mapped to an agent All theagents are placed on the visualization panel randomly Tobring similar agents closer and dissimilar agents far aparta cooling algorithm (Algorithm 2) is applied Then theclusters of agents are formed using cluster-creation algo-rithm (Algorithm 3) It groups similar agents into the samecluster That is users having similar interests belong to thesame cluster This initial set of clusters can be used forfurther processing These initial clusters are given as inputto the Bluegill-BestPredictions algorithm (Algorithm 4) TheBluegill-BestPredictions algorithm can optimize these initialclusters by identifying a better neighborhood for agentsin each cluster forming another hinterland Moreover itcan assign new dynamic data representing a new dynamicbehavior of user to the most similar cluster It performsdynamic clustering of dynamic data and gives the users thefinest recommendations by predicting the best 119868 items pre-ferred by the neighborhood agents Bluegill-BestPredictions

The Scientific World Journal 5

Notations used 119863 = dataset 119889 = number of data items 119877119899 = 119899 dimensional real number space

Input dataset 119863 isin 119877119899 where |119863| = 119889

Output 1198621 1198622 119862

119898clusters best 119899 recommendations

Steps(1) Repeat(2) read a new input record data

119886reads dynamic data

(3) if data119886is not assigned an agent

(4) Assign new agent119886to data

119886

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) end if(8) until no more data records(9) Place the agents randomly on the visualization panel(10) Run Cooling algorithm returns the best position for the agents in the visualization panel(11) Visualize agents with their updated positions in the visualization panel(12) Run Cluster- creation algorithm returns initial clusters(13) While (1) do(14) Run Bluegill-BestPredictions algorithm performs dynamic clustering and returns best I recommendations for new and

old users(15) End While(16) Until stopping condition

Algorithm 1 WebBluegillRecom-annealing algorithm

Notations usedΩ = agents plus their position on the visualization plane TL = temperature length Ω

lowast = agents plus their updated positionon the visualization plane 119860

119894= 119894th agent on the visualization panel Pos(119860

119894) = position of agent on the visualization plane

119899 = total number of agents on the visualization planeInput 119860

119894where 119894 = 1 to 119899 Ω TL 119899

Output Ωlowast

Steps(1) Generate an initial solution Ω

0mΩ Ω

lowast= Ω0

(2) Generate initial temperature 119879 gt 0

(3) Repeat(4) For 1 le 119879 le TL(5) Identify agent 119860

119895neighboring Ω

lowast

(6) Let Δ = CS(119860119894 119860119895) minus CS(119860

119894 119860119894+1

) where CS = (119860119894sdot 119860119895)119860119894119860119895

Where 119860119894sdot 119860119895

= sum119899

119896=1119860119894

119896119860119895

119896119860119894 = radic119860

119894sdot 119860119894

(7) If Δ le 0 downhill move(8) Ω

lowast= 119860119895Pos(119860

119895)

(9) Else(10) IF random(0 1) lt eand(Δ119879) then Ω

lowast= 119860119895Pos(119860

119895)

(11) End if(12) Increment 119894 by one(13) End for(14) 119879 = rT reduce temperature(15) until stopping condition(16) Return Ω

lowast

Algorithm 2 Cooling algorithm

algorithm gives dynamic recommendations to users Sincethe recommendations are dynamic the WebBluegillRecom-annealing algorithm can satisfy the needs of old and newusers The following part explains each of these algorithmsin detail

In the proposedWebBluegillRecom-annealing algorithminitially each user is mapped to an agent Agents are placed

on the visualization panel randomly Visualization panel is atwo-dimensional plane represented by 119909-119910 coordinates The119909-axis and 119910-axis values range from 0 to 1

To bring similar agents closer and dissimilar agents farapart in the visualization panel we use a cooling algorithmbased on annealing concept used in metals The attributesof this thermodynamic simulation can be mapped into

6 The Scientific World Journal

Notations used Pos(Agent119894) = position of agent on the visualization plane 119889th = distance threshold

Input Agent119894 Pos(Agent

119894)

Output Clusters 1198621 1198622 119862

119899

Steps(1) read the agent

119894

(2) assign the agent to cluster 119862119896

(3) for all agent 119860119895do

(4) if (Distance(119860119894 119860119895)) lt 119889th and 120590

119896

2lt 120590th2

(5) assign 119860119895to 119862119896

(6) Else(7) assign 119860

119895to 119862119896+1

(8) End if(9) End for(10) Return Clusters

Algorithm 3 Cluster-creation algorithm

stimulated annealing optimization where a system staterepresents feasible solutions energy represents costs changeof state represents the neighboring function temperaturerepresents control parameter and frozen state represents finalsolution Initially when the temperature is high it accepts badmoves This is because starting solution may not be too goodbecause of the difficulty of escaping from neighborhood Butwhen the temperature is low it almost rejects bad movesThebest ever result is kept as the final solution

The inputs to the cooling algorithm (Algorithm 2) areagents their position on the visualization panel and thetemperature length In Step (1) of Algorithm 2 an initialsolution Ω

0is generated randomly and assign this as the

final solution Ωlowast In Step (2) initial temperature value is

generated In line 5 a new solution is created by selectingneighboring agent that is similar to the solution Ω

lowast Inthis algorithm a cost function is calculated using cosinesimilarity of agents Here the cost function is tomaximize thecosine similarity (CS) of agents Cosine similarity betweenany two agents represents the similarity between users thatare mapped to that agent Cosine similarity can handlequalitative and quantitative data It can also handle highdimensional sparse data In Step (6) the change in the costfunction is calculated In line 7 it checks whether the changein cost function (energy) is decreased If energy is decreasedthen the new state is accepted (line 8) Otherwise the newstate with probability 119890

and(Δ119879) (line 10) is accepted In line

14 a geometric temperature reduction is used where 08 le

119903 le 099 To get good results 119879 should be adjusted in sucha way with small number of iterations at higher temperatureand larger number of iterations at low temperature For thefinal solution to be independent of the starting one the initialtemperature should be high enough When the temperatureis low there are no uphill moves When a given minimumvalue of temperature is reached or when a certain amountof looping has been performed without accepting a newsolution the algorithm is stopped (line 14)

The cooling algorithm applied is a greedy heuristicallowing the agents to move from current positions to thebest neighboring solution The cooling algorithm returns theagents with their new position on the visualization panel

Now similar agents lie close in the visualization panel Asthe distances between the agents on the visualization panelincrease their similarity decreases To avoid local minima itsupports uphill moves After applying the cooling functionagents converge to a frozen low energy state where similaragents are located nearer to each other The usage of coolingalgorithm reduces the number of iterations These agentswith their updated positions on the visualization panel afterapplying cooling algorithm are given as input to the cluster-creation algorithm

In cluster-creation algorithm (Algorithm 3)Distance (119860119894

119860119895) represents the distance between agents 119860

119894and 119860

119895on the

visualization panel 120590119896

2 represents the mean squared error oraverage dissimilarity between the cluster prototype and thedata records [21] Mean squared error is calculated using

120590119896

2=

sum119878(119894)m120594119896 119889

2119896119894

10038161003816100381610038161205941198961003816100381610038161003816

(2)

where 119878(119894) represents the 119894th user session and120594

119896represents the

set of sessions assigned to 119896th cluster 119889119896119894is the distance from

119878(119894) to 120594

119896 Initial clusters of agents are formed by grouping the

agents that lie within a distance threshold and whose meansquared error lies within 120590th

2 into a cluster (lines 4 to 6)Thus the agents within a cluster represent similar usersTheseclusters are given as input to the Bluegill-BestPredictionsalgorithm

In the Bluegill-BestPredictions algorithm (Algorithm 4)the foraging behavior of bluegill fish is used to give dynamicrecommendations to user A bluegill sunfish [23] eats a preyto maximize its energy intake At high density of prey thebluegill fish eats a diet made up of larger prey At a mediumdensity of prey bluegill fish eats large prey over a small preyAt this time bluegill fish becomes more selective That isinstead of time spent in capturing and eating smaller onesthe bluegill fish canmaximize its energy by eating larger onesAt a low density of prey the bluegill fish eats large mediumand small prey as they are encountered thus maximizingits energy intake The behavior of bluegill fish is dynamicbecause the way in which it catches its prey is different in

The Scientific World Journal 7

Input Extracted Clusters 119873 newdata data119886

Output Extracted Clusters 119872 ≪ 119873 Visualization of Clusters Recommendations to usersSteps(1) REPEAT(2) Map each cluster centroid as Lake and define 119896 = 1 Now N Lakes(3) If data

119886is not assigned an agent

(4) Then map agent119886to data

119886119886119892119890119899119905

119886represents the bluegill

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) End if(8) FOR 1 le 119894 le 119899

(9) IF Sim(agent119886 Lake

119894) gt Maxth where the 119894 ranges from 1 to 119873 bluegill enters the lake containing high density of prey

and identifies neighboring preys(10) Repeat(11) If Sim(agent

119886 neighbor agent

119896119886) m high range bluegill eats large size prey

(12) Then Eat neighbor agent119896119886

(13) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(14) Update energy = Sum(nosh119886)

(15) Increment 119896 by one(16) Else(17) Increment 119896 by one(18) End if(19) Until energy = 1(20) ELSE IF Sim(agent

119886 Lake

119894) lt Minth where 119894 ranges from 1 to 119873 bluegill enters the lake containing low density of preys

and identifies the neighboring preys(21) Repeat(22) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(23) Then Eat neighbor agent119896119886

(24) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(25) Update energy = Sum(nosh119886)

(26) Increment 119896 by one(27) Else(28) Break(29) End if(30) Until energy = 1(31) Repeat(32) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(33) Then Eat neighbor agent119896119886

(34) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(35) Update energy = Sum(nosh119886)

(36) Increment 119896 by one(37) Else(38) Break(39) End if(40) Until energy = 1(41) Repeat blue gill eats small size prey(42) Eat neighbor agent

119896119886

(43) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(44) Update energy = Sum(nosh119886)

(45) Increment 119896 by one(46) Until energy = 1(47) ELSE bluegill enters a lake containing medium density of prey and identifies neighboring preys(48) Repeat(49) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(50) Then Eat neighbor agent119896119886

(51) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(52) Update energy = Sum(nosh119886)

(53) Increment 119896 by one(54) Else(55) Break(56) End if

Algorithm 4 Continued

8 The Scientific World Journal

(57) Until energy = 1(58) Repeat(59) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(60) Then Eat neighbor agent119896119886

(61) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(62) Update energy = Sum(nosh119886)

(63) Increment 119896 by one(64) Else(65) Break(66) End if(67) Until energy = 1(68) END IF(69) END FOR(70) Keep the clusters with Clus threshold sessions(71) Plot Clusters on visualization panel according to cluster names visualize clusters in x y coordinates where different

cluster elements are represented in different shapes(72) For each cluster do(73) Find the URLrsquos which are visited more than Url count threshold in all the sessions of that cluster display URLs

accessed frequently in all the sessions of that cluster as user profiles(74) End For(75) For each agent agent

119895do

(76) Find the cluster 119862 to which agent119895belongs

(77) 119866(119909) = neighboring agents of agent119895in cluster 119862 within distance 119889best

(78) 119865(119866(119909)) = frequently preferred items by each agents in 119866(119909)

(79) Recommend most frequent 119868 items in 119865(119866(119909)) to user 119906 represented by agent119895

(80) End For(81) UNTIL there is no more data records(82) End

Algorithm 4 Bluegill-BestPredictions algorithm

different densities of prey The bluegill fish maximizes itsenergy in an optimized way that is more energy in lesstime These behaviors of bluegill fish can be used to givedynamic recommendations to users The proposed dynamicrecommender system gives users better recommendationsin less time that is lesser number of iterations withoutcompromising the quality in terms of coverage and precisionThe usage of intelligent software agents helps us to simulatethis artificial life The intelligent agents are highly flexible toadapt to the dynamic behavior of users

The Bluegill-BestPredictions algorithm described asAlgorithm 4 supports dynamic clustering of dynamic dataitems and provides dynamic predictions to users Fordynamic clustering [19] the complete data set need not bemade available initially The data is continuously collectedover time Whenever new data is added it requires costlyupdate of the clusters The new web click streams may bedue to change in userrsquos interest or due to the addition ordeletion of a web page from given website Application ofcooling algorithm and cluster formation algorithm results inthe visualization of initial clusters in the visualization paneland similar agents belonging to the same cluster Distancebetween the agents in the visualization panel represents thesimilarity between the users

In line 2 of Algorithm 4 the centroid of each clus-ter obtained as the output of cluster-creation algorithm ismapped as a lake In line 3 dataa represents the input dynamic

data and is mapped to the corresponding agent in lines 4 and6Thedataa is considered as the bluegill fishHere each clusteris considered as a lake with different density of prey and theagents in each cluster (lake) are considered as the prey In line9 the similarity of the agenta and Lakei is compared using (3)Here we use web session similarity [19 21] between URLs assimilarity measure based on the fact that an agent representsuser sessions

Web session similarity (vec119894 vec119895)

=

sum119860

119896119894=1 sum119860

119896119895=1 vec119894119896119894vec119895

119896119895119878119906

(119896119894 119896119895)

sum119860

119896119894=1 vec119894119896119894 sum119860

119896119895=1 vec119895119896119895

(3)

where vec119894represents the user session vectors that are

prepared in the preprocessing step and 119878119906(119894 119895) represents the

syntactic similarity between the 119894th and 119895th URLs Consider

119878119906

(119894 119895) = min(1

10038161003816100381610038161003816119901119894cap119901119895

10038161003816100381610038161003816

max (1max (1003816100381610038161003816119901119894

1003816100381610038161003816 10038161003816100381610038161003816119901119895

10038161003816100381610038161003816) minus 1)

) (4)

For a given URL Ui 119901119894represents the path traversed

from the root node which is the main page to the nodecorresponding to the 119894th URL |119901

119894| indicates the length of this

path [19]If the similarity of agenta and Lakei is greater than a

predefined threshold (Maxth) value we assume that bluegill

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 3: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

The Scientific World Journal 3

the visualization panel top-119899 recommendations are given tothe user

3 Background

31 Web Usage Mining Web usage mining is the process ofapplying data mining techniques to web log data to discoverinteresting usage patterns [14] It consists of the followingsteps

(1) Preprocessing the web log files(2) Pattern discovery using data mining techniques [14ndash

17](3) Postprocessing(4) Tracking evolving user profiles [18]

311 Preprocessing the Web Log Files Each entry in the weblog files consists of IP address URL viewed and access timeThe web log files extracted from the web server contain ahuge amount of information All these pieces of informationare not needed for further processing The quality of thepatterns discovered after web usage mining process dependson how well you perform data cleaning and user sessionidentification Data cleaning includes filtering the crawlerrsquosrequest request to graphics and identifying unique sessionsThe user session identification includes identifying the pagesreferenced by a user during a single visit to a site

312 Pattern Discovery Using Data Mining Techniques Oncethe user sessions are identified various data mining methodssuch as frequent item sets clustering classification associa-tion rule mining path analysis neural network approachesand heuristic approach methods can be applied to extractuseful patterns from web log files These discovered patternsidentify usersrsquo interests behavior habits and changes in theirinterest A website can be personalized or customized for auser based these pieces of information thereby increasing theprofit of an organization

313 Postprocessing and Tracking Evolving User Profiles Usersession categories [18] are summarized into user profilesTracking evolving user profiles includes comparing the userprofiles generated in different months This helps in identi-fying new groups of user profiles and merging or splitting ofuser profiles and inactive user profiles All these changes inuser profiles represent the changes in customerrsquos interests orbehaviors

32 Swarm Intelligence Swarm intelligence gains inspirationfrom several communities in nature such as fish schools antcolonies honey bees and bird flocks Swarm intelligence usesintelligent agents to handle copious information An agentperceives the environment through sensors and it acts onthe environment through actuators [19] Intelligent agentscan continuously perceive the dynamic conditions in theenvironment it can perform actions to affect the conditionsin the environment and performs reasoning to interpret

perceptions The flexibility of the software agents makes itpossible to dynamically choose which actions to performand their sequence in response to the state of its externalenvironment

33 Stimulated Annealing Stimulated annealing [20] pro-vides an optimal solution for the nearest neighbor searchAnnealing is the process of heating ametal to itsmelting pointand then cooling it back into solid state Final structure of themetal depends upon cooling function Slow cooling resultsin large crystals with low energy whereas fast cooling resultsin high energy state resulting in imperfections Slow coolingalways gives a better result

4 The Proposed System

In the past many research works were done in swarmintelligence for web usage mining like AntClust [10] particleswarmoptimization (PSO) [11] Fab [4] collaborative filtering(CF) [1] and so forth All these methods cannot model thedynamic behavior of users efficiently and the recommenda-tions given to users lack ability to handle seasonality in usersrsquointerest Because of the information overload problem in webusage data in many traditional swarm intelligence methodssuch as ACO and PSO the number of iterations needed forthe system before convergence is high

In the present work we propose a WebBluegillRecom-annealing dynamic recommender system It uses the simu-lated annealing and swarm intelligence for identifying theinteresting items to be recommended for the users TheWebBluegillRecom-annealing algorithm gains inspirationfrom the foraging behavior of bluegill fish Swarm intelligenceuses intelligent agents to handle abundant information on theweb thereby increasing scalability Here intelligent softwareagents are used to model artificial life Intelligent softwareagents can handle the dynamic nature of online usage therebyovercoming information overload problem This flexibilityproperty permits the artificial bluegill fish to model foragingbehavior of real bluegill fish in different densities of preyin water The learning capability of software agents allowscontinuous monitoring of users dynamic behaviors and givespredictions

The proposed WebBluegillRecom-annealing algorithmuses a cooling schema to make all agents in stable state Thecooling algorithmhas been developed based on the simulatedannealing approach The cooling schema in the proposedWebBluegillRecom-annealing algorithm reduces the numberof iterations required for the agents to enter into a stablelow energy state Figure 1 shows the steps involved in theproposed dynamic recommender system

In the proposed WebBluegillRecom-annealing dynamicrecommender system initially each user obtained after thedata cleaning process is mapped to an agent The agents areplaced randomly on the 2D visualization panel A coolingalgorithm is then applied to bring similar agents nearer toeach other in the visualization panel This gives an initialneighborhood for agents A better neighborhood is formedin each iteration of the algorithm by iteratively adjusting the

4 The Scientific World Journal

Cooling algorithm

Random placement of agents on 2D visualization panel

Cluster-creation algorithm

Bluegill-BestPredictions algorithm

Position of agents on visualization panel

Updated position ofagents on the

visualization panel

Initial N clusters

New data

User sessions

Best I recommendations

WebBluegillRecom-annealing algorithm

Map each user to an agent

Stored data

Preprocessing

Bluegill-BestPredictions algorithm

Web log

M clusters where M ≪ N

Figure 1 Steps involved in WebBluegillRecom-annealing dynamic recommender system

position of the agents on the visualization panel That is theusers that exhibit similar behavior will form a hinterland Inorder to handle dynamic data that is collected incessantly andto improve the quality of neighborhood a dynamic clusteringtechnique is applied Recommendations are given to users asbest 119868 items preferred by the userrsquos latest neighborhood

The proposed WebBluegillRecom-annealing recom-mender system can handle the following challenges ofweb usage mining such as information overload problemdynamic behavior of users large number of iterationsbefore convergence and scalability and overspecialization inrecommendations problem

41 Preprocessing of Web Logs to Extract Input User SessionsWeb server log files are preprocessed and input user sessionsare identified Here the 119894th user session is encoded as an119860-dimensional binary attribute vector [21] Useri with thefollowing property

User119894=

1 if user 119894 accessed URL 119895

0 otherwise(1)

42 User Profile Creation Based on Data Mining TechniquesIn this paper a dynamic clustering based data mining tech-nique is used to discover interesting online usage patternsUnlike conventional clustering in dynamic clustering [22]the whole input data need not be made available initially

The input data is collected continuously over time Dynamicclustering technique has the ability to manage incomingdynamic data that represents the dynamic behaviors of usersDynamic behaviors of users are due to the changes in userrsquosinterest or behavior or due to the addition or deletion of a webpage These discovered patterns can be used for the creationof user profiles and for giving recommendation to users

421 The Proposed WebBluegillRecom-Annealing AlgorithmIn the proposed WebBluegillRecom-annealing algorithm(Algorithm 1) each user is mapped to an agent All theagents are placed on the visualization panel randomly Tobring similar agents closer and dissimilar agents far aparta cooling algorithm (Algorithm 2) is applied Then theclusters of agents are formed using cluster-creation algo-rithm (Algorithm 3) It groups similar agents into the samecluster That is users having similar interests belong to thesame cluster This initial set of clusters can be used forfurther processing These initial clusters are given as inputto the Bluegill-BestPredictions algorithm (Algorithm 4) TheBluegill-BestPredictions algorithm can optimize these initialclusters by identifying a better neighborhood for agentsin each cluster forming another hinterland Moreover itcan assign new dynamic data representing a new dynamicbehavior of user to the most similar cluster It performsdynamic clustering of dynamic data and gives the users thefinest recommendations by predicting the best 119868 items pre-ferred by the neighborhood agents Bluegill-BestPredictions

The Scientific World Journal 5

Notations used 119863 = dataset 119889 = number of data items 119877119899 = 119899 dimensional real number space

Input dataset 119863 isin 119877119899 where |119863| = 119889

Output 1198621 1198622 119862

119898clusters best 119899 recommendations

Steps(1) Repeat(2) read a new input record data

119886reads dynamic data

(3) if data119886is not assigned an agent

(4) Assign new agent119886to data

119886

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) end if(8) until no more data records(9) Place the agents randomly on the visualization panel(10) Run Cooling algorithm returns the best position for the agents in the visualization panel(11) Visualize agents with their updated positions in the visualization panel(12) Run Cluster- creation algorithm returns initial clusters(13) While (1) do(14) Run Bluegill-BestPredictions algorithm performs dynamic clustering and returns best I recommendations for new and

old users(15) End While(16) Until stopping condition

Algorithm 1 WebBluegillRecom-annealing algorithm

Notations usedΩ = agents plus their position on the visualization plane TL = temperature length Ω

lowast = agents plus their updated positionon the visualization plane 119860

119894= 119894th agent on the visualization panel Pos(119860

119894) = position of agent on the visualization plane

119899 = total number of agents on the visualization planeInput 119860

119894where 119894 = 1 to 119899 Ω TL 119899

Output Ωlowast

Steps(1) Generate an initial solution Ω

0mΩ Ω

lowast= Ω0

(2) Generate initial temperature 119879 gt 0

(3) Repeat(4) For 1 le 119879 le TL(5) Identify agent 119860

119895neighboring Ω

lowast

(6) Let Δ = CS(119860119894 119860119895) minus CS(119860

119894 119860119894+1

) where CS = (119860119894sdot 119860119895)119860119894119860119895

Where 119860119894sdot 119860119895

= sum119899

119896=1119860119894

119896119860119895

119896119860119894 = radic119860

119894sdot 119860119894

(7) If Δ le 0 downhill move(8) Ω

lowast= 119860119895Pos(119860

119895)

(9) Else(10) IF random(0 1) lt eand(Δ119879) then Ω

lowast= 119860119895Pos(119860

119895)

(11) End if(12) Increment 119894 by one(13) End for(14) 119879 = rT reduce temperature(15) until stopping condition(16) Return Ω

lowast

Algorithm 2 Cooling algorithm

algorithm gives dynamic recommendations to users Sincethe recommendations are dynamic the WebBluegillRecom-annealing algorithm can satisfy the needs of old and newusers The following part explains each of these algorithmsin detail

In the proposedWebBluegillRecom-annealing algorithminitially each user is mapped to an agent Agents are placed

on the visualization panel randomly Visualization panel is atwo-dimensional plane represented by 119909-119910 coordinates The119909-axis and 119910-axis values range from 0 to 1

To bring similar agents closer and dissimilar agents farapart in the visualization panel we use a cooling algorithmbased on annealing concept used in metals The attributesof this thermodynamic simulation can be mapped into

6 The Scientific World Journal

Notations used Pos(Agent119894) = position of agent on the visualization plane 119889th = distance threshold

Input Agent119894 Pos(Agent

119894)

Output Clusters 1198621 1198622 119862

119899

Steps(1) read the agent

119894

(2) assign the agent to cluster 119862119896

(3) for all agent 119860119895do

(4) if (Distance(119860119894 119860119895)) lt 119889th and 120590

119896

2lt 120590th2

(5) assign 119860119895to 119862119896

(6) Else(7) assign 119860

119895to 119862119896+1

(8) End if(9) End for(10) Return Clusters

Algorithm 3 Cluster-creation algorithm

stimulated annealing optimization where a system staterepresents feasible solutions energy represents costs changeof state represents the neighboring function temperaturerepresents control parameter and frozen state represents finalsolution Initially when the temperature is high it accepts badmoves This is because starting solution may not be too goodbecause of the difficulty of escaping from neighborhood Butwhen the temperature is low it almost rejects bad movesThebest ever result is kept as the final solution

The inputs to the cooling algorithm (Algorithm 2) areagents their position on the visualization panel and thetemperature length In Step (1) of Algorithm 2 an initialsolution Ω

0is generated randomly and assign this as the

final solution Ωlowast In Step (2) initial temperature value is

generated In line 5 a new solution is created by selectingneighboring agent that is similar to the solution Ω

lowast Inthis algorithm a cost function is calculated using cosinesimilarity of agents Here the cost function is tomaximize thecosine similarity (CS) of agents Cosine similarity betweenany two agents represents the similarity between users thatare mapped to that agent Cosine similarity can handlequalitative and quantitative data It can also handle highdimensional sparse data In Step (6) the change in the costfunction is calculated In line 7 it checks whether the changein cost function (energy) is decreased If energy is decreasedthen the new state is accepted (line 8) Otherwise the newstate with probability 119890

and(Δ119879) (line 10) is accepted In line

14 a geometric temperature reduction is used where 08 le

119903 le 099 To get good results 119879 should be adjusted in sucha way with small number of iterations at higher temperatureand larger number of iterations at low temperature For thefinal solution to be independent of the starting one the initialtemperature should be high enough When the temperatureis low there are no uphill moves When a given minimumvalue of temperature is reached or when a certain amountof looping has been performed without accepting a newsolution the algorithm is stopped (line 14)

The cooling algorithm applied is a greedy heuristicallowing the agents to move from current positions to thebest neighboring solution The cooling algorithm returns theagents with their new position on the visualization panel

Now similar agents lie close in the visualization panel Asthe distances between the agents on the visualization panelincrease their similarity decreases To avoid local minima itsupports uphill moves After applying the cooling functionagents converge to a frozen low energy state where similaragents are located nearer to each other The usage of coolingalgorithm reduces the number of iterations These agentswith their updated positions on the visualization panel afterapplying cooling algorithm are given as input to the cluster-creation algorithm

In cluster-creation algorithm (Algorithm 3)Distance (119860119894

119860119895) represents the distance between agents 119860

119894and 119860

119895on the

visualization panel 120590119896

2 represents the mean squared error oraverage dissimilarity between the cluster prototype and thedata records [21] Mean squared error is calculated using

120590119896

2=

sum119878(119894)m120594119896 119889

2119896119894

10038161003816100381610038161205941198961003816100381610038161003816

(2)

where 119878(119894) represents the 119894th user session and120594

119896represents the

set of sessions assigned to 119896th cluster 119889119896119894is the distance from

119878(119894) to 120594

119896 Initial clusters of agents are formed by grouping the

agents that lie within a distance threshold and whose meansquared error lies within 120590th

2 into a cluster (lines 4 to 6)Thus the agents within a cluster represent similar usersTheseclusters are given as input to the Bluegill-BestPredictionsalgorithm

In the Bluegill-BestPredictions algorithm (Algorithm 4)the foraging behavior of bluegill fish is used to give dynamicrecommendations to user A bluegill sunfish [23] eats a preyto maximize its energy intake At high density of prey thebluegill fish eats a diet made up of larger prey At a mediumdensity of prey bluegill fish eats large prey over a small preyAt this time bluegill fish becomes more selective That isinstead of time spent in capturing and eating smaller onesthe bluegill fish canmaximize its energy by eating larger onesAt a low density of prey the bluegill fish eats large mediumand small prey as they are encountered thus maximizingits energy intake The behavior of bluegill fish is dynamicbecause the way in which it catches its prey is different in

The Scientific World Journal 7

Input Extracted Clusters 119873 newdata data119886

Output Extracted Clusters 119872 ≪ 119873 Visualization of Clusters Recommendations to usersSteps(1) REPEAT(2) Map each cluster centroid as Lake and define 119896 = 1 Now N Lakes(3) If data

119886is not assigned an agent

(4) Then map agent119886to data

119886119886119892119890119899119905

119886represents the bluegill

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) End if(8) FOR 1 le 119894 le 119899

(9) IF Sim(agent119886 Lake

119894) gt Maxth where the 119894 ranges from 1 to 119873 bluegill enters the lake containing high density of prey

and identifies neighboring preys(10) Repeat(11) If Sim(agent

119886 neighbor agent

119896119886) m high range bluegill eats large size prey

(12) Then Eat neighbor agent119896119886

(13) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(14) Update energy = Sum(nosh119886)

(15) Increment 119896 by one(16) Else(17) Increment 119896 by one(18) End if(19) Until energy = 1(20) ELSE IF Sim(agent

119886 Lake

119894) lt Minth where 119894 ranges from 1 to 119873 bluegill enters the lake containing low density of preys

and identifies the neighboring preys(21) Repeat(22) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(23) Then Eat neighbor agent119896119886

(24) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(25) Update energy = Sum(nosh119886)

(26) Increment 119896 by one(27) Else(28) Break(29) End if(30) Until energy = 1(31) Repeat(32) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(33) Then Eat neighbor agent119896119886

(34) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(35) Update energy = Sum(nosh119886)

(36) Increment 119896 by one(37) Else(38) Break(39) End if(40) Until energy = 1(41) Repeat blue gill eats small size prey(42) Eat neighbor agent

119896119886

(43) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(44) Update energy = Sum(nosh119886)

(45) Increment 119896 by one(46) Until energy = 1(47) ELSE bluegill enters a lake containing medium density of prey and identifies neighboring preys(48) Repeat(49) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(50) Then Eat neighbor agent119896119886

(51) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(52) Update energy = Sum(nosh119886)

(53) Increment 119896 by one(54) Else(55) Break(56) End if

Algorithm 4 Continued

8 The Scientific World Journal

(57) Until energy = 1(58) Repeat(59) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(60) Then Eat neighbor agent119896119886

(61) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(62) Update energy = Sum(nosh119886)

(63) Increment 119896 by one(64) Else(65) Break(66) End if(67) Until energy = 1(68) END IF(69) END FOR(70) Keep the clusters with Clus threshold sessions(71) Plot Clusters on visualization panel according to cluster names visualize clusters in x y coordinates where different

cluster elements are represented in different shapes(72) For each cluster do(73) Find the URLrsquos which are visited more than Url count threshold in all the sessions of that cluster display URLs

accessed frequently in all the sessions of that cluster as user profiles(74) End For(75) For each agent agent

119895do

(76) Find the cluster 119862 to which agent119895belongs

(77) 119866(119909) = neighboring agents of agent119895in cluster 119862 within distance 119889best

(78) 119865(119866(119909)) = frequently preferred items by each agents in 119866(119909)

(79) Recommend most frequent 119868 items in 119865(119866(119909)) to user 119906 represented by agent119895

(80) End For(81) UNTIL there is no more data records(82) End

Algorithm 4 Bluegill-BestPredictions algorithm

different densities of prey The bluegill fish maximizes itsenergy in an optimized way that is more energy in lesstime These behaviors of bluegill fish can be used to givedynamic recommendations to users The proposed dynamicrecommender system gives users better recommendationsin less time that is lesser number of iterations withoutcompromising the quality in terms of coverage and precisionThe usage of intelligent software agents helps us to simulatethis artificial life The intelligent agents are highly flexible toadapt to the dynamic behavior of users

The Bluegill-BestPredictions algorithm described asAlgorithm 4 supports dynamic clustering of dynamic dataitems and provides dynamic predictions to users Fordynamic clustering [19] the complete data set need not bemade available initially The data is continuously collectedover time Whenever new data is added it requires costlyupdate of the clusters The new web click streams may bedue to change in userrsquos interest or due to the addition ordeletion of a web page from given website Application ofcooling algorithm and cluster formation algorithm results inthe visualization of initial clusters in the visualization paneland similar agents belonging to the same cluster Distancebetween the agents in the visualization panel represents thesimilarity between the users

In line 2 of Algorithm 4 the centroid of each clus-ter obtained as the output of cluster-creation algorithm ismapped as a lake In line 3 dataa represents the input dynamic

data and is mapped to the corresponding agent in lines 4 and6Thedataa is considered as the bluegill fishHere each clusteris considered as a lake with different density of prey and theagents in each cluster (lake) are considered as the prey In line9 the similarity of the agenta and Lakei is compared using (3)Here we use web session similarity [19 21] between URLs assimilarity measure based on the fact that an agent representsuser sessions

Web session similarity (vec119894 vec119895)

=

sum119860

119896119894=1 sum119860

119896119895=1 vec119894119896119894vec119895

119896119895119878119906

(119896119894 119896119895)

sum119860

119896119894=1 vec119894119896119894 sum119860

119896119895=1 vec119895119896119895

(3)

where vec119894represents the user session vectors that are

prepared in the preprocessing step and 119878119906(119894 119895) represents the

syntactic similarity between the 119894th and 119895th URLs Consider

119878119906

(119894 119895) = min(1

10038161003816100381610038161003816119901119894cap119901119895

10038161003816100381610038161003816

max (1max (1003816100381610038161003816119901119894

1003816100381610038161003816 10038161003816100381610038161003816119901119895

10038161003816100381610038161003816) minus 1)

) (4)

For a given URL Ui 119901119894represents the path traversed

from the root node which is the main page to the nodecorresponding to the 119894th URL |119901

119894| indicates the length of this

path [19]If the similarity of agenta and Lakei is greater than a

predefined threshold (Maxth) value we assume that bluegill

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 4: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

4 The Scientific World Journal

Cooling algorithm

Random placement of agents on 2D visualization panel

Cluster-creation algorithm

Bluegill-BestPredictions algorithm

Position of agents on visualization panel

Updated position ofagents on the

visualization panel

Initial N clusters

New data

User sessions

Best I recommendations

WebBluegillRecom-annealing algorithm

Map each user to an agent

Stored data

Preprocessing

Bluegill-BestPredictions algorithm

Web log

M clusters where M ≪ N

Figure 1 Steps involved in WebBluegillRecom-annealing dynamic recommender system

position of the agents on the visualization panel That is theusers that exhibit similar behavior will form a hinterland Inorder to handle dynamic data that is collected incessantly andto improve the quality of neighborhood a dynamic clusteringtechnique is applied Recommendations are given to users asbest 119868 items preferred by the userrsquos latest neighborhood

The proposed WebBluegillRecom-annealing recom-mender system can handle the following challenges ofweb usage mining such as information overload problemdynamic behavior of users large number of iterationsbefore convergence and scalability and overspecialization inrecommendations problem

41 Preprocessing of Web Logs to Extract Input User SessionsWeb server log files are preprocessed and input user sessionsare identified Here the 119894th user session is encoded as an119860-dimensional binary attribute vector [21] Useri with thefollowing property

User119894=

1 if user 119894 accessed URL 119895

0 otherwise(1)

42 User Profile Creation Based on Data Mining TechniquesIn this paper a dynamic clustering based data mining tech-nique is used to discover interesting online usage patternsUnlike conventional clustering in dynamic clustering [22]the whole input data need not be made available initially

The input data is collected continuously over time Dynamicclustering technique has the ability to manage incomingdynamic data that represents the dynamic behaviors of usersDynamic behaviors of users are due to the changes in userrsquosinterest or behavior or due to the addition or deletion of a webpage These discovered patterns can be used for the creationof user profiles and for giving recommendation to users

421 The Proposed WebBluegillRecom-Annealing AlgorithmIn the proposed WebBluegillRecom-annealing algorithm(Algorithm 1) each user is mapped to an agent All theagents are placed on the visualization panel randomly Tobring similar agents closer and dissimilar agents far aparta cooling algorithm (Algorithm 2) is applied Then theclusters of agents are formed using cluster-creation algo-rithm (Algorithm 3) It groups similar agents into the samecluster That is users having similar interests belong to thesame cluster This initial set of clusters can be used forfurther processing These initial clusters are given as inputto the Bluegill-BestPredictions algorithm (Algorithm 4) TheBluegill-BestPredictions algorithm can optimize these initialclusters by identifying a better neighborhood for agentsin each cluster forming another hinterland Moreover itcan assign new dynamic data representing a new dynamicbehavior of user to the most similar cluster It performsdynamic clustering of dynamic data and gives the users thefinest recommendations by predicting the best 119868 items pre-ferred by the neighborhood agents Bluegill-BestPredictions

The Scientific World Journal 5

Notations used 119863 = dataset 119889 = number of data items 119877119899 = 119899 dimensional real number space

Input dataset 119863 isin 119877119899 where |119863| = 119889

Output 1198621 1198622 119862

119898clusters best 119899 recommendations

Steps(1) Repeat(2) read a new input record data

119886reads dynamic data

(3) if data119886is not assigned an agent

(4) Assign new agent119886to data

119886

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) end if(8) until no more data records(9) Place the agents randomly on the visualization panel(10) Run Cooling algorithm returns the best position for the agents in the visualization panel(11) Visualize agents with their updated positions in the visualization panel(12) Run Cluster- creation algorithm returns initial clusters(13) While (1) do(14) Run Bluegill-BestPredictions algorithm performs dynamic clustering and returns best I recommendations for new and

old users(15) End While(16) Until stopping condition

Algorithm 1 WebBluegillRecom-annealing algorithm

Notations usedΩ = agents plus their position on the visualization plane TL = temperature length Ω

lowast = agents plus their updated positionon the visualization plane 119860

119894= 119894th agent on the visualization panel Pos(119860

119894) = position of agent on the visualization plane

119899 = total number of agents on the visualization planeInput 119860

119894where 119894 = 1 to 119899 Ω TL 119899

Output Ωlowast

Steps(1) Generate an initial solution Ω

0mΩ Ω

lowast= Ω0

(2) Generate initial temperature 119879 gt 0

(3) Repeat(4) For 1 le 119879 le TL(5) Identify agent 119860

119895neighboring Ω

lowast

(6) Let Δ = CS(119860119894 119860119895) minus CS(119860

119894 119860119894+1

) where CS = (119860119894sdot 119860119895)119860119894119860119895

Where 119860119894sdot 119860119895

= sum119899

119896=1119860119894

119896119860119895

119896119860119894 = radic119860

119894sdot 119860119894

(7) If Δ le 0 downhill move(8) Ω

lowast= 119860119895Pos(119860

119895)

(9) Else(10) IF random(0 1) lt eand(Δ119879) then Ω

lowast= 119860119895Pos(119860

119895)

(11) End if(12) Increment 119894 by one(13) End for(14) 119879 = rT reduce temperature(15) until stopping condition(16) Return Ω

lowast

Algorithm 2 Cooling algorithm

algorithm gives dynamic recommendations to users Sincethe recommendations are dynamic the WebBluegillRecom-annealing algorithm can satisfy the needs of old and newusers The following part explains each of these algorithmsin detail

In the proposedWebBluegillRecom-annealing algorithminitially each user is mapped to an agent Agents are placed

on the visualization panel randomly Visualization panel is atwo-dimensional plane represented by 119909-119910 coordinates The119909-axis and 119910-axis values range from 0 to 1

To bring similar agents closer and dissimilar agents farapart in the visualization panel we use a cooling algorithmbased on annealing concept used in metals The attributesof this thermodynamic simulation can be mapped into

6 The Scientific World Journal

Notations used Pos(Agent119894) = position of agent on the visualization plane 119889th = distance threshold

Input Agent119894 Pos(Agent

119894)

Output Clusters 1198621 1198622 119862

119899

Steps(1) read the agent

119894

(2) assign the agent to cluster 119862119896

(3) for all agent 119860119895do

(4) if (Distance(119860119894 119860119895)) lt 119889th and 120590

119896

2lt 120590th2

(5) assign 119860119895to 119862119896

(6) Else(7) assign 119860

119895to 119862119896+1

(8) End if(9) End for(10) Return Clusters

Algorithm 3 Cluster-creation algorithm

stimulated annealing optimization where a system staterepresents feasible solutions energy represents costs changeof state represents the neighboring function temperaturerepresents control parameter and frozen state represents finalsolution Initially when the temperature is high it accepts badmoves This is because starting solution may not be too goodbecause of the difficulty of escaping from neighborhood Butwhen the temperature is low it almost rejects bad movesThebest ever result is kept as the final solution

The inputs to the cooling algorithm (Algorithm 2) areagents their position on the visualization panel and thetemperature length In Step (1) of Algorithm 2 an initialsolution Ω

0is generated randomly and assign this as the

final solution Ωlowast In Step (2) initial temperature value is

generated In line 5 a new solution is created by selectingneighboring agent that is similar to the solution Ω

lowast Inthis algorithm a cost function is calculated using cosinesimilarity of agents Here the cost function is tomaximize thecosine similarity (CS) of agents Cosine similarity betweenany two agents represents the similarity between users thatare mapped to that agent Cosine similarity can handlequalitative and quantitative data It can also handle highdimensional sparse data In Step (6) the change in the costfunction is calculated In line 7 it checks whether the changein cost function (energy) is decreased If energy is decreasedthen the new state is accepted (line 8) Otherwise the newstate with probability 119890

and(Δ119879) (line 10) is accepted In line

14 a geometric temperature reduction is used where 08 le

119903 le 099 To get good results 119879 should be adjusted in sucha way with small number of iterations at higher temperatureand larger number of iterations at low temperature For thefinal solution to be independent of the starting one the initialtemperature should be high enough When the temperatureis low there are no uphill moves When a given minimumvalue of temperature is reached or when a certain amountof looping has been performed without accepting a newsolution the algorithm is stopped (line 14)

The cooling algorithm applied is a greedy heuristicallowing the agents to move from current positions to thebest neighboring solution The cooling algorithm returns theagents with their new position on the visualization panel

Now similar agents lie close in the visualization panel Asthe distances between the agents on the visualization panelincrease their similarity decreases To avoid local minima itsupports uphill moves After applying the cooling functionagents converge to a frozen low energy state where similaragents are located nearer to each other The usage of coolingalgorithm reduces the number of iterations These agentswith their updated positions on the visualization panel afterapplying cooling algorithm are given as input to the cluster-creation algorithm

In cluster-creation algorithm (Algorithm 3)Distance (119860119894

119860119895) represents the distance between agents 119860

119894and 119860

119895on the

visualization panel 120590119896

2 represents the mean squared error oraverage dissimilarity between the cluster prototype and thedata records [21] Mean squared error is calculated using

120590119896

2=

sum119878(119894)m120594119896 119889

2119896119894

10038161003816100381610038161205941198961003816100381610038161003816

(2)

where 119878(119894) represents the 119894th user session and120594

119896represents the

set of sessions assigned to 119896th cluster 119889119896119894is the distance from

119878(119894) to 120594

119896 Initial clusters of agents are formed by grouping the

agents that lie within a distance threshold and whose meansquared error lies within 120590th

2 into a cluster (lines 4 to 6)Thus the agents within a cluster represent similar usersTheseclusters are given as input to the Bluegill-BestPredictionsalgorithm

In the Bluegill-BestPredictions algorithm (Algorithm 4)the foraging behavior of bluegill fish is used to give dynamicrecommendations to user A bluegill sunfish [23] eats a preyto maximize its energy intake At high density of prey thebluegill fish eats a diet made up of larger prey At a mediumdensity of prey bluegill fish eats large prey over a small preyAt this time bluegill fish becomes more selective That isinstead of time spent in capturing and eating smaller onesthe bluegill fish canmaximize its energy by eating larger onesAt a low density of prey the bluegill fish eats large mediumand small prey as they are encountered thus maximizingits energy intake The behavior of bluegill fish is dynamicbecause the way in which it catches its prey is different in

The Scientific World Journal 7

Input Extracted Clusters 119873 newdata data119886

Output Extracted Clusters 119872 ≪ 119873 Visualization of Clusters Recommendations to usersSteps(1) REPEAT(2) Map each cluster centroid as Lake and define 119896 = 1 Now N Lakes(3) If data

119886is not assigned an agent

(4) Then map agent119886to data

119886119886119892119890119899119905

119886represents the bluegill

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) End if(8) FOR 1 le 119894 le 119899

(9) IF Sim(agent119886 Lake

119894) gt Maxth where the 119894 ranges from 1 to 119873 bluegill enters the lake containing high density of prey

and identifies neighboring preys(10) Repeat(11) If Sim(agent

119886 neighbor agent

119896119886) m high range bluegill eats large size prey

(12) Then Eat neighbor agent119896119886

(13) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(14) Update energy = Sum(nosh119886)

(15) Increment 119896 by one(16) Else(17) Increment 119896 by one(18) End if(19) Until energy = 1(20) ELSE IF Sim(agent

119886 Lake

119894) lt Minth where 119894 ranges from 1 to 119873 bluegill enters the lake containing low density of preys

and identifies the neighboring preys(21) Repeat(22) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(23) Then Eat neighbor agent119896119886

(24) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(25) Update energy = Sum(nosh119886)

(26) Increment 119896 by one(27) Else(28) Break(29) End if(30) Until energy = 1(31) Repeat(32) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(33) Then Eat neighbor agent119896119886

(34) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(35) Update energy = Sum(nosh119886)

(36) Increment 119896 by one(37) Else(38) Break(39) End if(40) Until energy = 1(41) Repeat blue gill eats small size prey(42) Eat neighbor agent

119896119886

(43) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(44) Update energy = Sum(nosh119886)

(45) Increment 119896 by one(46) Until energy = 1(47) ELSE bluegill enters a lake containing medium density of prey and identifies neighboring preys(48) Repeat(49) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(50) Then Eat neighbor agent119896119886

(51) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(52) Update energy = Sum(nosh119886)

(53) Increment 119896 by one(54) Else(55) Break(56) End if

Algorithm 4 Continued

8 The Scientific World Journal

(57) Until energy = 1(58) Repeat(59) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(60) Then Eat neighbor agent119896119886

(61) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(62) Update energy = Sum(nosh119886)

(63) Increment 119896 by one(64) Else(65) Break(66) End if(67) Until energy = 1(68) END IF(69) END FOR(70) Keep the clusters with Clus threshold sessions(71) Plot Clusters on visualization panel according to cluster names visualize clusters in x y coordinates where different

cluster elements are represented in different shapes(72) For each cluster do(73) Find the URLrsquos which are visited more than Url count threshold in all the sessions of that cluster display URLs

accessed frequently in all the sessions of that cluster as user profiles(74) End For(75) For each agent agent

119895do

(76) Find the cluster 119862 to which agent119895belongs

(77) 119866(119909) = neighboring agents of agent119895in cluster 119862 within distance 119889best

(78) 119865(119866(119909)) = frequently preferred items by each agents in 119866(119909)

(79) Recommend most frequent 119868 items in 119865(119866(119909)) to user 119906 represented by agent119895

(80) End For(81) UNTIL there is no more data records(82) End

Algorithm 4 Bluegill-BestPredictions algorithm

different densities of prey The bluegill fish maximizes itsenergy in an optimized way that is more energy in lesstime These behaviors of bluegill fish can be used to givedynamic recommendations to users The proposed dynamicrecommender system gives users better recommendationsin less time that is lesser number of iterations withoutcompromising the quality in terms of coverage and precisionThe usage of intelligent software agents helps us to simulatethis artificial life The intelligent agents are highly flexible toadapt to the dynamic behavior of users

The Bluegill-BestPredictions algorithm described asAlgorithm 4 supports dynamic clustering of dynamic dataitems and provides dynamic predictions to users Fordynamic clustering [19] the complete data set need not bemade available initially The data is continuously collectedover time Whenever new data is added it requires costlyupdate of the clusters The new web click streams may bedue to change in userrsquos interest or due to the addition ordeletion of a web page from given website Application ofcooling algorithm and cluster formation algorithm results inthe visualization of initial clusters in the visualization paneland similar agents belonging to the same cluster Distancebetween the agents in the visualization panel represents thesimilarity between the users

In line 2 of Algorithm 4 the centroid of each clus-ter obtained as the output of cluster-creation algorithm ismapped as a lake In line 3 dataa represents the input dynamic

data and is mapped to the corresponding agent in lines 4 and6Thedataa is considered as the bluegill fishHere each clusteris considered as a lake with different density of prey and theagents in each cluster (lake) are considered as the prey In line9 the similarity of the agenta and Lakei is compared using (3)Here we use web session similarity [19 21] between URLs assimilarity measure based on the fact that an agent representsuser sessions

Web session similarity (vec119894 vec119895)

=

sum119860

119896119894=1 sum119860

119896119895=1 vec119894119896119894vec119895

119896119895119878119906

(119896119894 119896119895)

sum119860

119896119894=1 vec119894119896119894 sum119860

119896119895=1 vec119895119896119895

(3)

where vec119894represents the user session vectors that are

prepared in the preprocessing step and 119878119906(119894 119895) represents the

syntactic similarity between the 119894th and 119895th URLs Consider

119878119906

(119894 119895) = min(1

10038161003816100381610038161003816119901119894cap119901119895

10038161003816100381610038161003816

max (1max (1003816100381610038161003816119901119894

1003816100381610038161003816 10038161003816100381610038161003816119901119895

10038161003816100381610038161003816) minus 1)

) (4)

For a given URL Ui 119901119894represents the path traversed

from the root node which is the main page to the nodecorresponding to the 119894th URL |119901

119894| indicates the length of this

path [19]If the similarity of agenta and Lakei is greater than a

predefined threshold (Maxth) value we assume that bluegill

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 5: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

The Scientific World Journal 5

Notations used 119863 = dataset 119889 = number of data items 119877119899 = 119899 dimensional real number space

Input dataset 119863 isin 119877119899 where |119863| = 119889

Output 1198621 1198622 119862

119898clusters best 119899 recommendations

Steps(1) Repeat(2) read a new input record data

119886reads dynamic data

(3) if data119886is not assigned an agent

(4) Assign new agent119886to data

119886

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) end if(8) until no more data records(9) Place the agents randomly on the visualization panel(10) Run Cooling algorithm returns the best position for the agents in the visualization panel(11) Visualize agents with their updated positions in the visualization panel(12) Run Cluster- creation algorithm returns initial clusters(13) While (1) do(14) Run Bluegill-BestPredictions algorithm performs dynamic clustering and returns best I recommendations for new and

old users(15) End While(16) Until stopping condition

Algorithm 1 WebBluegillRecom-annealing algorithm

Notations usedΩ = agents plus their position on the visualization plane TL = temperature length Ω

lowast = agents plus their updated positionon the visualization plane 119860

119894= 119894th agent on the visualization panel Pos(119860

119894) = position of agent on the visualization plane

119899 = total number of agents on the visualization planeInput 119860

119894where 119894 = 1 to 119899 Ω TL 119899

Output Ωlowast

Steps(1) Generate an initial solution Ω

0mΩ Ω

lowast= Ω0

(2) Generate initial temperature 119879 gt 0

(3) Repeat(4) For 1 le 119879 le TL(5) Identify agent 119860

119895neighboring Ω

lowast

(6) Let Δ = CS(119860119894 119860119895) minus CS(119860

119894 119860119894+1

) where CS = (119860119894sdot 119860119895)119860119894119860119895

Where 119860119894sdot 119860119895

= sum119899

119896=1119860119894

119896119860119895

119896119860119894 = radic119860

119894sdot 119860119894

(7) If Δ le 0 downhill move(8) Ω

lowast= 119860119895Pos(119860

119895)

(9) Else(10) IF random(0 1) lt eand(Δ119879) then Ω

lowast= 119860119895Pos(119860

119895)

(11) End if(12) Increment 119894 by one(13) End for(14) 119879 = rT reduce temperature(15) until stopping condition(16) Return Ω

lowast

Algorithm 2 Cooling algorithm

algorithm gives dynamic recommendations to users Sincethe recommendations are dynamic the WebBluegillRecom-annealing algorithm can satisfy the needs of old and newusers The following part explains each of these algorithmsin detail

In the proposedWebBluegillRecom-annealing algorithminitially each user is mapped to an agent Agents are placed

on the visualization panel randomly Visualization panel is atwo-dimensional plane represented by 119909-119910 coordinates The119909-axis and 119910-axis values range from 0 to 1

To bring similar agents closer and dissimilar agents farapart in the visualization panel we use a cooling algorithmbased on annealing concept used in metals The attributesof this thermodynamic simulation can be mapped into

6 The Scientific World Journal

Notations used Pos(Agent119894) = position of agent on the visualization plane 119889th = distance threshold

Input Agent119894 Pos(Agent

119894)

Output Clusters 1198621 1198622 119862

119899

Steps(1) read the agent

119894

(2) assign the agent to cluster 119862119896

(3) for all agent 119860119895do

(4) if (Distance(119860119894 119860119895)) lt 119889th and 120590

119896

2lt 120590th2

(5) assign 119860119895to 119862119896

(6) Else(7) assign 119860

119895to 119862119896+1

(8) End if(9) End for(10) Return Clusters

Algorithm 3 Cluster-creation algorithm

stimulated annealing optimization where a system staterepresents feasible solutions energy represents costs changeof state represents the neighboring function temperaturerepresents control parameter and frozen state represents finalsolution Initially when the temperature is high it accepts badmoves This is because starting solution may not be too goodbecause of the difficulty of escaping from neighborhood Butwhen the temperature is low it almost rejects bad movesThebest ever result is kept as the final solution

The inputs to the cooling algorithm (Algorithm 2) areagents their position on the visualization panel and thetemperature length In Step (1) of Algorithm 2 an initialsolution Ω

0is generated randomly and assign this as the

final solution Ωlowast In Step (2) initial temperature value is

generated In line 5 a new solution is created by selectingneighboring agent that is similar to the solution Ω

lowast Inthis algorithm a cost function is calculated using cosinesimilarity of agents Here the cost function is tomaximize thecosine similarity (CS) of agents Cosine similarity betweenany two agents represents the similarity between users thatare mapped to that agent Cosine similarity can handlequalitative and quantitative data It can also handle highdimensional sparse data In Step (6) the change in the costfunction is calculated In line 7 it checks whether the changein cost function (energy) is decreased If energy is decreasedthen the new state is accepted (line 8) Otherwise the newstate with probability 119890

and(Δ119879) (line 10) is accepted In line

14 a geometric temperature reduction is used where 08 le

119903 le 099 To get good results 119879 should be adjusted in sucha way with small number of iterations at higher temperatureand larger number of iterations at low temperature For thefinal solution to be independent of the starting one the initialtemperature should be high enough When the temperatureis low there are no uphill moves When a given minimumvalue of temperature is reached or when a certain amountof looping has been performed without accepting a newsolution the algorithm is stopped (line 14)

The cooling algorithm applied is a greedy heuristicallowing the agents to move from current positions to thebest neighboring solution The cooling algorithm returns theagents with their new position on the visualization panel

Now similar agents lie close in the visualization panel Asthe distances between the agents on the visualization panelincrease their similarity decreases To avoid local minima itsupports uphill moves After applying the cooling functionagents converge to a frozen low energy state where similaragents are located nearer to each other The usage of coolingalgorithm reduces the number of iterations These agentswith their updated positions on the visualization panel afterapplying cooling algorithm are given as input to the cluster-creation algorithm

In cluster-creation algorithm (Algorithm 3)Distance (119860119894

119860119895) represents the distance between agents 119860

119894and 119860

119895on the

visualization panel 120590119896

2 represents the mean squared error oraverage dissimilarity between the cluster prototype and thedata records [21] Mean squared error is calculated using

120590119896

2=

sum119878(119894)m120594119896 119889

2119896119894

10038161003816100381610038161205941198961003816100381610038161003816

(2)

where 119878(119894) represents the 119894th user session and120594

119896represents the

set of sessions assigned to 119896th cluster 119889119896119894is the distance from

119878(119894) to 120594

119896 Initial clusters of agents are formed by grouping the

agents that lie within a distance threshold and whose meansquared error lies within 120590th

2 into a cluster (lines 4 to 6)Thus the agents within a cluster represent similar usersTheseclusters are given as input to the Bluegill-BestPredictionsalgorithm

In the Bluegill-BestPredictions algorithm (Algorithm 4)the foraging behavior of bluegill fish is used to give dynamicrecommendations to user A bluegill sunfish [23] eats a preyto maximize its energy intake At high density of prey thebluegill fish eats a diet made up of larger prey At a mediumdensity of prey bluegill fish eats large prey over a small preyAt this time bluegill fish becomes more selective That isinstead of time spent in capturing and eating smaller onesthe bluegill fish canmaximize its energy by eating larger onesAt a low density of prey the bluegill fish eats large mediumand small prey as they are encountered thus maximizingits energy intake The behavior of bluegill fish is dynamicbecause the way in which it catches its prey is different in

The Scientific World Journal 7

Input Extracted Clusters 119873 newdata data119886

Output Extracted Clusters 119872 ≪ 119873 Visualization of Clusters Recommendations to usersSteps(1) REPEAT(2) Map each cluster centroid as Lake and define 119896 = 1 Now N Lakes(3) If data

119886is not assigned an agent

(4) Then map agent119886to data

119886119886119892119890119899119905

119886represents the bluegill

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) End if(8) FOR 1 le 119894 le 119899

(9) IF Sim(agent119886 Lake

119894) gt Maxth where the 119894 ranges from 1 to 119873 bluegill enters the lake containing high density of prey

and identifies neighboring preys(10) Repeat(11) If Sim(agent

119886 neighbor agent

119896119886) m high range bluegill eats large size prey

(12) Then Eat neighbor agent119896119886

(13) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(14) Update energy = Sum(nosh119886)

(15) Increment 119896 by one(16) Else(17) Increment 119896 by one(18) End if(19) Until energy = 1(20) ELSE IF Sim(agent

119886 Lake

119894) lt Minth where 119894 ranges from 1 to 119873 bluegill enters the lake containing low density of preys

and identifies the neighboring preys(21) Repeat(22) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(23) Then Eat neighbor agent119896119886

(24) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(25) Update energy = Sum(nosh119886)

(26) Increment 119896 by one(27) Else(28) Break(29) End if(30) Until energy = 1(31) Repeat(32) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(33) Then Eat neighbor agent119896119886

(34) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(35) Update energy = Sum(nosh119886)

(36) Increment 119896 by one(37) Else(38) Break(39) End if(40) Until energy = 1(41) Repeat blue gill eats small size prey(42) Eat neighbor agent

119896119886

(43) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(44) Update energy = Sum(nosh119886)

(45) Increment 119896 by one(46) Until energy = 1(47) ELSE bluegill enters a lake containing medium density of prey and identifies neighboring preys(48) Repeat(49) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(50) Then Eat neighbor agent119896119886

(51) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(52) Update energy = Sum(nosh119886)

(53) Increment 119896 by one(54) Else(55) Break(56) End if

Algorithm 4 Continued

8 The Scientific World Journal

(57) Until energy = 1(58) Repeat(59) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(60) Then Eat neighbor agent119896119886

(61) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(62) Update energy = Sum(nosh119886)

(63) Increment 119896 by one(64) Else(65) Break(66) End if(67) Until energy = 1(68) END IF(69) END FOR(70) Keep the clusters with Clus threshold sessions(71) Plot Clusters on visualization panel according to cluster names visualize clusters in x y coordinates where different

cluster elements are represented in different shapes(72) For each cluster do(73) Find the URLrsquos which are visited more than Url count threshold in all the sessions of that cluster display URLs

accessed frequently in all the sessions of that cluster as user profiles(74) End For(75) For each agent agent

119895do

(76) Find the cluster 119862 to which agent119895belongs

(77) 119866(119909) = neighboring agents of agent119895in cluster 119862 within distance 119889best

(78) 119865(119866(119909)) = frequently preferred items by each agents in 119866(119909)

(79) Recommend most frequent 119868 items in 119865(119866(119909)) to user 119906 represented by agent119895

(80) End For(81) UNTIL there is no more data records(82) End

Algorithm 4 Bluegill-BestPredictions algorithm

different densities of prey The bluegill fish maximizes itsenergy in an optimized way that is more energy in lesstime These behaviors of bluegill fish can be used to givedynamic recommendations to users The proposed dynamicrecommender system gives users better recommendationsin less time that is lesser number of iterations withoutcompromising the quality in terms of coverage and precisionThe usage of intelligent software agents helps us to simulatethis artificial life The intelligent agents are highly flexible toadapt to the dynamic behavior of users

The Bluegill-BestPredictions algorithm described asAlgorithm 4 supports dynamic clustering of dynamic dataitems and provides dynamic predictions to users Fordynamic clustering [19] the complete data set need not bemade available initially The data is continuously collectedover time Whenever new data is added it requires costlyupdate of the clusters The new web click streams may bedue to change in userrsquos interest or due to the addition ordeletion of a web page from given website Application ofcooling algorithm and cluster formation algorithm results inthe visualization of initial clusters in the visualization paneland similar agents belonging to the same cluster Distancebetween the agents in the visualization panel represents thesimilarity between the users

In line 2 of Algorithm 4 the centroid of each clus-ter obtained as the output of cluster-creation algorithm ismapped as a lake In line 3 dataa represents the input dynamic

data and is mapped to the corresponding agent in lines 4 and6Thedataa is considered as the bluegill fishHere each clusteris considered as a lake with different density of prey and theagents in each cluster (lake) are considered as the prey In line9 the similarity of the agenta and Lakei is compared using (3)Here we use web session similarity [19 21] between URLs assimilarity measure based on the fact that an agent representsuser sessions

Web session similarity (vec119894 vec119895)

=

sum119860

119896119894=1 sum119860

119896119895=1 vec119894119896119894vec119895

119896119895119878119906

(119896119894 119896119895)

sum119860

119896119894=1 vec119894119896119894 sum119860

119896119895=1 vec119895119896119895

(3)

where vec119894represents the user session vectors that are

prepared in the preprocessing step and 119878119906(119894 119895) represents the

syntactic similarity between the 119894th and 119895th URLs Consider

119878119906

(119894 119895) = min(1

10038161003816100381610038161003816119901119894cap119901119895

10038161003816100381610038161003816

max (1max (1003816100381610038161003816119901119894

1003816100381610038161003816 10038161003816100381610038161003816119901119895

10038161003816100381610038161003816) minus 1)

) (4)

For a given URL Ui 119901119894represents the path traversed

from the root node which is the main page to the nodecorresponding to the 119894th URL |119901

119894| indicates the length of this

path [19]If the similarity of agenta and Lakei is greater than a

predefined threshold (Maxth) value we assume that bluegill

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 6: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

6 The Scientific World Journal

Notations used Pos(Agent119894) = position of agent on the visualization plane 119889th = distance threshold

Input Agent119894 Pos(Agent

119894)

Output Clusters 1198621 1198622 119862

119899

Steps(1) read the agent

119894

(2) assign the agent to cluster 119862119896

(3) for all agent 119860119895do

(4) if (Distance(119860119894 119860119895)) lt 119889th and 120590

119896

2lt 120590th2

(5) assign 119860119895to 119862119896

(6) Else(7) assign 119860

119895to 119862119896+1

(8) End if(9) End for(10) Return Clusters

Algorithm 3 Cluster-creation algorithm

stimulated annealing optimization where a system staterepresents feasible solutions energy represents costs changeof state represents the neighboring function temperaturerepresents control parameter and frozen state represents finalsolution Initially when the temperature is high it accepts badmoves This is because starting solution may not be too goodbecause of the difficulty of escaping from neighborhood Butwhen the temperature is low it almost rejects bad movesThebest ever result is kept as the final solution

The inputs to the cooling algorithm (Algorithm 2) areagents their position on the visualization panel and thetemperature length In Step (1) of Algorithm 2 an initialsolution Ω

0is generated randomly and assign this as the

final solution Ωlowast In Step (2) initial temperature value is

generated In line 5 a new solution is created by selectingneighboring agent that is similar to the solution Ω

lowast Inthis algorithm a cost function is calculated using cosinesimilarity of agents Here the cost function is tomaximize thecosine similarity (CS) of agents Cosine similarity betweenany two agents represents the similarity between users thatare mapped to that agent Cosine similarity can handlequalitative and quantitative data It can also handle highdimensional sparse data In Step (6) the change in the costfunction is calculated In line 7 it checks whether the changein cost function (energy) is decreased If energy is decreasedthen the new state is accepted (line 8) Otherwise the newstate with probability 119890

and(Δ119879) (line 10) is accepted In line

14 a geometric temperature reduction is used where 08 le

119903 le 099 To get good results 119879 should be adjusted in sucha way with small number of iterations at higher temperatureand larger number of iterations at low temperature For thefinal solution to be independent of the starting one the initialtemperature should be high enough When the temperatureis low there are no uphill moves When a given minimumvalue of temperature is reached or when a certain amountof looping has been performed without accepting a newsolution the algorithm is stopped (line 14)

The cooling algorithm applied is a greedy heuristicallowing the agents to move from current positions to thebest neighboring solution The cooling algorithm returns theagents with their new position on the visualization panel

Now similar agents lie close in the visualization panel Asthe distances between the agents on the visualization panelincrease their similarity decreases To avoid local minima itsupports uphill moves After applying the cooling functionagents converge to a frozen low energy state where similaragents are located nearer to each other The usage of coolingalgorithm reduces the number of iterations These agentswith their updated positions on the visualization panel afterapplying cooling algorithm are given as input to the cluster-creation algorithm

In cluster-creation algorithm (Algorithm 3)Distance (119860119894

119860119895) represents the distance between agents 119860

119894and 119860

119895on the

visualization panel 120590119896

2 represents the mean squared error oraverage dissimilarity between the cluster prototype and thedata records [21] Mean squared error is calculated using

120590119896

2=

sum119878(119894)m120594119896 119889

2119896119894

10038161003816100381610038161205941198961003816100381610038161003816

(2)

where 119878(119894) represents the 119894th user session and120594

119896represents the

set of sessions assigned to 119896th cluster 119889119896119894is the distance from

119878(119894) to 120594

119896 Initial clusters of agents are formed by grouping the

agents that lie within a distance threshold and whose meansquared error lies within 120590th

2 into a cluster (lines 4 to 6)Thus the agents within a cluster represent similar usersTheseclusters are given as input to the Bluegill-BestPredictionsalgorithm

In the Bluegill-BestPredictions algorithm (Algorithm 4)the foraging behavior of bluegill fish is used to give dynamicrecommendations to user A bluegill sunfish [23] eats a preyto maximize its energy intake At high density of prey thebluegill fish eats a diet made up of larger prey At a mediumdensity of prey bluegill fish eats large prey over a small preyAt this time bluegill fish becomes more selective That isinstead of time spent in capturing and eating smaller onesthe bluegill fish canmaximize its energy by eating larger onesAt a low density of prey the bluegill fish eats large mediumand small prey as they are encountered thus maximizingits energy intake The behavior of bluegill fish is dynamicbecause the way in which it catches its prey is different in

The Scientific World Journal 7

Input Extracted Clusters 119873 newdata data119886

Output Extracted Clusters 119872 ≪ 119873 Visualization of Clusters Recommendations to usersSteps(1) REPEAT(2) Map each cluster centroid as Lake and define 119896 = 1 Now N Lakes(3) If data

119886is not assigned an agent

(4) Then map agent119886to data

119886119886119892119890119899119905

119886represents the bluegill

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) End if(8) FOR 1 le 119894 le 119899

(9) IF Sim(agent119886 Lake

119894) gt Maxth where the 119894 ranges from 1 to 119873 bluegill enters the lake containing high density of prey

and identifies neighboring preys(10) Repeat(11) If Sim(agent

119886 neighbor agent

119896119886) m high range bluegill eats large size prey

(12) Then Eat neighbor agent119896119886

(13) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(14) Update energy = Sum(nosh119886)

(15) Increment 119896 by one(16) Else(17) Increment 119896 by one(18) End if(19) Until energy = 1(20) ELSE IF Sim(agent

119886 Lake

119894) lt Minth where 119894 ranges from 1 to 119873 bluegill enters the lake containing low density of preys

and identifies the neighboring preys(21) Repeat(22) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(23) Then Eat neighbor agent119896119886

(24) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(25) Update energy = Sum(nosh119886)

(26) Increment 119896 by one(27) Else(28) Break(29) End if(30) Until energy = 1(31) Repeat(32) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(33) Then Eat neighbor agent119896119886

(34) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(35) Update energy = Sum(nosh119886)

(36) Increment 119896 by one(37) Else(38) Break(39) End if(40) Until energy = 1(41) Repeat blue gill eats small size prey(42) Eat neighbor agent

119896119886

(43) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(44) Update energy = Sum(nosh119886)

(45) Increment 119896 by one(46) Until energy = 1(47) ELSE bluegill enters a lake containing medium density of prey and identifies neighboring preys(48) Repeat(49) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(50) Then Eat neighbor agent119896119886

(51) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(52) Update energy = Sum(nosh119886)

(53) Increment 119896 by one(54) Else(55) Break(56) End if

Algorithm 4 Continued

8 The Scientific World Journal

(57) Until energy = 1(58) Repeat(59) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(60) Then Eat neighbor agent119896119886

(61) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(62) Update energy = Sum(nosh119886)

(63) Increment 119896 by one(64) Else(65) Break(66) End if(67) Until energy = 1(68) END IF(69) END FOR(70) Keep the clusters with Clus threshold sessions(71) Plot Clusters on visualization panel according to cluster names visualize clusters in x y coordinates where different

cluster elements are represented in different shapes(72) For each cluster do(73) Find the URLrsquos which are visited more than Url count threshold in all the sessions of that cluster display URLs

accessed frequently in all the sessions of that cluster as user profiles(74) End For(75) For each agent agent

119895do

(76) Find the cluster 119862 to which agent119895belongs

(77) 119866(119909) = neighboring agents of agent119895in cluster 119862 within distance 119889best

(78) 119865(119866(119909)) = frequently preferred items by each agents in 119866(119909)

(79) Recommend most frequent 119868 items in 119865(119866(119909)) to user 119906 represented by agent119895

(80) End For(81) UNTIL there is no more data records(82) End

Algorithm 4 Bluegill-BestPredictions algorithm

different densities of prey The bluegill fish maximizes itsenergy in an optimized way that is more energy in lesstime These behaviors of bluegill fish can be used to givedynamic recommendations to users The proposed dynamicrecommender system gives users better recommendationsin less time that is lesser number of iterations withoutcompromising the quality in terms of coverage and precisionThe usage of intelligent software agents helps us to simulatethis artificial life The intelligent agents are highly flexible toadapt to the dynamic behavior of users

The Bluegill-BestPredictions algorithm described asAlgorithm 4 supports dynamic clustering of dynamic dataitems and provides dynamic predictions to users Fordynamic clustering [19] the complete data set need not bemade available initially The data is continuously collectedover time Whenever new data is added it requires costlyupdate of the clusters The new web click streams may bedue to change in userrsquos interest or due to the addition ordeletion of a web page from given website Application ofcooling algorithm and cluster formation algorithm results inthe visualization of initial clusters in the visualization paneland similar agents belonging to the same cluster Distancebetween the agents in the visualization panel represents thesimilarity between the users

In line 2 of Algorithm 4 the centroid of each clus-ter obtained as the output of cluster-creation algorithm ismapped as a lake In line 3 dataa represents the input dynamic

data and is mapped to the corresponding agent in lines 4 and6Thedataa is considered as the bluegill fishHere each clusteris considered as a lake with different density of prey and theagents in each cluster (lake) are considered as the prey In line9 the similarity of the agenta and Lakei is compared using (3)Here we use web session similarity [19 21] between URLs assimilarity measure based on the fact that an agent representsuser sessions

Web session similarity (vec119894 vec119895)

=

sum119860

119896119894=1 sum119860

119896119895=1 vec119894119896119894vec119895

119896119895119878119906

(119896119894 119896119895)

sum119860

119896119894=1 vec119894119896119894 sum119860

119896119895=1 vec119895119896119895

(3)

where vec119894represents the user session vectors that are

prepared in the preprocessing step and 119878119906(119894 119895) represents the

syntactic similarity between the 119894th and 119895th URLs Consider

119878119906

(119894 119895) = min(1

10038161003816100381610038161003816119901119894cap119901119895

10038161003816100381610038161003816

max (1max (1003816100381610038161003816119901119894

1003816100381610038161003816 10038161003816100381610038161003816119901119895

10038161003816100381610038161003816) minus 1)

) (4)

For a given URL Ui 119901119894represents the path traversed

from the root node which is the main page to the nodecorresponding to the 119894th URL |119901

119894| indicates the length of this

path [19]If the similarity of agenta and Lakei is greater than a

predefined threshold (Maxth) value we assume that bluegill

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 7: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

The Scientific World Journal 7

Input Extracted Clusters 119873 newdata data119886

Output Extracted Clusters 119872 ≪ 119873 Visualization of Clusters Recommendations to usersSteps(1) REPEAT(2) Map each cluster centroid as Lake and define 119896 = 1 Now N Lakes(3) If data

119886is not assigned an agent

(4) Then map agent119886to data

119886119886119892119890119899119905

119886represents the bluegill

(5) Else(6) Identify the agent

119886corresponding to data

119886

(7) End if(8) FOR 1 le 119894 le 119899

(9) IF Sim(agent119886 Lake

119894) gt Maxth where the 119894 ranges from 1 to 119873 bluegill enters the lake containing high density of prey

and identifies neighboring preys(10) Repeat(11) If Sim(agent

119886 neighbor agent

119896119886) m high range bluegill eats large size prey

(12) Then Eat neighbor agent119896119886

(13) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(14) Update energy = Sum(nosh119886)

(15) Increment 119896 by one(16) Else(17) Increment 119896 by one(18) End if(19) Until energy = 1(20) ELSE IF Sim(agent

119886 Lake

119894) lt Minth where 119894 ranges from 1 to 119873 bluegill enters the lake containing low density of preys

and identifies the neighboring preys(21) Repeat(22) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(23) Then Eat neighbor agent119896119886

(24) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(25) Update energy = Sum(nosh119886)

(26) Increment 119896 by one(27) Else(28) Break(29) End if(30) Until energy = 1(31) Repeat(32) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(33) Then Eat neighbor agent119896119886

(34) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(35) Update energy = Sum(nosh119886)

(36) Increment 119896 by one(37) Else(38) Break(39) End if(40) Until energy = 1(41) Repeat blue gill eats small size prey(42) Eat neighbor agent

119896119886

(43) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(44) Update energy = Sum(nosh119886)

(45) Increment 119896 by one(46) Until energy = 1(47) ELSE bluegill enters a lake containing medium density of prey and identifies neighboring preys(48) Repeat(49) If Sim(agent

119886 neighbor agent

119896119886) m high range blue gill eats large size prey

(50) Then Eat neighbor agent119896119886

(51) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(52) Update energy = Sum(nosh119886)

(53) Increment 119896 by one(54) Else(55) Break(56) End if

Algorithm 4 Continued

8 The Scientific World Journal

(57) Until energy = 1(58) Repeat(59) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(60) Then Eat neighbor agent119896119886

(61) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(62) Update energy = Sum(nosh119886)

(63) Increment 119896 by one(64) Else(65) Break(66) End if(67) Until energy = 1(68) END IF(69) END FOR(70) Keep the clusters with Clus threshold sessions(71) Plot Clusters on visualization panel according to cluster names visualize clusters in x y coordinates where different

cluster elements are represented in different shapes(72) For each cluster do(73) Find the URLrsquos which are visited more than Url count threshold in all the sessions of that cluster display URLs

accessed frequently in all the sessions of that cluster as user profiles(74) End For(75) For each agent agent

119895do

(76) Find the cluster 119862 to which agent119895belongs

(77) 119866(119909) = neighboring agents of agent119895in cluster 119862 within distance 119889best

(78) 119865(119866(119909)) = frequently preferred items by each agents in 119866(119909)

(79) Recommend most frequent 119868 items in 119865(119866(119909)) to user 119906 represented by agent119895

(80) End For(81) UNTIL there is no more data records(82) End

Algorithm 4 Bluegill-BestPredictions algorithm

different densities of prey The bluegill fish maximizes itsenergy in an optimized way that is more energy in lesstime These behaviors of bluegill fish can be used to givedynamic recommendations to users The proposed dynamicrecommender system gives users better recommendationsin less time that is lesser number of iterations withoutcompromising the quality in terms of coverage and precisionThe usage of intelligent software agents helps us to simulatethis artificial life The intelligent agents are highly flexible toadapt to the dynamic behavior of users

The Bluegill-BestPredictions algorithm described asAlgorithm 4 supports dynamic clustering of dynamic dataitems and provides dynamic predictions to users Fordynamic clustering [19] the complete data set need not bemade available initially The data is continuously collectedover time Whenever new data is added it requires costlyupdate of the clusters The new web click streams may bedue to change in userrsquos interest or due to the addition ordeletion of a web page from given website Application ofcooling algorithm and cluster formation algorithm results inthe visualization of initial clusters in the visualization paneland similar agents belonging to the same cluster Distancebetween the agents in the visualization panel represents thesimilarity between the users

In line 2 of Algorithm 4 the centroid of each clus-ter obtained as the output of cluster-creation algorithm ismapped as a lake In line 3 dataa represents the input dynamic

data and is mapped to the corresponding agent in lines 4 and6Thedataa is considered as the bluegill fishHere each clusteris considered as a lake with different density of prey and theagents in each cluster (lake) are considered as the prey In line9 the similarity of the agenta and Lakei is compared using (3)Here we use web session similarity [19 21] between URLs assimilarity measure based on the fact that an agent representsuser sessions

Web session similarity (vec119894 vec119895)

=

sum119860

119896119894=1 sum119860

119896119895=1 vec119894119896119894vec119895

119896119895119878119906

(119896119894 119896119895)

sum119860

119896119894=1 vec119894119896119894 sum119860

119896119895=1 vec119895119896119895

(3)

where vec119894represents the user session vectors that are

prepared in the preprocessing step and 119878119906(119894 119895) represents the

syntactic similarity between the 119894th and 119895th URLs Consider

119878119906

(119894 119895) = min(1

10038161003816100381610038161003816119901119894cap119901119895

10038161003816100381610038161003816

max (1max (1003816100381610038161003816119901119894

1003816100381610038161003816 10038161003816100381610038161003816119901119895

10038161003816100381610038161003816) minus 1)

) (4)

For a given URL Ui 119901119894represents the path traversed

from the root node which is the main page to the nodecorresponding to the 119894th URL |119901

119894| indicates the length of this

path [19]If the similarity of agenta and Lakei is greater than a

predefined threshold (Maxth) value we assume that bluegill

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 8: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

8 The Scientific World Journal

(57) Until energy = 1(58) Repeat(59) If Sim(agent

119886 neighbor agent

119896119886) mmid range blue gill eats medium size prey

(60) Then Eat neighbor agent119896119886

(61) nosh119886= Sim(agent

119886 neighbor agent

119896119886)

(62) Update energy = Sum(nosh119886)

(63) Increment 119896 by one(64) Else(65) Break(66) End if(67) Until energy = 1(68) END IF(69) END FOR(70) Keep the clusters with Clus threshold sessions(71) Plot Clusters on visualization panel according to cluster names visualize clusters in x y coordinates where different

cluster elements are represented in different shapes(72) For each cluster do(73) Find the URLrsquos which are visited more than Url count threshold in all the sessions of that cluster display URLs

accessed frequently in all the sessions of that cluster as user profiles(74) End For(75) For each agent agent

119895do

(76) Find the cluster 119862 to which agent119895belongs

(77) 119866(119909) = neighboring agents of agent119895in cluster 119862 within distance 119889best

(78) 119865(119866(119909)) = frequently preferred items by each agents in 119866(119909)

(79) Recommend most frequent 119868 items in 119865(119866(119909)) to user 119906 represented by agent119895

(80) End For(81) UNTIL there is no more data records(82) End

Algorithm 4 Bluegill-BestPredictions algorithm

different densities of prey The bluegill fish maximizes itsenergy in an optimized way that is more energy in lesstime These behaviors of bluegill fish can be used to givedynamic recommendations to users The proposed dynamicrecommender system gives users better recommendationsin less time that is lesser number of iterations withoutcompromising the quality in terms of coverage and precisionThe usage of intelligent software agents helps us to simulatethis artificial life The intelligent agents are highly flexible toadapt to the dynamic behavior of users

The Bluegill-BestPredictions algorithm described asAlgorithm 4 supports dynamic clustering of dynamic dataitems and provides dynamic predictions to users Fordynamic clustering [19] the complete data set need not bemade available initially The data is continuously collectedover time Whenever new data is added it requires costlyupdate of the clusters The new web click streams may bedue to change in userrsquos interest or due to the addition ordeletion of a web page from given website Application ofcooling algorithm and cluster formation algorithm results inthe visualization of initial clusters in the visualization paneland similar agents belonging to the same cluster Distancebetween the agents in the visualization panel represents thesimilarity between the users

In line 2 of Algorithm 4 the centroid of each clus-ter obtained as the output of cluster-creation algorithm ismapped as a lake In line 3 dataa represents the input dynamic

data and is mapped to the corresponding agent in lines 4 and6Thedataa is considered as the bluegill fishHere each clusteris considered as a lake with different density of prey and theagents in each cluster (lake) are considered as the prey In line9 the similarity of the agenta and Lakei is compared using (3)Here we use web session similarity [19 21] between URLs assimilarity measure based on the fact that an agent representsuser sessions

Web session similarity (vec119894 vec119895)

=

sum119860

119896119894=1 sum119860

119896119895=1 vec119894119896119894vec119895

119896119895119878119906

(119896119894 119896119895)

sum119860

119896119894=1 vec119894119896119894 sum119860

119896119895=1 vec119895119896119895

(3)

where vec119894represents the user session vectors that are

prepared in the preprocessing step and 119878119906(119894 119895) represents the

syntactic similarity between the 119894th and 119895th URLs Consider

119878119906

(119894 119895) = min(1

10038161003816100381610038161003816119901119894cap119901119895

10038161003816100381610038161003816

max (1max (1003816100381610038161003816119901119894

1003816100381610038161003816 10038161003816100381610038161003816119901119895

10038161003816100381610038161003816) minus 1)

) (4)

For a given URL Ui 119901119894represents the path traversed

from the root node which is the main page to the nodecorresponding to the 119894th URL |119901

119894| indicates the length of this

path [19]If the similarity of agenta and Lakei is greater than a

predefined threshold (Maxth) value we assume that bluegill

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 9: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

The Scientific World Journal 9

Input Cluster 1198621 agent

119896

Output Cluster 119862

Steps(1) Read agent

119896from cluster 119862

1to which it belongs

(2) Move the agent119896to cluster 119862

(3) Delete agent119896from 119862

1

(4) End

Algorithm 5 Eat algorithm

enters a lake containing high density of prey (line 9) Inhigh density of prey bluegill maximizes its energy by eatingonly large size prey Here agenta identifies the most similarneighboring agents (line 11) in that cluster until the stoppingcondition (line 18) The Eat algorithm (Algorithm 5) groupsall these similar agents into a new cluster

If the similarity of agenta and Lakei is less than thepredefined minimum threshold (Minth) value we assumethat bluegill enters a lake containing low density of prey (line20) In low density of prey instead of waiting for larger preybluegill maximizes its energy by eating any kind of prey asthey get nearer That is it does not maintain any priority fordiet It will eat medium size prey or small size prey or largesize prey as they come nearer to bluegill If the similarity ofagenta and its neighboring agent in the visualization panelis an element of high range (lines 22 to 25 assume bluegilleats large size prey) then the agenta and neighboring agentare grouped together Again the similarity between agent andthe next neighbor agent is compared If the similarity is anelement of midrange we assume bluegill eats medium sizeprey (lines 33 to 36) or if the similarity is an element of lowrange we assume bluegill eats small size prey (lines 42 to 45)This process of eating is continued until bluegill gets sufficientenergy for its survival

If the similarity of agenta and Lakei is betweenMinth andMaxth we assume bluegill enters a lake containing mediumdensity of prey (line 47) In this situation bluegill eats largeand medium size preys That is instead of wasting time oncapturing small size prey it prefers to capture larger andmedium size prey Lines 48 to 67 perform this behavior ofbluegill fish That is here agenta attracts high and mediumsimilar agents

Thesemovements of agents result in a newgroupof agentsor merging or splitting of some clusters or even deletionof some clusters The agents with their new positions arevisualized in visualization panel (line 71) In line 73 all theURLs that are visited more than a predefined threshold valueUrl count threshold are displayed for each valid cluster Line77 assigns the set of neighboring agents of agent

119895that lies

within a distance 119889best to119866(119886) Line 78 assigns the frequentlypreferred items by all the agents in 119866(119909) to 119865(119866(119886)) Inline 79 the most frequent 119868 items in the set 119865(119866(119909)) aregiven as recommendations to user 119906 represented by theagent agent

119895 This kind of recommendations overcomes the

overspecialization problem in many traditional recommen-dation systemsThe recommendations given by the proposed

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

00000

2

4

6

8

0 0 2 0 4 0 6 0 8 1

Figure 2 Initial position of agents

recommender system include variety in recommendationsThat is here recommendations are given not only based onthat user profile of users but also based on the preferencesof neighboring users These recommendations can be usedfor personalizing a website thereby improving customerrelationship management (CRM)

Here the performance of the proposed WebBlue-gillRecom-annealing algorithm is compared with the tra-ditional collaborative filtering based recommender systemThe performances are evaluated in terms of coverage pre-cision and 1198651 measure The experimental results show thatthe proposedWebBluegillRecom-annealing dynamic recom-mender system performs better recommendations than thetraditional collaborative systems

5 Experimental Results

In Section 5we start with the 2D visualization of agents on thevisualization panelThenwe proceedwith the visualization ofclusters of agents obtained by the cluster-creation algorithmand Bluegill-BestPredictions algorithmThen we show inter-and intracluster similarity measures of the obtained clustersThen we proceed with the recommendations given to theusers And finally we compare the quality of the proposeddynamic recommender system with the traditional collabo-rative filtering techniques

The proposed WebBluegillRecom-annealing dynamicrecommender system is implemented on high dimensionalreal life data example It is implemented using Java agentdevelopment environment (JADE) Figure 2 shows the ran-dom placement of agents in the visualization panel

In Figure 2 visualization panel is a two-dimensionalplane represented by 119909-119910 coordinates The 119909-axis and 119910-axisvalues range from 0 to 1 Figure 3 shows the position of agentson the visualization panel after applying cooling algorithm

In Figure 3 similar agents lie nearer in the visualizationpanel To get better neighboring agents a slow coolingmethod is adopted That is the value of 119879 is reduced slowlyHere a geometric temperature reduction is used Here 119903 =

096 (line 14 of Algorithm 2) and TL = 0005 Values are

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 10: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

10 The Scientific World Journal

0

02

04

06

08

1

0 02 04 06 08 1x coordinate

yco

ordi

nate

Figure 3 New position of agents after applying cooling algorithm

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7Cluster 8

Cluster 9Cluster 10Cluster 11Cluster 12

x coordinate

yco

ordi

nate

0

2

4

6

8

Figure 4 Clusters of agents obtained after applying cluster-creationalgorithm

chosen by trial and error Figure 4 shows the clusters of agentsafter applying cluster-creation algorithm

Here the neighboring agents that lie within a distancethreshold 119889th = 015 and when the average dissimilaritybetween the clusters and their member agents is less than120590119896

2= 0006 are moved into the same cluster Values are set

by trial and error Agents in the same clusters represent theusers with similar behavior The initial clusters are given asinput to the Bluegill-BestPredictions algorithm

Figure 5 shows the clusters of agents obtained afterapplying Bluegill-BestPredictions algorithm In the Bluegill-BestPredictions algorithm for higher density cluster theMaxth value ranges from 075 to 10 For lower density clusterwe set the Minth value as 040 In medium density clusterthe similarity lies between 040 and 075 In high densitycluster high range means similarity above 75 of MaxthIn lower density cluster high range means similarity above75 of Minth mid range means similarity between 45

0

02

04

06

08

1

0 02 04 06 08 1

Cluster 1Cluster 2Cluster 3Cluster 4

Cluster 5Cluster 6Cluster 7

x coordinate

yco

ordi

nate

Figure 5 Clusters of agents obtained after applying Bluegill-BestPredictions algorithm

and 75 of Minth and low range means similarity below45 of Minth In medium density cluster high range meanssimilarity above 75 of obtained medium density clustersimilarity value Here mid range lies within 45 and 75 ofmediumdensity cluster similarity valueThese parameters areset by trial and error method In Figure 5 Clus threshold =10 and Url count threshold = ICTF lowast Clus threshold [19]where ICTF denotes item count threshold frequency [19]that represents the minimum number of URL patterns thatrepresent that session Here ICTF = 010 An ICTF value isa real number and it lies between 0 and 1 Clus thresholdrepresents the minimum cluster size required for a validcluster

Quality of the obtained clusters can bemeasured in termsof intracluster similarity and intercluster similarity For betterclusters intracluster similarity value should always be higherthan intercluster similarity value Intracluster similarity valuerepresents the similarity between the elements of that clusterIntercluster similarity represents the similarity between theelements of a cluster with the members of the other clus-ter Table 1 represents intracluster similarity and interclustersimilarity of obtained clusters using WebBluegillRecom-annealing algorithm

From Table 1 we can observe that better clusters areobtained by optimizing the clusters generated by cluster-creation algorithmby the Bluegill-BestPredictions algorithmFrom this table we can notice that whenever intraclustersimilarity increases intercluster similarity decreases This isa sign of good quality clusters Table 2 shows the sam-ple user profiles generated by WebBluegillRecom-annealingalgorithm

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 11: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

The Scientific World Journal 11

Table 1 Average results of 10 runs of WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

Cluster-creation algorithm Bluegill-BestPredictions algorithmIntracluster similarity Intercluster similarity Run Intracluster similarity Intercluster similarity0437 (0014) 0014 (0001) 10 0468 (0011) 0009 (0003)0409 (0019) 0019 (0003) 5 0399 (0019) 0010 (0001)

Table 2 Sample user profiles generated by WebBluegillRecom-annealing algorithm with ICTF = 01 and Clus threshold = 10

URL frequency URLProfile 1

04 roshnicoursescse309noteshtml039 roshnicoursescse309slideshtml035 roshnicoursescse312noteshtml

Profile 3042 miacoursescse312slideshtml041 miacoursescse312noteshtml039 miacoursescse312assignmentshtml024 miacoursescse312018 miacoursescse312quizhtml012 miacoursescse312internalshtml011 miacoursescse312proj

Profile 4041 nehacoursescse475037 nehacoursescse312036 nehacoursescse309slideshtml024 nehacoursescse475noteshtml

Table 3 Sample recommendations given to a user by theWebBluegillRecom-annealing dynamic recommender system with119868 = 6

User rarr mia

coursescse309noteshtmlcoursescse309slideshtmlcoursescse312slideshtmlcoursescse312noteshtml

coursescse312assignmentshtmlcoursescse475

Table 2 shows some user profiles in cluster 6 representinga userrsquos interest after applying WebBluegillRecom-annealingalgorithm WebBluegillRecom-annealing system gives thebest recommendations to a user with 119889best = 004 (line 68of Algorithm 4) Next time mia logs onto the website thefollowing recommendations are given in Table 3

Table 3 shows that recommendations are given to a usernot only based on that userrsquos preference but also based on theother usersrsquo (or agents) items of interest that lie within thedistance 119889best in the same cluster Here the most frequent119868 = 6 items are selected The recommendations madeby the WebBluegillRecom-annealing dynamic recommendersystem contain varietyThat is the recommendations given toa user are not limited to that userrsquos interest but also include theitems more frequently liked by other users The goodness of

these recommendations is evaluated in terms of coverage andprecision [18] Here precision represents a summary profilersquositems which are all correct or included in the original inputdata that is they include only the true data items

Prec119894119895

=

119904119895

cap 119901119894

119901119894

(5)

Coverage represents summary profilersquos items which arecomplete compared to the data that is summarized that isthey include all the data items

Cov119894119895

=

119904119895

cap 119901119894

119904119895

(6)

Here 119904119895is a summary of input sessions and 119901

119894represents

discovered mass profile A precision value of 1 indicates thatevery recommended item is an element of the original truthset A coverage value of 1 indicates that all items in theoriginal truth set are recommended Efficiency recommendersystem depends on how well it can balance the precisionand coverage 119888 To calculate coverage and precision thegenerated user profiles and the input user sessions areused Here the precision coverage 1198651 measure and varietyin recommendations of the proposed WebBluegillRecom-annealing dynamic recommender system are compared withthe traditional collaborative filtering system Traditional CFapproach is selected as baseline to evaluate the performanceof the proposed recommender system because both ourapproach and CF approach use nearest neighbor propertyIn CF approach if a user 119899 is similar to user 119906 then 119906 isconsidered as the neighbor of 119899 In CF approach to generate aprediction for an item 119894 it analyzes the ratings for 119894 from usersin 119906rsquos neighborhood using Pearson correlation [1]

In Figure 6 the proposed WebBluegillRecom-annealingdynamic recommender system is compared with the tradi-tional collaborative filtering system on precision for different119868 values

From Figure 6 we can observe that the precision val-ues forWebBluegillRecom-annealing dynamic recommendersystem are slightly better than the collaborative filteringsystems for small values of 119868 Better recommendations areobtained when 119868 = 5 This indicates that the recommen-dations given by WebBluegillRecom-annealing system arean element of the original input datasets when comparedto the collaborative filtering system In Figure 7 the pro-posed WebBluegillRecom-annealing dynamic recommendersystem is comparedwith the traditional collaborative filteringsystem on coverage

From Figure 7 we can observe that as 119868 increasesthe coverage values also increase for WebBluegillRecom-annealing dynamic recommender system and collaborative

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 12: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

12 The Scientific World Journal

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 6 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 248users

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 7 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 248users

filtering systems Moreover for a particular value of 119868 as theiteration increases there is an improvement in coverage val-ues forWebBluegillRecom-annealing dynamic recommendersystem compared with the collaborative filtering systemWebBluegillRecom-annealing dynamic recommender sys-tem has much better values for coverage than the collabo-rative filtering system for small values of 119868 But for highervalues of 119868 there is only a slight improvement in coveragevalue compared to the collaborative filtering systemThe rec-ommendations given by the WebBluegillRecom-annealingsystem contain more elements in the original input datasetsthan the collaborative filtering system

Balancing of precision and coverage can be representedusing 1198651 measure [19] Higher values for 1198651 measure repre-sent more balanced coverage and precision In Figure 8 theproposed WebBluegillRecom-annealing system is comparedwith the traditional collaborative filtering system on 1198651

measure

1198651 119894119895 =

2 (cov119894119895

lowast prec119894119895)

cov119894119895

+ prec119894119895

(7)

From Figure 8 we may observe that the 1198651 measureis higher for WebBluegillRecom-annealing system when

0

02

04

06

08

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CF I = 5

CF I = 25

CF I = 10

WR I = 5

WR I = 10

WR I = 25

Figure 8 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on 1198651 measure 248users

00102030405

0 50 100 150 200 250 300 350 400 450 500

Prec

ision

Iteration

CFWR

Figure 9 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision 119868 = 5248 users

compared to collaborative filtering system That is bet-ter balancing of coverage and precision is possible inWebBluegillRecom-annealing system when compared tocollaborative filtering systems In the WebBluegillRecom-annealing system the same items are not recommended tousers again and again It includes variety in recommenda-tions

Figure 9 shows the comparison of the WebBlue-gillRecom-annealing system with traditional CF systems onprecision when 119868 = 5

From Figure 9 we can observe that the proposed recom-mender system can face the challenge of reducing the numberof iterations required in comparison with traditional CF Forthe proposedWebBluegillRecom-annealing system when thenumber of iterations increases the precision also increasesAt the same time for a particular number of iterations theprecision provided by the proposed method is better thanthe precision achieved for the same number of iterations inCF systemsThat is the required precision could be achievedwith less number of iterations required for CF methodThe annealing approach used in the algorithm reduces thenumber of iterations actually required to achieve a particularprecision To attain this precision traditional CF needs

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 13: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

The Scientific World Journal 13

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

Cov

erag

e

Iteration

CFWR

Figure 10 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage 119868 = 5248 users

0

01

02

03

04

05

0 50 100 150 200 250 300 350 400 450 500

F1 m

easu

re

Iteration

CFWR

Figure 11 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on1198651measure 119868 = 5248 users

a higher number of iterations Figure 10 shows the com-parison of the WebBluegillRecom-annealing system withtraditional CF systems on coverage when 119868 = 5

From Figure 10 we can observe that for a particularnumber of iterations the coverage provided by the proposedmethod is better than the coverage achieved for the samenumber of iterations in CF systems Figure 11 shows thecomparison of theWebBluegillRecom-annealing systemwithtraditional CF systems on 1198651 measure when 119868 = 5

From Figure 11 we can observe that the proposed methodgives better 1198651 measure when compared to traditional CFsystem in less number of iterations That is to attain aparticular 1198651 measure the traditional CF system needs moreiterations Figure 12 shows the number of times each item isrecommended for a specific user over 10 different runs

Variety means number of distinct recommended items[19] In Figure 12 119909-axis represents the item ID and 119910-axis represents the frequency of recommendations for aparticular item From Figure 12 we can observe that whiletraditional CF systems kept recommending the same itemsWebBluegillRecom-annealing system adds variety withoutlosing coverage precision and 1198651 measure

02468

10

10 30 50 70 90

Freq

uenc

y

Item ID

CFWR

Figure 12 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on variety averagedover 10 different runs per 1 active user for 119868 = 5 recommendationsat iteration 100 248 users

To summarize Figures 6 to 12 show that in theWebBlue-gillRecom-annealing system as the iteration increases thereis an increase in similarity of neighbors resulting in betterrecommendations As the number of iterations increasesbetter recommendations are given by theWebBluegillRecom-annealing dynamic recommender system than the collabora-tive filtering system WebBluegillRecom-annealing dynamicrecommender system gives varieties in recommendationsthereby overcoming overspecialization in recommendationsResults of returning items that are too similar to the previ-ously rated items by the user are called overspecializationThe proposed Bluegill-BestPredictionsalgorithm used in theproposed recommender system gives dynamic recommenda-tions each time to a user That is it recommends a varietyof new items for the user Hence in the proposed systemrecommendations are given in accordance with the usersrsquovarying interestsThese improvements are due to the dynamicnature of foraging behavior of agents that forms dynamicneighborhood More variety in recommendations helps thecustomers to review a larger number of items before buyingThese interactions encourage the customers to visit the webpage more frequently thus improving customer relationshipmanagement Since the proposed method gives wide varietyof recommendations in comparison with the traditional CFmethod it lures or encourages the customers to visit morefrequently the website enriching the relationship with thecustomer Since a larger number of recommendations aregiven customer interacts with the website more frequentlyThis may drive sales growth too In turn it requires moreinformation to be provided by the business communityregarding the product to the customers That is it improvescustomer relationship management (CRM)

Figure 13 shows the comparison of the proposedWebBluegillRecom-annealing system and collaborativefiltering system on precision for six months onvarying number of users It is based on the results ofrecommendations given to users In Figure 13 the primaryhorizontal axis represents the months the primary verticalaxis represents the number of users that access the websitein each month and the secondary vertical axis representsthe precision of recommendations given to users WR-low

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 14: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

14 The Scientific World Journal

0

02

04

06

08

0

50

100

150

200

250

300

Prec

ision

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 13 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on precision fordifferent volume of users in different months

and CR-low represent the lowest value of precision obtainedin a month by evaluating the recommendations given tousers in that month by the WebBluegillRecom-annealingdynamic recommender system and the collaborative filteringsystem respectively WR-high and CR-high representthe highest value of precision obtained in a month byevaluating the recommendations given to users in thatmonth by the WebBluegillRecom-annealing dynamicrecommender system and the collaborative filtering systemrespectively WR-close and CF-close represent the averagevalue of precision obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing system and the collaborativefiltering system respectively

From Figure 13 we can observe that theWebBluegillRecom-annealing system has higher valuesof precision when compared to collaborative filtering systemIn WebBluegillRecom-annealing system the precision isnot that much affected by the number of users But in thecollaborative system there is a reduction in precision valuewith the increase in the number of users That is scalabilityis better supported by the proposed WebBluegillRecom-annealing system Figure 14 represents the comparison ofWebBluegillRecom-annealing system with the standardcollaborative filtering system on coverage for differentnumber of users in different months

In Figure 14 WR-high and CR-high represent the highestvalue of coverage obtained in a month by evaluating therecommendations given to users in that month by theWebBluegillRecom-annealing dynamic recommender sys-tem and the collaborative filtering system respectively WR-close and CF-close represent the average value of coverageobtained in a month by evaluating the recommendationsgiven to users in that month by the WebBluegillRecom-annealing dynamic recommender system and the collab-orative filtering system respectively WR-low and CR-lowrepresent the lowest value of precision obtained in a

0

02

04

06

08

0

50

100

150

200

250

300

Cov

erag

e

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

r

Volu

me o

f use

rs

Volume of users WR-lowWR-high WR-closeCF-low CF-highCF-close

Figure 14 WebBluegillRecom-annealing dynamic recommendersystem (WR) is compared to standard collaborative filtering (CF)systemon coverage for different volume of users in differentmonths

0

02

04

06

08

1

0

50

100

150

200

250

300

F1 m

easu

re

Volu

me o

f use

rs

Volume of users

WR-low

WR-highWR-closeCF-low

CF-highCF-close

June July

Augu

st

Sept

embe

r

Oct

ober

Nov

embe

r

Dec

embe

rFigure 15 WebBluegillRecom-annealing system (WR) is comparedto standard collaborative filtering (CF) system on coverage fordifferent volume of users in different months

month by evaluating the recommendations given to usersin that month by the WebBluegillRecom-annealing systemand the collaborative filtering system respectively FromFigure 14 we can observe that the coverage is higher forWebBluegillRecom-annealing dynamic recommender sys-tem In the WebBluegillRecom-annealing system coverageof the recommendations is not that much affected by theincrease in the number of users when compared to collab-orative filtering systems Figure 15 shows the comparison ofthe proposed recommender system and collaborative filteringsystem on 1198651 measure for six months

In Figure 15 we can observe that 1198651 measure is higher forthe proposedWebBluegillRecom-annealing dynamic recom-mender algorithmWe can also observe that better balancingcoverage and precision are possible even though the numberof users is increased

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 15: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

The Scientific World Journal 15

To summarize Figures 13 14 and 15 show that WebBlue-gillRecom-annealing dynamic recommender system has bet-ter scalability than the traditional collaborative filteringsystems The ldquolowrdquo value may be due to a sudden rare moveby the user Even in these rare moves WebBluegillRecom-annealing dynamic recommender system has slightly bettervalues for precision coverage and 1198651 measure than thecollaborative filtering systemsWebBluegillRecom-annealingdynamic recommender system includes variety in recom-mendations without compromising quality in terms of cov-erage precision 1198651 measure and scalability These improve-ments are due to the dynamic nature of foraging behaviorof bluegill agents which attracts (eats) similar agents to itresulting in a better neighborhood These recommendationscan be used for personalizing or customizing a websitethereby increasing customer relationship management

6 Conclusion

In this paper a new dynamic recommender system calledWebBluegillRecom-annealing system is presented The pro-posed system is based on the swarm intelligence that gainsinspiration from the dynamic foraging behavior of bluegillfish The artificial life is simulated using software agentsWebBluegillRecom-annealing dynamic recommender sys-tem is capable of handling dynamic data It uses an anneal-ing approach to identify the initial best neighborhood foragents thereby reducing the number of iterations before con-vergence The WebBluegillRecom-annealing recommendersystem includes variety in recommendations thereby over-coming the overspecialization problem in some traditionalrecommendation systems The results obtained are com-pared with the traditional collaborative filtering systemThe experimental results show that the WebBluegillRecom-annealing recommender system can better handle dynamicbehavior and seasonality in usersrsquo interest than the traditionalcollaborative filtering systemsThe experimental results showthat the recommendations given by WebBluegillRecom-annealing system have better values for precision cover-age and 1198651 measure than the collaborative filtering sys-tem The proposed dynamic recommender system reducesthe number of iterations before convergence when com-pared to traditional CF recommender systems Moreoverin WebBluegillRecom-annealing system the quality of rec-ommendations is not much affected by the increase inthe number of users That is WebBluegillRecom-annealingsystem has improved scalability compared with the tradi-tional collaborative filtering system The recommendationsgiven by the WebBluegillRecom-annealing system can beused for customizing a website thereby improving customerrelationshipmanagement (CRM)Themain limitation of thismethod is that several parameters have to be set a priori Inthe future this work can be extended to track evolving userprofiles

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] J Ben SchaferD Frankowski JHerlocker and S Sen ldquoCollabo-rative filtering recommender systemsrdquo inTheAdaptiveWeb vol4321 of LectureNotes in Computer Science pp 291ndash324 SpringerBerlin Germany 2007

[2] L Dai W Wang and W Shu ldquoAn efficient web usage min-ing approach using chaos optimization and particle swarmoptimization algorithm based on optimal feedback modelrdquoMathematical Problems in Engineering vol 2013 Article ID340480 8 pages 2013

[3] M Celik D Karaboga and F Koylu ldquoArtificial bee colony dataminer (ABC-Miner)rdquo in Proceedings of the International Sym-posium on Innovations in Intelligent Systems and Applications(INISTA rsquo11) pp 96ndash100 IEEE Istanbul Turkey June 2011

[4] M Balabanovic ldquoAn adaptive web page recommendation ser-vicerdquo in Proceedings of the 1st International Conference onAutonomous Agents (AGENTS rsquo97) pp 378ndash385 ACM Marinadel Rey Calif USA February 1997

[5] M J Pazzani ldquoFramework for collaborative content-based anddemographic filteringrdquo Artificial Intelligence Review vol 13 no5 pp 393ndash408 1999

[6] O Nasraoui and C Petenes ldquoCombining web usagemining andfuzzy inference for website personalizationrdquo in Proceedings ofthe KDD Workshop on Web mining as a Premise to Effectiveand Intelligent Web Applications (WebKDD rsquo03) pp 37ndash46Washington DC USA 2003

[7] T Berners-Lee J Hendler and O Lassila ldquoThe semantic webrdquoScientific American vol 284 no 5 pp 34ndash43 2001

[8] M Chau D Zeng H Chen M Huang and D HendriawanldquoDesign and evaluation of a multi-agent collaborative Webmining systemrdquoDecision Support Systems vol 35 no 1 pp 167ndash183 2003

[9] M Dorigo and T Sttzle Ant Colony Optimization MIT Press2004

[10] N Labroche N Monmarche and G Venturini ldquoAntclust antclustering and web usage miningrdquo in Genetic and EvolutionaryComputationmdashGECCO 2003 vol 2723 of Lecture Notes inComputer Science pp 25ndash36 Springer Berlin Germany 2003

[11] J Kennedy and R Eberhart ldquoParticle swarm optimizationrdquoin Proceedings of the IEEE International Conference on NeuralNetworks vol 4 pp 1942ndash1948 December 1995

[12] I F Moawad H Talha E Hosny and M Hashim ldquoAgent-based web search personalization approach using dynamic userprofilerdquo Egyptian Informatics Journal vol 13 no 3 pp 191ndash1982012

[13] E Saka and O Nasraoui ldquoSimultaneous clustering and visual-ization of web usage data using swarm-based intelligencerdquo inProceedings of the 20th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo08) pp 539ndash546 November2008

[14] R Cooley B Mobasher and J Srivastava ldquoWeb miningInformation and pattern discovery on the World Wide Webrdquoin Proceedings of the 9th IEEE International Conference on Toolswith Artificial Intelligence (ICTAI rsquo97) pp 558ndash567 November1997

[15] O Nasraoui R Krishnapuram and A Joshi ldquoMining webaccess logs using a relational clustering algorithm based on arobust estimatorrdquo in Proceedings of the 8th International WorldWideWeb Conference (WWW rsquo99) pp 40ndash41 Toronto CanadaMay 1999

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 16: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

16 The Scientific World Journal

[16] ONasraoui R KrishnapuramH Frigui andA Joshi ldquoExtract-ing web user profiles using relational competitive fuzz cluster-ingrdquo International Journal on Artificial Intelligence Tools vol 9no 4 pp 509ndash526 2000

[17] J Srivastava R Cooley M Deshpande and P-N Tan ldquoWebusagemining discovery and applications of usage patterns fromweb datardquo ACM SIGKDD Explorations Newsletter vol 1 no 2pp 12ndash23 2000

[18] O Nasraoui M Soliman E Saka A Badia and R Germain ldquoAWeb usage mining framework for mining evolving user profilesin dynamic web sitesrdquo IEEE Transactions on Knowledge andData Engineering vol 20 no 2 pp 202ndash215 2008

[19] E Saka and O Nasraoui ldquoImprovements in flock-based col-laborative clustering algorithmsrdquo in Computational IntelligenceCollaboration Fusion and Emergence vol 1 of Intelligent SystemsReference Library pp 639ndash672 Springer Berlin Germany2009

[20] S Kirkpatrick J Gelatt and M P Vecchi ldquoOptimization bysimulated annealingrdquo Science vol 220 no 4598 pp 671ndash6801983

[21] O Nasraoui and R Krishnapuram ldquoOne step evolutionarymining of context sensitive associations and web navigationpatternsrdquo in Proceedings of the SIAM Conference on DataMining pp 531ndash547 Arlington Va USA April 2002

[22] E Saka and O Nasraoui ldquoOn dynamic data clustering andvisualization using swarm intelligencerdquo in Proceedings of the26th International Conference on Data Engineering Workshops(ICDEW rsquo10) pp 337ndash340 March 2010

[23] httpbcswhfreemancomthelifewirecontentchp535302002html

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Page 17: Research Article A Dynamic Recommender System for Improved ...downloads.hindawi.com/journals/tswj/2015/193631.pdf · Research Article A Dynamic Recommender System for Improved Web

Submit your manuscripts athttpwwwhindawicom

Computer Games Technology

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Distributed Sensor Networks

International Journal of

Advances in

FuzzySystems

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014

International Journal of

ReconfigurableComputing

Hindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Applied Computational Intelligence and Soft Computing

thinspAdvancesthinspinthinsp

Artificial Intelligence

HindawithinspPublishingthinspCorporationhttpwwwhindawicom Volumethinsp2014

Advances inSoftware EngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Journal of

Computer Networks and Communications

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation

httpwwwhindawicom Volume 2014

Advances in

Multimedia

International Journal of

Biomedical Imaging

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

ArtificialNeural Systems

Advances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Computational Intelligence and Neuroscience

Industrial EngineeringJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Human-ComputerInteraction

Advances in

Computer EngineeringAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014