21
German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation Based on Course Generation Based on Hierarchical Task Network (HTN) Hierarchical Task Network (HTN) Planning Planning Carsten Ullrich, ABIS’05

German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

Embed Size (px)

Citation preview

Page 1: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial Intelligence (DFKI GmbH)Saarbrücken, Germany

Deutsches Forschungszentrum für Künstliche IntelligenzDeutsches Forschungszentrum für Künstliche Intelligenz

Course Generation Based on Course Generation Based on Hierarchical Task Network (HTN) PlanningHierarchical Task Network (HTN) Planning

Carsten Ullrich, ABIS’05

Page 2: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Learn about “derivation”

Course Generation, ExampleCourse Generation, Example

RepositoryCourse Generator

Page 3: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

• : : Represent advanced pedagogical knowledge

• Joint work with University of Augsburg,Lehrstuhl für Didaktik der Mathematik

• Formalization of pedagogical strategies based on OECD PISA– Focus on mathematical

literacy & competencies• problem solving, • use of mathematical language,• mathematical modeling• …

– 6 scenarios: LearnNew, Rehearse, Overview, trainCompetency, Workbook, ExamSimulation.

Pedagogical AimsPedagogical Aims

Page 4: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Basics of Hierarchical Basics of Hierarchical Task NetworkTask Network Planning Planning

• Similar to classical AI planning– World state represented by

set of atoms– Actions correspond to state transitions

• Differences to classical AI planning– What it plans for: Sequence of actions that

perform a task network– How it plans:

• Methods decompose tasks • down to primitive tasks performed by operators

Page 5: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Basics of HTN-PlanningBasics of HTN-Planning

• Domain description– Tasks: Activities to perform

• Primitive/Compound– Operators: Perform primitive tasks

(task, precondition, delete list, add list)

– Methods: Decompose compound tasks(task, precondition, subtasks)

– Axioms: Infer preconditions not asserted in world state

• Shop2/JShop2: D. Nau et.al., University of Maryland

Page 6: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

ChallengesChallenges

• Reasoning about Content• Reasoning about User• Tool Support• Adaptivity++,

Interactivity, Service Provision

• Pedagogical Knowledge

Repository

Learn about “derivation”

Course Generator

Repository

Repository

??

??

??

??

Examples for

“derivation”

??

Page 7: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Connecting Course Generation and HTNConnecting Course Generation and HTN

• Input: Pedagogical Task• Pedagogical Objective• List of Content Identifiers

(learnNew (def_function def_deriv))(getAppropriateExercise (def_function))

• Output: Actions generating structured sequence of LOs((!startSection def_derivation) (!insertElement

intro_def_funct) (!insertElement

def_function)…

(!endSection))

Page 8: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Course Generation by HTN, Course Generation by HTN, ExampleExample

(:method (learnConceptLearnNew ?c)

MethodLearnConceptLearnNew

()

((!startSection LearnNew)

(introduce ?c)

(developConcept ?c)

(practice! ?c)

(connect ?c)

(reflect ?c)

(!endSection)))

Goal Task

Subtask

Preconditions

Page 9: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Course Generation by HTN, Course Generation by HTN, ExampleExample

(:method (learnConceptLearnNew ?c)

MethodLearnConceptLearnNew

()

((!startSection LearnNew)

(introduce ?c)

(developConcept ?c)

(practice! ?c)

(connect ?c)

(reflect ?c)

(!endSection)))

Page 10: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Decomposing a TaskDecomposing a Task

(:method (introduce ?c)

MethodIntroduce

()

((!startSection (introduce ?c))

(insertMotivation ?c)

(introductionExamplify ?c)

(learnPrerequisitesConceptsShort ?c)

(!endSection)))

• Optional tasks: Should be achieved, but do not fail(:method (introduce ?c)

MethodIntroduceFallback

()

())

Page 11: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Critical TasksCritical Tasks

• Critical tasks: Have to be fulfilled, otherwise fail

(:method (learnConceptProblemBased ?c)

()

((insertProblem! ?c)

(do something …)))

Page 12: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Reasoning about UserReasoning about User

(:method (introductionExamplify ?c)

MethodIntroductionExamplify

((learnerProperty anxiety ?an)(call > ?an 2)

(assignIterator ?element

(call GetElements

((class example)

(property difficulty easy)

(relation for ?c)))))

((!insertElement ?element)))

(:- (learnerProperty ?property ?value)

(same ?value (call queryLM ?property)))

Page 13: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Reasoning about ContentReasoning about Content

(:method (introductionExamplify ?c) MethodIntroductionExamplify ((learnerProperty anxiety ?an)(call > ?an 2) (assignIterator ?element

(call GetElements ((class example) (property difficulty easy) (relation for ?c)))))

((!insertElement ?element)))

(:- (assignIterator ?element (?head . ?tail)) ((same ?element ?head))) (:- (assignIterator ?element (?head . ?tail)) ((assignIterator ?element ?tail)))

(id1 id2 id3 …)(id1 id2 id3 …)

Page 14: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

(:method (learnConceptLearnNew ?c)

MethodLearnConceptLearnNew

()

((!startSection LearnNew)

(introduce ?c)

(developConcept ?c)

(practice ?c)

(connect ?c)

(reflect ?c)

(!endSection)

)

)

Course Generation by HTN, Course Generation by HTN, ExampleExample

Page 15: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Crucial and Fallback MethodsCrucial and Fallback Methods

(:method (developConcept ?c) ((learnerProperty competencyLevel ?c ?cl) (call > ?cl 3)) ((!startSection (develop ?c)) (!insertElement ?c) (!endSection))

((learnerProperty competencyLevel ?c ?cl) (call <= ?cl 3) (learnerProperty motivation ?c ?mo) (call >= ?mo 3)) ((!startSection (develop ?c)) (!insertElement ?c) (explain ?c) (selectAppropriateExample ?c) (!endSection))

() ((!startSection (develop ?c)) (!insertElement ?c) (explain ?c) (!endSection)))

Crucial methods

Fallback method

Page 16: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

(:method (learnConceptLearnNew ?c)

MethodLearnConceptLearnNew

()

((!startSection LearnNew)

(introduce ?c)

(developConcept ?c)

(practice ?c)

(connect ?c)

(reflect ?c)

(!endSection)

)

)

Course Generation by HTN, Course Generation by HTN, ExampleExample

Page 17: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Selecting ExercisesSelecting Exercises

(:method (selectAppropriateExercise ?c) MethodSelectExerciseHighMotivation ((learnerProperty field ?field) (learnerProperty educationalLevel ?el) (learnerProperty motivation ?c ?m) (call >= ?m 3) (learnerProperty competencyLevel ?c ?cl) (equivalent (call + 1 ?cl) ?ex_cl) (assignIterator ?exercise

(call GetElements ((class exercise) (relation for ?c) (property learningcontext ?el) (property competencylevel ?

ex_cl) (property field ?field)))))

((insertElement ?exercise)))

Service Provision!

Page 18: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

(:method (learnConceptLearnNew ?c)

MethodLearnConceptLearnNew

()

((!startSection LearnNew)

(introduce ?c)

(developConcept ?c)

(practice ?c)

(connect ?c)

(reflect ?c)

(!endSection)

)

)

Course Generation by HTN, Course Generation by HTN, ExampleExample

Page 19: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Service IntegrationService Integration

(:method (reflect ?c) MethodReflectWithOLM ((learningServiceAvailable OLM)) ((!startSection reflect) (!insertLearningService OLM) (!endSection))

MethodReflectManual () ((!startSection reflect) (!text reflect) (!endSection)))

(:- (learningServiceAvailable ?tool) ((call checkService ?tool)))

Page 20: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

ConclusionConclusion

• Using HTN-planning for Course Generation– Representing pedagogical knowledge– Distributed content, integration of learning

services– Adaptivity++, interactivity, service provision,

sub-goal recognition• Efficient:

– Generation of a course with 15 LO ≈ 700ms– with caching ≈ 200ms

Page 21: German Research Center for Artificial Intelligence (DFKI GmbH) Saarbrücken, Germany Deutsches Forschungszentrum für Künstliche Intelligenz Course Generation

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

ThanksThanks

[email protected]