Ruleml2012 - personalizing location information through rule based policies

26
Personalizing Location Personalizing Location Information Information through Rule-Based through Rule-Based Policies Policies Iosif Viktoratos Iosif Viktoratos 1 , Athanasios Tsadiras , Athanasios Tsadiras 1 , Nick , Nick Bassiliades Bassiliades 2 , , 1 Department of Economics Department of Economics , , 2 Department of Department of Informatics, Informatics, Aristotle University of Thessaloniki Aristotle University of Thessaloniki GR-54124 Thessaloniki, Greece GR-54124 Thessaloniki, Greece {viktorat, tsadiras, nbassili}@auth.gr {viktorat, tsadiras, nbassili}@auth.gr
  • date post

    18-Oct-2014
  • Category

    Technology

  • view

    396
  • download

    0

description

 

Transcript of Ruleml2012 - personalizing location information through rule based policies

Page 1: Ruleml2012 - personalizing location information through rule based policies

Personalizing Location Personalizing Location Information Information

through Rule-Based through Rule-Based PoliciesPolicies

Iosif ViktoratosIosif Viktoratos11, Athanasios Tsadiras, Athanasios Tsadiras11, Nick , Nick BassiliadesBassiliades22,,

11Department of EconomicsDepartment of Economics, , 22Department of Department of Informatics, Informatics,

Aristotle University of ThessalonikiAristotle University of Thessaloniki

GR-54124 Thessaloniki, GreeceGR-54124 Thessaloniki, Greece

{viktorat, tsadiras, nbassili}@auth.gr{viktorat, tsadiras, nbassili}@auth.gr

Page 2: Ruleml2012 - personalizing location information through rule based policies

22

ContentsContents

• Rules and policiesRules and policies

• Location Based Services (LBS)Location Based Services (LBS)

• Motivation-OverviewMotivation-Overview

• Design and ImplementationDesign and Implementation

• DemonstrationDemonstration

• Future workFuture work

• ConclusionsConclusions

Page 3: Ruleml2012 - personalizing location information through rule based policies

33

Rules and policiesRules and policies

• Human understandable rule based policies Human understandable rule based policies are an important sector of everyday lifeare an important sector of everyday life

• Used consistently by various types of Used consistently by various types of businesses to deploy their marketing businesses to deploy their marketing strategystrategy

• A museum offering free entrance to A museum offering free entrance to students, or a coffee shop decreasing students, or a coffee shop decreasing prices on Mondaysprices on Mondays are such examplesare such examples

Page 4: Ruleml2012 - personalizing location information through rule based policies

44

Rules and policiesRules and policies

• In order to be executed and adopted by an In order to be executed and adopted by an information service,information service, such kind of policies such kind of policies should be translated into a computer should be translated into a computer understandable languageunderstandable language

• A general rule representation language A general rule representation language and a rule engine are neededand a rule engine are needed

• Various efforts has been madeVarious efforts has been made

Page 5: Ruleml2012 - personalizing location information through rule based policies

55

Rules and policiesRules and policies

• Rule Rule representation representation languageslanguages-RIF-RIF

-RuleML-RuleML

-Swrl-Swrl

• Rule enginesRule engines-Jess-Jess

-Drools-Drools

-Prova-Prova

Page 6: Ruleml2012 - personalizing location information through rule based policies

66

Rules and policiesRules and policies

RuleML was widely accepted by scientific community RuleML was widely accepted by scientific community because:because:

• It is a powerful markup language (XML with a It is a powerful markup language (XML with a predefined Schema)predefined Schema)

• Easily understandableEasily understandable

• Supports various types of rules such as deductive, Supports various types of rules such as deductive, reactive and normative reactive and normative

• Addresses the issues of interoperability and flexibility, Addresses the issues of interoperability and flexibility, by allowing rules to be encoded in a standard wayby allowing rules to be encoded in a standard way

• It could easily translated to a rule engine by XSLT It could easily translated to a rule engine by XSLT transformationtransformation

Page 7: Ruleml2012 - personalizing location information through rule based policies

77

Location Based Location Based Services(LBS)Services(LBS)

• Very popular due to Smartphones and Very popular due to Smartphones and related technologies (such as semantics)related technologies (such as semantics)

• Used by millions of people for Used by millions of people for – NavigationNavigation– TrackingTracking– InformationInformation– emergency situationsemergency situations

• Researchers and industries are workingResearchers and industries are working in in various sectors various sectors to evolve such servicesto evolve such services

Page 8: Ruleml2012 - personalizing location information through rule based policies

88

Location Based Services Location Based Services (LBS)(LBS)

• Latest LBS combine semantics with Latest LBS combine semantics with Smartphone’s capabilitiesSmartphone’s capabilities

• Use social media data for Use social media data for personalized POI recommendationspersonalized POI recommendations

• Others offer high quality mobile Others offer high quality mobile search capabilities by personalizing search capabilities by personalizing query results or search tag query results or search tag recommendationsrecommendations

Page 9: Ruleml2012 - personalizing location information through rule based policies

99

Motivation-OverviewMotivation-Overview

• AimAim: combine rules with location : combine rules with location information services to deliver information services to deliver personalized and contextualized personalized and contextualized information to usersinformation to users

• Implement “Personalized Location Implement “Personalized Location Information System” or PLISInformation System” or PLIS

Page 10: Ruleml2012 - personalizing location information through rule based policies

1010

Motivation-OverviewMotivation-Overview

• PLIS uses semantics for knowledge sharing and PLIS uses semantics for knowledge sharing and interoperability interoperability

• A rule-based approach was followed forA rule-based approach was followed for– higher quality context higher quality context perceptionperception – autonomyautonomy

• An xml-based user friendly language (RuleML) used An xml-based user friendly language (RuleML) used because of the fact that PLIS users are capable of because of the fact that PLIS users are capable of adding rules at run-timeadding rules at run-time

• Could easily combined with most of existing Could easily combined with most of existing approaches approaches

• Differs by enabling a dynamic rule base (by offering Differs by enabling a dynamic rule base (by offering users the option to add rules at run time)users the option to add rules at run time)

Page 11: Ruleml2012 - personalizing location information through rule based policies

1111

Design and implementationDesign and implementation• General ideaGeneral idea: combine POI’S rule-based policies with : combine POI’S rule-based policies with

user’s context to deliver personalized, up-to-date user’s context to deliver personalized, up-to-date informationinformation

• Every time a user logs into the systemEvery time a user logs into the system– PLIS gets user’s contextPLIS gets user’s context– evaluates the rules associated with nearby POIs evaluates the rules associated with nearby POIs – delivers personalized information to user, depending delivers personalized information to user, depending

on the rules firedon the rules fired • PLIS is able to handle rules concerning PLIS is able to handle rules concerning

– user’s user’s occupation (e.g. a restaurant offers discount to occupation (e.g. a restaurant offers discount to students) students)

– gender gender – age age – location (e.g. a coffee shop decreases prices for users location (e.g. a coffee shop decreases prices for users

who are less than 200 meters away)who are less than 200 meters away)– dayday– timetime

Page 12: Ruleml2012 - personalizing location information through rule based policies

1212

Design and implementationDesign and implementation

For PLIS implementation were used:For PLIS implementation were used:• Standard web technologies such as Standard web technologies such as

– JSP JSP – html html – JavascriptJavascript– Google mapsGoogle maps

• Reaction RuleML(a subcategory of RuleML) was used Reaction RuleML(a subcategory of RuleML) was used for rules representation because such kinds of policies for rules representation because such kinds of policies are usually represented by production rules are usually represented by production rules

• Jess was chosen as an inference engine because Jess was chosen as an inference engine because – it is a lightweight rule engine it is a lightweight rule engine – connects well with standard web technologies connects well with standard web technologies

• A transformation from rules in RuleML format to Jess A transformation from rules in RuleML format to Jess was done by using XSLT technologywas done by using XSLT technology

Page 13: Ruleml2012 - personalizing location information through rule based policies

1313

Design and implementationDesign and implementation

PLIS functionalities-layersPLIS functionalities-layers

• User registrationUser registration

• Insertion of Points of InterestInsertion of Points of Interest

• Rule evaluation and presentation of Rule evaluation and presentation of personalized informationpersonalized information

Page 14: Ruleml2012 - personalizing location information through rule based policies

1414

Design and implementationDesign and implementation

User registrationUser registration

• User completes a registration form so as User completes a registration form so as PLIS to build a profile (registration time PLIS to build a profile (registration time user)user)

• User profile data such as first name, last User profile data such as first name, last name, occupation, gender, age, city, state, name, occupation, gender, age, city, state, e.t.c are stored in the databasee.t.c are stored in the database

Page 15: Ruleml2012 - personalizing location information through rule based policies

1515

Design and implementationDesign and implementation

Rule evaluation and presentation of Rule evaluation and presentation of personalized informationpersonalized information

• After registration, user is able to log into the system After registration, user is able to log into the system • System checks user profile database for authenticationSystem checks user profile database for authentication• JSP collects user context (profile, location, time, day e.t.c.)JSP collects user context (profile, location, time, day e.t.c.)• For every POI, rules (if any) and relevant attribute values are For every POI, rules (if any) and relevant attribute values are

being fetched (by JSP) being fetched (by JSP) • Rules (after being transformed to a computer understandable Rules (after being transformed to a computer understandable

language), POI data and user context attribute values are language), POI data and user context attribute values are asserted to the Jess rule engineasserted to the Jess rule engine

• Jess evaluates rules using the asserted facts and updates POIs’ Jess evaluates rules using the asserted facts and updates POIs’ attribute values according to the rules fired depending on user’s attribute values according to the rules fired depending on user’s contextcontext

• The new values are fetched by JSPThe new values are fetched by JSP• Finally, data transfer to client is performed for visualization and Finally, data transfer to client is performed for visualization and

per- sonalized information provisionper- sonalized information provision

Page 16: Ruleml2012 - personalizing location information through rule based policies

1616

Design and implementationDesign and implementation

Insertion of Points of InterestInsertion of Points of Interest

• User is able to insert his own POI’s User is able to insert his own POI’s accompanied by their own rule based accompanied by their own rule based policypolicy

• All the data concerning the POI All the data concerning the POI accompanied by its rules, are saved to the accompanied by its rules, are saved to the corresponding databasecorresponding database

Page 17: Ruleml2012 - personalizing location information through rule based policies

17

User Profile Data

JESS

POI’S+

Rules

JSP

A1.Registration

B1.POI & Rule insertion

C1.b. Authentication

A2.Store user profile

C2. Context collection

C3.a. Get rules and POI attributes

C3.b Data assertion

C4. Updated attributtes

C1.a. Login

B2.Strore POIS and Rules

C5. Personalized information PLIS

Page 18: Ruleml2012 - personalizing location information through rule based policies

1818

DemonstrationDemonstration

A scenario considering two completely A scenario considering two completely different user profile snapshots and a different user profile snapshots and a random place will be presented for better random place will be presented for better demonstrationdemonstration

Page 19: Ruleml2012 - personalizing location information through rule based policies

1919

DemonstrationDemonstration

ProfileProfile EnvironmentEnvironment

NamNamee

OccupatioOccupationn

GendeGenderr

AgAgee

TimeTime DayDay LocationLocation

User AUser A BobBob StudentStudent MaleMale 2222 22:422:455

ThursdThursdayay

Location Location AA

User BUser B MaryMary UnemployUnemployeded

FemalFemalee

3535 19:119:100

FridayFriday Location Location BB

Page 20: Ruleml2012 - personalizing location information through rule based policies

2020

DemonstrationDemonstration

NameName Average Average price per price per person (€)person (€)

Minimum Minimum order (€)order (€)

Rule 1Rule 1 Rule 2Rule 2

Place APlace A PastaPastaPizzaPizza

1010 55 Decrease Decrease minimum minimum order 20% order 20% for students for students which are which are closer than closer than 200m after 200m after 22:0022:00

Discount Discount average price average price 10% for 10% for unemployed unemployed women on women on Fridays Fridays

Page 21: Ruleml2012 - personalizing location information through rule based policies

2121

DemonstrationDemonstration

Bob(User A)Bob(User A)

• Rule 1 is fired for place A Rule 1 is fired for place A because:because:– he is a studenthe is a student– his current distance from his current distance from

place A is closer than place A is closer than 200m 200m

– time is after 22:00 o’clock time is after 22:00 o’clock

• Considering this rule, Considering this rule, minimum order for Bob is minimum order for Bob is 20% less (4€) for this place20% less (4€) for this place

Mary(User B)Mary(User B)

• One rule (rule 2) is fired for One rule (rule 2) is fired for place A because Mary:place A because Mary:– is unemployedis unemployed– is a woman is a woman – current day is Fridaycurrent day is Friday

• Taking these under Taking these under consideration, average consideration, average price per person for Mary price per person for Mary at place A is 10% less (9€). at place A is 10% less (9€).

Page 22: Ruleml2012 - personalizing location information through rule based policies

2222

DemonstrationDemonstration

Place A information for Place A information for BobBob

Place A information for Place A information for MaryMary

Page 24: Ruleml2012 - personalizing location information through rule based policies

2424

Future workFuture work

• A user-friendlier environment has to be A user-friendlier environment has to be implemented. Either a convenient (probably implemented. Either a convenient (probably visual) RuleML editor could be embedded or a visual) RuleML editor could be embedded or a form based web interface could be form based web interface could be implemented implemented

• Use OWL and/or RDF data (as in linked data) Use OWL and/or RDF data (as in linked data) to represent user profiles and POI related to represent user profiles and POI related information, for greater flexibility and information, for greater flexibility and interoperabillityinteroperabillity

• A mobile applicationA mobile application

Page 25: Ruleml2012 - personalizing location information through rule based policies

2525

ConclusionsConclusions

• Embedding rules to location-based Embedding rules to location-based information systems can offer a boost to information systems can offer a boost to the quality of delivered informationthe quality of delivered information

• By developing PLIS, the viability of this By developing PLIS, the viability of this idea was clearly demonstratedidea was clearly demonstrated

• A capability of adding rules on the fly can A capability of adding rules on the fly can not only lead to powerful, autonomous and not only lead to powerful, autonomous and intelligent services, but also to the intelligent services, but also to the evolution of these services evolution of these services

• Experimental testing, confirmed PLIS Experimental testing, confirmed PLIS evolution without developers interventionevolution without developers intervention

Page 26: Ruleml2012 - personalizing location information through rule based policies

2626

Thank you!!!