wims’ 14 providing a context-aware location based web service through semantics and user-defined...
TRANSCRIPT
WIMS’ 14
Providing a context-aware location based web service
through semantics and user-defined rules
Iosif Viktoratos1, Athanasios Tsadiras1, Nick Bassiliades2,
1Department of Economics, 2Department of Informatics, Aristotle University of ThessalonikiGR-54124 Thessaloniki, Greece
{viktorat, tsadiras, nbassili}@auth.gr
Contents
Location Based Services (LBS) & Context Semantic Technologies The System Geo SPLIS
Design and General idea Geo SPLIS’s Features Geos SPLIS’s Architecture Geo SPLIS’s Operations
Usage Scenarios Evaluation Conclusions Future work
2/36
Location Based Services (LBS)
Very popular over the last few years
Used by millions of people Navigation
Tracking
Information
Marketing
Entertainment
Emergency
Communication
3/36
LBS & Context
Should offer information to users, relevant to their situation - context Time, Location, User Preferences, Relationships…
Context awareness enables proactive personalized information of higher quality
Researchers and industries focus on contextual knowledge Hardware (e.g. GPS, sensors)
Software (e.g. ontologies,rules)
4/36
5/36
Semantic Technologies (1/2)Ontologies
Representation of related concepts (persons’ profiles, location) High quality context perception
Complicated reasoning about concepts
Formal representation standard Reusability
Interoperability
Connecting and sharing data from various sources Flexibility
Knowledge sharing
6/36
Semantic Technologies (2/2)Rules
Extensive reasoning capabilities Reasoning about instances
Intelligence Increased expressiveness for complicated
inferences
Autonomy - Proactiveness Data-driven inference
Automatic derivation upon context changes
7/36
Geo SPLISGeographic Semantic Personalized Location Information System
What? Web mapping application for connecting user defined
preferences (regarding POIs) with POI owners’ group targeted offers
Why? To model human daily patterns and provide
proactive, customized and contextualized information to users
How? Combining semantics (rules & ontologies) with LBS
8/36
Design and General idea (1/2)
POIs adopt a rule-based policy to deploy their specific marketing strategy A restaurant offers 25% discount to students on Friday
Regular users provide their profile My job is student
Regular users have preferences/daily patterns If it is Sunday noon I would like some restaurants that
serve Chinese cuisine The LBS provides spatiotemporal context
E.g. its Friday! Combine POI policies with regular user preferences
& spatiotemporal context Presents personalized offers on Google Maps
9/36
Design and General idea (2/2)
Geo SPLIS
Rule-based group targeted offers and
POI data
POI owner
Rule-based preferences and
Contextual data
Contextualized information
Regular user
10/36
Geo SPLIS’s Features (1/2) Collects data from external sources
Google+, Google Places API, POI websites Regular users add contextualized rule based
preferences Via a web editor Upload a RuleML file in their Google+ account
POI owners add group targeted offering policies via a web editor
Data from editor RuleML Jess Sesame Executes and evaluates data and rules on the fly Uses Google Maps for information
Geo SPLIS’s Features (2/2) Rule conditions
LBS context Location (e.g. within 1 km) Weather (e.g. sunny, rainy etc. ) Time (e.g. between 14:00-18:00) Day (e.g. Saturday)
Every existing property of a POI E.g. cuisine currently serves
Rule consequences Add a place in a recommendation list
11/36
Geo SPLIS’s Architecture (1/2)
Client PC browser-based
Html, JavaScript, Css Google Maps
Android mobile application
Server Java Server Pages (JSP)
RDF data management Sesame
Rules Reaction RuleML XSLT Jess
12/36
13/36
Geo SPLIS’s Architecture (2/2)
GeoSPLIS Server
External sources(Scema.org, POI websites, Google API)
SesameJess
GeoSPLIS Client
Geo SPLIS’s Operations(1/11)
Data collection
Information presentation
Operations concerning rules Rule insertion through editor
Rule insertion through Google+
Rule update operation
“Get a rule operation”
Planning operation
14/36
15/36
Geo SPLIS’s Operations(2/11)Data collection
Ontology loading Load the schema.org ontology into Sesame for updates
Data update Get user data either from a registration form or from
Google+ account
Obtain user position and retrieve nearest POIs from Google Places API
Store data for POIs into Sesame using predefined mapping to schema.org
16/36
Geo SPLIS’s Operations (3/11)Information presentation
Data retrieval Fetch user’s profile data and rules (if any) Calculate contextual property values (location etc.) Fetch POIs’ property values and rules (if any)
Rule evaluation Assert above data to the Jess rule engine Evaluate rules using the asserted facts
Presentation of personalized information Bigger in size marker recommended POI Green marker at least one valid offer for the user Yellow marker no rule is fired for the current user Red marker no offers at all Red star POI owner
17/36
Mobile version
Geo SPLIS’s operations (4/11)Information presentation layer
PC browser-based version
Geo SPLIS’s Operations (5/11) Rule insertion through editor
Enter the title and the priority of the rule Four “Add …. Condition” buttons
Each one for the corresponding contextual condition. The condition customization consists of three elements:
The property field (weather, day, time, distance) The operator field (“is” and “<”,”>” for time and distance) The value An “AND” is implied among them Drop down menus and read only forms to avoid mistakes
Select the desired POI category Clicking the “Add Where Condition” button to add more
conditions regarding desired POI properties Add a textual explanation Assert the rule “If day is Friday and time is before
17:00, I would like to visit some museums” 18/36
Geo SPLIS’s operations (6/11) Geo SPLIS’s Web Editor
(defrule museums (declare (salience 1))(place( type Museum) ( uri ?id)) (person ( day friday) ( time ?t) ) (test (< ?t 17))=> (assert (recommendation( id ?id))) (store EXPLANATION " If day is Friday and time is before 17:00, I would like to visit some museums "))
Jess representation
RuleML representation
20/36
Geo SPLIS’s Operations (8/11)Rdf data representation
Geo splis: policy19d883ef-f735-4521-a8a6 771165b1b2a8
rdf:type Schema:Policy;
schema: policy_description
IF person:time < 17 AND person:day is Friday THEN I WOULD LIKE TO GO TO A place:type Museum
schema:policy_explanation
If day is Friday and time is before 17:00, I would like to visit some museums
schema:policy_priority
1
schema:policy_link
platon.econ.auth.gr/......ruleml
schema: Person11 schema:Policy Geo splis: policy19d883ef-f735-4521-a8a6 771165b1b2a8
21/36
Geo SPLIS’s Operations (9/11)Rule insertion through Google+
1. Set as label the text “policy_link”
2. Upload a ruleml link in Google+
3. Geo SPIS crawls user page, parses the rules and evaluates them on the fly
22/36
Geo SPLIS’s Operations (10/11)Operations concerning rules
Rule update operation Edit and delete a rule through editor
“Get a rule” operation Get rules from other users
Check and get the rule
In case of editing a rule, a user is simply “unlinked” from the rule so that not to affect other users
23/36
Geo SPLIS’s Operations (11/11)Planning operation
A user inserts a future day (1-5 days)
The time of day
The system gets user’s future contextual situation
Geo SPLIS provides POIs and offers regarding the future situation
Usage scenario will presented
24/36
Usage Scenarios (1/6)Normal usage
A scenario concerning a selected user (“Mary”) Personalized information Planning operation
Rule Explanation
Rule 1
If day is Wednesday and time is between 12:00-17:00, then I would like some restaurants
Rule 2
If day is Friday and time is before 17:00, I would like to visit some museums
Name Age JobTitle Time Day Weather Location
Mary 20 Student 14:25 Wednesday Sunny Location A
Usage Scenarios (2/6) Normal usage
Because its Wednesday, 14:25 Mary’s rule 1 is fired
As a result restaurants are represented with a bigger in size marker
27/36
Usage Scenarios (3/6) Normal usage
POI “Nama” is represented with a bigger marker because it is a restaurant (rule 1)
Mary is entitled for a special spaghetti price as a student (POI owner’s rule)
28/36
Usage Scenarios (4/6) Normal usage
POI “Pizza Greca” is represented with a bigger marker because it is a restaurant
Mary is not entitled for a special pizza price as a student (POI owner’s rule)
Usage Scenarios (5/6) Planning mode
Mary will visit Rome on Friday afternoon
Clicks “Planning” button from menu
Selects the following options in the pop window after 2 days (it’s Wednesday)
the time she will be there (13:00 in our scenario)
As soon as she is inserted into planning mode she can right click on the map in Rome and find places and offers matching the future situation
29/36
Usage Scenarios (6/6) Planning mode
The rule “If day is Friday and time is before 17:00, I would like to visit some museums” is fired (It’s Friday 13:00 o’clock)
Museums are represented with a bigger in size markerOffers regarding the future situation
Evaluation(1/3)
Quantitative evaluation was made Geo SPLIS compared with a stripped-
down version Only yellow and red markers Users had to click on the marker, view
POI’s category to understand if it matches his/her preference and read POI owner’s message to understand if their offers matches his/her profile or not
“If day is Wednesday, find me some Coffee shops”
In stripped-down it was just told to users
31/36
Evaluation (2/3)
44 undergraduate students of Economics (18-22 years old, both genders)
3 tasks in both systems Task1.Find how many places match with your preference and
contain an offer which also matches with your profile. Task2.Find how many places contain an offer which matches
with your profile. Task3.Find how many places match with your preference and
contain an offer that does not match with your profile. Equal number of solutions
25 places 2 places/solutions to Task 1 6 places/solutions to Task 2 3 places/solutions to Task 3
32/36
Evaluation (3/3)
0
5
10
15
20
25
30
35
Task 1 Task 2 Task 3
Median time for the stripped-down version of Geo SPLIS
Average time for the strippeddown version of Geo SPLIS
Median time for Geo SPLIS
Average time for Geo SPLIS
Significant difference (p-significant was calculated 0,00131<0,05) 33/36
Conclusions
Geo SPLIS models human daily preferences and connect them with POI owners group based offering policies
Advantages POI owners have highly targeted marketing audience Regular users enjoy proactive contextualized information Adding rules dynamically leads to more customized and
personalized user experience The more rules were added to the system, the more
interesting/intelligent it becomes Exploit people collaboration and social intelligence to
create large knowledge bases34/36
Future work
More extensive user evaluation Add a social layer
Combine user rules with those of their logged in friends and provide group based information
Manually using friends’ rules When personal preferences do not fire, then
automatically use social graph to recommend Expand the editor to add a wider range of
preferences (movies, music etc.) Rules (semi-)automatically induced by mining
users’ logs, likes or reviews Connect other social media sources (facebook,
twitter etc.) 35/36
Thanks for your time!
Geo SPLIS is available at: http://tinyurl.com/GeoSPLIS
Mobile version is available at: http://tinyurl.com/GeoSoSPLIS36/36