Personal tasks of this week:
Task: Resolving Issues in Dr. Vichik’s Design
Definition: Based on our analysis of the failure of Dr. Vichik’s circuit in solving certain optimization problems, develop a fix that enables the circuit to consistently solve the set of problems required by our formulation.
Completion: The task is completed. I reduced the dynamic range from 100mV, which is used by Dr. Vichik’s in his design, to 10mV, preventing the op-amps from saturating in a pessimistic example problem. In addition, the SQP algorithm is replaced by the SLP (sequential linear programming) algorithm in our design to avoid other issues in Dr. Vichik’s QP circuit. Based on the new design, we updated the BoM and re-estimated component and manufacturing cost.
Task: Simplification of the NMPC problem
Definition: Formulate an alternative NMPC problem with less variables to reduce the size of the associated NLP, which reduces the complexity and cost of the analog circuit.
Completion: The task is completed. We formulated a torque-limited single pendulum swing-up problem, which is analogous to the mountain car problem, a classical problem in reenforcement learning. It has a lower-dimensional state space than the double pendulum swing-up problem, and its dynamics is still nonlinear. Alvin modified the code and we were able to achieve swing-up with NMPC.
Next Steps:
My next step is to synthesize the full circuit with Andrew, and implement SLP with Alvin.
Overall progress assessment:
My progress is on-schedule, as all of my tasks this week have been completed.