Bonus problems: week 5
- Inlämningsdatum 6 okt 2024 av 23.59
- Poäng 0,5
- Lämnar in en filuppladdning
- Filtyper pdf och ipynb
- Tillgänglig efter 27 sep 2024 kl 10:00
You can find the problem here. Everyone must write and submit their own solution (including any code). Cooperation is allowed, but list all the people you worked with and any resources you used that are not part of the official course material at the beginning of your submission.
- If f is your objective function, f(x^*) is the optimal value, and x_k is your iterate at iteration k, don’t plot ln(f(x_k) - f(x^*)). Instead, use the log-scale option for f(x_k) - f(x^*) in matplotlib. This looks much nicer/professional.
- How do you find f(x^*)? You can run FISTA for a huge number of iterations to obtain an approximate f(x^}). Then just plot the function value suboptimality for only the first 1/10^3 iterations say (change this number so that the plot looks nice). Another way is to use https://www.cvxpy.org/ to obtain an accurate estimate of f(x^{*}). Look at https://www.cvxpy.org/tutorial/solvers/index.html and manually select low tolerances for nice plots.
- Please ensure that you explicitly write all relevant equations, functions, operators, theorems, and algorithms in your Jupyter notebook. For this purpose, use LaTeX in markdown cells, not just Python code. This will help make your solutions clear and easy to follow.