Download presentation
Presentation is loading. Please wait.
1
Issues in Computational Models of Skill Development for Tutors of Computer Programming Visiting Scholar: Guojin Zhu Supervisor: Juyang Weng Michigan State University September 12, 2008
2
The purpose of this presentation is to give an example of tasks That can help human being in the real world, That involve problems that traditional program can not solve, And that involve autonomous mental development.
3
Comment By definition autonomous mental development is not task-specific. This may lead to misunderstanding that autonomous mental development is not necessary for programs that are designed for specific tasks. This presentation, however, shows that some tasks may involve autonomous mental development.
4
Comment (cont.) In fact it gives an example of tasks that can not be implemented by traditional program, but may be implemented by a program (1) That is design for specific tasks; (2) And that has its internal process of autonomous mental development, which is not just for a specific task.
5
What’s New? The viewpoint here is that autonomous mental development is not computer program, The viewpoint here is that autonomous mental development is not computer program, so that it is possible that autonomous mental development may take place in the internal part of a computer program that is designed for specific tasks. so that it is possible that autonomous mental development may take place in the internal part of a computer program that is designed for specific tasks.
6
Background Online-judge Problem selection Problem difficulty AcceptedSubmittedAuthors Difficulty levels
7
Limitation of D(p) Do not consider that different students may fell different difficulty of the same problem. Do not consider that different students may fell different difficulty of the same problem.
8
Tutors Needed To evaluate each problem p for each student s on a basis of the knowledge that the student s has mastered, formally written E s (p). (vs. D(p)) formally written E s (p). (vs. D(p)) The greater the value of E s (p) is, the easier the problem p for the student s; The top 3 problems based on the value of E s (p) are supposed to be the most suitable for the student s.
9
How to know the knowledge that a student has mastered ? Consider the problems he has solved. Trouble: There may several solutions to the same problem. Trouble: There may several solutions to the same problem. Consider the knowledge points K s that the student s has employed in his submitted codes C s that solve the problems, where knowledge points are something like “switch statement”, “array”, etc. where knowledge points are something like “switch statement”, “array”, etc.
10
Formal description of the task of the tutor E s (.) = T(K s )
11
How to represent the values of E s (p) Suppose the training course of computer programming provides n problems denoted p 1, p 2, …, p n. The values of E s (.) are represented by vector y, where the ith component y i of vector y denotes the evaluated value E s (p i ) of the ith problem p i, that is y i = E s (p i ), i = 1,,2, …, n y i = E s (p i ), i = 1,,2, …, n
12
How to represent K s Suppose the training course of computer programming involves m knowledge points denoted k 1, k 2, …, k m. K s is represented by vector x, where the ith component x i is 1 if the student has mastered the knowledge point k i, where the ith component x i is 1 if the student has mastered the knowledge point k i, otherwise x i is 0. otherwise x i is 0.
13
The final formula y = T(x) Question: How to implement the function T of the task? Question: How to implement the function T of the task?
14
By Measuring the Relevance Suppose the student s solve the problem p i by using knowledge points K pi, represented by a vector v i, where i = 1, 2, …, n. The relevance between K pi and K s is denoted by R(v i, x). y i = R(v i, x), i = 1, 2, …, n Question: How to know K pi, therefore v i, before the student s actually solves the problem p i ?
15
By Learning Initialize v i, where i = 1, 2, …, n. When the student s solves a problem p c, update v c in such that R(v c, x) increases. Question: Why do we need the tutor if the student has already solved the problems? Question: Why do we need the tutor if the student has already solved the problems?
16
Challenges?
17
Different Learning Mode Traditional learning programs need training phase before doing the task. The tutor is supposed to do the task without training first. The tutor may learn something by doing the task. Learning procedure: T (1), T (2), …, T (t) T T (1), T (2), …, T (t) T
18
Muddy Materials for Learning Materials for training traditional learning programs are clean. The tutor has no clean materials for learning.
19
Muddy Goal The training course of computer programming may change its problem set, The training course of computer programming may change its problem set, leading to that the function T changes, leading to that the function T changes, say from T1 to T2. say from T1 to T2.
20
Learning means something changes Suppose learning task T 1 followed by learning task T 2. Traditional learning makes every change for the given task. When it learns the task T 2, it forgets every change for the task T 1. In fact, there is no difference between learning the task T 1 and learning the task T 2.
21
Changes not just for a specific task The tutor learns the task T 2 more quickly than it learns the task T 1 because it has obtained some experience during learning the task T 1. because it has obtained some experience during learning the task T 1. Such experience is the change not just for the task T 1. It can be shared by the task T 2. It can be shared by the task T 2.
22
Change not just for a specific task Change not just for a specific task is a kind of is a kind of autonomous mental development. autonomous mental development.
23
Conclusion The task of the tutor The task of the tutor (1) Can help human being in the real world, (1) Can help human being in the real world, (2) Involves problems that traditional program can not solve, (2) Involves problems that traditional program can not solve, (3) And involves autonomous mental development. (3) And involves autonomous mental development.
24
Thanks
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.