Nlp State And Constraint Vectors example essay topic
This starts off as a problem of forced-Keplerian motion but then gets a little more complicated when the constraint of minimizing thruster firing time is thrown in. When the satellite thrusters are firing to maintain their orbit, the interferometer can't take accurate data because the disturbance due to the movement is far greater than the disturbances caused by gravity waves. This dilemma brings about the problem of needing to minimize the thruster firing time so that you can maximize the data collection time. One method of optimizing finite-thrust spacecraft trajectories is the Direct Collocation with Nonlinear Programming approach (DCNLP). Direct Collocation with Nonlinear Programming Direct Collocation with Nonlinear Programming is a method of approximating the continuous optimization problem with a parameter optimization problem. This method has been developed over the course of the las thirty-five years and a summary of its history can be found in reference 1.
The DCNLP approach approximates the spacecraft trajectory with piecewise polynomials that are represented by state and control variables at a given number of nodes. State variables are stored in the state vector x and the control variables are stored in the control vector u. The spacecraft trajectory is divided into a series of thrust arcs and coast arcs, which are subdivided into evenly spaced segments. In a segment each state variable has a state trajectory which is taken to be a Hermite cubic.
This is a "unique cubic that goes through the endpoints of the thrust segment with the appropriate derivatives that are dictated by the evaluation of the differential equations of motion at the endpoints" [1]. Each control variable is assumed to have a linear control trajectory across the segment. At the center of each segment a collocation point is found and then the difference between the derivative of the Hermite cubic at the collocation point and the trajectory equations of motion evaluated at the collocation point is calculated. This difference is called the defect and it is one of the constraints that the objective function, the thruster firing time, is subject to. When the defect is zero the differential equations of motion are satisfied at the collocation point and the endpoints. Allowing the trajectory equations of motion to be given by = (x, u) and the length of time of a segment to be T, the Hermite interpolated state vector at the collocation point is given by xc = (1/2) + (xl + xr) + (T/8) + [ (xl, ul) - (xr, ur) ] where xl and xr are the state vectors at the left and right nodes.
The linearly interpolated control vector is given by uc = (1/2) + (ul + ur) where ul and ur are the control vectors at the left and right nodes. The derivative of the Hermite interpolated state vector at the collocation point is c = - [3/ (2+T) ]+ (xl - xr) - (1/4) + [ (xl, ul) + (xr, ur) ] Finally, the defect vector is d = (xc, uc) - c where both the equations of motion and the derivative of the Hermite interpolated state vector are evaluated at the collocation point [1], [2], [3], [4]. The differential equations of motion that describe the spacecraft trajectory are needed for use in the equations above. The three-dimensional equations of motion for a thrust arc in spherical coordinates using canonical units (m = 1.0) are where c 1 is the orbital radius, c 2 is the angle between the inertial Z-direction and the satellite radius vector, c 3 is the radial component of velocity, c 4 is the c 2 component of velocity, c 5 is the angle between the inertial X-direction and the satellite radius vector, c 6 is the c 5 component of velocity, at is the magnitude of the thrust acceleration, u 1 is the c 2 component of the thrust acceleration, u 2 is the c 5 component of the thrust acceleration, Fd, r is the radial component of the drag force, Fd, f is the c 2 component of the drag force, and Fd, q is the c 5 component of the drag force. The equations of motion for a coast arc will be identical to those of a thrust arc except that the thrust acceleration terms specified by u 1, u 1, and at will be zero. Besides the defect vector, equality and inequality constraints can also be added to the analysis.
These are determined by the user and can include for example, constraints on the initial or final conditions or path constraints. All of the defects and constraints are used as bounds on the objective function, the quantity to be minimized. In the case of the spacecraft trajectories, the objective function is the sum of the thrust arc durations. The state, control, and defect variables for both thrust and coast arcs plus any other problem constraints make up a nonlinear programming problem. To solve this problem the variables must first be assembled into state and constraint vectors. The state and control vectors and the thrust arc duration time are assembled into the nonlinear programming (NLP) state vector as follows XT = [ x 1 T, u 1 T, x 2 T, u 2 T, , xt, unT, t 1, t 2, , tk] where X is the NLP state vector, n is the number of nodes that the trajectory is divided into, t is the thrust arc duration time, and k is the number of thrust arcs on the trajectory.
The defects, equality constraints, and inequality constraints are assembled into the NLP constraint vector as follows CT = [ dt, 1, dc, 1, dt, 2, dc, 2, , dt, m, dc, p, h 1, h 2, , hj, g 1, g 2, , gi] where C is the NLP constraint vector, m is the number thrust arc segments, p is the number of coast arcs, h is the equality constraints, j is the number of equality constraints, g is the inequality constraints, and i is the number of inequality constraints [1], [2], [3], [4]. The NLP state vector must always be larger in length than the NLP constraint vector or an optimized solution will not be found. Once the NLP state and constraint vectors are found, a solution can be computed by placing these vectors into an optimization subroutine such as NP SOL, MINOS, or Sep.
Bibliography
1] Enright, P.J., and Conway, B.A., "Optimal Finite-Thrust Spacecraft Trajectories Using Collocation and Nonlinear Programming", Journal of Guidance, Control, and Dynamics, Vol. 14, No. 5, September-October 1991, pp.
981-985. [2] Enright, P.J., and Conway, B.A., "Discrete Approximations to Optimal Trajectories Using Direct Transcription and Nonlinear Programming", Journal of Guidance, Control, and Dynamics, Vol. 15, No. 4, July-August 1992, pp.
994-1002. [3] Betts, J.T., and Huffman, W.P., "Application of Sparse Nonlinear Programming to Trajectory Optimization", Journal of Guidance, Control, and Dynamics, Vol. 15, No. 1, January-February 1992, pp.
198-206. [4] Betts, J.T., and Huffman, W.P., "Path-Constrained Trajectory Optimization Using Sparse Sequential Quadratic Programming", Journal of Guidance, Control, and Dynamics, Vol. 16, No. 1, January-February 1993, pp.