Rapid-Design-of-Systems-Laboratory / beluga

General purpose indirect trajectory optimization
Other
25 stars 6 forks source link

Create "sparse" product space continuation strategy #194

Closed SeanMatthewNolan closed 3 years ago

SeanMatthewNolan commented 5 years ago

In a reversal of my previous thoughts, I think a "sparse" product space may be rather useful to reduce computations. The way I envision it is that the user will specify "major" and "minor" spacing. For example, if the continuation is over x and y with 50 minor steps but only every 5th being a major one, the process will move along the x axis solving 50 problems, but only expand solving in the y direction off of 10 of them. Graphically an example with x minor solutions and 0 major:


0 --- x --- x --- 0 --- x --- x --- 0
|                 |                 | 
x                 x                 x
|                 |                 | 
x                 x                 x
|                 |                 | 
0                 0                 0
|                 |                 | 
x                 x                 x
|                 |                 | 
x                 x                 x
|                 |                 | 
0                 0                 0

``                     
msparapa commented 5 years ago

So would this be different than specifying different subdivision amounts for each dimension? If it's sparse, you'd somehow have to choose points to not solve at, is that what the 0's are?

SeanMatthewNolan commented 5 years ago

The idea is that in order to solve a series of trajectories, you may need to a denser spacing then you have time to sample in a grid, so you "sample" grid would be the 0's but you need to solve the X's also for convergence.

msparapa commented 5 years ago

Huh.. so little bisection strategies in between the 0's, but only the 0's are saved in the dataset?

SeanMatthewNolan commented 5 years ago

Yes, basically, though it may be good to optionally output both just to not waste trajectories

SeanMatthewNolan commented 3 years ago

I actually included this in the lastest updates.