german research center for artificial intelligence (dfki gmbh) saarbrücken, germany deutsches...

Post on 30-Mar-2015

220 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

Learn about “derivation”

Course Generation, ExampleCourse Generation, Example

RepositoryCourse Generator

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

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

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

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”

??

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))

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

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)))

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

()

())

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 …)))

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)))

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 …)

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

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

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

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!

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

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)))

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

German Research Center for Artificial IntelligenceCarsten Ullrich – ABIS’05

ThanksThanks

www.activemath.orgcullrich@activemath.org

top related