from local patterns to global models: towards domain driven educational process mining nikola trčka...
TRANSCRIPT
From Local Patterns to Global Models: Towards Domain Driven Educational Process Mining
Nikola TrčkaMykola Pechenizkiy
ISDA’09 - EDM
Motivation
What is the real curriculum (study program)?
How do students really study?Is there a typical/best way to
study?Do current prerequisites make
sense?
What is my expected time to finish?Should I take course A or course B
now?…
Student database withexam records
?
YES/NO 80%
Process:
Standard techniques
Proposed approach and architecture
ISDA’09 - EDM
Approach: Isolate a set of standard curriculum patterns and based on this patterns1. mine the curriculum as an executable quantified formal model and
analyze it, or2. (first) manually devise a formal model of the assumed curriculum and
test it against the data.
Data log
Pattern mining Pattern set
Pre-authored pattern templates
Process model
Process assembling
Conformance checking Model extension
Online monitoring
Educators
Event Log -MXML format
supported by ProM
Typical forms of requirements in the curriculum
Colored Petri net
ISDA’09 - EDM
Colored Petri nets
ISDA’09 - EDM
Classical Petri nets
• Well known and established formalism• Supports all routing constructs (choice, parallelism,
sequence, etc.)• No explicit support for data• Example - Complaints handling workflow:
recordcomplaint
start
contact deprtmt
collectinfo
contact client
decide positive
decide negative
pay
sendletter
filecase
end
place transition(task)
token
arc
ISDA’09 - EDM
Colored Petri nets
• Extend Petri nets with data information• Data in tokens - Places typed
Decidenegative
INFO
INFO
DECISION
info_c
make_decision(info_c,info_d)Collect
info
Decidepositive
dec
dec
[positive(dec)]
[not positive(dec)]
info_d
ISDA’09 - EDM
Modeling Academic Curriculum Patterns
Course - Exam construct
• Models an exam for course C for every student id
• Firing of C adds a new grade to the grade list
• There is a maximum number of attempts
ISDA’09 - EDM
g
(id,g::grds)(id,grds)
C
[length(grds)<MAX_NUM_ATTEMPTS]
[0,1,2,3,4,5,6,7,8,9,10]
GRADE
grades_of_C
[]
GRADES
Start and End pattern
• Models courses that must be taken first• Starting place of the model• Graduation is always the last course• Example: Start with either C1 or C2
ISDA’09 - EDM
id
idid
GRAD
C2C1 end
STUD_ID
start
STUD_ID
M-out-of-N pattern
• M courses out of a group of N courses must be passed before some other course can be taken
• Example: Two from {C1,C2,C3} before D
ISDA’09 - EDM
(id,grds3)
(id,grds2)
(id,grds1)D
[check2out3(grds1,grds2,grds3)]
grades_of_C3
[]
GRADES
grades_of_C2
[]
GRADES
grades_of_C1
[]
GRADES
Dependency pattern
• Result of C is automatically also a result for some other (weaker) course D
• Firing of D adds a grade to the list for course C
ISDA’09 - EDM
grades_of_C
GRADES
[](id,g::grdsc)
(id,grdsc)
D
Expiration pattern
• Grades stay valid only for some time, i.e. they can expire
• Expiration condition arbitrary
• Firing of GradesExpire remove all the grades of id for course C
ISDA’09 - EDM
(id,[]) (id,grds)
GradesExpire
[expireCond(grds)]
grades_of_C
[]
GRADES
ISDA’09 - EDM
Application: Conformance checking
Conformance checking
• Check whether the (manually constructed) model complies with the log (observed behavior)
• Has a curriculum pattern always been respected?
• Possible use: Fraud detection• Supported in ProM for classical Petri nets
ISDA’09 - EDM
(id,grds3)
(id,grds2)
(id,grds1)D
[check2out3(grds1,grds2,grds3)]
grades_of_C3
[]
GRADES
grades_of_C2
[]
GRADES
grades_of_C1
[]
GRADES
80%
Example 2-out-of-3 pattern check
• At least 2 courses from { 2Y420,2F725,2IH20 } must be taken before graduation.
ISDA’09 - EDM
Conclusions
• A framework for mining and analysis of educational data is proposed.
• Main idea: Model/Mine a curriculum as a Colored Petri net using some standard (predefined) patterns
• Applied in a real-world case study using ProM.• Future work:
• Implement the actual mining algorithm, and • enable online monitoring support.
ISDA’09 - EDM