Master thesis

33,899 views

Published on

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
33,899
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
27
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Master thesis

  1. 1. The Department of Informatics The University of Fribourg and der Philosophisch-naturwissenschaftlichen Faculty at der Universitat Bern Master Thesis Go Green: Getting green through Social Networking Web Apps Written by Dhara Shah 16 April - 2013
  2. 2. Supervised by Prof. Dr. Rolf Ingold Department of Computer Science,University of Fribourg Prof. Dr. Jean Hennebert Department of Computer Science,University of Fribourg Prof. Dr. Elena Mugellini Department of Computer Science,University of Friboug Prof. Dr. Omar Abou Khaled Department of Computer Science,University of Friboug ii
  3. 3. iii
  4. 4. Contents Contents Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dedication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Introduction 1.1 Objective . 1.2 Purpose . . 1.3 Background 1.4 Scope of the 2 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 5 5 7 2 State of the Art 2.1 Gamification . . . . . . . . . . . . . . . . . . . . . . 2.1.1 Game Elements . . . . . . . . . . . . . . . . 2.1.2 Game Design Techniques . . . . . . . . . . . 2.1.3 Non-Game Context . . . . . . . . . . . . . . 2.1.4 Gamification in Context . . . . . . . . . . . 2.1.5 Serious Game . . . . . . . . . . . . . . . . . 2.2 Recommender Systems . . . . . . . . . . . . . . . . 2.2.1 State of the Art: Recommender Systems . . 2.3 Social Network Platform . . . . . . . . . . . . . . . 2.3.1 State of the Art Social Network Platform . . 2.3.2 Facebook App Architecture . . . . . . . . . 2.4 NLI/NLP . . . . . . . . . . . . . . . . . . . . . . . 2.5 Carbon Footprint . . . . . . . . . . . . . . . . . . . 2.5.1 State of the art: Carbon Footprint Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 8 9 10 10 11 11 11 13 16 16 16 19 22 23 3 Master Thesis Contribution 3.1 Concept . . . . . . . . . . . . . . . . . . . . . . 3.1.1 What is Go Green Model? . . . . . . . . 3.1.2 Overview of Go Green Model . . . . . . 3.1.3 Scenario Explanation of Go Green Model 3.1.4 Use Case Diagram . . . . . . . . . . . . 3.1.5 ER-Diagram . . . . . . . . . . . . . . . . 3.2 Gamification and Go Green . . . . . . . . . . . 3.2.1 Concept of Go Green for Gamification . 3.2.2 Game Elements in Go Green . . . . . . . 3.2.3 Game Design in Go Green . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 25 25 26 27 29 29 29 29 31 31 . . . . . . . . . . . . Thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
  5. 5. List of Figures 3.3 3.4 3.5 3.6 3.2.4 Non Game context in Go Green . . . . . . . . . . . . . . . . . . 3.2.5 Why Go Green is not Serious Game – My take . . . . . . . . . . Recommender System model for Go Green Model . . . . . . . . . . . . 3.3.1 Why Recommender Systems for Go Green Model . . . . . . . . 3.3.2 Correlation Based User-Suggestion Model . . . . . . . . . . . . 3.3.3 Collaborative Filtering algorithm implementation for Go Green 3.3.4 Regularized Cost Function . . . . . . . . . . . . . . . . . . . . . 3.3.5 Regularized Gradient . . . . . . . . . . . . . . . . . . . . . . . . Social Network Platform . . . . . . . . . . . . . . . . . . . . . . . . . . Use of NLI/NLP in Go Green Model . . . . . . . . . . . . . . . . . . . 3.5.1 QR Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . My take on: Carbon Footprint Analysis . . . . . . . . . . . . . . . . . . 3.6.1 Proposed Model of Carbon Accounting Analysis with Go Green 4 Work Evaluation 4.1 Feasibility evaluation of the concept . . . . . . . . . . . . . . . . . . 4.2 Mock Representation . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Project Time line . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Evaluation of Recommender Systems . . . . . . . . . . . . . . . . . 4.4.1 Cost Function value . . . . . . . . . . . . . . . . . . . . . . 4.4.2 Recommendations . . . . . . . . . . . . . . . . . . . . . . . . 4.4.3 Test Results of Latency of Collaborative Filtering Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 34 35 35 36 37 43 44 44 45 45 46 48 . . . . . . . 50 50 52 52 52 54 56 60 5 Discussions and Conclusion 64 5.1 Project Experience . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 5.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 6 Future Recommendations and Work 66 6.1 Future Work and recommendations . . . . . . . . . . . . . . . . . . . . . 66 List of Figures 1.1 1.2 1.3 1.4 Environmental Dashboard Energy Jar . . . . . . . . . Energy Battle . . . . . . . Fogg’s behaviour model . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6 6 7 2.1 2.2 2.3 Cityville by Zygna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nike+ Application of Nike . . . . . . . . . . . . . . . . . . . . . . . . . . Serious Game Model [1] . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 10 12 v . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
  6. 6. List of Figures 2.4 2.5 2.6 2.7 Recommender System Model . . . . . . . . . . . . . . . Characteristics of Social Network Sites is taken from [2] Time line of Social Network Sites is taken from [3] . . . Facebook Architecture is taken from [4] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 17 18 20 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 Go Green Model Overview . . . . . . . . . . . . . . . . . . . Proposed Use Case Diagram Green World . . . . . . . . . . Proposed Entity-Relationship Diagram . . . . . . . . . . . . Go Green Growth Model Icons . . . . . . . . . . . . . . . . . Go Green Growth Model Icons . . . . . . . . . . . . . . . . . Go Green App Icon . . . . . . . . . . . . . . . . . . . . . . . Collaborative Filtering in Recommender Systems[5] . . . . . Heroku Dashboard . . . . . . . . . . . . . . . . . . . . . . . Heroku Resources and Database Management on Dashboard QR Code Go Green . . . . . . . . . . . . . . . . . . . . . . . QR Code Go Green . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 29 30 32 33 33 37 44 45 46 47 4.1 4.2 4.3 4.4 4.5 4.6 4.7 Percentage distribution of Social Networking Site as per survey . . . . . . Activity distribution on Online Games by Students as per survey . . . . Willingness of Students to play Go Green as per survey . . . . . . . . . . Go Green Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Project Time line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Latency Output of Recommender Collaborative Filtering Algorithm . . . Outliers pointed out in Latency Output of Recommender Collaborative Filtering Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Throughput calculation of the θ0 and θ1 . . . . . . . . . . . . . . . . . . . Outliers pointed out in Latency Output of Recommender Collaborative Filtering Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 51 51 52 53 61 4.8 4.9 vi . . . . . . . . 61 62 63
  7. 7. List of Tables List of Tables 3.1 3.2 3.3 User-Suggestion Significance Correlation Values Table . . . . . . . . . . Suggestion Feature Vector . . . . . . . . . . . . . . . . . . . . . . . . . . User paramter vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii 38 40 41
  8. 8. List of Equations List of Equations 2.2.1 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 General Recommender System Equation . . . . . . . . . . . . Correlation Function . . . . . . . . . . . . . . . . . . . . . . . Collaborative Filtering Cost Function (without Regularization) Collaborative Filtering Gradient with respect to x . . . . . . . Collaborative Filtering Gradient with respect to Theta . . . . Collaborative Filtering gradient derivatives . . . . . . . . . . . Collaborative Filtering gradient vectorized implementation . . Regularized Cost Function . . . . . . . . . . . . . . . . . . . . Regularized Gradient with respect to x . . . . . . . . . . . . . Regularized Gradient with respect to Theta . . . . . . . . . . viii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 36 42 42 42 43 43 43 44 44
  9. 9. Acknowledgements Acknowledgements I would like to acknowledge and appreciate Prof. Dr. Rolf Ingold for accepting me in his Software Engineering group to do my Master Thesis. I would like to pay my sincere gratitude to Prof. Dr. Jean Hennebert, Prof. Dr. Omar Abou Khaled and Prof. Dr. Elena Mugellini to give me opportunity, freedom and guidance to choose my thesis area and form my thesis proposal. I owe a huge thanks to Prof. Dr. Jean Hennebert for helping me and guiding me to properly organise my thinking process. Also keeping patience when I randomly presented my ideas. Brain storming sessions with him and his constant guidance has motivated me immensely. I would like to acknowledge my virtual professors specially Prof. Andrew Ng (Machine Learning), Prof. Kevin Werbach (Gamification) from various universities who guided me via Coursera. I would like to acknowledge my fiancee Ishan Shah for bearing with me and supporting me during my thesis. 1
  10. 10. Dedication Dedication I would like to dedicate my thesis to my parents Manoj Shah and Dipti Shah. Also to hope of a greener and better world. 2
  11. 11. Abstract Abstract Inspiring and obtaining energy conservation through gamification of the concept, prototyping recommender systems to implement contextual suggestions in social network platforms and exploring NLI/NLP concepts along with QR code technology to enhance impact on social network is the theme of this Master Thesis. The aim of this thesis is to find people oriented solution to the burning question of motivating energy conservation. To do so we look into the problem of Climate change and meaning of Carbon Footprint. Then we design a model which is created on the basis Carbon Footprint, Gamification, Recommender Systems and NLI/NLP along with QR code technology. The aim of the thesis is to design a model which is people oriented and can be applied on industry level. Following are the topics which this thesis goes into detail: • Understanding Carbon foot print calculation to come up with formula to calculate "green coins" which shall be awarded upon completion of the green suggestion. • In depth research on Gamification and Serious Gaming to categorize the concept and design a "gamified" model. • Understanding Recommender Systems and concerned algorithms to implement a context aware system designed for Go Green Model. • In depth research on Facebook App Development and Heroku platform to implement a part of Go Green Model. • Exploring NLI/NLP concepts and QR code technologies to enhance Go Green Model. Keywords: Enery Conservation, Carbon Foot print, Recommender Systems, Social Network Platform, Facebook App, NLI/NLP, QR Code. 3
  12. 12. 1 Introduction 1 Introduction 1.1 Objective The biggest challenge we are facing is to stop drastic changes in environment. These changes cause severe natural disasters like flooding, storms, heat-wave, cold wave etc. Humans play the biggest role in these changes. Primarily these disturbances result from emissions related with energy use.[6]. Many industries are trying to take some steps to make an environment “greener” and try to compensate up to some extent for their huge energy use. For example Google’s project Google green[7] is all about using resources efficiently and supporting renewable power. As mentioned on the above website Google claims that their data centres use 50 percentage less energy compared to conventional data centres. Also they have committed over dollar 1 billion to renewable projects as per the information mentioned. Some of the highlights in designing efficient data centres are: • Manage airflow (Keeping internal temperature at constant level) • Adjusting temperature level (By raising the temperature up to 80 degrees the need for energy-intensive air conditioning. They claim that it’s a myth to believe that data centres need to be kept in cold condition for proper operation.) • Natural cooling (Using natural way to cool down the equipment.) • Power optimization. (Decreasing the wastage of energy) Apart from efficient data centres, Google is also focusing on renewable energy. As per their claim they power 30 percentage of their operations using renewable energy. They use wind and solar energy prominently as a renewable energy. Second example of such industry is My Climate[8] which is dedicated to carbon offsetting. Myclimate develops carbon offset projects. Also it helps to assess carbon emissions, to make strategies and to educate about carbon emission and how to reduce it. It encourages producing less CO2 and offsets the unavoidable CO2 emission. With the offset donations unavoidable CO2 is offset somewhere else on planet which helps to keep overall green house gas level in the limit. Examples above are some of the steps taken by industries towards environmental care. But the question I want to put here is what the contribution of an individual is? I believe individuals can also make a substantial impact on environmental care. Human 4
  13. 13. 1.2 Purpose behavior like how his or her efforts can make a difference is critical for an environment and we want to fill that gap by giving a chance to each individual to participate in “green” efforts with a gaming on social network. Many of the environmental problems like noise pollution, air pollution, water shortage are linked with human behavior[9]. So changes in human behavior can impact environment broadly. I believe social network gaming will lead to behavioral changes in individuals towards an environment. Gaming helps in behavioral changes. For example video games can provide health related behavioral change.[10]. Internet and online gaming can be addictive and may lead to negative impacts[11]. But this kind of addiction can also be channelized towards positive impact such as on environment. The most relevant work is being done by SimpleEnergy.[12]. It encourages people to save energy by online platform and scores them between friends via facebook and rewards them with real prize. SimpleEnergy work with its utility partners and encourage Simple Energy customers via platform to deliver measurable and verifiable energy efficiency. 1.2 Purpose Motivating energy conservation would be more powerful through Social Network Websites because the Social Network websites are based on following Social Design: • Utilize Community • Curate Identities • Engage in Conversations Energy Conservation requires above 3 components of Social Design for it to become a necessity than a convenience. 1.3 Background There are several existing websites, online games and dedicated hardware applications to motivate energy conservations. In this section I shall present the example of this websites/applications, flaw in the concept and how Go Green is better implementing the concept. Environmental Dashboards The growing availability of energy data has lent itself nicely to dashboards that let viewers keep track of how much energy is consumed at any given time. They are perpetuated by the idea of living buildings and devices[13]. 5
  14. 14. 1.3 Background Figure 1.1: Environmental Dashboard Figure 1.2: Energy Jar Energy Jar This is an example of a dedicated hardware to indicate the consumption of the energy. Energy jar shows the consumption and actual energy rating of the electronic device it is attached too[14] Energy Battle This is an example of online gaming to motivate energy conservation.[15] Figure 1.3: Energy Battle 6
  15. 15. 1.4 Scope of the Thesis Figure 1.4: Fogg’s behaviour model Flaw in the above designs to motivate energy conservation is the popularity and reach of the above applications to the youth. To access above mentioned games or hardware on has to go the dedicated website or buy dedicated hardware. This reduces the reachability of the concept. Go Green aims to remove the above flaw and expand its scope. 1.4 Scope of the Thesis The Unique selling point of the Go Green model is its integration with Social Network platforms. Social comparisons are comparative Feedback which is described as feedback about individual performance relative to the performance of others[16]. It uses social norms which tell us what kind of behavior is performed by others (descriptive norms) as well as what behavior is appreciated by others (injunctive norms)[17]. Go Green model aims at providing the sufficient amount of motivation with gamification, recommender systems and social network platform which triggers good amount of ability as mentioned in fogg’s model. 7
  16. 16. 2 State of the Art 2 State of the Art 2.1 Gamification Gamification defination is inspired by [18] which is as follows "Gamification involves applying game like thinking to non-game context. This approach helps changing the unique selling point of the non game context and make it more fun. Gamification has become a trendy subject with classes and subjects being taught on Gamification. Gamification can potentially be applied to any industry and to create fun experiences, enhancing user experiences".[18] Gamification has been defined in a number of different ways. The Gamification Wiki defines "Gamification as the infusion of game design techniques, game mechanics, and/or game style into anything. This definition is purposely broad to support the many uses of the word outside of the context of business"[18]. A few other definitions of Gamification are: Gamification is a technique to convert non game context into game like. The term refers to incorporating game elements and mechanics into non-gaming websites and software. Examples of how to use the term Gamification: • "To create lottery for people following rules" • "Employee of the month concept to create fun environment at work place" Gamification is “The use of game elements and game design techniques in non-game contexts”[1] . There are 3 aspects to this definition which are as follows: • Game Elements • Game Design Techniques • Non game context All the 3 aspects can be explained by using examples. 8
  17. 17. 2.1.1 Game Elements Figure 2.1: Cityville by Zygna 2.1.1 Game Elements Game elements basically mean toolbox to create a Game. Figure 2.1 is a screenshot of online game Cityville2 developed by Zygna. As seen in figure 2.1 we can see it is a typical game with virtual graphical representation, one can just look at it and decide it is a Game. So what are the components, they are as follows: • Points • Rewards/Badges • Resource Collection • Social Graph – To show what his/her friends are doing and making game competitive. • Levels • Avatars – Virtual representation of one’s self online. 9
  18. 18. 2.1.2 Game Design Techniques Figure 2.2: Nike+ Application of Nike 2.1.2 Game Design Techniques One cannot make Game just by adding game elements listed in previous section and claim it to be gamified. To support this statement, I would like to mention that most used application in Windows is “Solitaire” . And if one looks at Solitaire would find it has least amount of game elements. Reason of success of Solitaire is its design. Hence designing a game is as essential as implementing it and its not only putting all game elements together but putting them in a way that it makes sense. 2.1.3 Non-Game Context Gamification is not about making everything like game or to have a virtual representation in virtual world. But is more like connecting virtual world to real world context. To explain this more clearly I would like to give example of Nike+ . Nike created accelerometer so that they can track you and update you about your running distances, etc. Screenshot presented in figure 2.2 Now the above game developed by Nike can be termed as gamification because it has basic game elements mentioned in Game elements section. It is not traditional game as it is neither completely virtual as people are actually running and it is not completely out of the virtual world as people compete on this app to see how runs fastest. This is a classic example of applying game elements and game design techniques on non game context to make it more appealing. 10
  19. 19. 2.1.4 Gamification in Context 2.1.4 Gamification in Context Gamification can be summarized as follows: • Applying sense of game whether it is by giving game elements or by its design, to a Non- Game context. • Applying any kind of game elements or game design techniques to a non-game context doesn’t mean gamification is done. There should be feasibility testing and proper context to why gamification would work in particular scenario. • Gamification cannot be entirely in virtual world or real world. As we are gamifying a non-game context or rather a real world problem, gamification should connect the real world to virtual world to enhance the experience of real world. This is the most basic and essential part of gamification. 2.1.5 Serious Game Serious game can be said alike Gamification. The concept of Serious Game was developed before Gamification. Serious Game can be defined as games which are used to teach or bring positive change via a game environment. Serious Game and Gamification have the model for behaviour change which is same. This model is already existing since 1995 as shown in the figure. For e.g. U.S. Army developed Battle Field games to train soldiers to give them feel to battlefield and try and train them. Also Serious Games are usually simulations which create virtual environment to give the player feel about real world. Hence Serious Game doesn’t really combine virtual world and real world but rather create a bridge between them to make transition of the participant easier. 2.2 Recommender Systems In the present era of internet and abundance information, user has the opportunity to select which music to listen to, which consumer product to consume, which service provider to select, etc. But he also faces endless possibilities to make a choice. One can go by literal sense and assume that it is a system that provides recommendations. Of course this will be true but the unique selling point of recommender system is "personalization". Recommender systems allows businesses, concepts and organizations to study individual’s choice and present them suggestions based on their likings. 11
  20. 20. 2.2 Recommender Systems Figure 2.3: Serious Game Model [1] 12
  21. 21. 2.2.1 State of the Art: Recommender Systems Recommender Systems doesn’t work on query based operations but it works on input criteria and learning algorithm to provide maximum likelihood suggestions customized for the user. Computational Recommender Systems addresses this issue. I believe this systems are inspired from the social behaviour of the human beings. We live in a society and our choices are highly influenced by the people and environment surrounding us. Recommender Systems tend to use and exploit this scenario, it studies individual’s and his friends choices to suggest him most probable product he would choose. The factor of friends is added to the recommender systems due to recent boom in social networking platforms thanks to Facebook, Orkut, Google plus and many more. Before the era of Social Networking platforms, Recommender Systems worked on the concept of similar consumer items bought by the people. For example in Amazon a consumer trying to buy a product is presented with products other users bought after buying the product a consumer is viewing presently. Similar concept is used by Supermarket owners in order to arrange the products in best optimal way so that they can get maximum sales. Point being here is as human beings we have natural desire to follow current trends, getting inspired by people and society around us. Recommender Systems and its algorithms which are being implemented currently are highly sophisticated as the amount of the data available for a user is immense which allows to give a very personalize suggestion to a user. 2.2.1 State of the Art: Recommender Systems Figure 4.1 present the model of the recommender system. The block of Recommender Systems consists of various types of algorithms which defines the type of the recommender system. Before going into the Major types of recommender systems, it would be appropriate to understand the history behind it. Recommender Systems came into the limelight in the research area since the publish of papers on Collaborative Filtering in mid 1990s. [[19],[20],[21]] The roots of recommender systems can be traced back to the extensive work in cognitive science[22],approximation theory[23], information retrieval[24], forecasting theories[25], and also have links to management science[26] and to consumer choice modelling in marketing[27], recommender systems emerged as an independent research area in the mid-1990s when researchers started focusing on recommendation problems that explicitly rely on the ratings structure[5]. 13
  22. 22. 2.2.1 State of the Art: Recommender Systems Flow Diagram-Recommender System.png Figure 2.4: Recommender System Model 14
  23. 23. 2.2.1 State of the Art: Recommender Systems More formal defination is taken from [5], "the recommendation problem can be formulated as follows: Let C be the set of all users and let S be the set of all possible items that can be recommended, such as books, movies, or restaurants, in our case green suggestions. The space S of possible items can be very large, ranging in hundreds of thousands or even millions of items in some applications,such as recommending books or CDs. Similarly, the user space can also be very large—millions in some cases. Let u be a utility function that measures the usefulness of item s to user c, i.e., u : C x S→R, where R is a totally ordered set (e.g., nonnegative integers or real numbers within a certain range). Then, for each user c ∈ C, we want to choose such item s ∈ S that maximizes the user’s utility". More formally: ∀c ∈ C, sc = argmaxs∈S u(c, s) (2.2.1) Recommender systems are usually classified according to their approach to rating estimation[5]. The commonly accepted formulation of the recommendation problem was first stated in [[19], [20], [21]] and this problem has been studied extensively since then. Moreover, recommender systems are usually classified into the following categories, based on how recommendations are made, the basis are taken from [28]: • Content-based recommendations: the user is recommended items similar to the ones the user preferred in the past; • Collaborative recommendations: the user is recommended items that people with similar tastes and preferences liked in the past; • Hybrid approaches: these methods combine collaborative and content-based methods In addition to recommender systems that predict the absolute values of ratings that individual users would give to the yet unseen items (as discussed above), there has been work done on preference-based filtering, i.e., predicting the relative preferences of users [[29],[30],[31], [32]]. For example, in a movie recommendation application preferencebased filtering techniques would focus on predicting the correct relative order of the movies, rather than their individual ratings.[5] Several recommendation systems use a hybrid approach by combining collaborative and content based methods[5], which helps to avoid certain limitations of content-based and collaborative systems [[28],[33], [34],[35], [36],[37], [38]]. 15
  24. 24. 2.3 Social Network Platform 2.3 Social Network Platform Social networking is a phenomenon which has existed since society began[39].The Internet supports social interaction that is scalable from the micro level (two way conversation) to the macro level (creating a global online social network). Internet users indicate an increasing willingness to create a persistent digital identity that enables long term social interaction [[40],[41]] Since the introduction of Social Networking sites such as Facebook, MySpace, Orkut etc there is a new phenomena introduced to the world of Computer science. Social Networking Websites have created a science of its own and a platform which has the potential to achieve much more than mere interaction of an individual with other people. Billions of users have integrated this websites and its activities in their daily routines and it has become a habit of Millions of users. 2.3.1 State of the Art Social Network Platform Definition of Social network sites can be as follows which is taken from [42]: This sites are web-based services that allow individuals • To construct a public or semi page within a bounded system • articulate a list of other users with whom they share a connection, and • view and traverse their list of connections and those made by others within the system. The nature and nomenclature of these connections may vary from site to site. Figure 5.1 shows the functioning of Social network Sites and Figure 5.2 shows the time line of the inception of various social network websites and their growth. Hence integrating Go Green Model into Social Network platform gives the model an unprecedented boost and an obvious choice of development. 2.3.2 Facebook App Architecture Facebook has emerged over the last several years as the dominant social space[4].Facebook has grown immensely since its inception. The growth and the story behind the facebook growth is the constant need of the human nature to know about their friends, family, 16
  25. 25. 2.3.2 Facebook App Architecture Figure 2.5: Characteristics of Social Network Sites is taken from [2] loved ones etc. Also a need to feel like celebrity status. Facebook gives the individual to showcase themselves in virtual world. Now with the amount of time people spend on facebook have given birth to new era of business: Online Social gaming This gaming architecture involves everyone, also the ones who were never gamers. Social games like CityVille, Famrville which are not hardcore gaming but still are selling like hot cakes. And companies like Zygna are thriving on these games. Reason being the non game concepts like create own farm or city is gamified on a social network to make it interesting. Facebook App Development consists of following elements: Below given Traditional Software development and Rest call explanation is taken from [4]. • Traditional Software Development – Libraries available for most languages - Perl, PHP, Java, Ruby, .NET, others – Javascript Client API and/or FBJS – HTML and FBML • API Communication – Traditional REST calls – Certain calls require authentication – App requires API Key – Communication Libraries • Social Integration Points – Canvas Page 17
  26. 26. 2.3.2 Facebook App Architecture Figure 2.6: Time line of Social Network Sites is taken from [3] 18
  27. 27. 2.4 NLI/NLP ∗ Full Monetization Potential ∗ Developers have full control on this page – User Profile ∗ Profile Box ∗ Post stories to the Wall, aka, “Mini-Feed” ∗ Tabs ∗ Create Custom Publisher Box – Send Notifications and Requests In 2000, Roy Fielding,[4] one of the key contributors to HTTP and URI, codified the architecture of the Web in his doctoral thesis titled “Architectural Styles and the Design of Network-Based Software Architectures.” In this thesis, following is quoted [4]" he introduced an architecture style known as Representational State Transfer (REST). This style, in abstract terms, describes the foundation of the World Wide Web. The technologies that make up this foundation include the Hypertext Transfer Protocol (HTTP), Uniform Resource Identifier (URI), markup languages such as HTML and XML, and web-friendly formats such as JSON. REST is an architectural style for networked applications. It consists of several constraints to address separation of concerns, visibility, reliability, scalability, performance, etc." For Facebook App Development, Faceconn’s library and Facebook api is used. The canvas element uses a Cartesian coordinate system .The Cartesian coordinate system consists of two planes that are perpendicular to each other . The planes are commonly referred to as the x-axis and y-axis in two-dimensional space, with an origin of (0,0) where the x- and y-axes cross.The different sections of the coordinate system, with positive x- and y-values in the top-right quadrant, and positive x and negative y in the bottom-right quadrant. 2.4 NLI/NLP Defination of Chatbot is taken from [43]"Chatbots are known by a wide variety of terms including virtual assistants, virtual agents,conversational agents, avatars, virtual personalities, web-bots and even ERAMS. We prefer chatbot as it is the simplest and most commonly understood term – and also suggests the right level of sophistication. We reserve avatar for the visual, electronic representation of a character – be they operated by a real person or a chatbot".[43] Defination of Chatbot program is as follows which is taken from [43]"A chatbot is a programme that tries to conduct a natural language conversation with a user. It lets the user enter normal questions and statements (such as “how are you”, “what is the weather 19
  28. 28. 2.4 NLI/NLP Figure 2.7: Facebook Architecture is taken from [4] 20
  29. 29. 2.4 NLI/NLP like”, “what is the price of the bookcase”, “I’m feeling down today” ), and responds in a similar natural language style[44] (e.g. “I feel fine, thank you”, “it is cloudy and raining”, “the bookcase is £19.99”, “why do you feel down”).The aim of Chat bot is to create a system which will be exact replica of human interactions and one cannot detect whether its human or robot" I define a chatbot which is inspired from [45] as having four main components. These are shown diagrammatically below. The elements are: • Readable script by User – a way of getting information into and out of the chatbot, typically text typing input, and speech and visual output. Voice input is coming though. • A range of answers – the information that the chatbot knows, e.g. about itself, about the world, and about your products and services. • Modules – to provide added functionality (such as remembering users) and also to let the chatbot interface to the outside world (e.g. to get the news, use Google, read a database, send emails etc.) • A set of Management tools – to see what conversations the chatbot has had, and improve its performance through analysis and reprogramming – chatbots are an iterative process. The idea of chatbots has been around for a long time. The reasons why Chatbot has huge potential now is taken from [43] "Chatbots are now ripe for exploitation by businesses: • First the technology to deliver chatbots as dynamic and speaking avatars is now ready for mass-market use – making chatbots a far richer and engaging experience than lines of text on a screen • Second, rich avatars need reasonable bandwidths to deliver the audio and animation – the widespread adoption of broadband by businesses, and domination of broadband in the domestic market means that this richness can now be delivered across the net to almost any user. • Third, chatbots have moved from proprietary platforms to Internet based technologies, such as Macromedia Flash for the avatar graphics and audio, and XML dialects for data storage. " All this means that Chatbots are excellent way to add unique selling point to Go Green Model and ideal to enhance user experience in Go Green Model. 21
  30. 30. 2.5 Carbon Footprint 2.5 Carbon Footprint Carbon Footprint can be termed as total amount of Carbon emissions or Green house gas emissions emitted by an individual, event, community or institute. Following details about greenhouse gases are taken from [47]Processes causing greenhouse gas (GHG) emissions benefit humans by providing consumer goods and services[46]. This benefit, and hence the responsibility for emissions, varies by purpose or consumption category and is unevenly distributed across and within countries. We quantify greenhouse gas emissions associated with the final consumption of goods and services for 73 nations and 14 aggregate world regions. National average per capita footprints vary from 1 tCO2e/y in African countries to approximately 30/y in Luxembourg and the United States[47]. The Overview about Global Carbon footprint expenditure is taken from [48]" The expenditure elasticity is 0.57. The cross-national expenditure elasticity for just CO2, 0.81, corresponds remarkably well to the cross-sectional elasticities found within nations, suggesting a global relationship between expenditure and emissions that holds across several orders of magnitude difference. On the global level, 72% of greenhouse gas emissions are related to household consumption, 10% to government consumption, and 18% to investments. Food accounts for 20% of GHG emissions, operation and maintenance of residences is 19%, and mobility is 17%. Food and services are more important in developing countries, while mobility and manufactured goods rise fast with income and dominate in rich countries. The importance of public services and manufactured goods has not yet been sufficiently appreciated in policy"[48]. Policy priorities hence depend on development status and country-level characteristics. Analysis about household consumption is taken from [49]"Analysis of household consumption and its environmental impact remains one of the most important topics in sustainability research. Nevertheless, much past and recent work has focused on domestic national averages, neglecting both the growing importance of international trade on household carbon footprint and the variation between households of different income levels and demographics.The global location of emissions, which cannot be calculated using standard input-output analysis, and the variation of household impacts with income, have important ramifications for polices designed to lower consumer impacts on climate change, such as carbon taxes. The effectiveness and fairness of such policies hinges on a proper understanding of how income distributions, rebound effects, and international trade affect them." Now a days Carbon footprint is used as yardstick to measure an individual or organization’s impact on the environment. Interestingly business models have emerged with Carbon footprint analysis and Carbon offsetting.[50] Theoretically it is possible to calculate the Carbon footprint of an individual or orga- 22
  31. 31. 2.5.1 State of the art: Carbon Footprint Analysis nization but practically it is next to impossible to calculate exact carbon emissions as there is huge amount of data and variance in each case. After Carbon Footprint there is a trend of Life Cycle Assessment which is emerging and becoming more popular. In Life Cycle Assessment, any product or individual’s detailed Carbon foot printing analysis is done. In my thesis I haven’t concentrated on Carbon Footprint calculations in particular but I am using it as a reference for the Gamification of the concept. Further ahead we would be analyzing following factors: • State of the art: Carbon Footprint Analysis • My take on: Carbon Footprint Analysis • Proposed model of Carbon Accounting with Go Green 2.5.1 State of the art: Carbon Footprint Analysis Following text regarding research model developed in Northwest Ohio is taken from [51] ."Climate change is a serious worldwide concern and the emission of greenhouse gases (GHG) significantly intensifies the issue. Numerous studies have been conducted concerning GHG emissions related to energy and fuel consumption, but few have been conducted related to the impact of increased recycling levels on GHG emissions for a single facility. Several readily available GHG calculators are available for organizations to estimate overall GHG emissions for facilities, but these calculators generate varying results and do not fully account for the impact of increased recycling levels, region specific data, or material stream separation, and the associated economic benefit. This research developed a model to estimate the GHG emissions for facilities related to municipal solid waste (MSW) disposal and recycling. The results from the model are compared to existing Internet based GHG calculators that include MSW data. In addition, the model estimates the GHG reductions and potential economic benefit derived from increased recycling for a case study in Northwest Ohio." Carbon footprint models are increasingly being used to manage personal and household carbon dioxide emissions. Six models were compared for their suitability for use in Ireland using typical data for a household of three people and analysis text is taken from [52]. "The annual house hold energy and transportation emissions ranged from 10,540 to 17,361 kg CO2 yr1 (mean 12,886; sd 2135) rising to a total footprint of 12,053 to 27, 218 kg CO2 yr1 (mean 18,117; sd 5106) when aviation emissions were included. This represents a potential range for individual CO2 emissions of between 4018 and 9073 kg CO2/person/annum, a variation of over 5 tonnes/person. The information provided by these models proved to be inconsistent and often contradictory. The high variability between models was due to a number of anomalies. When these were corrected mean 23
  32. 32. 2.5.1 State of the art: Carbon Footprint Analysis household energy and transportation emissions fell to 12,130 kg CO2 yr1 (sd 805), with a total household footprint of 16,552 kg CO2 yr1 (sd 1101). Models vary in their complexity in terms of what is included in the overall estimation of emissions making a full analysis of the primary carbon footprint very difficult. When compared to current Irish conversion factors the corrected models either underestimated or overestimated CO2 emissions by approximately 10%. Current carbon footprint models excluded emissions from CH4 and N2O underestimating CO2 emissions for the household by 1.8%". A socio-economically disaggregated framework for attributes CO2 emissions to people’s high level functional needs[47]. 24
  33. 33. 3 Master Thesis Contribution 3 Master Thesis Contribution 3.1 Concept "Being Green" via Go Green model may be a stepping stone towards changing community’s attitude towards energy conservation. This model has been designed to promote energy conservation in most simplest way. It has the capability to integrate varied categories of users from experts in energy conservation to beginners. "Go Green" model is unique as it integrates various varied approaches such as gamification, recommender system, social networking platform and QR codes to promote energy conservation. In the area of inspiring energy conservation there exists websites and dedicated hardware to monitor and encourage energy conservation. But all the solutions provided in the field of energy conservation requires separate websites or dedicated hardware. This is where "Go Green" model is different as it is very simple yet incorporates very varied approaches. 3.1.1 What is Go Green Model? Go Green model is proposed to inspire energy conservation in fun, social and personalized way. Go Green model has following components: • Carbon Footprint: is only used as a yardstick to measure and simplify Go Green game logic. In non-game context too, Carbon Footprint is considered as yardstick to measure individual or community’s impact in environment. • Gamification: Inspiring energy conservation is a non-game context to gamify the context a game logic model is proposed. • Recommender System: Inspired by user- movie recommender system, user-suggestion (green gestures) recommender system is proposed along with correlation and logistic regression module. 25
  34. 34. 3.1.2 Overview of Go Green Model Figure 3.1: Go Green Model Overview • Facebook App: To motivate social networking platform is used. Game Logic is designed with respect to social networking dynamics to enhance the effect. • NLI/NLP and QR code: NLI/NLP technology is explored to enhance the user experience and motivate the user for energy conservation via chat bot script on the website. QR code technology is explored to create presence of Go Green and to verify accomplishment of Green Gestures. 3.1.2 Overview of Go Green Model Overview of Green Model is presented in figure 1.1. The proposed model of Green Model encorporates the components mentioned in Go Green Model. Explanation of Go Green Model: In this section I explain in detail, Go Green Model blocks presented in the figure 3.1. 26
  35. 35. 3.1.3 Scenario Explanation of Go Green Model • User’s Facebook Profile Connect: This block is activated when the user initially enters the Go Green Facebook app.As the user enters the Go Green app, he gives the permission to Go Green app to access user’s profile and store it in the user db. • Recommender System Module: This module has correlation algorithm and collaborative filtering algorithm. Correlation Algorithm initially presents a usersuggestion correlation matrix.This matrix is used by Collaborative Filtering Algorithm and present top 5 suggestions for the current user. • Go Green Game: This is the Online Facebook game module, from the recommender system module suggestions are passed on to Go Green Game. • User/Go Green Suggestion Feedback: This module identifies which suggestion is accepted by the user and depending on that user is allocated green coins. • Carbon Footprint Calculator Feedback: This module returns the value of green coins to be allocated based on the suggestion completed by the user. • QR Code Feedback: This module provides completion information of the suggestion accepted by the user. • Allocation of coins and growth: This module updates the facebook wall of the user with green coins. This module also initiates growth module to keep track if the suggestion completed by the user is liked by others or not. 3.1.3 Scenario Explanation of Go Green Model Scenario 1: Alice joins Green World App on facebook and starts collecting “Green Coins”. Once Alice joins Green World, system has access to her user profile. The System requires her age, country of residence and current location. If this information is missing from her profile, System requests for her data, if the data is denied then based on available data about Alice is given her “Green Suggestions” such as “Let’s walk to the college today Alice”, “Let’s take stairs instead of Elevators today”, “How about switching off lights for 30 seconds” etc. Alice selects one of the suggestions based on her selection she is given “Green Coins”. Also based on her selection she is told how much energy she saved. 27
  36. 36. 3.1.3 Scenario Explanation of Go Green Model Her “Green Coins” are her “Green Achievements” which is published on her wall. If she likes her “Green Achievements” she is awarded one more green coin for promoting greenness. Due to her “Green Achievements” she gets “Green invites” which she can distribute to her friends on facebook via messages and get green coins for these gestures. Learning: Above scenario from the perspective of Computer Science requires Algorithm which could select suggestions from suggestions database based on user profile, weather and time of the location of the user. Then award green coins based on the formula which relates the CO2 emission of the suggestion selected which if not executed could have caused. Scenario 2: Alice invites Bob to join Green World App. As Alice as received green invites, she invited Bob to join the Green World App. Bob gets interested and joins the app. Alice gets green coins for motivating and Bob gets green coins for being motivated. Learning: Database needs to be created which can handle point/coin system. Scenario 3: Alice and Bob receive Green paper at the end of the week. It has been a week Alice and Bob have joined the Green World App and today they have received Green paper weekly update about their fellow “Green Citizens”. They receive stories about their friends only. There is a section about top stories of the Green World which features Green Gestures which earned maximum Green Coins. Learning: Algorithm which can isolate from all the stories only the story related to individual who is getting the green paper. Scenario 4: Alice gets sponsored by Bob Alice has a green idea which she wants to implement into green act. For this she offers her green idea on the green board. Bob looks at the green idea of Alice and offers to sponsor her. Alice agrees and Bob and Alice are in Sponsor/Sponsored paradigm. After completing her Green Act Alice puts the proof of Greenness and upon approval from Administrator she and Bob gets green coins for their Green Achievements. Learning: Implementing database handling sponsor/sponsored concept so that administrator can add green ideas to database of green suggestions. Scenario 5: Alice offers her green coins to carbon off setters. Alice offers her green coins to carbon off setters to do Green Act on her behalf. Carbon off setters approves her request and sends her the proof of carbon offsetting. After approval from administrator Alice gets more green coins for her input. Learning: Collaboration with carbon off setters and database architecture to support above men- 28
  37. 37. 3.1.4 Use Case Diagram Figure 3.2: Proposed Use Case Diagram Green World tioned arrangement. 3.1.4 Use Case Diagram Use Case Diagram in Figure 1.2. presents a players sequence model. 3.1.5 ER-Diagram ER-Diagram in figure 1.3 presents Database model structure. 3.2 Gamification and Go Green In this section, we would justify gamification of Go Green and also point out the elements which we incorporated to gamify Go Green. 3.2.1 Concept of Go Green for Gamification Go Green is created with the aim to access impact of following concepts on spreading awareness about energy conservation: 29
  38. 38. 3.2.1 Concept of Go Green for Gamification Figure 3.3: Proposed Entity-Relationship Diagram 30
  39. 39. 3.2.2 Game Elements in Go Green • Gamification: To use game elements, game design and competitive nature of playing games in encouraging conservation of energy. Also, it aims on bringing behavioural change in the participant of the game. • Social Network impact: Explained in section of Social Network • Recommender System: Explained in section of Recommender System 3.2.2 Game Elements in Go Green As mentioned in the above section, Gamification involves adding game elements to nongame context. So for Go Green App following are the Game Elements: • Green Coins • Green Badge • Green Leader Board • Green Bank • Social Graph: Knowing what other Green Friends are doing • Green Challenges: Suggestions from Recommender system. Snap shot of above described Game elements: 3.2.3 Game Design in Go Green As mentioned in the above section, Gamification involves adding game elements and game design technique to non-game context. So for Go Green App following is the Game design: • Once User enters Go Green, he gets Green Coins for joining the App. • Then based on his profile, Recommender System suggests him his green challenge. • Submission of his each green challenge moves him ahead. For his completed challenges, he is awarded green coins. • He can earn more green coins by recommending Go Green to his friends. • When he has earned lot of green coins he can go to Green Bank to offset his Carbon Footprint. 31
  40. 40. 3.2.3 Game Design in Go Green Figure 3.4: Go Green Growth Model Icons 32
  41. 41. 3.2.3 Game Design in Go Green Figure 3.5: Go Green Growth Model Icons Figure 3.6: Go Green App Icon 33
  42. 42. 3.2.4 Non Game context in Go Green • For offsetting carbon footprint he has to calculate his carbon footprint or take up average carbon foot print values to offset. • Each green coins is equivalent to 1.5 tons of Carbon. When he offsets carbon footprint he earns Green Badge and his position is moved ahead in Leader Board. • He can also donate or gift his green coins to a friend. • Every green act is rewarded with Green Coin, Green Badge or position in Leader Board. • There are no negative points or marking in the game as studies shows Serious Games/Educational Games should be built with utmost positive environment to encourage or motivate participants. 3.2.4 Non Game context in Go Green Go Green is a game created to promote energy conservation and change the behaviour of participant towards usage of energy. Hence the Non game context is promoting energy conservation and motivating to take small steps to create bigger impact. 3.2.5 Why Go Green is not Serious Game – My take According to the Gamification course conducted by Prof. Kevin Werbach of Wharton School of University of Pennsylvania, Serious Games are defined as games which educate the participant and help transition to real world. For E.g. U.S. Defence Department uses flight simulators and Battlefield simulators to teach Pilots and hundreds of Soldiers, battlefield strategies. In this simulator, soldiers react as they would react in real world and learn, improve and develop their battlefield strategies. So there is interaction between real world and virtual world even in Serious Game but more towards developing a skill. Now Go Green does have interaction between Virtual world and Real world as players are suggested suggestion from virtual environment which he has to accomplish in real world and provide feedback back to virtual world, but this is not for the purpose of transition. Go Green aims at modifying behaviour of players towards energy conservation. For E.g. in Sweden, on highways there was a lottery machine installed which captures license plates of vehicles that were not speeding. This led to reduction in high speeding by 20 percentage. In long term even after removal of this lottery machine, increase in speeding was not observed as behaviour of the Car travellers was modified. 34
  43. 43. 3.3 Recommender System model for Go Green Model Go Green too aims at similar affect, in such a way that conserving energy becomes habit of the players. To get this effect faster gamification, social network platform and recommender system provides ideal composure. 3.3 Recommender System model for Go Green Model 3.3.1 Why Recommender Systems for Go Green Model The use of context is important in interactive applications[53]. It is particularly important for applications where the user’s context is changing rapidly, such as in both hand held and ubiquitous computing. In order to better understand how we can use context and facilitate the building of context-aware applications, we need to more fully understand what constitutes a context aware application and what context is. In Go Green Model, probability distribution helps in creating a context aware recommendations.[54] Recommender Systems helps to give personalize recommendations, that is good but why use it in Go Green Model. Concept of Go Green is to promote energy conservation and inspire people to address the issue of Global warming at grass root level. To popularize this concept recommender systems can play a big role as it can help the concept to be more personalize so that people can address the issue in their own way. Major issue with the concept of inspiring energy conservation is its low popularity and understanding among the majority of the people. As till now Global warming and Climate change are presented to the larger people in numbers and something which scientists are concerned off. The idea of Go Green is to present this issue is personalized and gamified way. If people are presented with suggestions they would like to follow and which their friends are following, it can create a big boost to energy conservation. For Go Green Model we tend to implement recommender system to create a world to possibilities and choices in energy conservation as we have in options in which music to listen too, which restaurant to go too, which consumer products to buy and which services to go too. For Go Green Model, I have chosen Hybrid approach of Recommender System. First is the User-Suggestion Correlation Model, which helps to find correlation coefficient between the user and suggestion. The User- Suggestion model code is presented in the Appendix. The User Correlation model and the equation is further explained in detail in Correlation based User - Suggestion model. 35
  44. 44. 3.3.2 Correlation Based User-Suggestion Model 3.3.2 Correlation Based User-Suggestion Model In this section, I will be presenting a model designed to suggest highest correlation between User and Suggestion. High correlation between user and suggestion suggests maximum probability of the suggestion being accepted by user. This model is required to setup initial database as at the start of the Game we cannot apply collaborative filtering algorithm as we don’t have different ratings of user for suggestions to predict their rating for upcoming suggestion. Each user based on their facebook profile have a parameter vector of age, location and weather. Each suggestion have a feature vector based on age, location and weather. Correlation between user’s parameter vector and Suggestion’s feature vector is found by following Correlation function: R(i, j) = C(i, j) C(i, i)C(j, j) (3.3.1) Equation 4.1 returns matrix of correlation coefficient and significance value (p-value) which determines how correlated user’s parameter vector is with suggestion’s feature vector. Features and Parameters for Go Green User is prompted with the suggestion whose feature vector correlates maximum with user’s parameter vector. Features for Suggestion are as follows: • Probability value for each category in age. • Probability value for each category in location. • Probability value for each category in weather. • Difficulty level of the Suggestion. • Ratings given by user combined with acceptance rate of the Suggestion. Parameters for User are as follows: • Probability value for following suggestion based on his age. 36
  45. 45. 3.3.3 Collaborative Filtering algorithm implementation for Go Green Figure 3.7: Collaborative Filtering in Recommender Systems[5] • Probability value for following suggestion based on his location. • Probability value for following suggestion based on weather. • Average difficulty level of all the suggestions accepted and followed by user. • Acceptance rate of the user for following popular suggestions User Suggestion Correlation Model for Go Green Table given in this section shows the Significance(p-value) between each User and each Suggestion calculated by Correlation Module. Significance value is based on User’s parameter vector and Suggestion’s feature vector. 3.3.3 Collaborative Filtering algorithm implementation for Go Green What is Collaborative Filtering algorithm? From applicability point of view, Collaborative filtering algorithm is used to provide automatic predictions for users based on their previous ratings and behavior. Figure 4.1 explains Collaborative Filtering in Recommender Systems. Collaborative Filtering in Go Green My implementation of Collaborative filtering algorithm is based on Recommender Systems assignment provided in Machine Learning course by Prof. Andrew Ng. For Go Green Model, I have taken a simulated dataset for Suggestions 37
  46. 46. 3.3.3 Collaborative Filtering algorithm implementation for Go Green Table 3.1: User-Suggestion Significance Correlation Values Table User id Suggestion1 Suggestion2 Suggestion3 Suggestion4 User id 1 0.819661 0.223294 0.018079 0.23592 Suggestion1 0.819661 1 0.747934 0.300697 0.055988 Suggestion2 0.223294 0.747934 1 0.764741 0.055152 Suggestion3 0.018079 0.300697 0.764741 1 0.448171 Suggestion4 0.23592 0.055988 0.055152 0.448171 1 Suggestion5 0.661467 0.038457 0.005542 0.38031 2.18E-05 Suggestion6 0.610146 0.144207 0.812909 0.014458 0.446295 Suggestion7 0.819496 0.591739 1.05E-06 0.13888 0.919334 Suggestion8 0.055609 0.000521 0.109829 0.004742 0.151773 Suggestion9 0.048043 0.025181 0.069539 0.588264 3.12E-08 Suggestion10 0.331076 0.270399 0.078113 0.51217 0.08913 Suggestion11 0.091432 0.370612 0.031212 0.109405 0.00102 Suggestion12 0.034278 6E-05 0.659349 0.332537 0.00241 Suggestion13 0.12561 0.299879 0.979153 0.053303 0.608881 Suggestion14 0.541209 0.800401 0.320134 0.247348 0.778153 Suggestion15 0.342305 0.837258 0.480044 0.149277 0.972843 Suggestion16 0.007647 0.216557 0.533911 0.593014 0.50726 Suggestion17 0.006036 0.94566 0.013723 0.126289 0.36062 Suggestion18 0.062655 0.441465 0.18118 0.301455 0.820745 Suggestion19 0.057168 0.273989 0.262909 0.003182 0.062145 Suggestion20 0.000231 0.774048 0.320347 0.003114 0.948058 Suggestion21 0.137332 0.869116 0.757654 0.755054 0.594661 Suggestion22 0.009942 0.525427 0.299987 0.32229 0.604224 Suggestion23 0.511505 0.140589 0.728106 0.000366 0.553166 Suggestion24 0.088651 0.187601 0.044047 0.507134 0.013725 Suggestion25 0.106654 0.913243 0.09706 0.000687 0.155362 Suggestion26 0.183946 0.796835 0.152425 0.100044 0.931954 Suggestion27 0.289979 0.769626 0.265208 0.040162 0.153318 Suggestion28 0.126599 0.112118 0.126848 0.224099 0.913685 Suggestion29 0.148487 0.039663 0.021062 0.161724 0.00409 Suggestion30 0.000547 0.010933 0.047715 0.133604 0.211744 38
  47. 47. 3.3.3 Collaborative Filtering algorithm implementation for Go Green where each suggestion is rated from 1 to 5 for 1000 users. The Matrix Y is numsuggestions x num-users where y (i,j) is rating of i-th suggestion by j-th user.The matrix R is an binary-valued indicator matrix, where R(i,j) = 1 if user j gave a rating to suggestion i, and R(i,j) = 0 otherwise. The objective of collaborative filtering is to predict suggestion ratings for the suggestions that users have not yet rated, that is, the entries with R(i, j) = 0. This will allow us to recommend the suggestions with highest predicted ratings to the user.     T T − (X 1 )− − (Θ1 )−   T T − (X 2 )−  − (Θ2 )−      . .         X= Θ =   . .         . .     . .     i T j T − (X )− − (Θ )− The i-th row of X corresponds to the feature vector x(i) for the i-th movie,and the j-th row of Θ(j) corresponds to one parameter vector Θ(j) , for the j-th user. Both x(i) and Θ(j) are n-dimensional vectors. For the purposes of simplicity in test run, I have used n = 100, and therefore, x(i) ∈ 100 and Θ(j) ∈ 100 .Correspondingly, X is a nm × 100 matrix and Θ is a nu × 100 matrix. The collaborative filtering algorithm in the setting of Go Green Model considers a set of Suggestions rating. To create a Suggestion rating table, I have taken example of movie ratings. In Suggestion rating table, Suggestions are rated by different users based on their parameters and features of the Suggestion. Table 4.2 shows the feature vector of each suggestion. Table 4.3 shows User’s parameter vector Source for suggestion database is 50waystosaveplanet.org. The collaborative filtering algorithm[55] in the setting of suggestions recommendations considers a set of n-dimensional parameter vectors x(1) ......x(nm ) and Θ(1) ......Θ(nu ) , where the model predicts rating for suggestion i by user j as y (i,j) = (Θ(j) )T x(i) .Given a dataset that consists of a set of ratings produced by some users on some suggestions, we learn the parameter vectors x(1) .....x(nm ) , Θ(1) ....Θ(nu ) that produce the best fit(minimizes the squared error)[56]. 39
  48. 48. 3.3.3 Collaborative Filtering algorithm implementation for Go Green Table 3.2: Suggestion Feature Vector SuggestionTitle Age_13_20 Age_20_40 Adopt a Plant 0.2 0.3 Walk to your desired destination 0.45 0.45 CHANGE YOUR LIGHT 0.2 0.45 TURN OFF COMPUTERS AT NIGHT 0.34 0.33 DON’T RINSE 0.34 0.33 DO NOT PRE-HEAT THE OVEN 0.34 0.33 RECYCLE GLASS 0.34 0.33 DIAPER WITH A CONSCIENCE 0.2 0.6 HANG DRY 0.33 0.34 GO VEGETARIAN ONCE A WEEK 0.33 0.34 WASH IN COLD OR WARM 0.33 0.34 USE ONE LESS PAPER NAPKIN 0.2 0.6 USE BOTH SIDES OF PAPER 0.2 0.6 RECYCLE NEWSPAPER 0.2 0.6 WRAP CREATIVELY 0.4 0.4 RETHINK BOTTLED WATER 0.33 0.34 BAN BATHTIME! 0.33 0.34 BRUSH WITHOUT RUNNING 0.34 0.33 SHOWER WITH YOUR PARTNER 0.2 0.6 TAKE A SHORTER SHOWER 0.33 0.34 PLANT A TREE 0.33 0.34 USE YOUR CRUISE CONTROL 0.2 0.6 SECOND-HAND DOESN’T MEAN SECOND-BEST 0.4 0.3 BUY LOCAL 0.3 0.6 ADJUST YOUR THERMOSTAT 0.33 0.34 INVEST IN YOUR OWN COFFEE CUP 0.1 0.6 BATCH ERRANDS 0.2 0.6 TURN OFF LIGHTS 0.33 0.34 GREENER LAWN CARE 0.2 0.4 PICNIC WITH A MARKER 0.33 0.34 RECYCLE OLD CELL PHONES 0.1 0.5 MAINTAIN YOUR VEHICLE 0.1 0.5 RECYCLE UNWANTED WIRE HANGERS 0.2 0.4 TELECOMMUTE 0.2 0.4 KEEP YOUR FIREPLACE DAMPER CLOSED 0.1 0.5 CUT DOWN ON JUNK MAIL 0.2 0.4 CHOOSE MATCHES OVER LIGHTERS 0.1 0.5 LET YOUR FINGERS DO THE WALKING—ONLINE 0.33 0.34 40
  49. 49. 3.3.3 Collaborative Filtering algorithm implementation for Go Green User id 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 Table 3.3: User paramter vector firstname Prob_age Prob_loc Prob_wea Prob_sug Dhara 0.78 0.23 0.23 0.78 Ishan 0.54 0.56 0.56 0.34 Mandeep 0.89 0.53 0.23 0.45 Vladimir 0.3 0.8 0.7 0.1 Ifeoma 0.4 0.1 0.4 0.1 Carlos 0.1 0.2 0.7 0.7 Daniel 0.5 0.9 0.7 0.3 Malachi 0.5 0.2 0.6 0.8 Irene 0.3 0.1 0.7 0.4 Kirsten 0.5 0.4 0.8 0.2 Gillian 0.8 0.6 0.5 0.4 Ciaran 0.8 0.3 0.2 0.1 Adam 0.2 0.8 0.2 0.9 Inez 0.3 0.5 0.1 0.3 Nola 0.7 0.9 0.4 0.9 Cheyenne 0.6 0.2 0.2 0.1 Isabella 0.7 0.8 0.9 0.1 Timothy 0.8 0.2 0.4 0.7 Caryn 0.5 0.2 0.9 0.3 Jasmine 0.7 0.6 0.8 0.7 Minerva 0.5 0.4 0.9 0.8 Bruce 0.9 0.5 0.5 0.5 Omar 0.7 0.6 0.6 0.8 Reuben 0.2 0.1 0.2 0.8 Garth 0.9 0.6 0.3 0.3 Willa 0.5 0.9 0.2 0.8 Macon 0.1 0.1 0.2 0.7 Beck 0.6 0.4 0.9 0.8 Ruth 0.9 0.4 0.9 0.9 Halla 0.9 0.1 0.2 0.3 Lois 0.7 0.1 0.9 0.7 Clare 0.1 0.1 0.7 0.4 Wilma 0.2 0.7 0.3 0.3 Hilda 0.4 0.4 0.6 0.7 Latifah 0.9 0.9 0.6 0.4 Victoria 0.5 0.8 0.4 0.8 Margaret 0.1 0.3 0.6 0.2 Randall 0.1 0.2 0.8 0.3 Orson 0.3 0.6 0.8 0.6 Alec 0.5 0.8 0.6 0.1 41
  50. 50. 3.3.3 Collaborative Filtering algorithm implementation for Go Green Collaborative Filtering Cost Function The collaborative filtering cost function (without regularization) is given by[57] J(x(1) ...x(nm ) , Θ(1) ....Θ(nu ) ) = 1 2 ((Θ(j) )T x(i) − y (i,j) )2 (3.3.2) (i;j):r(i;j)=1 Accumulation of the cost for user j and suggestion i is done only if R(i,j) = 1. Expected output is to see 22.22 . I have used a vectorized implementation to compute J , since it will later be called many times by the optimization package fmincg. As usual, it might be easiest to first write a non-vectorized implementation (to make sure I have the right answer), and the modify it to become a vectorized implementation(checking that the vectorization steps don’t change your algorithm’s out-put).I have used the R matrix to set selected entries to 0. For example, R .* M will do an element-wise multiplication between M and R, since R only has elements with values either 0 or 1, this has the effect of setting the elements of M to 0 only when the corresponding value in R is 0. Hence, sum(sum(R.*M)) is the sum of all the elements of M for which the corresponding element in R equals 1. Collaborative Filtering Gradient The gradients of the cost function is given by ∂J (i) ∂xk ∂J (j) ∂Θk (j) (3.3.3) (i) (3.3.4) ((Θ(j) )T x(i) − y (i,j) )Θk = (j:r(i,j)=1) = ((Θ(j) )T x(i) − y (i,j) )xk (i:r(i,j)=1) Function returns the gradient for both sets of variables by unrolling them into a single vector. The implementation of gradient is done with a for-loop over suggestions for computing a for-loop over users (for computing ∂J .When the first implementation of gra(j) ∂J (i) and ∂xk ∂Θk dient, we start with an in-vectorized version, by implementing another inner for-loop that computes each element in the summation. After having completed the gradient computation this way, we try to vectorize our implementation (vectorize the inner for-loops), so that we left with only two for-loops (one for looping over suggestions to compute ∂J (i) for each suggestion, and one for looping over users to compute ∂J (j) ∂Θk ∂xk for each user). To perform the vectorization, following approach is adopted: To compute all the (i) (i) (i) derivatives associated with x1 ,x2 ,....,xn (i.e., the derivative terms associated with the feature vector x(i) at the same time. To define the derivatives for the feature vector of 42
  51. 51. 3.3.4 Regularized Cost Function the i-th suggestion as:         T (Xgrad (i, :)) =        ∂J (i) ∂x1 ∂J (i) ∂x2 . . . . ∂J (i) ∂xn         ((Θj )T x(i) − y (i,j) )Θ(j) =   j:r(i,j)=1     (3.3.5) To vectorize the above expression, we start by indexing into Theta and Y to select only the elements of interests (that is, those with r(i; j ) = 1). Intuitively, when we consider the features for the i-th suggestion, we only need to be concern about the users who had given ratings to the suggestion, and this allows you to remove all the other users from Theta and Y. Concretely, we can set idx = find(R(i,:)==1) to be a list of all the users that have rated suggestion i. This allow us to create the temporary matrices T hetatemp = Theta(idx,:) and Ytemp = Y(i,idx) that index into Theta and Y to give you only the set of users which have rated the i-th suggestion. This allow us to write the derivatives as: Xgrad (i; :) = (X(i; :) ∗ T hetaT − Ytemp ) ∗ T hetatemp temp (3.3.6) The vectorized computation above returns a row-vector instead. After we have vectorized the computations of the derivatives with respect to x(i) . We use a similar method to vectorize the derivatives with respect to Θ(j) as well. Implementation of Cost function, Numerical Gradient, Gaussian Distribution, Multivariate Gaussian Distribution, Normalization of Ratings of Suggestions and Visualize Fit in Go Green Model is shown in appendix 3.3.4 Regularized Cost Function The cost function for collaborative filtering with regularization is given by J(x (1) (nm ) , ...x (1) ,Θ 1 , ..., Θ(n(u) )) = 2 λ ) x −y i, j) )+( 2 (j) T (i) ((Θ (i,j):r(i,j)=1 ( nu n 2 j=1 k=1 λ (j) (Θk )2 )+( 2 nm (i) (xk )2 ) i=1 k=1 (3.3.7) Regularization of the cost function brings the value to around 31.34 . 43 n
  52. 52. 3.3.5 Regularized Gradient Figure 3.8: Heroku Dashboard 3.3.5 Regularized Gradient The Gradients for regularized cost function is given by: ∂J (i) ∂xk ∂J (j) ∂Θk = (j) (i) (3.3.8) (i) (j) (3.3.9) ((Θ(j) )T x(i) − y (i,j) )Θk + λxk j:r(i,j)=1 = ((Θ(j) )T x(i) − y (i,j) )xk + λΘk i:r(i,j)=1 3.4 Social Network Platform The Facebook app is on Heroku server and is maintained via its dashboard. Figure 5.4 is a snapshot of the dashboard. and figure 5.5 is a snapshot of how database can be allotted via this dashboard. 44
  53. 53. 3.5 Use of NLI/NLP in Go Green Model Figure 3.9: Heroku Resources and Database Management on Dashboard 3.5 Use of NLI/NLP in Go Green Model Natural Language Processing/ Natural Language Interactions via Chat bot on Go Green website. This implementation is done using Acobot Api.[58] Implementation is useful for following purposes • Improve recommender system based on log of Chat bot. • Enhance User Experience 3.5.1 QR Code In this section I present the QR Code implemented with Visual Lead Api. Upon Scanning the QR Code, user can visit the Go Green website. Mobile version of the website: QR Code is implemented for following purposes • Increase Social Network impact • Enhance User Experience 45
  54. 54. 3.6 My take on: Carbon Footprint Analysis Figure 3.10: QR Code Go Green • Create big presence of Go Green • Implements a mechanism to verify completion of Green Acts 3.6 My take on: Carbon Footprint Analysis Carbon footprint analysis can be one of the most complex analysis if you wish to calculate every detail. It can be simplified if you make educated assumptions. Usually Carbon Foot print Analysis of a product is done by calculating how much carbon is being released during the entire process of making the product to the product reaching the consumer. In this era of Globalization, it is extremely difficult to justify the Carbon foot print calculation and its offsetting. To justify my take I present the following example: As my current location is based in Switzerland, my example is from Switzerland. In Migros and Coop, there are products from varied countries like Kiwis from New Zealand, Litchis from Madagascar clearly the transportation and importation regulations on these products increases its carbon foot print. So is the solution to grow these products locally? Strangely answer is No as the fruits which grow in tropical environment cannot grow naturally in hilly region. To create a tropical environment in hilly region, it requires construction of houses which are heated externally, this heating process eventually increases carbon footprint of the products more than the imported food products. 46
  55. 55. 3.6 My take on: Carbon Footprint Analysis Figure 3.11: QR Code Go Green 47
  56. 56. 3.6.1 Proposed Model of Carbon Accounting Analysis with Go Green Secondly we talk about how Carbon offsetting mechanism is working, Non profit organizations are calculating the Carbon foot print of an individual or company and suggesting how much plants they would grow in under developed countries or developing countries to offset the Carbon emitted by the individual. Instead of following a complex method carbon offsetting and carbon emissions, Go Green Model a simple yet effective way for an individual to subside their carbon footprint. 3.6.1 Proposed Model of Carbon Accounting Analysis with Go Green In this section I will present how Go Green is using Carbon Footprint in a gamified concept. Carbon Footprint is used in following model of Go Green: • Growth Model • Game Logic Above to model shows use of Carbon Footprint in Go Green in most simplest way. Growth Model In Growth Model, Player gets Green coins depending on his/her Green Act follower. For e.g. If Player A suggested/followed a green act such as "Planting a tree" then his wall is updated with this green act and corresponding green coins. Green coins are calculated on the basis of Carbon footprint reduction of the act. If Player A’s act is followed by other players then A gets bonus green coins equivalent to 25 percent of the carbon footprint reduction. Game Logic Green Acts are divided into 3 categories as following: 48
  57. 57. 3.6.1 Proposed Model of Carbon Accounting Analysis with Go Green • Low (Green Coins) • Medium (Yellow Coins) • High (Blue Coins) Acts are categorized on the basis of the Carbon Footprint reduction. Higher the reduction of Carbon Footprint by an act, higher is the value of the coin. 49
  58. 58. 4 Work Evaluation 4 Work Evaluation In this chapter I present the evaluation of the thesis work. 4.1 Feasibility evaluation of the concept Before researching on the topic of Carbon Footprint, Recommender Systems, Social Network platform and Gamification, a survey of around 25 students was taken. This survey was conducted to know the students view regarding Carbon Footprint, their favourite social networking site and their percent of activity on social networking site. The survey questions can be as seen below: 1). Which is your favorite social networking website? 2). which online games you like? 3). Do you prefer online or mobile game? 4). What do they do for green environment? 5). Do you have any idea about Carbon foot print? What is your perception? No researc 6). what is your definition of „cool game“? 7). Would you be inspire by a game which is both social and for good cause? 8). Do you update everything on Social Networking website? 9). Do you get competitive in game? Results of the survey are represented in the form of pie chart in figure 4.1, 4.2, 4.3. The above survey motivated me to develop Go Green model. 50
  59. 59. 4.1 Feasibility evaluation of the concept Figure 4.1: Percentage distribution of Social Networking Site as per survey Figure 4.2: Activity distribution on Online Games by Students as per survey Figure 4.3: Willingness of Students to play Go Green as per survey 51
  60. 60. 4.2 Mock Representation Figure 4.4: Go Green Concept 4.2 Mock Representation In this section I present the initial mock representation of the Website, initially Go Green was termed as "Greducate" for Green Education The Mock representation defined the graphics and outlook of the Go Green Model. 4.3 Project Time line Table given in this section presents the project time line. 4.4 Evaluation of Recommender Systems Collaborative Filtering algorithm implemented for the Go Green Model is the on the basis of exercise given in the Machine Learning course by Prof. Andrew Ng of Stanford University. 52
  61. 61. 4.4 Evaluation of Recommender Systems Figure 4.5: Project Time line 53
  62. 62. 4.4.1 Cost Function value The exercise was modelled for movie suggestion database. I had modified the exercise for green suggestion database. The Suggestions like movies have features such as age, location, weather and category according to Carbon Footprint. Movies too have features such as romantic, action, drama etc. Hence the exercise suited well for the Go Green model. According to the exercise, I present the expected values and the actual values of the parameters from the algorithm. 4.4.1 Cost Function value After loading the Suggestion database the value of the cost function is expected to be near 22.22 The Actual output: Loading suggestion ratings dataset. Average rating for suggestion 1 (Adopt a Plant): 3.878319 / 5 Program paused. Press enter to continue. Cost at loaded parameters: 22.224604 After the Cost function, gradient calculation of the user and suggestion without regularization. Both the gradients are expected to be same only then the implementation of the algorithm is correct as the left hand side gradient is generated by the code I have implemented and right hand side gradient is analytical value of the gradient. The Actual output: Checking Gradients (without regularization) ... 5.5335 5.5335 3.6186 3.6186 5.4422 5.4422 -1.7312 -1.7312 4.1196 4.1196 -1.4833 -1.4833 -6.0734 -6.0734 2.3490 2.3490 7.6341 7.6341 1.8651 1.8651 54
  63. 63. 4.4.1 Cost Function value 4.1192 -1.5834 1.2828 -6.1573 1.6628 1.1686 5.5630 0.3050 4.6442 -1.6691 -2.1505 -3.6832 3.4067 -4.0743 0.5567 -2.1056 0.9168 4.1192 -1.5834 1.2828 -6.1573 1.6628 1.1686 5.5630 0.3050 4.6442 -1.6691 -2.1505 -3.6832 3.4067 -4.0743 0.5567 -2.1056 0.9168 I have also implemented the back propagation algorithm and to see if that algorithm is correct or not relative difference between the algorithm and back propagation should be less than 1e-9. The Actual Output: Relative Difference: 1.884e-012 Now to check the Cost function implementation with regularization, where the lamda value is 1.5, should be around 31.34 The Actual Output: Cost at loaded parameters (lambda = 1.5): 31.344056 Now to check the gradients with regularization, again the left side which shows the gradient value according to the my implementation should be equal to the right hand side which analytically calculated. The Actual output: Checking Gradients (with regularization) ... 2.2223 2.2223 55
  64. 64. 4.4.2 Recommendations 0.7968 -3.2924 -0.7029 -4.2016 3.5969 0.8859 1.0523 -7.8499 0.3904 -0.1347 -2.3656 2.1066 1.6703 0.8519 -1.0380 2.6537 0.8114 -0.8604 -0.5884 -0.7108 -4.0652 0.2494 -4.3484 -3.6167 -4.1277 -3.2439 0.7968 -3.2924 -0.7029 -4.2016 3.5969 0.8859 1.0523 -7.8499 0.3904 -0.1347 -2.3656 2.1066 1.6703 0.8519 -1.0380 2.6537 0.8114 -0.8604 -0.5884 -0.7108 -4.0652 0.2494 -4.3484 -3.6167 -4.1277 -3.2439 The Relative difference with back propagation algorithm is expected to be less than 1e-9. The Actual output: Relative Difference: 1.83463e-012 4.4.2 Recommendations After the cost function and gradient calculation with and without regularization is completed. Training of Collaborative Filtering is executed and new recommendations are provided for the user. The Actual output: 56
  65. 65. 4.4.2 Recommendations New user ratings: Rated 4 for Adopt a Plant Rated 3 for RECYCLE GLASS Rated 5 for USE ONE LESS PAPER NAPKIN Rated 4 for TURN OFF COMPUTERS AT NIGHT Rated 5 for RECYCLE NEWSPAPER Rated 3 for RETHINK BOTTLED WATER Rated 5 for SHOWER WITH YOUR PARTNER Rated 2 for PAY BILLS ONLINE Rated 4 for RECYCLE UNWANTED WIRE HANGERS Rated 5 for INVEST IN YOUR OWN COFFEE CUP Rated 5 for DON’T RINSE Program paused. Press enter to continue. Training collaborative filtering... Iteration 1 | Cost: 9.396285e+005 Iteration 2 | Cost: 6.666086e+005 Iteration 3 | Cost: 3.738138e+005 Iteration 4 | Cost: 2.677902e+005 Iteration 5 | Cost: 2.162663e+005 Iteration 6 | Cost: 1.860012e+005 Iteration 7 | Cost: 1.533258e+005 Iteration 8 | Cost: 1.393118e+005 Iteration 9 | Cost: 1.301015e+005 Iteration 10 | Cost: 1.242570e+005 Iteration 11 | Cost: 1.123334e+005 Iteration 12 | Cost: 1.076199e+005 Iteration 13 | Cost: 1.047996e+005 Iteration 14 | Cost: 1.014198e+005 Iteration 15 | Cost: 9.748547e+004 Iteration 16 | Cost: 9.535378e+004 Iteration 17 | Cost: 9.406114e+004 Iteration 18 | Cost: 9.044542e+004 Iteration 19 | Cost: 8.810258e+004 Iteration 20 | Cost: 8.661802e+004 Iteration 21 | Cost: 8.582420e+004 Iteration 22 | Cost: 8.380500e+004 Iteration 23 | Cost: 8.258747e+004 Iteration 24 | Cost: 8.226757e+004 Iteration 25 | Cost: 8.137694e+004 Iteration 26 | Cost: 8.085946e+004 Iteration 27 | Cost: 8.054899e+004 Iteration 28 | Cost: 7.950229e+004 57
  66. 66. 4.4.2 Recommendations Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: 7.680273e+004 7.505874e+004 7.450333e+004 7.430923e+004 7.417926e+004 7.408801e+004 7.388377e+004 7.377181e+004 7.369190e+004 7.363752e+004 7.350740e+004 7.342734e+004 7.334142e+004 7.327850e+004 7.320158e+004 7.309433e+004 7.304350e+004 7.301962e+004 7.299902e+004 7.294466e+004 7.286522e+004 7.282507e+004 7.280434e+004 7.278366e+004 7.277208e+004 7.273913e+004 7.269305e+004 7.261713e+004 7.256071e+004 7.249054e+004 7.241182e+004 7.236394e+004 7.234577e+004 7.233107e+004 7.232003e+004 7.229522e+004 7.227202e+004 7.226215e+004 7.225619e+004 7.224982e+004 7.223554e+004 7.221996e+004 7.218638e+004 7.216271e+004 58
  67. 67. 4.4.2 Recommendations Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration Iteration 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: Cost: 7.214804e+004 7.212758e+004 7.211296e+004 7.210035e+004 7.209291e+004 7.208786e+004 7.208096e+004 7.207600e+004 7.207229e+004 7.207014e+004 7.206521e+004 7.206079e+004 7.205799e+004 7.205063e+004 7.204131e+004 7.203311e+004 7.202990e+004 7.202663e+004 7.202195e+004 7.201899e+004 7.201687e+004 7.201491e+004 7.201319e+004 7.201007e+004 7.200868e+004 7.200815e+004 7.200704e+004 7.200643e+004 Recommender system learning completed. Program paused. Press enter to continue. Top recommendations for you: Predicting rating 8.6 for suggestion Predicting rating 8.5 for suggestion Predicting rating 8.3 for suggestion Predicting rating 8.3 for suggestion Predicting rating 8.2 for suggestion Predicting rating 8.2 for suggestion Predicting rating 8.1 for suggestion Predicting rating 8.0 for suggestion Predicting rating 8.0 for suggestion Predicting rating 8.0 for suggestion USE RECHARGABLE BATTERIES USE BOTH SIDES OF PAPER RECYCLE NEWSPAPER BUY LOCAL BRUSH WITHOUT RUNNING USE YOUR CRUISE CONTROL USE YOUR CRUISE CONTROL USE ONE LESS PAPER NAPKIN RETHINK BOTTLED WATER USE YOUR CRUISE CONTROL 59
  68. 68. 4.4.3 Test Results of Latency of Collaborative Filtering Algorithm Original ratings provided: Rated 4 for Adopt a Plant Rated 3 for RECYCLE GLASS Rated 5 for USE ONE LESS PAPER NAPKIN Rated 4 for TURN OFF COMPUTERS AT NIGHT Rated 5 for RECYCLE NEWSPAPER Rated 3 for RETHINK BOTTLED WATER Rated 5 for SHOWER WITH YOUR PARTNER Rated 2 for PAY BILLS ONLINE Rated 4 for RECYCLE UNWANTED WIRE HANGERS Rated 5 for INVEST IN YOUR OWN COFFEE CUP Rated 5 for DON’T RINSE 4.4.3 Test Results of Latency of Collaborative Filtering Algorithm Latency output: Given a training set x1 ,....,xm where xi R), I want to estimate the Gaussian distri¸ i bution for each of the features x . For each feature i = 1,...n, I need to find parameters 2 µi and σi that fit the data in the i-th dimension x1 ,.....,xm (the i-th dimension of each i i example). The Gaussian distribution is given by −(x−µ)2 1 e 2σ2 p(x; µ, σ 2 ) = √ 2Πσ 2 (4.4.1) where µ is the mean and σ 2 controls the variance. Significance of this test result is it helps us understand that suggestion features and user parameter fit the Gaussian model. Latency Output with Outliers: Figure 4.7 helps us point out the outliers in the user suggestion database model which helps us adjust the lambda value of the cost function with regularization. Figure 4.8 presents the adjusted Outliers model with adjusted value of lamba to incorporate the the outliers too in to the model. 60
  69. 69. 4.4.3 Test Results of Latency of Collaborative Filtering Algorithm Figure 4.6: Latency Output of Recommender Collaborative Filtering Algorithm Figure 4.7: Outliers pointed out in Latency Output of Recommender Collaborative Filtering Algorithm 61
  70. 70. 4.4.3 Test Results of Latency of Collaborative Filtering Algorithm Figure 4.8: Throughput calculation of the θ0 and θ1 . Throughput output of the Collaborative filtering algorithm, during distinguishing of the suggestions category. Gradient increment of θ0 and θ1 Figure 4.9 shows the gradient increment of θ0 and θ1 during the iteration of the collaborative filtering algorithm while being trained with cost function. 62
  71. 71. 4.4.3 Test Results of Latency of Collaborative Filtering Algorithm Figure 4.9: Outliers pointed out in Latency Output of Recommender Collaborative Filtering Algorithm 63
  72. 72. 5 Discussions and Conclusion 5 Discussions and Conclusion 5.1 Project Experience Master Thesis has been a great research experience. Moreover the freedom to formulate own Thesis proposal was the highlight of this experience. I had the opportunity to choose my own area of research and area of applicability. I had learnt a lot in this Thesis. I wasn’t aware of Gamification, Recommender Systems, Facebook App development, NLI/NLP, QR code, Carbon Footprint and as a matter of fact not even Latex. But at the end of the thesis I am quite comfortable with each of the research topics and have considerable amount of knowledge both practical and theoretical. The Journey of thesis has been intense as I had chosen my own thesis proposal and also being the only student working on this entire concept, I had to figure out each and every topic by my own self. Every learning experience was precious as I had found the way myself. Brain storming sessions with professors were very helpful, it help me take up the right direction during the course of thesis. Overall it was a fulfilling experience and inclusion of this project into Bearing point be.project finals just ensures that this project has a long way to go. 5.2 Conclusion The goal of this Master Thesis was to present a model which can motivate online energy conservation is much more simple yet sophisticated way. The above goal is achieved but the implementation of this model is incomplete due to constrain of time and enormous amount of research put into the concept. But as the conceptual model and its proof of concept are implemented, road ahead seems not so complicated. 64
  73. 73. 5.2 Conclusion Goal was to incorporate Gamification is a non- game concept which was very much successful by incorporation of growth model and reward system by green coins model. Goal was to incorporate Social Network platform to encourage energy conservation which was very much achieved by the Facebook integrated Go Green app and dedicated page for Go Green on Facebook. Goal was to incorporate recommender systems to provide contextual suggestion which was achieved by matlab implementation of the Collaborative Filtering algorithm and User-Correlation Suggestion model. Entire recommender systems model is created specifically for Go Green after careful study and implementation of various machine learning algorithms such as linear regression and logistic regression. Goal was to research and understand in depth Carbon footprint and its calculation. All in all, this Master Thesis presents a unique model to inspire online energy conservation using concepts such as gamification, recommender systems, social network platform and carbon footprint which has potential to grow and expand as a global standard for motivating energy conservation online. 65
  74. 74. 6 Future Recommendations and Work 6 Future Recommendations and Work 6.1 Future Work and recommendations Go Green Model has immense potential to expand both on People and Industrial front. On the People front, inclusion of the concept of Crowd Sourcing can benefit the project immensely.[[59],[60],[61],[62],[63]] Simple inclusion of Green suggestions from the people can encourage them participate in the website more and expand the green suggestion database immensely. On Industry level, there are many companies which look after their carbon foot print and even countries have policies to see companies are not harming the environment on their way to progress. But every company and country have rules and regulations tailor made for their needs. Developing countries have lenient rules regarding environmental policies as for them development is more important. This lack of Global standards in policy can be fulfilled by Go Green Model where each and every country can be measured via Go Green model. Future work for Go Green Model are as following: • Improved Graphic integration of the website • Complete implementation of Recommender System on Facebook • Elaborate NLI/NLP technology for Go Green Recommendations for Go Green are as following: • Collaboration with Energy Distributors/Producers to promote Go Green Model. • Integration with NGOs promoting energy conservation to promote Go Green Model 66
  75. 75. References Bibliography [1] P. D. K. Werbach, “Gamification Course,” [2] E. C. J. R. C. Ipts, “Social Computing : Study on the Use and Impact of Online Social Networking,” 2008. [3] R. English and J. Duncan-howell, “Facebook c Goes to College : Using Social Networking Tools to Support Students Undertaking Teaching Practicum,” vol. 4, no. 4, pp. 596–601, 2008. [4] “Facebook App Development,” [5] G. Adomavicius and A. Tuzhilin, “Toward the next generation of recommender systems: a survey of the state-of-the-art and possible extensions,” 2005. [6] T. R. Karl and K. E. Trenberth, “Modern global climate change.,” Science (New York, N.Y.), vol. 302, pp. 1719–23, Dec. 2003. [7] “Google Green,” [8] “My Climate,” [9] C. Vlek and L. Steg, “? Human Behavior and Environmental Sustainability: Problems, Driving Forces, and Research Topics,” Journal of Social Issues, vol. 63, pp. 1– 19, Mar. 2007. [10] A. Ars and B. College, “NIH Public Access,” vol. 34, no. 1, pp. 74–82, 2009. [11] B. D. Ng and P. Wiemer-Hastings, “Addiction to the internet and online gaming.,” Cyberpsychology & behavior : the impact of the Internet, multimedia and virtual reality on behavior and society, vol. 8, pp. 110–3, Apr. 2005. [12] “Simple Energy,” [13] “US20080306801.pdf.” [14] J. Gardner and J. Samson, “Photoelectron branching ratios with a cylindrical mirror energy analyzer,” Journal of Electron Spectroscopy and Related Phenomena, vol. 2, no. 3, pp. 267 – 275, 1973. [15] S. Boess and H. Brezet, “Exploring the use of a game to stimulate energy saving in households Daphne Geelen *, David Keyson ,,” vol. 10, pp. 102–120, 2012. 67
  76. 76. References [16] “Energiesparen fördern durch psychologische Interventionen 1,” pp. 1–25. [17] P. W. Schultz, “Presented at the 2008 Behavior, Energy, and Climate Change (BECC) conference. Sacramento, CA.,” 2008. [18] A. Derryberry and I. Serious, “Serious games : online games for learning,” [19] W. Hill, L. Stead, M. Rosenstein, and G. Furnas, “Recommending and evaluating choices in a virtual community of use,” in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, CHI ’95, (New York, NY, USA), pp. 194– 201, ACM Press/Addison-Wesley Publishing Co., 1995. [20] P. Resnick, N. Iacovou, M. Suchak, P. Bergstrom, and J.Riedl, “Grouplens: An open architecture for collaborative filtering of netnews,” In Proceedings of the ACM Conference on Computer Supported Cooperative Work (CSCW’94), pp. 175–186, October 22–26 1994. [21] U. Shardanand and P. Maes, “Social information filtering: algorithms for automating word of mouth,” in Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, CHI ’95, (New York, NY, USA), pp. 210–217, ACM Press/Addison-Wesley Publishing Co., 1995. [22] E. Rich, “User Modeling via Stereotypes *,” vol. 354, 1979. [23] J. Powell, Approximation Theory and Methods. Cambridge University Press, 1981. [24] G. Salton, Automatic text processing: the transformation, analysis, and retrieval of information by computer. Boston, MA, USA: Addison-Wesley Longman Publishing Co., Inc., 1989. [25] J. Armstrong, Principles of Forecasting: A Handbook for Researchers and Practitioners. International Series in Operations Research & Management Science, Springer, 2001. [26] B. P. S. Murthi and S. Sarkar, “The role of the management sciences in research on personalization,” Manage. Sci., vol. 49, pp. 1344–1362, Oct. 2003. [27] G. L. Lilien, P. Kotler, and K. S. Moorthy, Marketing models. Prentice-Hall Englewood Cliffs, 1992. [28] M. Balabanović and Y. Shoham, “Fab: content-based, collaborative recommendation,” Commun. ACM, vol. 40, pp. 66–72, Mar. 1997. [29] M. Stevens, “A Coordinate Descent Algorithm for Learning Compact Ranking Functions,” pp. 1–12. [30] R. E. Schapire and Y. Singer, “Improved boosting algorithms using confidence-rated predictions,” Mach. Learn., vol. 37, pp. 297–336, Dec. 1999. 68
  77. 77. References [31] A. Kolobov, Mausam, and D. S. Weld, “Retrase: integrating paradigms for approximate probabilistic planning,” in Proceedings of the 21st international jont conference on Artifical intelligence, IJCAI’09, (San Francisco, CA, USA), pp. 1746–1753, Morgan Kaufmann Publishers Inc., 2009. [32] A. Hotho, “Learning in Web Search Guest Editors : Stephan Bloehdorn,” vol. 30, no. 2, 2006. [33] S. Alvarez-napagao and J. Vázquez-salceda, “USE : a Multi-Agent User-Driven Recommendation System for Semantic Knowledge Extraction,” [34] Z. Malik and C. Fyfe, “Review of web personalization,” Journal of Emerging Technologies in Web Intelligence, vol. 4, no. 3, 2012. [35] M. J. Pazzani, “A framework for collaborative, content-based and demographic filtering,” Artif. Intell. Rev., vol. 13, pp. 393–408, Dec. 1999. [36] A. I. Schein, A. Popescul, L. H. Ungar, and D. M. Pennock, “Methods and metrics for cold-start recommendations,” in Proceedings of the 25th annual international ACM SIGIR conference on Research and development in information retrieval, SIGIR ’02, (New York, NY, USA), pp. 253–260, ACM, 2002. [37] G. Adomavicius, R. Sankaranarayanan, S. Sen, and A. Tuzhilin, “Incorporating contextual information in recommender systems using a multidimensional approach,” ACM Trans. Inf. Syst., vol. 23, pp. 103–145, Jan. 2005. [38] L. H. Ungar and D. P. Foster, “Clustering methods for collaborative filtering,” in Workshop on Recommender Systems at the 15th National Conference on Artificial Intelligence (AAAI’98), (Madison, Wisconsin, USA), pp. 112–125, AAAI Press, July 1998. [39] A.-L. Barabasi, “Linked the new science of networks,” 2002. [40] R. Gross and A. Acquisti, “Information revelation and privacy in online social networks,” in Proceedings of the 2005 ACM workshop on Privacy in the electronic society, WPES ’05, (New York, NY, USA), pp. 71–80, ACM, 2005. [41] S. Whittaker, Q. Jones, B. Nardi, M. Creech, L. Terveen, E. Isaacs, and J. Hainsworth, “Contactmap: Organizing communication in a social desktop,” ACM Trans. Comput.-Hum. Interact., vol. 11, pp. 445–471, Dec. 2004. [42] J. R. Corwin, “Social Networking Phenomena In The First-Year Experience,” vol. 8, no. 1, pp. 25–38, 2011. [43] L. Gouveia, L. Pereira, M. Scott, and I. Oakley, “Eco-Avatars : Visualizing Disaggregated Home Energy Use,” pp. 5–6, 2012. [44] “Bill MacCartney June 2009,” no. June, 2009. 69

×