4_april_MATLAB_Rossiter

advertisement
Student engagement with
MATLAB and supporting
independent learning
J A Rossiter
University of Sheffield
2010
Department of Automatic Control
and Systems Engineering
Background
It is well reported in the literature that undergraduates can
struggle with programming.
In the author's experience, these struggles are replicated in
student usage of MATLAB, because the basic skill
requirement for most problem solving involves some
level of programming and thus familiarity with concepts
such as files, variable names, functions, inputs and
outputs, loops, conditionals, etc.
Historical data suggested that even with a lot of support in
terms of materials and laboratories, students found
MATLAB difficult and, of more concern, did not like it!
Clear anecdotal evidence that students wanted to be told an
answer to memorise and reproduce whereas requirement
Department
of Automatic Control
was application of knowledge
to solve a new
problem.
2010
and Systems Engineering
Summary 1
It is necessary to challenge, develop and
change student expectations of learning to
help them progress with MATLAB.
Students were not putting effort into
understanding (deep learning) and thus
not progressing.
Department wants students to be confident in use of
MATLAB and specifically, capable of or confident in
‘independent learning’ of the MATLAB skills required for
new topics in later years.
2010
Department of Automatic Control
and Systems Engineering
Student Motivation
Programming
Modelling
Industry
Integrated
MATLAB
Curriculum
Maths
Control
Applications
2010
We have not found
student motivation
to be Department
a problem.
of Automatic Control
and Systems Engineering
Overview of concepts
used in Sheffield
• Encouraging independent learning.
• Peer assessment.
• Animations (or code) to support learning.
• Automated marking and using MATLAB in
exams (to be covered by other speakers).
2010
Department of Automatic Control
and Systems Engineering
Fostering Independent Learning
and MATLAB Programming Skills
at the Introductory Level
2010
Department of Automatic Control
and Systems Engineering
Transition issues
• University is very different from school.
• Although students realise this, they still desire
the same form of ‘feedback’ and support that
school teachers offered.
• This level of individual support and guidance is
not possible and consequently many students
struggle to adjust.
• Usually this is expressed as a feeling that they
get too little feedback on their work.
School: 5-18 years
University: 18+
2010
Department of Automatic Control
and Systems Engineering
Independent learning
• Engineering graduates need to be confident, independent
learners. [This is a further part of the transition issues.]
• Typically, students are good at ‘research’ that involves fact
finding, but struggle with independent learning which
requires new skills.
• Students constantly request outside validation: is it right,
what mark is that worth, etc ?
Able to acquire and validate new knowledge and skills
without a tutor and/or apply taught knowledge to solve
new problems.
N.B. Spoon feeding is used for scenarios where students
expect to regurgitate precisely what they have been taught,
perhaps just changing the numbers.
Department of Automatic Control
2010
and Systems Engineering
Cultural change
• The current generation of ‘teachers’ largely
found that programming came easily.
• The logical flow of one command following
another fitted nicely with expectations in science
and maths.
• Computing was a new opportunity and grasped
eagerly and so there were few hang ups about
grasping concepts.
• Computers could still be slow (punch cards!) and
we were probably more patient for progress.
2010
Department of Automatic Control
and Systems Engineering
Programming is hard
• The current generation (anecdotal evidence across the
globe) find programming much harder and less intuitive.
• One can conjecture that this is partially a consequence
of them being exposed to GUI/MENU driven interaction
with computers.
• The concepts of logically building blocks, one line
following another, has not been embedded in their
education.
• Students expect there to be ‘a solution’ that they just
need to memorise without understanding. ‘Just tell me
how to do it and I will learn it!’
2010
Department of Automatic Control
and Systems Engineering
Summary + objectives
11
• How do we help students
develop their (independent)
learning skills and manage
transition?
• How do we help students
learn programming
(problem solving).
How do we help
students learn
MATLAB? (Relies
on programming)
Programming is
best mastered as
an independent
learning task.
2010
Department of Automatic Control
and Systems Engineering
REFLECTIONS ON EARLIER
APPROACHES TO TEACHING
MATLAB IN THE AUTHOR’S
DEPARTMENT
2010
Department of Automatic Control
and Systems Engineering
Independent learning
13
In order to develop student independent learning skills,
the approach is integrated across the whole curriculum
and not piecemeal. E.g.
1. Essay and peer assessment.
2. New approach to laboratories.
3. Reports requiring synoptic view of experiences
and some research.
4. Design and simulate.
5. Learning of MATLAB/programming for problem
solving.
2010
Department of Automatic Control
and Systems Engineering
Evaluation of
independent learning
14
1. Most of the activities were considered positive
by the students (if you ignore the usual petty
complaints from a few).
2. However, the learning of programming
(MATLAB) received a significant minority of
more consistent complaints. Several students
just could not learn this even with good support
materials and weekly labs.
3. By contrast, they liked the ‘spoon feeding’
approach taken to teaching C programming,
although their skills development was poor.
2010
Department of Automatic Control
and Systems Engineering
Typical MATLAB Quotes
• Also in lectures, more details or handouts should be given
on MATLAB instead of struggling on that individually.
• The MATLAB needs some helpful explaining [Several]
• On the whole good, but I think I would have benefitted
more if MATLAB was taught in a more similar fashion to C.
• As matter of fact, MATLAB is a very complex software to
our 1st year student. I strongly recommend add more
lectures about matlab.
• A classmate used to complain:"If we suppose to learn
matlab by ourselves, Why should I go so far away from
home, and spent so much money on education, so that to
'learn by myself' here?"
BUT: I think this module is very good for establishing a stand
alone approach to learning … . The MATLAB was my
favourite part of this module it has given me more
confidence as a practising engineer that I have the ability to
research and construct my own knowledge onDepartment
topics.
of Automatic Control
2010
and Systems Engineering
Reflections on student
perceptions of MATLAB
Despite extensive resources in workbook format, weekly
laboratories, numerous exemplar files and of course the many
MathWorks resources, many students just do not get
MATLAB.
• Requests to be taught exactly how to solve a problem
before being asked to replicate this, or in other words
wanting a very prescribed curriculum – you teach and I
learn it.
• An inability to test their own code using commonsense
checks, or in other words a lack of awareness or
expectation that they can validate their own learning.
• An unwillingness to read the material provided carefully and
to go through it methodically; rather they wanted to know
‘the answer’.
Department of Automatic Control
2010
and Systems Engineering
• A lack of confidence or self-belief.
PROPOSALS FOR THE
FUTURE
2010
Department of Automatic Control
and Systems Engineering
Proposal
• Strong resistance to give into student requests for a
return to spoon feeding approach (which, in our view,
does not lead to effective learning anyway).
• Clearly some students need more support, but we still
want the learning to be student led.
• Learning is known to improve the more senses that are
activated, e.g. voice, vision, movement, emotion, etc.
• There is a lot of work on the potential of animations for
encouraging learning.
Develop some interactive learning resources
which student can access at their own pace!
2010
Department of Automatic Control
and Systems Engineering
Replacing lectures ?
19
The basic plan was to host some brief lecture like
material on the web.
• Students often want to ask questions
(feedback?) or revisit lecture content when
lecturer unavailable.
• They can go quickly to specific topic where they
are confused.
• Resource is available anywhere and anytime.
• It allows students to bring lecture into PC lab
and thus see lecture and practise on computer
simultaneously.
Department of Automatic Control
2010
and Systems Engineering
Why use powerpoint?
20
• The animation abilities of powerpoint are easy to use.
• Software exists that allows lecturers to link up audio with
powerpoint animations in an intuitive way, e.g.
ARTICULATE.
• Staff prepare their powerpoint slide (or slides) with all the
animations they might use in a lecture. Then, they record at
their desk but as if in a lecture. [No rehearsal so quick]
• The software automatically synchronises these two and
generates a flash file that runs on the web.
2010
Department of Automatic Control
and Systems Engineering
Demonstration of
lectures
21
Go to the folder HEASEMINARAPRIL4 on
the desktop.
1. Run the player.html file and follow the
instructions therein.
2. You will need headphones.
For more examples, see the website
http://controleducation.group.shef.ac.uk/MATLAB_index.htm
2010
Department of Automatic Control
and Systems Engineering
EXAMPLE 1: LOOPS
2010
Department of Automatic Control
and Systems Engineering
How does a for loop
work?
for k=1:6; % ie.
k=[1,2,3,4,5,6]
Back
First k=1 hence do
y2(1)=sin(xvalues(1));
Now k=2 hence do
to
y2(2)=sin(xvalues(2));
start
Now k=3 hence do
of
Now k=4 hence do
loop
y2(k)=sin(xvalues(k)); Y2(3)=sin(xvalues(3));
y2(4)=sin(xvalues(4));
Now
k=5 hence do
Now
k=6 hence do
y2(5)=sin(xvalues(5));
y2(6)=sin(xvalues(6));
end
Now k=6 is equal to max of
… more code allowed k, continue to next
line of code
2010
Department of Automatic Control
and Systems Engineering
Examples of for
loops
Open the file
week2_for.m
Note the call statement
has 3 variables.
Run in the command
window
Note values of k
are:
start, start+step,
start+2*step,…,star
t+6*step
2010
Department of Automatic Control
and Systems Engineering
TASKS
TASKS
1.
Use help week2_loop_for_plotting.m and determine how to
run this file and also how it works.
2. Write a function file which takes as its input a vector of
arbitrary length and then use a loop to define the output
vector whose values are the cubes of the coefficients of the
first vector plus one. The syntax could be:
output_vector = week2_loop_cube(input_vector)
3. Write a file to compute savings growth over time. For
instance, let savings with an interest rate of 5% and annual
bonus of £5 grow according to the model: Write a file with
syntax
Pounds=savings_growth(Pounds_in, interest_rate,
annual_bonus,years_invested)
The file should also plot savings growth.
The intent is that students apply understanding to solve a new
problem and should be able to validate their code without help – thus
increasing confidence.
2010
Department of Automatic Control
and Systems Engineering
EXAMPLE 2: DEFINITION OF
TRANSFER FUNCTION
2010
Department of Automatic Control
and Systems Engineering
Laplace
transforms
Basic tool is tf.m
Consider
s 2  3s  2
G 3
s  9s 2  27s  27
Numerator coefficients are
[1 3 2]
Denominator coefficients are
[1 9 27 27]
tf.m takes vectors of these
coefficients.
The final result is clear
2010
Department of Automatic Control
and Systems Engineering
TASK
Use MATLAB to define the following
transfer functions.
Answers are on the next slide.
3s  2
3
G 3
H 2
2
s  12s  48s  64
s 4
2( s  1)
 s5
K  3
M 2

s  4s
 s6
2010
Department of Automatic Control
and Systems Engineering
EVALUATION
2010
Department of Automatic Control
and Systems Engineering
Student evaluation
(year 1)
30
• 88% of the students felt the resources for the module
including MATLAB were good or very good.
• 63% said: I think this was a good way to help students
learn MATLAB in their own time and they were easy to
use.
• 53% felt the MATLAB delivery with FLASH lectures had
helped them improve their independent learning skills
substantially and all but one or the remaining students
felt it had helped them a little.
• 98% of the students agreed that the development of
independent learning skills was important and
department should require this for some topics and that
the overall balance was good.
Department of Automatic Control
2010
and Systems Engineering
Student evaluation
(year 1)
31
The class was split 53:46 in terms of whether the
independent learning requirements of MATLAB were
right or too much.
This is interesting because it is not so consistent with other
modules where around 90% of students felt the
independent learning requirements were about right (in
those cases the learning required was probably closer to
the research type work they will have encountered at
school).
2010
Department of Automatic Control
and Systems Engineering
Student evaluation
(year 2)
32
The majority of students agreed that independent learning
skills are important (less than 20\% disagreed).
However, when the question was specific to MATLAB 55\%
thought the balance was good and 45\% the opposite.
Nevertheless, this was much more favourable than the
response for other topics.
Student grades: the performance on this laboratory has
been good compared to previous years (about 5\% up
with student numbers around 180 this is significant) even
though the number of questions and the demand has
been substantially increased.
2010
Department of Automatic Control
and Systems Engineering
Student comments
(year 2)
33
I think animated MATLAB lectures were a good way to help
students learn MATLAB in their own time and they were
easy to use.
80\% were positive (15\% knew MATLAB already so did not
use) and only 5\% did not think this was a good idea or
helpful.
2010
Department of Automatic Control
and Systems Engineering
Student comments
(year 1)
34
• Was very nice and I think more powerpoint slides that
are in the format like the ones of matlab should be added
for other modules to;
• The lectures on boothwood are VERY useful- thank you;
• The lectures on Boothwood was helpful
• I think that the animated lectures on boothwood were
very helpful for independent learning of MATLAB;
•
I find them easy to use and informative. My own
independent attempts at learning MATLAB would
probably have taken much longer without these;
• The material available for learning MATLAB is really
good and improvement on the previous year.Department of Automatic Control
2010
and Systems Engineering
Student comments
(year 1) continued
35
• It has perfect electronic resources.
However, sometimes it is enough to get a
slightly different question then you were
taught and even if you know what to do,
you don't know how to tell it to computer.
• The electronic slides by Dr. Rossiter are
really helpful--> self study was possible by
using them.
2010
Department of Automatic Control
and Systems Engineering
Conclusions
• Although we will not claim students are now
highly proficient at problem solving with
MATLAB, it is clear that they are much more
positive about the expectation that they learn it
by themselves.
• A key aim of year 1 is to get students to engage
with and accept independent learning – we
believe introducing these resources has made a
good contribution to meeting this aim.
2010
Department of Automatic Control
and Systems Engineering
PEER
MARKING
2010
Department of Automatic Control
and Systems Engineering
Problem solving with
MATLAB (year 1, sem 2)
• Students produce code and a partner report
demonstrating use of MATLAB to solve and illustrate
engineering problems.
• Mark schemes very prescriptive between:
• Comments, correctness, code easier to run, report
structure, efficiency of code, etc.
Staff marking 2 weeks
Two stage marking
later
Peer marking 1st
Encourage reflection on
quality before key
submission
2010
Department of Automatic Control
and Systems Engineering
MATLAB
1. The author’s observations are that students were very
actively engaged in the process and certainly making
suggestions to each other about what they could
improve or where their code did not fully meet the
specifications.
2. However, the accuracy of marking of the qualitative
aspects and some specific requirements was poor,
even with very specific guidance to follow.
3. However, a useful formative process that seemed to
encourage some PAL.
In general students still struggling with open-ended criteria
and independent learning used in this module to reflect
some engineering practise; this impacts on marking.
2010
Department of Automatic Control
and Systems Engineering
ANIMATIONS WITH MATLAB
2010
Department of Automatic Control
and Systems Engineering
Virtual Laboratories
It is well accepted that Laboratories help
with motivation (authentic scenarios) and
student activity helps learning.
Virtual Laboratories have the advantage of
been pseudo-authentic but available 24/7.
Within MATLAB they are relatively easy to
create.
Assignments can be based around these to
ensure student engagement.
2010
Department of Automatic Control
and Systems Engineering
Examples of animations
I will demonstrate these if the conference
facilities allow this.
1. Construction of Bode asymptotes and
hence bode plots. animate_bode
2. Cross-over frequencies
cross_overfreq(tf(1,[1 2 1 0]))
3. System dynamics (aeroplane landing,
house heating, etc.)
landingaircraft
2010
Department of Automatic Control
and Systems Engineering
2010
Department of Automatic Control
and Systems Engineering
2010
Department of Automatic Control
and Systems Engineering
Overlaytuning output
2010
Department of Automatic Control
and Systems Engineering
46
Activity
Go to the folder HEASEMINARAPRIL4 on
the desktop.
1. Run the player.html file, jump to the later
slides and follow the instructions therein.
2. You will need headphones.
2010
Department of Automatic Control
and Systems Engineering
Student comments
On the whole, students are highly appreciative of the way
MATLAB has been integrated into the curriculum
• Matlab - easy if you use logical steps and the reference
material available.
• Found it quite difficult at first, but then realised I have to
work on my own to really master Matlab;
• I think the MATLAB assignment is a very good idea and
think it is a shame that the module doesn’t focus more
on this.
• I find doing something with a pen and paper when
MATLAB can do a much better job and quicker fairly
tedious, although I do appreciate that some background
is required.
2010
Department of Automatic Control
and Systems Engineering
QUESTIONS
2010
Department of Automatic Control
and Systems Engineering
Download