Share this article:
MATLAB Programming for Biomedical Engineers and Scientists
In this blog post, we chat to authors Andrew King and Paul Aljabar about their new book, MATLAB Programming for Biomedical Engineers and Scientists, aimed at the biomedical engineer, biomedical scientist, and medical researcher with little or no computer programming experience.
You have been teaching MATLAB programming to biomedical engineers and scientists for 4 years. What have you found are the main difficulties students have in learning and applying the concepts?
It is important to bear in mind the motivations of students when teaching any subject. Students looking to become biomedical engineers and scientists have a particular interest in applying new technology to problems in medicine. This interface between technology and medicine is a relatively new but very exciting area, with huge potential, and students working in it tend to be strongly motivated by the needs of real medical problems. Therefore, we have found that it is important to show the students early on what potential benefits technology can bring to medicine, and translate these into real and relevant programming problems.
Chapter Download: Introduction to Computer Programming and MATLAB
Another issue is the varied backgrounds of the students. Whilst most of our students have previously studied scientific and mathematical subjects, their backgrounds in programming vary widely, and many have no experience or knowledge of basic programming concepts. It is important that, as far as possible, no student is left behind in their learning, so we need to bear in mind the backgrounds of students when designing and delivering a course on computer programming.
How did that influence your approach to teaching the course?
We always try to use biomedical problems wherever possible to illustrate the concepts we are trying to teach. The Biomedical Engineering Department at King’s College London, in which we are based, is situated in St. Thomas’ Hospital in London and several members of the department are clinicians themselves. Therefore, many of the examples we use are real problems that clinicians have come to us with. This level of realism and relevance can be highly motivating for students looking to work in the biomedical field.
We also always introduce all concepts from first principles and give plenty of practical examples to illustrate them. In our experience many students learn effectively by seeing examples and then applying the concepts to other related examples, and this process should not be rushed.
Finally, we have found that learning to program is about much more than just learning programming constructs and language key-words. These things are important and will serve students well to begin with, but once problems and programs become more complex, as they inevitably will, it is crucial to have a good understanding of the practicalities of program development. In other words, how do you go about developing a larger and more complex program? We have tried to focus on this important, and often neglected, area in our course.
How has this influenced your approach to writing this textbook?
In the book, whenever we introduce a new concept, practical examples are provided for students to see how the concept can be applied, and this is followed immediately by activities for students to attempt in order to reinforce their learning. These examples and activities are linked to clear learning objectives provided at the beginning of each chapter. At the end of the chapter, further exercises are provided to enable students to self-assess whether they have met the learning objectives. This mirrors the approach we take in teaching our course and is based on sound pedagogical principles.
Furthermore, the book is very much built on the practical application of programming concepts to biomedical problems. Many of the examples, activities and exercises we use are real biomedical problems and many use real biomedical data.
We also devote two whole chapters to the practicalities of designing and implementing more complex programs. These not only give students a chance to reflect on and reinforce the learning of the more technical chapters, but also gives them the practical skills that they will need when tackling real biomedical problems in the future.
A key element of the book is the associated web site which contains a large amount of materials linked to the book’s content. All data and source code needed for the practical code examples, activities and exercises are freely available to all readers from this site. For lecturers, there are extra materials including a complete set of slides and notes for teaching a course based on the book and also coursework suggestions. We hope that these resources will be useful to anybody considering using the book for teaching a course on MATLAB programming to students in the biomedical sciences.
There are a number of books on MATLAB but nothing specific to biomedical engineers and scientists. How is your book relevant to them?
Our key guiding principle has been to make the book relevant to the motivations of the students. Students who are interested in solving medical problems using technology will want to see how programming can be a part of those solutions. This is what we have tried to do with this book, and we hope that we have been successful.
To give a few examples, rather than just teaching students about the concepts of arrays and array processing, we show them how these concepts can be used to assess possible dyssynchrony in the heart based on image-derived measurements of regional motion; similarly, we show how file input commands can be applied to read and extract information from a real log file saved by an MR scanner; and we show how programming constructs and MATLAB visualization tools can be useful in analyzing and visualizing real gait tracking data.
For a student learning MATLAB programming on their own, how should they approach reading your textbook, and using the software, to help them master the concepts and skills?
Our recommendation would be to work through the book chapter-by-chapter, in the order provided. When code examples are given, students should download the code and data and try running them themselves. When activities are provided, they should attempt them and check their solutions with those provided on the book’s web site. Similarly for the exercises at the end of each chapter. After self-assessing using these exercises, if there are any of the learning objectives that they feel less confident about then they should review the relevant parts of the chapter before continuing. It may seem that this practical exposure slows down progress through the book and students may be keen to move on to the next topic, but in our experience the best learning comes through this kind of practical engagement.
We hope that students and lecturers alike find this book useful, and look forward to hearing constructive feedback.
MATLAB Programming for Biomedical Engineers and Scientists provides an easy-to-learn introduction to the fundamentals of computer programming in MATLAB. This book explains the principles of good programming practice, while demonstrating how to write efficient and robust code that analyzes and visualizes biomedical data. Aimed at the biomedical engineer, biomedical scientist, and medical researcher with little or no computer programming experience, it is an excellent resource for learning the principles and practice of computer programming using MATLAB.
About the Authors
Dr. Andrew P. King, Division of Imaging Sciences and Biomedical Engineering, King’s College London, UK
Dr.Paul Aljabar, Division of Imaging Sciences and Biomedical Engineering, King’s College London, UK
Want your own copy? You can save up to 30% when your order via Elsevier.com, enter code ENGIN317 at the checkout!
Biomedicine & Biochemistry
The disciplines of biomedicine and biochemistry impact the lives of millions of people every day. Research in these areas has led to practical applications in cardiology, cancer treatment, respiratory medicine, drug development, and more. Interdisciplinary fields of study, including neuroscience, chemical engineering, nanotechnology, and psychology come together in this research to yield significant new discoveries. Elsevier’s biomedicine and biochemistry content spans a wide range of subject matter in various forms, including journals, books, eBooks, and online information services, enabling students, researchers, and clinicians to advance these fields. Learn more about our Biomedical and Biochemistry books here.