Glasgow Caledonian University M.Sc. Applied Instrumentation & Control
MMH626810-22-B
Model Predictive Control
Coursework (CW) Assignment for FT and DL Students
Module Title: Model Predictive Control MMH626810-22-B
Deliverable Item: The final report needs to be uploaded in PDF format via the link in the GCUlearn assessment page proper to this module.
Length: In line with the GCU’s Assessment Preparation Guidance, including, appendices, report should not exceed 10 double-columned A4 sized pages.
Issue date: 27th March 2023
Submission date: 30th April 2023
Module Tutor: The tutor in overall charge of the assignment is Dr. Ibrahim Kucukdemiral
Module Team: Dr. Ibrahim Kucukdemiral (Instructor for FT & PT students)
Mitigating Circumstances: Circumstances beyond your control which you consider to have af- fected your performance are dealt with under the University’s Mitigating Circumstances Procedures.
Unfair Means: Your coursework is expected to be an individual effort. While you may be asked to perform practical tasks in pairs or small groups, and while you are encouraged to discuss the work with your peers as well as the academic staff, the report submitted under your own name must be your own individual work. Copying homework from another student or other source will be considered as CHEATING and will not be tolerated. Suspected academic misconduct, such as plagiarism, cheating and collusion, will be dealt with in conformity with the University’s Code of Student Conduct You may (and are encouraged to) discuss coursework problems with other students, but only to the extent that you would discuss them with the instructors.
Some additional information: Part of your engineering education involves learning how to com- municate technical information to others. Basic standards of neatness and clarity are essential to this process of communication. Your process of solving a problem must be presented in a logical sequence. Consider your assignments to represent your performance as an engineer. Graphs are to be titled and axes are to be labelled (with correct units). Equations and sections are to be numbered. References to be given in an appropriate standard.
Simulations: MATLAB/Octave is to be used for simulations. MATLAB OnRamp is the best method to start learning if you are unfamiliar with MATLAB environment. Also, we have provided a good deal of supportive material in GCULearn to help you improve your understanding. You are expected to perform your simulations using command line tools instead of SIMULINK or any other toolbox. Nevertheless, although it is not ideal, some of you may choose to use MPC toolbox under SIMULINK rather than developing their own scripts. Writing your own script will enable you to learn the topic better and provide you better flexibility on your code which is required for advanced topics and your research. To help you, MATLAB functions which generate prediction matrices and others which are widely used in the class are provided in the module webpage. Therefore, you don’t need to spend time on that. Of course, these are only needed if you develop your own code. There is no need for these matrices if you use MPC toolbox.
Marking Scheme: You must attempt all questions. Rubric is shown in Table 1. Maximum marks that can be granted from each question are provided against the questions. However, if the student uses MPC toolbox and SIMULINK environment rather than coding their own program, the maximum achievable mark will be less. This is indicated wherever the scheme applies. 15 marks are reserved for the general quality of the work (neatness, clarity, format, quality of the figures, labelled axes, presentation, structure, etc.) and 10% of the mark awarded will be deducted if the main body of the CW (including the appendices) exceeds 10 pages.
1 Format
All students should submit their final CW report in A4 IEEE Conference format. You may either use MS Word or LATEX for typesetting. Templates are available in the link. However, I would strongly suggest you to use LATEX as it is a free, open source text-editing package best known for its simple and easy dealing with equations and various symbols. LATEX has been used for writing scientific papers for many years and it is a great typesetting tool. However, it is not a WYSIWYG software so it might be difficult for you to adapt at the beginning. To give an example, this CW assignment has been typeset by LATEX. All you need is an Editor (such as TeXMaker(free), Winedt(paid), TexStudio (free)), a console or compiler (MikTeX) and a drawing tool for figures, diagrams (I would suggest draw.io (free and light weight) which supports LATEX equations ). There is a good introductory video here and a very good web source here. You may also see this. I believe that this is a timely and very good oppurtunity for you to learn LATEX.
Writing a concise scientific document which includes heavy mathematics is not an easy task. So,
you might wish to look over this fantastic guide before you start working on your CW report or thesis. I would also suggest you to look at this article, ”Writing a control paper”.
Structure of the CW: Structure your CW as follows:
1. Title:
- Choose a descriptive and accurate title that clearly reflects the content of your work.
- Avoid using technical jargon or abbreviations that might not be familiar to your audience.
- Make your title engaging and attention-grabbing by using active language and focusing on the most interesting aspect of your research.
2. Abstract:
- Keep your abstract concise, typically between 150-250 words.
- Clearly and succinctly summarize the main objectives, methods, and results of your re- search.
- Use clear and simple language that is easy to understand for a general audience.
- Highlight the novelty and significance of your research and explain why it matters.
3. Introduction:
- Begin with a brief background of the topic and explain why it is important and relevant.
- Clearly state the research question or hypothesis that you aim to answer.
- Provide an overview of existing literature and how your research builds upon it.
- Explain the scope and limitations of your study, as well as the methodology and techniques used.
- End the introduction with a clear and concise thesis statement that summarizes the main argument or contribution of your work.
4. Problem Definition:
- Clearly define the control problem and explain why it is important.
- Provide a formal definition of the dynamical system you are studying and the variables and parameters involved.
- Define any constraints, requirements, or objectives that must be satisfied by the system.
- Use clear and consistent notation throughout your work and provide units for all variables and parameters.
5. Main Body:
- Organize your main body into logical sections and subsections that address different as- pects of the problem.
- Clearly state the purpose and main ideas of each section in the opening paragraph.
- Provide clear and detailed explanations of the methods and techniques used to solve the problem.
- Use appropriate visual aids such as diagrams, charts, and graphs to enhance your explan- ations and clarify your results.
- Use clear and concise language that is easy to understand, avoiding unnecessary jargon or technical terms.
- Make sure that each section builds on the previous one and logically leads to the next.
6. Conclusion:
- Summarize the main findings and conclusions of your research in a clear and concise manner.
- Restate your thesis statement and explain how your work has contributed to solving the problem.
- Highlight any limitations or weaknesses of your study and suggest future research direc- tions.
- End with a strong and memorable concluding statement that leaves a lasting impression on the reader.
7. Appendix:
- Include any supplementary materials or data that are relevant to your research but not essential to the main body.
- Label each appendix clearly and refer to it in the main body when necessary.
- Make sure that all data and information presented in the appendix are accurate and relevant to your research.
2 Instructions
- The tasks are explained below. All questions are interconnected to each other, so we strongly advise you to read the problem definition carefully before you jump into the solution.
- Coursework has been designed to have you do things, not just observe them. This is not a spectator sport.
- Do not let the questions frighten you. They are all doable and there are no dirty tricks in the questions. Feel free to ask me any question using discussion board in GCULearn and discuss any problems that you might have.
3 Coursework Assignment
Dig into the literature carefully and find a linear/nonlinear system which has at least 1 disturbance input, w, 1 control input u, 3 states, x and 1 output, y, which can be represented as
x˙ = Ax + Bu + Hw
y = Cx + Du + Ew
after the linearisation.
Once you have decided on a system, please share that information with me by expli- citly providing me with a reference to the source. This needs to be done ASAP before you start working on your CW
- Considering the system matrices, comment on the open-loop stability, stabilisability and de- tectability of the system. Choose a reasonable sampling time, Ts, prediction horizon N for the system and create a discretised state-space model of the sampled system. (10 points)
- Assuming all control, state and output constraints are in place, design a full state feedback MPC for the system which minimises the effects of disturbances on the controlled outputs. Compare the performance of the controller with the uncontrolled system if the open-loop system is stable. (15 points/ 10 points if MPC toolbox is used)
- Assuming all control, state and output constraints are in place, design an observer based MPC for the system which minimizes the effects of disturbances on the controlled outputs. Compare the performance of the controller with the uncontrolled system if the open-loop system is stable. You might use either Luenberger Observer or a Kalman observer. (15 points/ 10 points if MPC toolbox is used)
- Assuming that there are no constraints on control, state and outputs, design a full state feedback MPC for the system which minimizes the effects of disturbances on the controlled outputs. Compare the performance of the controller with the uncontrolled system if the open-loop system is stable. (15 points/ 10 points if MPC toolbox is used)
- Assuming that there are no constraints on control, state and outputs, design an observer based MPC for the system which minimizes the effects of disturbances on the controlled outputs. Compare the performance of the controller with the uncontrolled system if the open-loop system is stable. You might use either Luenberger or a Kalman observer. (15 points/ 10 points if MPC toolbox is used)
- Choose a suitable control method (e.g. PID, LQR, LQG, adaptive control, etc.) that would fit your system’s structure and compare its performance to that of MPC you obtained in Q3. (15 points/ 10 points if MPC toolbox is used)
- 15 points are reserved for the general structure, organisation and quality of communication of technical knowledge.
Good luck!
Dr. Ibrahim Kucukdemiral
Table 1: Rubric for the marking.
Q1 (10) | Given the continuous-time linear/nonlinear plant, student obtains linear time-invariant model by employing Jacobian linearisation and identifies the open-loop characteristics of the system such as stability, controllabil- ity, stabilisability, observability and detectability. By selecting a suitable sampling period, student obtains the discretised plant dynamics in state- space. Student selects a reasonable prediction horizon and justifies their answer. |
Q2 (15) | Student codes constrained MPC by selecting a suitable cost function. Simulates the performance of the full state feedback MPC on the dis- cretised nonlinear plant under MATLAB and comments on the perform- ance of the controller by comparing its results with the uncontrolled case. Codes are provided in the Appendix. |
Q3 (15) | Student codes constraint output MPC by selecting a suitable cost func- tion. For the unmeasurable states designs an observer. Simulates the performance of the output-feedback MPC on the discretised nonlinear plant under MATLAB and comments on the performance of the con- troller by comparing its results with the uncontrolled case. Codes are provided in the Appendix. |
Q4 (15) | Student codes unconstrained state-feedback MPC by selecting a suitable cost function. Simulates the performance of the state-feedback MPC on the discretised nonlinear plant under MATLAB and comments on the performance of the controller by comparing its results with the uncon- trolled case. Codes are provided in the Appendix. |
Q5 (15) | Student codes unconstrained observer based output-feedback MPC by selecting a suitable cost function and outputs. Simulates the perform- ance of the MPC on the discretised nonlinear plant under MATLAB and comments on the performance of the controller by comparing its results with the unconrolled system. Codes are provided in the Appendix. |
Q6 (15) | Student compares the performance of the output feedback MPC with a suitable controller. Codes are provided in the Appendix. |
General (15) | Clearly written report that matches with the IEEE template. Well- structured and organised. Good use of English. Figures are clear and labelled. Equations are numbered and properly typed. Sections are numbered. Consistent notation is used throughout the text. Minimum number of typos exist. Complied with page limitation. References are provided and a standard referencing is used. Make sure that there are no sentence fragments. The formulas and equations too need to be con- tained in complete sentences. Equations and formulas (and the words too) should have correct punctuation as well. Make sure that your paper flows smoothly and reads well. And please, don’t be careless! Check your spelling! |
Get expert help for MMH626810-22-B Model Predictive Control and many more. 24X7 help, plag free solution. Order online now!