Increasing Interaction and Visualization in the Computability Course
Download
Report
Transcript Increasing Interaction and Visualization in the Computability Course
A Visual & Interactive Computability
Course Emphasizing Breadth of
Automata
Rakesh Verma
Computer Science Department
University of Houston
http://www.cs.uh.edu/~rmverma
SIGCSE 06: NSF Showcase
CS@UH
1
Outline
The problem
Proposed solution
Teaching experience summary
Conclusions & future work
SIGCSE 06: NSF Showcase
CS@UH
2
The Problem
Learning and teaching Automata Theory
are challenging tasks
Abstract, difficult material
Considerable creativity required
Slow feedback in traditional format
Student perceptions make it worse
Dated material, of little use
Dry at best and boring/frustrating at worst
SIGCSE 06: NSF Showcase
CS@UH
3
Challenges Specific to UH
Large, urban institution with a mature
and diverse student population
Some loss of mathematical knowledge
Significant number of working students
In-school tutorial sessions difficult
SIGCSE 06: NSF Showcase
CS@UH
4
Goals
Enhance learning and learning
experience by increasing: visualization,
interaction, and faster feedback
Expose students to:
A variety of automata
Applications, especially recent ones
Historical background and development
SIGCSE 06: NSF Showcase
CS@UH
5
Proposed Solution
Complete revision of course contents
and teaching with:
integration of enhanced JFLAP (Duke U.)
and LRR (UH)
variety of automata, e.g., tree and DAG
automata
recent and classical applications of
automata
SIGCSE 06: NSF Showcase
CS@UH
6
Solution (contd.)
We have developed:
Power point slides for lectures including
JFLAP animations (LRR animations in F05)
New problem sets requiring use of these
tools
Notes on tree automata and DAG automata
Web site:
http://www2.cs.uh.edu/~rmverma/3340ne
w/html/index.html
SIGCSE 06: NSF Showcase
CS@UH
7
LRR and its advantages
LRR – input is a set of rules and an
expression
Each rule is l r, where l and r are expressions
with variables and operators
Example: x + 0 x and x + -x 0
Applies rules via matching to given expression
LRR can implement any computation
A Turing machine can be encoded via just one
rule!
SIGCSE 06: NSF Showcase
CS@UH
8
Visualizing Tree Automata
Instead of developing another package
we use LRR with RuleMaker – a
graphical interface
DFA example:
a(q0) q0
b(q0) q1
Final(q0) true
Final(b(a(q0))?
a(q1) q1
b(q1) q0
Final(q1) false
SIGCSE 06: NSF Showcase
CS@UH
9
Examples (contd.)
NFA can be simulated as below:
a(a(q1)) q2 (string) q0 q1 (epsilon)
Tree automaton example:
true q0
and(q0, q0) q0
and(q1, q0) q1
false q1
and(q0, q1) q1
and(q1, q1) q1
SIGCSE 06: NSF Showcase
CS@UH
10
UH Enhancements to JFLAP
“Debug” feature – students can
generate strings at random and find the
results for all the strings
Equivalence checking for DFA’s (this is
now part of JFLAP version 4.0)
SIGCSE 06: NSF Showcase
CS@UH
11
Preliminary Results
Students participating in special
problems and projects on automata
5
4
3
Students
2
1
0
1990-98 (7s.)
2002-04 (5s.)
SIGCSE 06: NSF Showcase
CS@UH
12
Prel. Results (contd.)
Positive feedback on surveys regarding
JFLAP/JFLAP++ and web-site materials
Students from this course showed
improved performance on subsequent
compilers course compared to
traditional versions taught by other
faculty
SIGCSE 06: NSF Showcase
CS@UH
13
Conclusions
Automata theory can be made
interesting and easier
Visualization is helpful
Interaction is key – during lectures and
outside class
SIGCSE 06: NSF Showcase
CS@UH
14
Future Work
Rigorous comparison with “traditional”
automata courses
Further development of materials on
breadth and applications of automata
A drastic revision of course contents …
SIGCSE 06: NSF Showcase
CS@UH
15
Acknowledgements
Students
Saquib Hakim (JFLAP++ and slides)
Mohammad Anwar (web site)
Pavan Podila and Patrick Sharkey (RuleMaker)
James Thigpen (integration with LRR)
Sponsor: National Science Foundation
The students who have enjoyed/suffered
through my course!
SIGCSE 06: NSF Showcase
CS@UH
16
Thank You!
?’s or !’s
For more info:
http://www2.cs.uh.edu/~rmverma/334
0new/html/index.html
SIGCSE 06: NSF Showcase
CS@UH
17