forked from libprima/prima
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTODO
32 lines (21 loc) · 1.2 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
1. Check and complete the pre/post conditions, particularly the finiteness of XPT, XOPT, STEP, X,
etc.
2. Profile the Fortran code to find which subroutine costs the most time.
We can use gprof and gprof2dot to to this:
https://www.thegeekstuff.com/2012/08/gprof-tutorial/
https://github.com/jrfonseca/gprof2dot
$ gcc -pg main.f90
$ gprof a.out gmon.out | gprof2dot | dot -Tpng -o output.png
3. 20230108: See TODO_mat
4. What about solve the TR subproblem of COBYLA using a composite step approach? Vardi or
Byrd-Omojokun?
5. Check the definition and update of RESCON in LINCOA, in UPDATE/UPDATERES.
6. Do we need to update X, F, XOPT, FOPT, KOPT all together? Aren't they redundant? What if only
KOPT?
7. Unify the UPDATEQ, UPDATEXF(, and UPDATEH) of BOBYQA/LINCOA/NEWUOA.
8. Implement a subroutine that evaluates the functions, updates NF, updates history/filter, and
prints messages?
9. Get rid of GQ from the code, especially the common code.
10. Test whether the scaling threshold in the trust-region subproblem solvers can be improved.
11. For NEWUOA, BOBYQA, LINCOA, implement the trust-redundant subroutine solvers using hmul.
12. Replace sqrt(sum(**2)) by norm when appropriate.