1 / 24

LAG language

LAG language. Dr. Alexandra Cristea a.i.cristea@warwick.ac.uk http://www.dcs.warwick.ac.uk/~acristea/. LAG Grammar & Semantics. Grammar: http://wwwis.win.tue.nl/~acristea/MOT/help/LAGgrammar%5B2%5D.doc Semantics: http://wwwis.win.tue.nl/~acristea/MOT/help/LAGgrammarSemantics.doc.

bono
Télécharger la présentation

LAG language

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. LAG language Dr. Alexandra Cristea a.i.cristea@warwick.ac.uk http://www.dcs.warwick.ac.uk/~acristea/

  2. LAG Grammar & Semantics • Grammar: • http://wwwis.win.tue.nl/~acristea/MOT/help/LAGgrammar%5B2%5D.doc • Semantics: • http://wwwis.win.tue.nl/~acristea/MOT/help/LAGgrammarSemantics.doc Invited Tutorial, Madrid, Spain April 2008

  3. 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 Invited Tutorial, Madrid, Spain April 2008

  4. 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 Invited Tutorial, Madrid, Spain April 2008

  5. 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 Invited Tutorial, Madrid, Spain April 2008

  6. 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 Invited Tutorial, Madrid, Spain April 2008

  7. 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 • also should not be used: • showability Invited Tutorial, Madrid, Spain April 2008

  8. 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 Invited Tutorial, Madrid, Spain April 2008

  9. Type & Order & Label of Attributes • Type of Attributes (in Lessons) usage • GM.Concept.type = title • Order of Attributes (in Lessons) usage • GM.Concept.order • Labels of attributes (in Lessons) usage • GM.Concept.label = beg Invited Tutorial, Madrid, Spain April 2008

  10. Overall structure of the adaptation strategy // Description // Variables initialization ( // what the user sees first ) implementation ( // how the user interacts with the system ) Invited Tutorial, Madrid, Spain April 2008

  11. Example strategies • http://prolearn.dcs.warwick.ac.uk/ • http://www.dcs.warwick.ac.uk/~acristea/HTML/USI/MOT/MOT2AHA!/mot2aha-v4.txt • http:// www.dcs.warwick.ac.uk/~acristea/HTML/USI/MOT/MOT2AHA!/mot2aha-beg-int-adv.txt • http:// www.dcs.warwick.ac.uk/~acristea/HTML/USI/MOT/MOT2AHA!/mot2aha-beg-int-adv.txt Invited Tutorial, Madrid, Spain April 2008

  12. 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” Invited Tutorial, Madrid, Spain April 2008

  13. 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 Invited Tutorial, Madrid, Spain April 2008

  14. 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 ) ) ) Invited Tutorial, Madrid, Spain April 2008

  15. 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 ) ) Invited Tutorial, Madrid, Spain April 2008

  16. 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 Invited Tutorial, Madrid, Spain April 2008

  17. 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 // … ) Invited Tutorial, Madrid, Spain April 2008

  18. 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 • ) Invited Tutorial, Madrid, Spain April 2008

  19. 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 ) Invited Tutorial, Madrid, Spain April 2008

  20. 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 ) … ) Invited Tutorial, Madrid, Spain April 2008

  21. 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 ) Invited Tutorial, Madrid, Spain April 2008

  22. 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 Invited Tutorial, Madrid, Spain April 2008

  23. 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 ) ) Invited Tutorial, Madrid, Spain April 2008

  24. Questions? Invited Tutorial, Madrid, Spain April 2008

More Related