Download - Adaptive Hypermedia. Hypermedia “Static” hypermedia Same page content Same links For all users
Adaptive Hypermedia
Hypermedia
“Static” hypermedia
• Same page content
• Same links
For all users
Problems of hypermedia
• Users are overwhelmed, too much choice
• Users get lost
“How did I get here”
“Where did I find this last time?”
• Difficult to maintain narrative flow
Visualisation
• Part of the problem is visualisation– Where am I in the graph?– What do I click on to find my information?
Graph Navigation
• http://www.abdn.ac.uk/
• Hypergraphs
Adaptive hypermedia
• Works on assumption that not all pages are as relevant for each user at a certain moment in time
• Tries to adapt the hyperspace to the user
• Closely related to Personalisation and Recommender Systems (future lectures)
– Amazon, etc.
Where is it used? (1)
• Education
• On-line information– Electronic encyclopedias– Information kiosks– Virtual museums– E-commerce– Performance support
Typical Situation
• Museum Tour Guide
– Poorly Defined Initial Interests of the visitor
– Museum contents not known to the visitor
• Possible adaptation
– Visitor describes initial interests to the guide
– Guide points out items of interest that refine the interests of the visitor
– Guide in turn refines its guidance through every such experience
Where is it used? (2)
• Information retrieval– Search-oriented– Browsing-oriented– WebWatcher (CMU)
• Compares hyperlinks on a page with user model to make recommendations.
• On-line help/information
Lot happening, dedicated conferences
Adapting to what?
User
• Goals / tasks
• Knowledge; Experience in that hyperspace
• Background
• Preferences; Interests
=> Topic of next week’s lecture on User modeling
Environment
What can be adapted?
• Content = Adaptive presentation
• Links = Adaptive navigation support
Adaptive Presentation
• Canned text adaptation– inserting/removing fragments– stretch text– altering fragments– sorting fragments– dimming fragments
• Natural language generation
• Modality adaptation
Example of natural language generation
Example application
• Arts tour
Painting
Introduction
Links to other
art demo
Adaptive Navigation Support
Link
• Hiding: disabling, hiding, removal
• Sorting
• Annotation
• Direct guidance
• Creating new links => Recommender systems lectures
Link Hiding (Example)
Introduction to PHP
Putting a database on the web
Why adaptivity is important
Social filtering
Content-based filtering
Link Sorting (Example)
Why adaptivity is important
Content-based filtering
Social filtering
Introduction to PHP
Putting a database on the web
Link Annotation
• Textual annotation
• Graphical annotation
• Font color, type
• Font size
Ready to be learned, Known, Not ready to be learned
Link Annotation (Example)
Introduction to PHP
Putting a database on the web
Why adaptivity is important
Social filtering
Content-based filtering
Direct guidance (Example)
Introduction to PHP
Putting a database on the web
Why adaptivity is important
Social filtering
Content-based filtering
NEXT
Implementation
• You need to be change web pages at runtime
• Depending on what you have figured out about the user (so, need to remember data from one page to the next)
Implementation: General
For the ArtTour example
• I have used PHP
• PHP = HTML + scripting
There are many other ways, servelets, perl, etc
But that is not the focus of this course
Implementation: How to do it
• Take an ordinary HTML file
• Change its extension to .php
• Note: for php code to work, it has to be viewed via a web server!
• Type script code between <?php ?>
Prevent caching
• Put at start of file
<?php
// Prevent caching
header("Pragma: no-cache");
?>
If statements
if ( ) {
}
Session variables
• Session variables allow the system to remember values from one page to the next
• Connect to existing session or starts one:session_start(); (put before <HTML>)
• Add new session variables:session_register("SomeName");
• Give a session variable a value: $HTTP_SESSION_VARS ["SomeName"] = 0;
Useful use of If statement:
<?php
if ($HTTP_SESSION_VARS ["BeenHere"]==1) {
?>
Welcome back.
<?php
}
?>
<?php
$HTTP_SESSION_VARS ["BeenHere"] =1;
?>
How do we adapt? (How?)Adaptive hypermedia - content and navigation
What can we adapt to? (To What?)User model
29
Wait, how does this stuff fit together?!
Adaptive hypermedia has grown a lot in the last years...
30