SlideShare a Scribd company logo
1 of 91
Download to read offline
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
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
iii
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

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
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

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
2.2 Recommender Systems

Figure 2.3: Serious Game Model [1]

12
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
2.2.1 State of the Art: Recommender Systems

Flow Diagram-Recommender System.png

Figure 2.4: Recommender System Model

14
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
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
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
2.3.2 Facebook App Architecture

Figure 2.6: Time line of Social Network Sites is taken from [3]

18
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
2.4 NLI/NLP

Figure 2.7: Facebook Architecture is taken from [4]

20
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
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
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
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
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
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
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
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
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
3.2.1 Concept of Go Green for Gamification

Figure 3.3: Proposed Entity-Relationship Diagram

30
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
3.2.3 Game Design in Go Green

Figure 3.4: Go Green Growth Model Icons

32
3.2.3 Game Design in Go Green

Figure 3.5: Go Green Growth Model Icons

Figure 3.6: Go Green App Icon

33
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
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
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
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
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
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
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
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
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
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
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
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
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
3.6 My take on: Carbon Footprint Analysis

Figure 3.11: QR Code Go Green
47
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
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
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
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
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
4.4 Evaluation of Recommender Systems

Figure 4.5: Project Time line

53
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis
Master thesis

More Related Content

What's hot

Reynard Arlow Final Year Project
Reynard Arlow Final Year ProjectReynard Arlow Final Year Project
Reynard Arlow Final Year ProjectReynard Arlow
 
Auto cad20042d tutorial
Auto cad20042d tutorialAuto cad20042d tutorial
Auto cad20042d tutorialHerry Mulyadie
 
ARQUIVO ROUBADO
ARQUIVO ROUBADOARQUIVO ROUBADO
ARQUIVO ROUBADOD813061988
 
Nweke digital-forensics-masters-thesis-sapienza-university-italy
Nweke digital-forensics-masters-thesis-sapienza-university-italyNweke digital-forensics-masters-thesis-sapienza-university-italy
Nweke digital-forensics-masters-thesis-sapienza-university-italyAimonJamali
 
Mysql tutorial-excerpt-5.1-en
Mysql tutorial-excerpt-5.1-enMysql tutorial-excerpt-5.1-en
Mysql tutorial-excerpt-5.1-enRifky Rachman
 
UCHILE_M_Sc_Thesis_final
UCHILE_M_Sc_Thesis_finalUCHILE_M_Sc_Thesis_final
UCHILE_M_Sc_Thesis_finalGustavo Pabon
 
Red hat storage-3-administration_guide-en-us
Red hat storage-3-administration_guide-en-usRed hat storage-3-administration_guide-en-us
Red hat storage-3-administration_guide-en-usTommy Lee
 
Comparing Game Development on the Android and Windows Phone 7 Platforms.
Comparing Game Development on the Android and Windows Phone 7 Platforms.Comparing Game Development on the Android and Windows Phone 7 Platforms.
Comparing Game Development on the Android and Windows Phone 7 Platforms.Ruairí O'Brien
 
Tcxd 300 manual_02.10.10
Tcxd 300 manual_02.10.10Tcxd 300 manual_02.10.10
Tcxd 300 manual_02.10.10jftorresco
 

What's hot (17)

Reynard Arlow Final Year Project
Reynard Arlow Final Year ProjectReynard Arlow Final Year Project
Reynard Arlow Final Year Project
 
Jquery enlightenment
Jquery enlightenmentJquery enlightenment
Jquery enlightenment
 
Dynamics AX/ X++
Dynamics AX/ X++Dynamics AX/ X++
Dynamics AX/ X++
 
Corel draw learning file
Corel draw learning fileCorel draw learning file
Corel draw learning file
 
Auto cad20042d tutorial
Auto cad20042d tutorialAuto cad20042d tutorial
Auto cad20042d tutorial
 
ARQUIVO ROUBADO
ARQUIVO ROUBADOARQUIVO ROUBADO
ARQUIVO ROUBADO
 
Connect now
Connect nowConnect now
Connect now
 
main
mainmain
main
 
Tesi_Gasparetto_Walter
Tesi_Gasparetto_WalterTesi_Gasparetto_Walter
Tesi_Gasparetto_Walter
 
Nweke digital-forensics-masters-thesis-sapienza-university-italy
Nweke digital-forensics-masters-thesis-sapienza-university-italyNweke digital-forensics-masters-thesis-sapienza-university-italy
Nweke digital-forensics-masters-thesis-sapienza-university-italy
 
Plant Simulation Passo a Passo
Plant Simulation Passo a PassoPlant Simulation Passo a Passo
Plant Simulation Passo a Passo
 
Mysql tutorial-excerpt-5.1-en
Mysql tutorial-excerpt-5.1-enMysql tutorial-excerpt-5.1-en
Mysql tutorial-excerpt-5.1-en
 
Final Report
Final ReportFinal Report
Final Report
 
UCHILE_M_Sc_Thesis_final
UCHILE_M_Sc_Thesis_finalUCHILE_M_Sc_Thesis_final
UCHILE_M_Sc_Thesis_final
 
Red hat storage-3-administration_guide-en-us
Red hat storage-3-administration_guide-en-usRed hat storage-3-administration_guide-en-us
Red hat storage-3-administration_guide-en-us
 
Comparing Game Development on the Android and Windows Phone 7 Platforms.
Comparing Game Development on the Android and Windows Phone 7 Platforms.Comparing Game Development on the Android and Windows Phone 7 Platforms.
Comparing Game Development on the Android and Windows Phone 7 Platforms.
 
Tcxd 300 manual_02.10.10
Tcxd 300 manual_02.10.10Tcxd 300 manual_02.10.10
Tcxd 300 manual_02.10.10
 

Viewers also liked

Chatbots 101: an introduction to conversational interfaces for the enterprise
Chatbots 101: an introduction to conversational interfaces for the enterpriseChatbots 101: an introduction to conversational interfaces for the enterprise
Chatbots 101: an introduction to conversational interfaces for the enterpriseSharon O'Dea
 
Chatbots in HR: Improving the Employee Experience
Chatbots in HR: Improving the Employee ExperienceChatbots in HR: Improving the Employee Experience
Chatbots in HR: Improving the Employee ExperienceAmy Kong
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship DiagramShakila Mahjabin
 
Thesis my documentation
Thesis  my documentationThesis  my documentation
Thesis my documentationcas123
 
chatbot and messenger as a platform
chatbot and messenger as a platformchatbot and messenger as a platform
chatbot and messenger as a platformDaisuke Minamide
 
AI Agent and Chatbot Trends For Enterprises
AI Agent and Chatbot Trends For EnterprisesAI Agent and Chatbot Trends For Enterprises
AI Agent and Chatbot Trends For EnterprisesTeewee Ang
 

Viewers also liked (7)

Chatbots 101: an introduction to conversational interfaces for the enterprise
Chatbots 101: an introduction to conversational interfaces for the enterpriseChatbots 101: an introduction to conversational interfaces for the enterprise
Chatbots 101: an introduction to conversational interfaces for the enterprise
 
Chatbots in HR: Improving the Employee Experience
Chatbots in HR: Improving the Employee ExperienceChatbots in HR: Improving the Employee Experience
Chatbots in HR: Improving the Employee Experience
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
 
Thesis my documentation
Thesis  my documentationThesis  my documentation
Thesis my documentation
 
Chapters 1 5
Chapters 1 5Chapters 1 5
Chapters 1 5
 
chatbot and messenger as a platform
chatbot and messenger as a platformchatbot and messenger as a platform
chatbot and messenger as a platform
 
AI Agent and Chatbot Trends For Enterprises
AI Agent and Chatbot Trends For EnterprisesAI Agent and Chatbot Trends For Enterprises
AI Agent and Chatbot Trends For Enterprises
 

Similar to Master thesis

Aidan_O_Mahony_Project_Report
Aidan_O_Mahony_Project_ReportAidan_O_Mahony_Project_Report
Aidan_O_Mahony_Project_ReportAidan O Mahony
 
Specification of the Linked Media Layer
Specification of the Linked Media LayerSpecification of the Linked Media Layer
Specification of the Linked Media LayerLinkedTV
 
Work Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel BelaskerWork Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel BelaskerAdel Belasker
 
UCHILE_M_Sc_Thesis_final
UCHILE_M_Sc_Thesis_finalUCHILE_M_Sc_Thesis_final
UCHILE_M_Sc_Thesis_finalGustavo Pabon
 
bonino_thesis_final
bonino_thesis_finalbonino_thesis_final
bonino_thesis_finalDario Bonino
 
Data over dab
Data over dabData over dab
Data over dabDigris AG
 
project Report on LAN Security Manager
project Report on LAN Security Managerproject Report on LAN Security Manager
project Report on LAN Security ManagerShahrikh Khan
 
Virtual Environments as Driving Schools for Deep Learning Vision-Based Sensor...
Virtual Environments as Driving Schools for Deep Learning Vision-Based Sensor...Virtual Environments as Driving Schools for Deep Learning Vision-Based Sensor...
Virtual Environments as Driving Schools for Deep Learning Vision-Based Sensor...Artur Filipowicz
 
C++ For Quantitative Finance
C++ For Quantitative FinanceC++ For Quantitative Finance
C++ For Quantitative FinanceASAD ALI
 
bkremer-report-final
bkremer-report-finalbkremer-report-final
bkremer-report-finalBen Kremer
 

Similar to Master thesis (20)

Master_Thesis
Master_ThesisMaster_Thesis
Master_Thesis
 
Master's Thesis
Master's ThesisMaster's Thesis
Master's Thesis
 
Aidan_O_Mahony_Project_Report
Aidan_O_Mahony_Project_ReportAidan_O_Mahony_Project_Report
Aidan_O_Mahony_Project_Report
 
Specification of the Linked Media Layer
Specification of the Linked Media LayerSpecification of the Linked Media Layer
Specification of the Linked Media Layer
 
Thesis_Report
Thesis_ReportThesis_Report
Thesis_Report
 
Work Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel BelaskerWork Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel Belasker
 
Fraser_William
Fraser_WilliamFraser_William
Fraser_William
 
UCHILE_M_Sc_Thesis_final
UCHILE_M_Sc_Thesis_finalUCHILE_M_Sc_Thesis_final
UCHILE_M_Sc_Thesis_final
 
dissertation
dissertationdissertation
dissertation
 
Programming
ProgrammingProgramming
Programming
 
bonino_thesis_final
bonino_thesis_finalbonino_thesis_final
bonino_thesis_final
 
Data over dab
Data over dabData over dab
Data over dab
 
web_based_ide
web_based_ideweb_based_ide
web_based_ide
 
test6
test6test6
test6
 
project Report on LAN Security Manager
project Report on LAN Security Managerproject Report on LAN Security Manager
project Report on LAN Security Manager
 
Virtual Environments as Driving Schools for Deep Learning Vision-Based Sensor...
Virtual Environments as Driving Schools for Deep Learning Vision-Based Sensor...Virtual Environments as Driving Schools for Deep Learning Vision-Based Sensor...
Virtual Environments as Driving Schools for Deep Learning Vision-Based Sensor...
 
Milan_thesis.pdf
Milan_thesis.pdfMilan_thesis.pdf
Milan_thesis.pdf
 
C++ For Quantitative Finance
C++ For Quantitative FinanceC++ For Quantitative Finance
C++ For Quantitative Finance
 
Master_Thesis
Master_ThesisMaster_Thesis
Master_Thesis
 
bkremer-report-final
bkremer-report-finalbkremer-report-final
bkremer-report-final
 

More from Dhara Shah

Dhara_Shah_Resume
Dhara_Shah_ResumeDhara_Shah_Resume
Dhara_Shah_ResumeDhara Shah
 
Bachelorthesis.compressed
Bachelorthesis.compressedBachelorthesis.compressed
Bachelorthesis.compressedDhara Shah
 
Data_Management_Seminar_Dhara_Shah
Data_Management_Seminar_Dhara_ShahData_Management_Seminar_Dhara_Shah
Data_Management_Seminar_Dhara_ShahDhara Shah
 
NetworkPaperthesis2
NetworkPaperthesis2NetworkPaperthesis2
NetworkPaperthesis2Dhara Shah
 
NetworkPaperthesis1
NetworkPaperthesis1NetworkPaperthesis1
NetworkPaperthesis1Dhara Shah
 
I phone programming project report
I phone programming project reportI phone programming project report
I phone programming project reportDhara Shah
 
Network paperthesis2
Network paperthesis2Network paperthesis2
Network paperthesis2Dhara Shah
 
Network paperthesis1
Network paperthesis1Network paperthesis1
Network paperthesis1Dhara Shah
 
Bachelorthesis
BachelorthesisBachelorthesis
BachelorthesisDhara Shah
 

More from Dhara Shah (9)

Dhara_Shah_Resume
Dhara_Shah_ResumeDhara_Shah_Resume
Dhara_Shah_Resume
 
Bachelorthesis.compressed
Bachelorthesis.compressedBachelorthesis.compressed
Bachelorthesis.compressed
 
Data_Management_Seminar_Dhara_Shah
Data_Management_Seminar_Dhara_ShahData_Management_Seminar_Dhara_Shah
Data_Management_Seminar_Dhara_Shah
 
NetworkPaperthesis2
NetworkPaperthesis2NetworkPaperthesis2
NetworkPaperthesis2
 
NetworkPaperthesis1
NetworkPaperthesis1NetworkPaperthesis1
NetworkPaperthesis1
 
I phone programming project report
I phone programming project reportI phone programming project report
I phone programming project report
 
Network paperthesis2
Network paperthesis2Network paperthesis2
Network paperthesis2
 
Network paperthesis1
Network paperthesis1Network paperthesis1
Network paperthesis1
 
Bachelorthesis
BachelorthesisBachelorthesis
Bachelorthesis
 

Recently uploaded

Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 

Recently uploaded (20)

Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 

Master thesis

  • 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. 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. iii
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 2.2 Recommender Systems Figure 2.3: Serious Game Model [1] 12
  • 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. 2.2.1 State of the Art: Recommender Systems Flow Diagram-Recommender System.png Figure 2.4: Recommender System Model 14
  • 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. 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. 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. 2.3.2 Facebook App Architecture Figure 2.6: Time line of Social Network Sites is taken from [3] 18
  • 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. 2.4 NLI/NLP Figure 2.7: Facebook Architecture is taken from [4] 20
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 3.2.1 Concept of Go Green for Gamification Figure 3.3: Proposed Entity-Relationship Diagram 30
  • 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. 3.2.3 Game Design in Go Green Figure 3.4: Go Green Growth Model Icons 32
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 3.6 My take on: Carbon Footprint Analysis Figure 3.11: QR Code Go Green 47
  • 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. 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. 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. 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. 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. 4.4 Evaluation of Recommender Systems Figure 4.5: Project Time line 53
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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