Posted: January 31st, 2023
Engg7302 Advanced Computational Techniques in Engineering Assignment 2: Numerical Linear Algebra
School of Information Technology & Electrical Engineering
Engg7302 Advanced Computational Techniques in Engineering
Assignment 2: Numerical Linear Algebra
Due date: see UQ Blackboard turnitin assignment submission system.
Where to submit: Submit the assignment report via the Blackboard turnitin assignment submission
system.
This assignment is worth 20% of the total marks for the course.
It aims to develop your skills in programming in MATLAB, to deepen your understanding of numerical
linear algebra and to explore applications of numerical linear algebra. Your solutions to this assignment
will be MATLAB program listings and relevant output, together with any other mathematical
derivations, notes or explanations that aids understanding.
In marking the assignment, the following criteria will be applied:
– correctness of the programs and mathemetical calculations
– clear and concise documentation, in the form of comments in the code, as to the approach being
used, and
– relevance of the output in verifying the correctness of the program and in illustrating the
solution.
– Some consideration will also be given to the efficiency of the solution.
2
Question 1
There is a signal b collected at M sampling points(b(1), b(2), …b(m), …,b(M)), and you are asked to
strategically place N components x (x(1), x(2), …,x(n),…x(N)) into the system to modify the signal
profile. The modified signal profile B=Ax+b will satisfy the following condition |�#��|
�� ≤∈, where B0
is the mean value of signal B. And ∈ (�) = 0.0001, �=1,2,…M. In addition, b, B are both positive
vectors. The range of components x: 0≤x(n) ≤0.006, n=1,2,…,N.
You are asked to implement the following tasks:
– Write a matlab code to minimise the 1-norm of vector x.
Note: please consider the function linprog() in matlab; The matrix A and vector b are stored
in files: A.mat and b.mat, and in matlab, you can access the data as follows: Load A; load b.
– Convert the vector b to be a two-dimensional (2D) matrix data, b2d, whose size is 24X24. If
you treat b2d as an image, please use low rank approximation (r=4) to implement image
compression. Please plot the original image (b2d) and compressed image, and calculate the
compression rate.
Note: in matlab, you can use the following code to implement data conversion:
b2d=reshape(b, [24,24]); and for image plotting, please consider function imagesc().
3
4