70
Terchova, June 2, 2009 JESS Summer School 2009 Slide 1 Adaptive Learning Environments Prof. dr. Paul De Bra Eindhoven University of Technology

Adaptive Learning Environments

  • Upload
    paiva

  • View
    65

  • Download
    0

Embed Size (px)

DESCRIPTION

Adaptive Learning Environments. Prof. dr. Paul De Bra Eindhoven University of Technology. Topics. The need for adaptation personalized : adaptable / adaptive User Modeling Adaptation adaptive presentation adaptive navigation The GRAPPLE architecture Authoring Examples (if we have time). - PowerPoint PPT Presentation

Citation preview

Page 1: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 1

Adaptive Learning Environments

Prof. dr. Paul De BraEindhoven University of

Technology

Page 2: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 2

Topics

• The need for adaptation– personalized: adaptable / adaptive

• User Modeling• Adaptation

– adaptive presentation– adaptive navigation

• The GRAPPLE architecture• Authoring• Examples (if we have time)

Page 3: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 3

We live in a “one size fits all” world

But we are not all the same size(physically or mentally)

Page 4: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 4

What’s the main difference between these pictures?

Page 5: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 5

Automatic Adaptive

• Automatic systems = automatic fixed behavior (according to fixed rules)

• Adaptive systems = automatic behavior that depends on environmental factors– first-order adaptation: the change in the

automatic behavior follows fixed rules– second-order adaptation: the change in the

automatic behavior is itself also adaptive– etc.: there is no limit to how adaptive systems

can be• In this lecture we deal with user-adaptive systems:

they adapt to users and the users’ environment

Page 6: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 6

Adaptation in any type of Information System

• Adaptation of the Information– information adapted to who/where/when you

are– information adapted to what you are doing and

what you have done before (e.g. learning)– presentation adapted to circumstances (e.g.

the device you use, the network, etc.)• Adaptation of the Process

– adaptation of interaction and/or dialog– adaptation of navigation structures– adaptation of the order of tasks and steps

Page 7: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 7

Advantages of Adaptive Systems

• Increased efficiency:– optimal process (of navigation, dialog, study order, etc.)– minimum number of steps– maximum benefit (of relevant information)

• Increased satisfaction:– system gives good advice and relevant information– interactive applications do not make stupid moves

• Return on investment:– recommending products the user needs is a form of

advertising that really works– adaptive (non-IS) systems have better technical

performance

Page 8: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 8

Disadvantages of Adaptive Systems

• Adaptive Systems may learn the wrong behavior– adaptive games learn badly from bad players– generally: adaptation good for one user may be bad for

another user; it is personal after all• Adaptive Systems may outsmart the users

– all doomsday movies in which machines take over the world blame second order adaptive systems

– a game that learns how always to win is no fun– an adaptive information system may effectively perform

censorship– it may be hard to tell an adaptive system that it is wrong

Page 9: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 9

User-Adaptive Systems

Page 10: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 10

Main issues in Adaptive Systems

• Questions to ask when designing an adaptive application:– Why do we want adaptation?– What can be adapted?– What can we adapt to?– How can we collect the right information?– How can we process/use that information

• Exercise: answer these questions for:– a presentation (lectures, talks at conferences)– an on-line textbook– a newspaper site or an on-line TV-guide– a (book, cd, computer, etc.) store– a (computer) help system

Page 11: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 11

Forward and Backward Reasoning• Two opposite approaches for adaptation:• forward reasoning:

1. register events2. translated events to user model information3. store the user model information4. adaptation based directly on user model information

• backward reasoning:1. register events2. store rules to deduce user model information from

events3. store rules to deduce adaptation from user model

information4. performing adaptation requires backward reasoning:

decide which user model information is needed and then deduce which event information is needed for that.

Page 12: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 12

Application Areas of AS• Educational hypermedia systems

– on-line course text, with on-line multiple-choice or other machine-interpretable tests

– we use AEH, AES and ALE as near-synonyms• On-line information systems

– information “kiosk”, documentation systems, encyclopedias, etc.

• On-line help systems– context-sensitive help, (think of “Clippy”)

• Information retrieval and filtering– adaptive recommender systems

• etc.

Page 13: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 13

Adaptive Educational Hypermedia

• Origin: Intelligent Tutoring Systems– combination of reading material and tests– adaptive course sequencing, depending on test

results• In Adaptive Educational Hypermedia:

– more freedom for the learner: guidance instead of enforced sequence

– adaptive content of the course material to solve comprehension problems when pages or chapters are read out of sequence

– adaptation based on reading as well as tests

Page 14: Adaptive Learning Environments

Learning Management Systems

• LMSs offer a “personal” learning environment:– registration for courses– personalization of the “workspace”– access to course material– assignments, tests, group work– communication tools: messages, discussion

forums, chat– no built-in adaptive learning functionality

Terchova, June 2, 2009JESS Summer School 2009

Slide 14

Page 15: Adaptive Learning Environments

The GRAPPLE Project

• Glues an ALE and LMS together, offering an adaptive within the LMS

• LMS and ALE talk with each other through a shared event bus

• User Model data can be exchanged through the Grapple User Model Framework (GUMF)

• Authoring is done mostly through graphical interfaces to create a domain model (DM) and a conceptual adaptation model (CAM)

Terchova, June 2, 2009JESS Summer School 2009

Slide 15

Page 16: Adaptive Learning Environments

Learner scenario

Terchova, June 2, 2009JESS Summer School 2009

Slide 16

Learner LMS

GALE – adaptati

on engine

GRAPPLE User

Model Framewor

k

Repository

Repository

GALEReposito

ry

Shibboleth GRAPPLE Event Bus

StudentVisualizatio

ns

Device Adaptation

The GRAPPLE Learner View

Page 17: Adaptive Learning Environments

The GRAPPLE Author View

Terchova, June 2, 2009JESS Summer School 2009

Slide 17

Author

GALE – compile

r

GRAPPLE Authoring tool (CAM, DM, CRT

DM Reposito

ry

LMS

GALERepositor

y

Content Repositor

y

CAM Reposito

ry

GRAPPLE User

Model Framewor

k

Content Repositor

y

Page 18: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 18

What can we Adapt to?• Knowledge of the user

– initialization using stereotypes (beginner, intermediate, expert)

– represented in an overlay model of the concept structure of the application

– fine grained or coarse grained– based on browsing and on tests

• Goals, tasks or interest– mapped onto the applications concept structure– difficult to determine unless it is preset by the user or a

workflow system– goals may change often and more radically than

knowledge

Page 19: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 19

What can we Adapt to? (cont.)

• Background and experience– background = user’s experience outside the application– experience = user’s experience with the application’s

hyperspace

• Preferences– any explicitly entered aspect of the user that can be

used for adaptation– examples: media preferences, cognitive style, etc.

• Context / environment– aspects of the user’s environment, like browsing device,

window size, network bandwidth, processing power, etc.

Page 20: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 20

User Modeling

Page 21: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 21

Modeling “Knowledge” in AES

• Moving target: knowledge changes while using the application– scalar model: knowledge of whole course

measured on one scale (used e.g. in MetaDoc)– structural model: domain knowledge divided

into independent fragments; knowledge measuredper fragment

• type of knowledge (declarative vs. procedural)• level of knowledge (compared to some “ideal”)

– positive (overlay) or negative information(bug model) can be used

Page 22: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 22

Overlay Modeling of User Knowledge

• Domain of an application modeled through a structure (set, hierarchy, network) of concepts.– concepts can be large chunks (like book

chapters)– concepts can be tiny (like paragraphs or

fragments of text, rules or constraints)– relationships between concepts may include:

• part-of: defines a hierarchy from large learning objectives down to small (atomic) items to be learned

• is-a: semantic relationship between concepts• prerequisite: study this before that• some systems (e.g. AHA!) allow the definition of

arbitrary relationships

Page 23: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 23

Which types of knowledge values?• Early systems: Boolean value (known/not known)

– works for sets of concepts, but not for hierarchies (not possible to propagate knowledge up the hierarchy)

• Numeric value (e.g. percentage)– how much you know about a concept– what is the probability that you know the

concept• Several values per concept

– e.g. to distinguish sources of the information– knowledge from reading is different from

knowledge from test, activities, etc.

Page 24: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 24

Modeling Users’ Interest

• Initially: weighed vector of keywords– this mimics how early IR systems worked

• More recently: weighed overlay of domain model– more accurate representation of interest– able to deal with synonyms (since terms are

matched to concepts)– semantic links (as used in ontologies) allow to

compensate for sparsity– move from manual classification of documents

to automatic matching between documents and an ontology

Page 25: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 25

Modeling Goals and Tasks• Representation of the user's purpose

– goal typically represented using a goal catalog(in fact an overlay model)

– systems typically assume the user has one goal– automatic determination of the goal is difficult;

glass box approach: show goal, let user change it

– the goal can change much more rapidly thanknowledge or interest

• Determining the user's goal/task is much easierwhen adaptation is done within a workflowmanagement system

Page 26: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 26

Modeling Users’ Background

• User's previous experience outside the core domain of the application– e.g. (prior) education, profession, job

responsibilities, experience in related areas, ...– system can typically deal with only a few

possibilities, leading to a stereotype model– background is typically very stable– background is hard to determine automatically

Page 27: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 27

Modeling Individual Traits

• Features that together define the user as an individual:– personality traits (e.g.

introvert/extrovert)– cognitive styles (e.g. holist/serialist)– cognitive factors (e.g. working memory

capacity)– learning styles (like cognitive styles but

specific to how the user likes to learn)

Page 28: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 28

Modeling Users’ Context of Work

• User model contain context features although these are not really all “user” features.– platform: screen dimensions, browser software

and network bandwidth may vary a lot– location: important for mobile applications– affective state: motivation, frustration,

engagement

Page 29: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 29

Feature-Based vs. Stereotype Modeling

• Stereotypes: simple, can be designed carefully, very useful for bootstrapping adaptive applications

• Feature-Based: allows for many more variations– each feature considered can be used to adapt

something– detailed features leading to micro-adaptation

do not necessary leading to overall adaptationthat makes sense

Page 30: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 30

Uncertainty-Based User Modeling• Most used techniques: Bayesian Networks and Fuzzy

Logic– user actions provide “evidence” that the user has

(or does not have) knowledge of a concept– an expert needs to develop a qualitative model:

• each concept becomes a “random variable” (node in BN)• source of evidence: reading time, answers to tests, etc.• consider direction between evidential nodes E and

knowledge nodes K– causal direction: K E (knowledge leads to evidence)– diagnostic direction: E K (evidence leads to knowledge)

• independence of variables influences validityof the model

Page 31: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 31

Generic User Modeling Systems

• Adaptive Systems with built-in UM:– close match between UM structure and AS

needs– high performance possible (no communication

overhead)– UM not easily exchangeable with other AS

• AS using a generic User Modeling System– cuts down on AS development cost– communication overhead– unneeded features may involve performance

penalty– UM can be shared between AS

Page 32: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 32

Requirements for Generic UM Systems

• Generality, including domain independence• Expressiveness and strong inferential capabilities• Support for quick adaptation• Extensibility• Import of External User-Related Information• Management of Distributed Information• Support for Open Standards• Load Balancing• Failover Strategies• Transactional Consistency• Privacy Support

Page 33: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 33

Requirements for Sharing UM Data

• Sharing a technical API is not enough:– the AS must translate its internal user identities

to the UM's user identities (and vice versa)– data about users need to be standardized– shared ontologies are needed for different AS

dealing with the same domain (ontology alignment)

– agreement on who can update what– agreement on meaning of “values” in the UM

• “Scrutability” of UM:– UM data must be understandable for the user– users must have control over their

UM data

Page 34: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 34

User Modeling in GRAPPLE• User model is inherently distributed:

– The LMS contains fairly stable information about the user (and also some assessment results)

– The ALE contains mainly dynamically changing information about the user

– There may be several components of each type• Different UM services may contradict each other

– conflict resolution needed• Not every application is allowed to access/update

UM data on every server– elaborate security/privacy settings needed

Page 35: Adaptive Learning Environments

Adding UM data to GUMF

• GRAPPLE applications use GRAPPLE statements to communicate UM data

• Registered clients have their own dataspace: subset of ‘own’ statements, derivation rules and schema extensions

• Derivation rules generate new Grapple statements

• Data can be declared public or private

Terchova, June 2, 2009JESS Summer School 2009

Slide 35

Page 36: Adaptive Learning Environments

Retrieving GRAPPLE Statements

Three ways to retrieve statements(plus combinations):

Pull: Simple query interface to retrieve statements that match a certain pattern

Push: Subscribing to a stream of statements; activated upon an event

Manual: Browsing interface (for admin usage or scrutability)

Terchova, June 2, 2009JESS Summer School 2009

Slide 36

Page 37: Adaptive Learning Environments

Grapple Statement Structure

Main Part• Subject Subproperty: User• Predicate Property (specified in ontology)• Object Value of the statement• Level Qualification/level (if applicable)• Origin The statement in its original form (if applicable)

Meta Part• ID Globally unique• Creator Entity that created the statement• Created Time of creation/submission of statement• Access Data for any kind of access control mechanism• Temporal Constraints on validity of statement• Spatial In which contexts is statement valid• Evidence Refers to or embodies formal evidence• Rating Level of trust (to be developed)

Terchova, June 2, 2009JESS Summer School 2009

Slide 37

Page 38: Adaptive Learning Environments

Example GRAPPLE Statement

“Peter is interested in Sweden”

gc = http://www.grapple-project.org/grapple-core/foaf = http://xmlns.com/foaf/0.1/

gc.Statement {gc:id gc:statement-peter-2009-01-01-3234190;gc:user http://www.peter.de/foaf.rdf#me;gc:predicate foaf:interest;gc:object: http://en.wikipedia.org/wiki/Sweden;

}

(Metadata omitted for simplicity)

Terchova, June 2, 2009JESS Summer School 2009

Slide 38

Page 39: Adaptive Learning Environments

RDF/XML Serialization“Peter is interested in Sweden”<rdf:RDF xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax#“ xml:base=“http://www.grapple-project.org/statements/“

gc = “http://www.grapple-project.org/grapple-core/”foaf = http://xmlns.com/foaf/0.1/>

<rdf:Description rdf:ID=“gc:statement-peter-2009-01-01-3234190“> <user> http://www.peter.de/foaf.rdf#me </user> <predicate> foaf:interest </predicate> <object> http://en.wikipedia.org/wiki/Sweden object> <creator> www.l3s.de/~herder/foaf.rdf#me</creator> <created> 2009.01.01 </created>

… </rdf:Description></rdf>

Terchova, June 2, 2009JESS Summer School 2009

Slide 39

Page 40: Adaptive Learning Environments

What does ‘interest’ mean?This is defined in the FOAF ontology (any kind of

ontology can be used)<rdf:Property rdf:about="http://xmlns.com/foaf/0.1/interest" vs:term_status="testing" rdfs:label="interest" rdfs:comment="A page about a topic of interest to this

person."> <rdf:type

rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>

<rdfs:domain rdf:resource="http://xmlns.com/foaf/0.1/Person"/>

<rdfs:range rdf:resource="http://xmlns.com/foaf/0.1/Document"/>

<rdfs:isDefinedBy rdf:resource="http://xmlns.com/foaf/0.1/"/></rdf:Property>

Terchova, June 2, 2009JESS Summer School 2009

Slide 40

Page 41: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 41

Adaptation

Page 42: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 42

What Do We Adapt in AEH?

• Adaptive presentation:– adapting the information– adapting the presentation of that information– selecting the media and media-related factors

such as image or video quality and size• Adaptive navigation:

– adapting the link anchors that are shown– adapting the link destinations– giving “overviews” for navigation support and

fororientation support

Page 43: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 43

Adaptive Content/Presentation

Page 44: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 44

Canned Text Adaptation• Inserting/removing fragments

– prerequisite explanations: inserted when the user appears to need them

– additional explanations: additional details or examples for some users

– comparative explanations: only shown to users who can make the comparison

• Altering fragments– Most useful for selecting among a number of

alternatives– Can be done to choose explanations or examples, but

also to choose a single term• Sorting fragments

– Can be done to perform relevance ranking for instance

Page 45: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 45

Canned Text Adaptation (cont.)

• Stretchtext– Similar to replacement links in the Guide hypertext

system– Items can be open or closed; system decides adaptively

which items to open when a page is accessed

• Dimming fragments– Text not intended for this user is de-emphasized

(greyed out, smaller font, etc.)– Can be combined with stretchtext to create de-

emphasized text that conditionally appears, or only appears after some event (like clicking on a tooltip icon)

Page 46: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 46

Example of inserting/removing fragments, course “2L690”

• Before reading about Xanadu the URL page shows:– …

In Xanadu (a fully distributed hypertext system, developed by Ted Nelson at Brown University, from 1965 on) there was only one protocol, so that part could be missing.

…• After reading about Xanadu this becomes:

– …In Xanadu there was only one protocol, so that part could be missing.

Page 47: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 47

Example of inserting/removing fragments: the GEA system.

• selects objects based on matching attributes (arguments) to user preferences

• presents arguments with relevance greater than a (customizable) threshold.

Page 48: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 48

Example with group adaptation: Intrigue (adaptive tourist guide)

Page 49: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 49

Stretchtext example:the Push system

Page 50: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 50

Scaling-based Adaptation

Page 51: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 51

Adaptive Navigation Support

Page 52: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 52

Adaptive Navigation Support

• Direct guidance– like an adaptive guided tour– “next” button with adaptively determined link destination

• Adaptive link generation– the system may discover new useful links between pages

and add them– the system may use previous navigation or page similarity

to add links– generating a list of links is typical in information retrieval

and filtering systems

• Variant: Adaptive link destinations– link anchor is fixed (or at least always present) but the

system decides on the link destination “on the fly”

Page 53: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 53

Adaptive Navigation Support (cont.)

• Adaptive link annotation– all links are visible, but an “annotation” indicates relevance– the link anchor may be changed (e.g. in color) or additional

annotation symbols can be used

• Adaptive link hiding– pure hiding means the link anchor is shown as normal text (the

user cannot see there is a link)– link disabling means the link does not work; it may or may not

still be shown as if it were a link– link removal means the link anchor is removed (and as a

consequence the link cannot be used)– a combination is possible: hiding+disabling means the link

anchor text is just plain text

Page 54: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 54

Adaptive Navigation Support (cont.)

• Map adaptation– complete (site)maps are not feasible for a

non-trivial hyperspace– a “local” or “global” map can be adapted by

annotating or removing nodes or larger parts– a map can also be adapted by moving nodes

around– maps can be graphical or textual– adaptation can be based on relevance, but also

on group presence

Page 55: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 55

Example of Direct Guidance

• Simple: suggest one best page to go to– Webwatcher:

curious eyes– Sometimes a

“next” button– Popular in ITS

(sequencing)

Page 56: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 56

Example: Link Ordering/Sorting

• Sorting links from most to least relevant.– first introduced in Hypadapter (Lisp tutor)– manual reordering by the user (if supported)

can be used as feedback to update the user model

Page 57: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 57

Example:Link Annotation in ELM-ART

Page 58: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 58

Example:link annotation in Interbook

1. Concept role2. Current concept state

3. Current section state

4. Linked sections state

4

3

2

1

Page 59: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 59

Example:Link Annotation in ISIS-Tutor

Page 60: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 60

Example: Link Annotation and Hiding in ISIS-Tutor

Page 61: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 61

Example:Link Generation in Alice

Page 62: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 62

Adaptation in GRAPPLE: GALE• The GRAPPLE Adaptive Learning Environment has

the following main properties:– three separate components: UM server, DM/AM

server, adaptation engine (AE)– linked through an internal event bus– separation between concepts and content– adaptation rules can call arbitrary (Java) code– supports forward and backward reasoning– adaptation to arbitrary XML formats (not just

HTML)– works stand-alone or within the GRAPPLE

infrastructure (with LMSs and GUMF)

Page 63: Adaptive Learning Environments

Creating GALE Applications

• Creating a conceptual structure:– domain model (concepts, conceptual

relationships like “is-a”, “part-of”, etc.)– conceptual adaptation model (pedagogical

relationships like “prerequisite”)• Creating content as a “website”:

– any XML format is supported– use “gale” name space for adaptive

elements

Terchova, June 2, 2009JESS Summer School 2009

Slide 63

Page 64: Adaptive Learning Environments

Three Types of Authoring• A concept can be associated with one

resource (page); each page is authored separately.

• A concept can be associated with a template resource (shared between many concepts); the template “includes” content fragments (with URLs from the concept’s attributes).

• A concept may rely on a presentation engine to generate a layout and “include” content fragments (from the concept’s attributes).

Terchova, June 2, 2009JESS Summer School 2009

Slide 64

Page 65: Adaptive Learning Environments

Creating a GALE Page• It’s “mostly” like XHTML but needs name spaces:

<html xmlns=http://www.w3.org/1999/xhtml xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xmlns:gale=http://gale.tue.nl/adaptation xsi:schemaLocation="http://www.w3.org/1999/xhtml

http://www.w3.org/2002/08/xhtml/xhtml1-strict.xsd”

• HTML tags are used without name space, GALE tags with name space:– adaptive link anchor:

<gale:a href=“newconcept”>anchor text</gale:a>– conditionally included object:

<gale:object name=“conceptname” />– conditionally included in-line fragment:

<gale:if expr=“${someconcept#someattribute}&gt;0”> <gale:block>conditional text</gale:block></gale:if>

Terchova, June 2, 2009JESS Summer School 2009

Slide 65

Page 66: Adaptive Learning Environments

GALE Expressions

• References to concepts/attributes using URIs:– ${#attribute} refers to an attribute of the current concept– ${concept#attribute} refers to an attribute of the named

concept of the current course– ${gale://server.where:port/gale/course/concept#attribute}

refers to an attribute of a concept of some course somewhere on another server.

• Java expressions, escaping reserved characters (<>)– ${concept#knowledge} &gt; 50

(is the knowledge of the concept greater than 50)– gale.concept().getApplication()

(gives the name of the course of the current concept)

Terchova, June 2, 2009JESS Summer School 2009

Slide 66

Page 67: Adaptive Learning Environments

Milky Way

• Example with an “interesting” domain model

• Similar concepts can be presented in a similar way (hence templated-based authoring)

Terchova, June 2, 2009JESS Summer School 2009

Slide 67

Page 68: Adaptive Learning Environments

Example Pages

• Page template shows:– title (Sun, Earth, Moon)– reference to parent– image (with caption)– information paragraph– list of children concepts

Terchova, June 2, 2009JESS Summer School 2009

Slide 68

Page 69: Adaptive Learning Environments

Terchova, June 2, 2009JESS Summer School 2009

Slide 69

Acknowledgements

• GALE is based on earlier work on AHA! that was partly developed with a grant from the NLnet Foundation

• Part of this work was performed as part of the EU FP7 STREP project GRAPPLE (215434)

Page 70: Adaptive Learning Environments

Prerequisites for Workshop• In order to do a hands-on workshop we need:

– JDK 1.5 or 1.6 (http:/java.sun.com/javase/downlaods/index.jsp)

– Maven 2 (http://maven.apache.org/download.html)– Tomcat 6 (http://tomcat.apache.org/downlaod-60.cgi)– MySQL 5.1

(http://dev.mysql.com/downloads/mysql/5.1.html#downloads)

• You also need:– the permission to run services, and to create tables in MySQL– a working network connection at least during setup– GALE, which you will get on a USB stick

Terchova, June 2, 2009JESS Summer School 2009

Slide 70