User:Karthik0112358
C S Karthik is an undergraduate at IIT-Bombay and is working on addition of an rSQP optimiser for ASCEND during GSOC2011.
Goals
The reduced space SQP (rSQP) algorithm has seen many applications in large-scale engineering models. I intend to accept an input and parse it such that the solver can act on it. Further I am going to take up various test cases and check for bugs/inconsistencies. And if time permits I would like to write an optimization algorithm/code which, based on the given input, decides which is the best solver to send the input to.
Progress reports
Prior to 23 May 2011:
Related to rSQP:
- Started reading Mathematical and High-Level Overview of MOOCHO. However was later redirected to chapter 12 (Nonlinear programming) of "Operations Research: Applications and Algorithms" from Winston, 1994, 3rd (or a later) Ed., Duxbury Press (Belmont, California) as a preliminary reading for mathematical background.
- Completed reading chapter 12 (Nonlinear programming) of "Operations Research: Applications and Algorithms".
- Re-reading Mathematical and High-Level Overview of MOOCHO.
- Revisited theory behind the Simplex Algorithm from "Introduction to Algorithms", 3rd Edition, Page 864-879 authored by Cormen, Leisersin, Rivest, Stein.
Related to Radau5:
- Investigated code ascend/integrator/integrator.h and ascend/integrator/integrator.c to understand the data structures used.
- Devised and tried implementation of various for the mass matrix problem in solvers/radau5/asc_radau5.c.
- Settled on the idea of replacing neq with total number of equations as compared to the previous implementation of number of states.
May 23 - May 29
- Continue reading Mathematical and High-Level Overview of MOOCHO.
May 30 - June 5
- Completed reading Mathematical and High-Level Overview of MOOCHO.
June 6 - June 12 Finding a temporary fix for the mass matrix problem. I have split the task as to finding solution to 2 problems:
- (i) Making sure algebraic equations are being sent to solver.
- (ii) Writing a feasible mass matrix function to generate the mass matrix. This depends on (i).
Regarding Solving Part (i), I made an outside link and was able to capture all the variables involved. Trying to use them to find total number of equations. In completing part (ii) I am facing "INSUFFICIENT MEMORY" problem. Trying to fix that too. I am at present able to count total number of variables, solver variables, independent variables and number of differential equations. I would like to figure out a way to count number of free variables.
I have been able to find a solution to part(i), but it has 2 constraints,
- If number of total variables>>total number of equations, then the max number of substeps has to be reduced.
- The solution involves providing data outside given data structures and thus cannot employed as it is to ascend.
As far as part (ii) goes, there seems to be a simple fix. I am trying to figure it out through Valgrind's Memory loss method.
June 13 - June 19
- Use of valgrind did not provide much insight. Karthik: add DETAILS of what you found here please -- Jpye 07:53, 16 June 2011 (UTC)
June 15
- Trying to understand about expression-evaluation data structures by reading the following c code: ascend/system/relman.c.
- Re-reading Developer's Manual for better clarity.
- Checked out contents of Moocho and broadly read basic documentation.
- Installing MOOCHO
June 16
- Reading relman_diff2() and trying to understand what are the input variables, which header to include, etc.