Explicit Intelligence in Adaptive Hypermedia: Generic Adaptation Languages - PowerPoint PPT Presentation

Explicit intelligence in adaptive hypermedia generic adaptation languages l.jpg
Download
1 / 78

  • 260 Views
  • Updated On :
  • Presentation posted in: Travel / Places

Explicit Intelligence in Adaptive Hypermedia: Generic Adaptation Languages . Alexandra Cristea. LAOS Model. Adaptation granularity. lowest level : direct adaptation techniques :

Related searches for Explicit Intelligence in Adaptive Hypermedia: Generic Adaptation Languages

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Presentation

Explicit Intelligence in Adaptive Hypermedia: Generic Adaptation Languages

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Explicit intelligence in adaptive hypermedia generic adaptation languages l.jpg

Explicit Intelligence in Adaptive Hypermedia: Generic Adaptation Languages

Alexandra Cristea


Laos model l.jpg

LAOSModel


Adaptation granularity l.jpg

Adaptation granularity

  • lowest level:direct adaptation techniques:

    • adaptive navigation support & adaptive presentation(Brusilovsky 1996), implem.: AHA!; expressed in AHAM syntax

    • techniques usually based on threshold computations of variable-value pairs.

  • medium level:goal / domain-oriented adaptation techniques:

    • based on a higher level language that embraces primitive low level adaptation techniques (wrapper)

    • new techniques: adaptation language (Calvi & Cristea 2002),

  • high level:adaptation strategies

    • wrapping layers above

    • goal-oriented

Adaptation Assembly language

Adaptation Programming language

Adaptation Function calls


How to create an adaptation language l.jpg

How to create an adaptation language?

  • Adaptation Language as an Intermediate Platform (between authoring environment and adaptation engine)


Contents l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • AHA! & LAG-XLS (XML LS adaptation language)

  • LAOS & LAG (generic adaptation language)

  • Authoring of learning styles in LAG and AHA!

  • Conclusion


Contents6 l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • AHA! & LAG-XLS (XML LS adaptation language)

  • LAOS & LAG (generic adaptation language)

  • Authoring of learning styles in LAG and AHA!

  • Conclusion


Slide7 l.jpg

“Authoring problem” Defining:- content alternatives & multiple paths through the content - adaptation techniques - whole user-interaction mechanism design

Alleviating “Authoring problem”Improving reuse capabilities:(reuse of previously created material & other components)- reuse of static & dynamic parts of the courseware

The solutionReuse of dynamics:“Exchanging not only the ingredients, but the recipes as well”Adaptation languages:-LAG - LAG-XLS (read as “LAG-excels”)


Contents8 l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • AHA! & LAG-XLS (XML LS adaptation language)

  • LAOS & LAG (generic adaptation language)

  • Authoring of learning styles in LAG and AHA!

  • Conclusion


How to create an adaptation language9 l.jpg

How to create an adaptation language?

  • Adaptation Language as an Intermediate Platform (between authoring environment and adaptation engine)

  • We need to find out which are the:

    • Elements of course dynamics

  • For this, we need to analyse what happens in an adaptive course, and what is done dynamically:


Selection of media items l.jpg

Selection of Media Items

  • Visual style

  • Diagrams

  • Illustrations

  • Graphs

  • Flowcharts

  • Animations+ audio

  • Verbal style

  • More text

  • Possibly audio


Providing navigation paths l.jpg

Providing navigation paths

Sequential style

Linear step-by-step learning process

Global style

Global overview first, then details


Slide12 l.jpg

Presentation for Visual+Global Learner


Slide13 l.jpg

Presentation for Verbal+Analytic Learner


Ordering information l.jpg

Ordering information

Reflective style

Learn by looking at examples

Active style

Learn by doing

things actively


Contents15 l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • AHA! & LAG-XLS (XML LS adaptation language)

  • LAOS & LAG (generic adaptation language)

  • Authoring of learning styles in LAG and AHA!

  • Conclusion


Slide16 l.jpg

  • Adaptation Language as an Intermediate Platform

  • Having found the elements of course dynamics, we need to find out what variation we have in terms of:

    • Types of adaptive strategies


Types of adaptive strategies l.jpg

Types of Adaptive Strategies

  • Instructional strategies

    - selection of media items

    - ordering information or providing different navigation paths

  • Instructional meta-strategies – inference or monitoring strategies. Preferences for:

    - certain types of information (e.g. text vs. image)

    - reading order (e.g. breadth-first vs. depth-first)


Contents18 l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • AHA! & LAG-XLS (XML LS adaptation language)

  • LAOS & LAG (generic adaptation language) Authoring of learning styles in LAG and AHA!

  • Conclusion


Slide19 l.jpg

  • Adaptation Language as an Intermediate Platform

  • Having found the elements of course dynamics, and the types of adaptation strategies, we need to find out the:

    • Classification of actions in adaptive strategies


Classification of actions in adaptive strategies from n stash l.jpg

Classification of Actions in Adaptive Strategies (from N. Stash)


Contents21 l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • LAG-XLS (XML LS adaptation language) (& AHA!)

  • LAOS & LAG (generic adaptation language)

  • Authoring of learning styles in LAG and AHA!

  • Conclusion


Aha adaptive hypermedia architecture l.jpg

AHA! Adaptive Hypermedia Architecture


Classification of actions in adaptive strategies from n stash23 l.jpg

Classification of Actions in Adaptive Strategies (from N. Stash)


Lag xls an xml learning style adaptation language l.jpg

LAG-XLS:an XML Learning Style Adaptation Language

Elements of the language:

  • select – selecting concept representation

  • sort – sequencing concept representation

  • showContent – showing content of a concept

  • showLink – showing link to a concept

  • setDefault – setting defaults

  • actions – updating the User Model


Select l.jpg

Select

  • selecting concept representation

  • <select attributeName="media">


Slide26 l.jpg

sort

  • sequencing concept representation


Showcontent l.jpg

showContent

  • showing content of a concept

    <showContent>image</showContent>


Showlink l.jpg

showLink

  • showing link to a concept

    <showLink>

    <linkTo>text</linkTo>

    <comment>See textual information</comment>

    </showLink>


Setdefault l.jpg

setDefault

  • setting defaults

    <showContentDefault>default</showContentDefault>


Actions l.jpg

actions

  • updating the User Model

    <action attributeName="media"> <UMvariable>personal.VERBvsIM</UMvariable>

    <expression>personal.VERBvsIM-5</expression>

    </action>


Slide31 l.jpg

Examples LAG-XLS


Verbalizer versus imager l.jpg

Verbalizer versus Imager

<if><condition>

personal.VERBvsIM &gt; 70</condition>

<then>

<select attributeName="media">

<showContent>text</showContent>

<showContentDefault>default</showContentDefault>

<showLink>

<linkTo>image</linkTo>

<comment>Pictorial information</comment>

</showLink>

</select>

</then>

</if>

<if><condition>

personal.VERBvsIM &lt; 30</condition>

<then>

<select attributeName="media">

<showContent>image</showContent>

<showContentDefault>default</showContentDefault>

<showLink>

<linkTo>text</linkTo>

<comment>Textual information</comment>

</showLink>

</select>

</then>

</if>


Monitoring strategy image versus text preference l.jpg

Monitoring Strategy:Image versus Text Preference

<if><condition>personal.initial.VERBvsIM > 29 & personal.initial.VERBvsIM < 71 & personal.traceTextvsImage &concept.media==“image” & concept.visited==0 & !parent.text</condition>

<then>

<action attributeName="media"> <UMvariable>personal.VERBvsIM

</UMvariable>

<expression>

personal.VERBvsIM-5</expression>

</action>

</then>

</if>

<if><condition>personal.initial.VERBvsIM > 29 & personal.initial.VERBvsIM < 71 & personal.traceTextvsImage &concept.media==“text” & concept.visited==0 & !parent.image</condition>

<then>

<action attributeName="media"> <UMvariable>

personal.VERBvsIM</UMvariable>

<expression>

personal.VERBvsIM+5</expression>

</action>

</then>

</if>


Inferring preferences text vs image l.jpg

Inferring preferences: text vs. image

Presentation for Imager

Presentation for Verbalizer

UM: personal.VERBvsIM-5

UM: personal.VERBvsIM+5


Contents36 l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • AHA! & LAG-XLS (XML LS adaptation language)

  • LAOS & LAG (generic adaptation language)

  • Authoring of learning styles in LAG and LAG-XLS

  • Conclusion


Slide37 l.jpg

Imager (Visualizer) strategy

LAG (old)LAG-XLS

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE strategy SYSTEM "../strategy.dtd">

<strategy name="VerbalizerVersusImager">

<description>Strategy for "Verbal" versus "Visual“ style</description>

<if>

<condition>personal.VERBvsIM &lt; 30</condition>

<then>

<select attributeName="media">

<showContent>image</showContent>

<showContentDefault>default</showContentDefault>

<showLink>

<linkTo>text</linkTo>

<comment>See textual information</comment>

</showLink>

</select>

</then>

</if> …

</strategy>


Monitoring strategy preference for image l.jpg

Monitoring Strategy: Preference for Image

LAGLAG-XLS

<if><condition>personal.initial.VERBvsIM < 29 & personal.initial.VERBvsIM > 71 & personal.traceTextvsImage & concept.media==“image” & concept.visited==0 & !parent.text</condition>

<then>

<action attributeName="media"> <UMvariable>personal.VERBvsIM</UMvariable>

<expression>personal.VERBvsIM-5</expression>

</action>

</then>

</if>


Contents39 l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • AHA! & LAG-XLS (XML LS adaptation language)

  • LAOS & LAG (generic adaptation language)

  • Authoring of learning styles in LAG and AHA!

  • Conclusion


Conclusion l.jpg

Conclusion

  • Extracted intelligence

  • Presented 2 adaptation languages:

    - LAG

    - LAG-XLS


Contents41 l.jpg

Contents

  • Motivation

    • “Authoring problem” & solutions

    • Comparison of 2 adaptation languages, focus on learning styles (LS)

  • Adaptation Language as an Intermediate Platform

    • Elements of course dynamics

    • Types of adaptive strategies

    • Classification of actions in adaptive strategies

  • AHA! & LAG-XLS (XML LS adaptation language)

  • LAOS & LAG (generic adaptation language)

  • Authoring of learning styles in LAG and AHA!

  • Conclusion


Lag language l.jpg

LAG language

Dr. Alexandra Cristea

a.i.cristea@warwick.ac.uk

http://www.dcs.warwick.ac.uk/~acristea/


What does the lag adaptation language do l.jpg

What does the LAG adaptation language do?

  • Captures adaptation patterns, typical for AHS, for reuse

  • We start with a set of desired adaptive behavior:

    • While, For + Break, Generalize, Specialize

    • Conditions, Enough conditions

    • Inherited from direct adaptation techniques: If, Action


Extended lag for mot l.jpg

Extended LAG for MOT

  • For more expressivity and addressing different attributes of concepts, some extensions were performed:

    • Addressing of concepts & their contents was improved

    • Global structure of the strategy was improved


Classification of actions in adaptive strategies from n stash45 l.jpg

Classification of Actions in Adaptive Strategies (from N. Stash)


Select46 l.jpg

Select

  • selecting concept representation

  • In MOT, given by attributes, so LAG has:

    • DM.Concept.attribute or

    • GM.Concept or GM.Concept.attribute

    • Or presentation only:

    • PM.DM.Concept.attribute.show

    • PM.GM.Concept.show


Slide47 l.jpg

sort

  • sequencing concept representation

  • Order of the current concept:

    • GM.Concept.order


Showcontent48 l.jpg

showContent

  • showing content of a concept

    • PM.DM.Concept.attribute.show

    • PM.GM.Concept.show


Showlink49 l.jpg

showLink

  • showing link to a concept

  • No difference, only in the menu links can be made available:

    • PM.DM.Concept.attribute.show

    • PM.GM.Concept.show

  • For having a menu, we need:

    • PM.menu = true


Setdefault50 l.jpg

setDefault

  • setting defaults

    IF GM.Concept.label == default

    THEN PM.GM.Concept.show = true


Actions51 l.jpg

actions

  • updating the User Model

    Overlay variable:

    UM.GM.Concept.knowledge +=1

    Free variable:

    UM.knowledge += 1


Concepts their contents l.jpg

Concepts & their contents

Stressing the overlay structure of user model on top of

  • Conceptmaps (DM)

    • UM.DM.stereotype1 = beg

  • or Lessons (GM):

    • UM.GM.stereotype1 = beg

  • or as independent variables:

    • UM. stereotype1 = beg


Concepts their contents53 l.jpg

Concepts & their contents

Stressing the overlay structure of presentation model on top of

  • Conceptmaps (DM)

    • PM.DM.show = true

  • or Lessons (GM):

    • PM.GM.show = true


Special attributes l.jpg

Special attributes

  • Event attributes:

    • Access: a concept has been seen by the user:

      UM.GM.Concept.access = true

  • Hierarchy attributes:

    • Parent: the parent concept of a given concept:

      DM.Concept.parent

    • Child: the child concept of a given concept:

      GM.Concept.child


Presentation model versions l.jpg

Presentation model versions

  • the presentation model (e.g., reflected in the AHA! delivery engine)      PM.GM.next = true // or PM.next

    // next button appears, showing the next most appropriate concept            //according to the order in MOT and the showability       PM.GM.ToDo = true // a list of items still to open appears, that are

    //showable and have not been visited yet;           // their order reflects the order in MOT ; also PM.ToDo      PM.GM.menu = true // table of contents that is already used in AHA,

    // should be also able to dissapear ; also PM.menu


Type order label of attributes l.jpg

Type & Order & Label of Attributes

  • Type of Attributes (in Lessons) usage

    • GM.Concept.type = title

    • DM.Concept.attribute.type = title

  • Order of Attributes (in Lessons) usage

    • GM.Concept.order

  • Labels, weights of attributes (in Lessons) usage

    • GM.Concept.label = beg


Overall structure of the adaptation strategy l.jpg

Overall structure of the adaptation strategy

// Description

// Variables

initialization (

// what the user sees first

)

implementation (

// how the user interacts with the system

)


Example strategies l.jpg

Example strategies

  • http://prolearn.dcs.warwick.ac.uk/


Extended lag adaptation strategy example l.jpg

Extended LAG: Adaptation strategy example

// DESCRIPTION

// This strategy slowly rolls out (and hides) the attributes of concepts based

// on how often a concept has been accessed. Concepts are monitored through

// the title attribute.

// Concept.beenthere keeps track of visits; Concepts have the label

// "showatmost" if they should disappear after a while (with weight indicating

// the number of visits required) and the label "showafter" if they should show

// up after a while (again, weight indicates the number of visits)

// VARS

// UM.GM.Concept.beenthere, GM.Concept.label, GM.Concept.weight


Extended lag adaptation strategy example60 l.jpg

Extended LAG: Adaptation strategy example

initialization(

while true (

UM.GM.Concept.beenthere = 0

PM.GM.Concept.show = true

)

while GM.Concept.label == showafter (

if GM.Concept.weight > 1 then (

PM.GM.Concept.show = false

) else (

PM.GM.Concept.show = true

)

)

)


Extended lag adaptation strategy example61 l.jpg

Extended LAG: Adaptation strategy example

implementation (

if UM.GM.Concept.access == true then (

UM.GM.Concept.beenthere += 1

)

if enough(UM.GM.Concept.beenthere >= GM.Concept.weight

GM.Concept.label == showatmost

,2) then (

PM.GM.Concept.show = false

)

if enough(UM.GM.Concept.parent.child.beenthere >= GM.Concept.weight

GM.Concept.label == showafter

,2) then (

PM.GM.Concept.show = true

)

)


Extended lag adaptation strategy example 2 l.jpg

Extended LAG: Adaptation strategy example 2

// DESCRIPTION

// strategy which shows the beginner concepts first (together with the concepts for all learners);

// after all beginner concepts are read, the intermediate concepts are shown as well;

// finally, after all the intermediate concepts are read, the advanced concepts are shown and the course can be viewed completely

// Note: this is inspired from games, where the player can only look at the current level at the beginning, but when he manages to finish the level, he can access the next level, as well as all the levels below.

// VARS

// UM.GM.beginnerno, UM.GM.intermediateno, UM.GM.advancedno, GM.Concept.label, PM.GM.Concept.show, UM.GM.Concept.first, UM.GM.stereotype1


Extended lag adaptation strategy example 263 l.jpg

Extended LAG: Adaptation strategy example 2

initialization(

// INITIALIZATION

// initialize as beginner

UM.GM.stereotype1 = beg

// initialize sets of lesson concepts for stereotypes

// AHA! 'personal' variable; name = 'GMname'+'stereotypename'

UM.GM.beginnerno = 0

UM.GM.intermediateno = 0

UM.GM.advancedno = 0

// …

)


Extended lag initialization ex 2 l.jpg

Extended LAG: initialization (ex.2)

  • // as long as still general concepts available, make those readable

  • while GM.Concept.label == null

  • (

  • PM.GM.Concept.show = true

  • UM.GM.Concept.first = true

  • )

  • // compute number beginner texts

  • // as long as still beginner concepts available, make those readable

  • while GM.Concept.label == beg

  • (

  • UM.GM.beginnerno += 1

  • PM.GM.Concept.show = true

  • UM.GM.Concept.first = true

  • )


Extended lag initialization ex 265 l.jpg

Extended LAG: initialization (ex.2)

// compute number of intermediate texts

while GM.Concept.label == int

(

UM.GM.intermediateno += 1

UM.GM.Concept.first = true

)

// compute number of advanced texts

while GM.Concept.label == adv

(

UM.GM.advancedno += 1

UM.GM.Concept.first = true

)


Extended lag implementation ex 2 l.jpg

Extended LAG: implementation (ex.2)

implementation (

// IMPLEMENTATION

// remove already access items

if enough(

UM.GM.Concept.access == true

UM.GM.Concept.first == true

GM.Concept.label == beg

,

3 ) then

(

UM.GM.beginnerno -= 1

UM.GM.Concept.first = false

)

)


Extended lag implementation ex 267 l.jpg

Extended LAG: implementation (ex.2)

// change from beginner to intermediate if it is appropriate

if (UM.GM.beginnerno == 0) then UM.GM.stereotype1 = int

// show to intermediate only what is relevant

if enough(

GM.Concept.label == int

UM.GM.stereotype1 == int

,

2 ) then

(

PM.GM.Concept.show = true

)


Extended lag implementation ex 268 l.jpg

Extended LAG: implementation (ex.2)

// remove already access items

if enough(

UM.GM.Concept.access == true

GM.Concept.label == int

UM.GM.Concept.first == true

,

3 ) then

(

UM.GM.intermediateno -= 1

UM.GM.Concept.first = false

)

// change from intermediate to advanced if it is appropriate

if (UM.GM.intermediateno == 0) then UM.GM.stereotype1 = adv


Extended lag implementation ex 269 l.jpg

Extended LAG: implementation (ex.2)

// show to advanced only what is relevant

if enough(

GM.Concept.label == adv

UM.GM.stereotype1 == adv

,

2 ) then

(

PM.GM.Concept.show = true

)

)


Another example ex 3 l.jpg

Another example (Ex.3)

initialization (

while true (

PM.GM.Concept.show = false

)

'\Neural Networks II\Neural Networks I\title'.show = true

)

implementation (

// if you visited the parent you should be able to visit the child

if UM.GM.Concept.parent.access then (

GM.Concept.show = true

)

)


Lag grammar semantics l.jpg

LAG Grammar & Semantics

  • Grammar:

    • http://www.dcs.warwick.ac.uk/~acristea/MOT/help/LAGgrammar%5B2%5D.doc

  • Semantics:

    • http://www.dcs.warwick.ac.uk/~acristea/MOT/help/LAGgrammarSemantics.doc


Lag grammar l.jpg

LAG grammar

PROG  DESCRIPTION VARIABLES INITIALIZATION IMPLEMENTATION

DESCRIPTION  // “text”

VARIABLES  // “text”

INITIALIZATION initialization ( STATEMENT )

IMPLEMENTATION  implementation ( STATEMENT )

STATEMENT  IFSTAT | WHILESTAT | FORSTAT | BREAKSTAT | GENSTAT | SPECSTAT | (STATEMENT)* STATEMENT |ACTION

IFSTAT if CONDITION then (STATEMENT)+ | if CONDITION then (STATEMENT) + else (STATEMENT)+

WHILESTAT while CONDITION (STATEMENT)+ [TARGETLABEL]

ACTION  ATTRIBUTE OP VALUE

CONDITION enough((CONDITION)+, VALUE) | PREREQ

PREREQ  ATTRIBUTE COMPARE VALUE

ATTRIBUTE  GENCONCEPTATTR | SPECCONCEPTATTR

SPECCONCEPTATTR  ‘\SPECCONMAP\SPECCON\SPECATTR\ATTR’.ATTRATTR

LAOSCM, LAOSCONCEPTMAP DM | GM | UM | PM | CM

ATTR Attribute | title | keywords | text | introduction | conclusion |

exercise | child | parent | Relatedness | ATTR.ATTR | CONCEPT.ATTR |label | weight | “text”

ATTRATTR type | order | next | ToDo | menu | show | access | visited | “text”


Grammar semantics l.jpg

Grammar + Semantics

PROG  DESCRIPTION VARIABLES INITIALIZATION IMPLEMENTATION

  • PROG: A LAG strategy or procedure, containing a set of instructions (programming constructs) defining the user and presentation adaptation in an adaptive hypermedia environment.

  • DESCRIPTION: The description of PROG; contains a natural language description of the behavior of the adaptive strategy; it serves as the label (meta-description) for the whole strategy. It is important, as laic (non-programmer) authors should be able to extract from it the necessary elements to make a decision about using this adaptation or not.

  • VARIABLES: The variables of PROG; contains the list of variables that are used in the adaptive strategy. This information can be used by a laic (non-programmer) author to decide what attributes of the GM (goal and constraints model) should be filled-in for this strategy.

  • INITIALIZATION: The static initialization part of PROG; in this part, the initial experience of the user, when entering the adaptive environment, is described. This is useful so that a user doesn’t enter a void environment. Here, all the default decisions are set. Adaptive environments which are adaptable but not adaptive can only render this part.

  • IMPLEMENTATION: The dynamic implementation part of PROG; in this part, the interactivity between the adaptive environment and the user is described (for instance, the effect of user clicks).


Grammar semantics cont l.jpg

Grammar + Semantics (cont)

INITIALIZATION initialization ( STATEMENT )

IMPLEMENTATION  implementation ( STATEMENT )

STATEMENT IFSTAT | WHILESTAT |

(STATEMENT)*STATEMENT |ACTION

  • STATEMENT: The LAG language is a simple language built of a number of programming constructs, or statements, as follows:

    • IFSTAT: condition-action rules: the basic building block of the adaptation language.

    • WHILESTAT: loops

    • ACTION: This is part of the basic building block of condition-actions. It can be used by itself, as if the condition attached to it would be set to TRUE. This statement is the only one that allows specification of updates and changes of visible (such as the current screen) or invisible (such as the user knowledge) variables.


Grammar semantics cont75 l.jpg

Grammar + Semantics (cont)

IFSTATif CONDITION then (STATEMENT)+ |

if CONDITION then (STATEMENT) +

else (STATEMENT)+

WHILESTATwhile CONDITION

(STATEMENT)+

ACTIONATTRIBUTEOPVALUE

OP= | += | -= | .=

VALUEtrue | false | “text”


Grammar semantics cont76 l.jpg

Grammar + Semantics (cont)

CONDITIONenough((CONDITION)+, VALUE) | PREREQ

PREREQ ATTRIBUTE COMPARE VALUE

ATTRIBUTE GENCONCEPTATTR | SPECCONCEPTATTR

COMPARE== | < | >

VALUE “number”

  • CONDITION: for CA or ECA rules, specified by 1-enough prerequisites

    • enough: number VALUE of conditions should be fulfilled.

  • ATTRIBUTE: appears in conditions or actions; can be a generic attribute of DM, GM, UM or PM (e.g., UM.DM.Concept.knowledge); or can be specific (e.g., ‘\Neural Networks Map\Learning\Introduction\Weight’.show). For reusability use generic!


Grammar semantics cont77 l.jpg

Grammar + Semantics (cont)

GENCONCEPT ATTR  LAOS.CONCEPT.ATTR | LAOS.CONCEPT.ATTR.ATTRATTR |

LAOS.ATTR | LAOS.LAOS.ATTRATTR |

LAOS.LAOS.CONCEPT.ATTR.ATTRATTR

SPECCONCEPTATTR  ‘\SPECCONMAP\SPECCON\SPECATTR\ATTR’.ATTRATTR

LAOSDM | GM | UM | PM

CONCEPT Concept | “text”

ATTR Attribute | title | keywords | text | introduction | conclusion |

exercise | child | parent | Relatedness | ATTR.ATTR | CONCEPT.ATTR | label | weight | “text”

ATTRATTR type | order | next | ToDo | menu | show | access | visited | “text”

SPECCONMAP  “text”

SPECCON  “text”

SPECATTR  “text”


Slide78 l.jpg

  • Questions?


  • Login