Unverified Commit c82acbfe authored by stonneau's avatar stonneau Committed by GitHub
Browse files

Update test.ipynb

parent dd39e3f7
%% Cell type:markdown id: tags:
# Curve optimization with the curves library
%% Cell type:markdown id: tags:
The [curve library](https://github.com/loco-3d/curves) is a header-only C++ library (also binded in python) that allows you
to create curves, in arbitrary dimensions (2, 3, n).
Originally, the library focused on spline curves, but it has now been extended to generic polynomials, cubic hermite splines, Bezier curves and more.
A nice upcoming extension is the ability to design curves in the Special Euclidian group SE3.
However in this tutorial we are going to focus on a rather unique trait of the library, which is the ability to work with variable control points. Rather than being given a constant value, the control points can be expressed as the linear combination of one or several variables. The main advantage of this representation is that variable curves
can be automatically derivated or integrated with any effort.
can be automatically derivated or integrated without any effort.
The other interest of variable curves is the ability to easily formulate optimization problems, which will be the focus of this tutorial. We will use the python bindings of the curve library to go step-by-step to formulating and solving an optimization problem.
The other interest of variable curves is the ability to easily formulate optimization problems, which will be the focus of this tutorial. We will use the python bindings of the curve library to go through the steps of formulating and solving an optimization problem.
## The problem: trajectory fitting
We start with a simple, unconstrained problem.
Let us first consider a 3D curve:
%% Cell type:code id: tags:
``` python
# importing classical numpy objects
from numpy import zeros, array, identity, dot
from numpy.linalg import norm
import numpy as np
np.set_printoptions(formatter={'float': lambda x: "{0:0.1f}".format(x)})
#use array representation for binding eigen objects to python
import eigenpy
eigenpy.switchToNumpyArray()
#importing the bezier curve class
from curves import (bezier)
#importing tools to plot bezier curves
from curves.plot import (plotBezier)
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np
#We describe a degree 3 curve as a Bezier curve with 4 control points
waypoints = array([[1., 2., 3.], [-4., -5., -6.], [4., 5., 6.], [7., 8., 9.]]).transpose()
ref = bezier(waypoints)
#plotting the curve with its control points
plotBezier(ref,showControlPoints = True, color="g")
```
%%%% Output: display_data
![](data:image/png;base64,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jIxEWlqaGCF7gcVicZgnpmka7e3tNgb/PT09yM7OZhzvCgsLRzyhR1Y6tbe3c7Y1gz12rFarXQ5+dHV1QalU8rZdhc3g4CDWrl2LiooKbNu2Dbm5ubxdezhomsaSJUsQHR2NzZs3C32cSwUxZUE4efIk5s+fz7Ritba2IjExEZWVlUhISPDZdR5//HHs2rULUqkUmZmZ2LFjx2hYvsgJFEVBoVAwXh3Hjx8HRVFDDP7dLQRqtVooFApMnDiR140m9oMfarUaJpMJFosFUqkUGRkZiImJ4TVlQxb4/u53v8Py5csFK6Y648cff8ScOXMwffp0pqC5du1a3HDDDQKfTFBEQXYGVxHyvn37cNVVVyEgIABPPPEEAOCVV17x6TVGMwaDAcePH2emDM+cOYOIiAibVEdSUpJNVwK7UCZ0AZG8CZw/fx4pKSnw9/eHWq1mTJWIpScXPcXAxf7qF154AcePH8dbb72FnJwcn3794di7dy/KyspAURRKS0uxcuVKXq8/yhEF2Rl8pCy++uor7Ny5Ex9//DFn1xjtkFVWbIP/1tZWpKamori4GDRNo76+Hs899xznhbLhILahISEhyMrKGhKVOjJV8uUewPLycqxYsQKLFy9GWVkZ70VUiqIgk8nw73//G8nJySgpKcEnn3wy3nuLPUEUZCG56aabcOedd2Lx4sVCH2VUYbVacfToUTz66KPQarWIjY2FRqPB1KlTmf7o6dOn8+ZeR9M0s4g2JyfHoxSUI69iT02VDAYDnn/+edTW1uLtt9+GTCYb6S15xdGjR7FmzRr861//AgC89NJLAC76UIi4hdhlwQWuCoe33HIL888BAQG46667+D7eqId4J69ZswbXX389gIuFthMnTqCiogJvv/026urqMGHCBBuD/8zMTJ+nCNh565KSEo+j0sDAQMTExNgUH9mmSi0tLYypElukSfR95MgRPP7441iyZAleffVVwTaBA0BbWxtSUlKY3ycnJ6OiokKw84xVREH2kP3797v87++99x52796NAwcOCPqKPZqZO3euze+lUilKSkpQUlKCpUuXgqZpqNVqxuD/qaeeglKpRGJiIgoLC1FSUoLi4mLExsZ69RlYrVacO3cOP//8M3Jzc21a5UYKaVcjtptsI6Lu7m7U1NTgscceQ0REBDQaDV566SUsWLBAUDEW4Q9RkH3I3r17sW7dOnz//fc+95YVCyq/IJFIEBUVhWuuuYYZxyWphYqKChw9ehSvvfYa+vr6hhj8D5fHJctOJ02ahOLiYs7XOEkkEoSGhiI0NBQJCQno7e1FeHg4rr76aqSmpmLPnj3Ys2cP3nnnHU7PMRxJSUlQqVTM71tbW5GUlCTgicYmYg7Zh2RlZcFoNDKvqLNnz8abb7454q8rFlS8w2Kx4NSpU8wYeE1NDSQSyRCDf39/f/T390OlUsFkMiE3N5d3s3a9Xo81a9ZAoVBg27ZtyMzM5PX6w2GxWCCTyXDgwAEkJSWhpKQEf//73zFt2jShjzZaEIt6YwWxoOIbiMF/dXU1KisrUVVVhfr6egAXDYEefPBB3HbbbcOOYfv6TIcOHcLKlSvxxz/+EQ888ABvy1U9Zc+ePVi+fDkoisJ9992H1atXC32k0YRY1BsriAUV3yCRSBAWFoZ58+Zh3rx5AIA///nPUKlUeOSRR9DQ0IAHH3wQnZ2dyMjIsDH4Dw8P97lI63Q6PP3002hsbMRXX32F9PR0n359X3PDDTeM9+EOzhEFWWRc8/jjjw9JD1itVpw9exbl5eXYtWsXnn32WZhMpiEG/966qdE0jR9++AErV67EAw88gK1btwoaFYsTppcOYspiFCCmLIRncHDQxuD/1KlTCA0NtTH4d8f7WKvV4qmnnkJzczO2bduGtLQ0fm7ABeKEKS+IOeSxAl8FlZGs3hlv0DSNCxcu2Bj8k5FqtsH/xIkTIZFIQNM0Dh48iCeffBIPPfQQSktLL8lcsThhyhmiII8l+CioiKt3RgZZ20R2GVZXV0Or1UImk6G7uxvBwcHYtm0bpkyZIvRRnSJOmHKGKMgiI0NcvTNyzGYzfvrpJ+zatQtPP/20YFGxuxOm1dXV+PLLL8WhJt8jCrKI94ird8YX7733Ht566y0cOHCA9x7scYLY9ibiHTqdDgsXLsTmzZtFMR4HcDlhKuIZYoQsYoPZbMaCBQvwm9/8Bo8++iin16IoCsXFxUhKSsLu3bs5vZaIc7iaMBWxQYyQRTyDpmn84Q9/QG5uLudiDABbtmxBbm4uNBoN59caj2zcuBErVqxAT0+PS+/vxsZGHk8l4opLr+9GRDAOHz6MDz/8EP/5z3+Qn5+P/Px87Nmzh5Nrtba24rvvvkNpaSknX3+8o1KpsG/fvku6o0NkKGKELMJwxRVXwMMUltcsX74c69atg1ar5eV6441HHnkE69atYzooREYHYoQswju7d+9GfHw8ioqKhD7KmOSbb75BUlIS8vLyhD6KiIeIEbII7xw+fBjffvst9uzZw2zQWLx4MT766COhjzZqcNVXvHbtWuzbt0+AU4mMFLHLQkRQDh48iA0bNnDaZdHf34/S0lLU1dVBIpHg3XffxeWXX87Z9YTk5MmTmD9/PtO+1traisTERFRWViIhIUHg041rxC4LEREAKCsrw3XXXYedO3fCZDLBYDAIfSTOmD59Orq7u5nf87FhXcR3iBGyyJhGrVYjPz8fSqVyXI4Di4J8yeDWN59Y1BMZ05w7dw5xcXG49957UVBQgNLSUuj1eqGPxRvNzc2iGI8iPI2QRURGFRKJpBhAOYD/o2m6QiKRbAGgoWn6KYGPJiIyBDFCFhnrtAJopWma7LzaCaBQwPOIiDhFFGSRMQ1N050AVBKJRP6/fzUfwGkBjyQi4hQxZSEy5pFIJPkAtgOQAlACuJem6T5hTyUiMhRRkEVEREQuEcSUhYiIiMglgijIIiIiIpcIoiCLiIiIXCKIgiwiIiJyiSAKsoiIiMglgijIIiIiIpcI/w+9bI5Xd3dUuQAAAABJRU5ErkJggg==)
%% Cell type:markdown id: tags:
We now assume that we only have partial information about this curve, and that we want to reconstruct it.
We will first generate a discretization of the curve to represent a temporal sampling:
%% Cell type:code id: tags:
``` python
numSamples = 10; fNumSamples = float(numSamples)
ptsTime = [ (ref(float(t) / fNumSamples), float(t) / fNumSamples) for t in range(numSamples+1)]
for el in ptsTime:
print el
```
%%%% Output: stream
(array([1.0, 2.0, 3.0]), 0.0)
(array([-0.1, 0.4, 0.9]), 0.1)
(array([-0.6, -0.4, -0.1]), 0.2)
(array([-0.5, -0.4, -0.2]), 0.3)
(array([0.1, 0.2, 0.4]), 0.4)
(array([1.0, 1.2, 1.5]), 0.5)
(array([2.2, 2.6, 3.0]), 0.6)
(array([3.4, 4.1, 4.7]), 0.7)
(array([4.7, 5.6, 6.4]), 0.8)
(array([6.0, 6.9, 7.9]), 0.9)
(array([7.0, 8.0, 9.0]), 1.0)
%% Cell type:markdown id: tags:
Each entry of ptsTime is a couple (position, time) that describes our input data.
### Sanity check
Let's first solve a trivial problem, to see if we can reconstruct the curve with a polynomial
of same degree.
To achieve this we will use the problemDefinition class, which will automatically generate the variable expression of the curve
%% Cell type:code id: tags:
``` python
from curves.optimization import (problem_definition, setup_control_points)
#dimension of our problem (here 3 as our curve is 3D)
dim = 3
refDegree = 3
pD = problem_definition(dim)
pD.degree = refDegree #we want to fit a curve of the same degree as the reference curve for the sanity check
#generates the variable bezier curve with the parameters of problemDefinition
problem = setup_control_points(pD)
#for now we only care about the curve itself
variableBezier = problem.bezier()
```
%% Cell type:markdown id: tags:
The evaluation of a variable Bezier returns a matrix B and a vector c, such
that B x + c , with x a vector variable, defines the value of the curve
%% Cell type:code id: tags:
``` python
linearVariable = variableBezier(0.)
print "B: \n", linearVariable.B()
print "c:\n",linearVariable.c()
print "Shape of B: ", linearVariable.B().shape
```
%%%% Output: stream
B:
[[1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0]
[0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0]
[0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0]]
c:
[0.0 0.0 0.0]
Shape of B: (3, 12)
%% Cell type:markdown id: tags:
B has 3 rows and 12 columns. Because the fitting curve is of degree 3, it has 4 control points of dimension 3, which gives a variable of size 12. The row number also matches the dimension of the problem.
Then A is zero everywhere, expect for the first 3 columns that contain the identity. This is expected as the start of a Bezier curve is equal to the first control point.
If we evaluate variableBezier at t = 0.2 for instance, we get a more complex expression:
%% Cell type:code id: tags:
``` python
print "B: \n", variableBezier(0.2).B()
```
%%%% Output: stream
B:
[[0.5 0.0 0.0 0.4 0.0 0.0 0.1 0.0 0.0 0.0 0.0 0.0]
[0.0 0.5 0.0 0.0 0.4 0.0 0.0 0.1 0.0 0.0 0.0 0.0]
[0.0 0.0 0.5 0.0 0.0 0.4 0.0 0.0 0.1 0.0 0.0 0.0]]
%% Cell type:markdown id: tags:
With variableBezier, we can easily define a least square problem to reconstruct the original curve.
We just have to formulate a cost function that, for each sample in ptsTime minimizes the distance between the evaluation of variableBezier and the sampled point. We define it as follows:
%% Cell type:code id: tags:
``` python
#least square form of ||Ax-b||**2
def to_least_square(A, b):
return dot(A.T, A), - dot(A.T, b)
def genCost(variableBezier, ptsTime):
#first evaluate variableBezier for each time sampled
allsEvals = [(variableBezier(time), pt) for (pt,time) in ptsTime]
#then compute the least square form of the cost for each points
allLeastSquares = [to_least_square(el.B(), el.c() + pt) for (el, pt) in allsEvals]
#and finally sum the costs
Ab = [sum(x) for x in zip(*allLeastSquares)]
return Ab[0], Ab[1]
A, b = genCost(variableBezier, ptsTime)
```
%% Cell type:markdown id: tags:
Here we use quadprog to solve the least square. Because there are no constraint this might seem overkill, however we will introduce them soon enough.
%% Cell type:code id: tags:
``` python
import quadprog
from numpy import array, hstack, vstack
def quadprog_solve_qp(P, q, G=None, h=None, C=None, d=None, verbose=False):
"""
min (1/2)x' P x + q' x
subject to G x <= h
subject to C x = d
"""
# qp_G = .5 * (P + P.T) # make sure P is symmetric
qp_G = .5 * (P + P.T) # make sure P is symmetric
qp_a = -q
qp_C = None
qp_b = None
meq = 0
if C is not None:
if G is not None:
qp_C = -vstack([C, G]).T
qp_b = -hstack([d, h])
else:
qp_C = -C.transpose()
qp_b = -d
meq = C.shape[0]
elif G is not None: # no equality constraint
qp_C = -G.T
qp_b = -h
res = quadprog.solve_qp(qp_G, qp_a, qp_C, qp_b, meq)
if verbose:
return res
# print('qp status ', res)
return res[0]
res = quadprog_solve_qp(A, b)
```
%% Cell type:markdown id: tags:
Let's check whether our optimization worked !
We can transform the variable Bezier as a regular Bezier curve as follows, and plot the result to verify that the curves match.
%% Cell type:code id: tags:
``` python
def evalAndPlot(variableBezier, res):
fitBezier = variableBezier.evaluate(res.reshape((-1,1)) )
#plot reference curve in blue, fitted curve in green
fig = plt.figure()
ax = fig.add_subplot(111, projection="3d")
plotBezier(ref, ax = ax, linewidth=4.) #thicker line to visualize overlap
plotBezier(fitBezier, ax = ax, color ="g", linewidth=3.)
plt.show()
return fitBezier
fitBezier = evalAndPlot(variableBezier, res)
```
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
### initial and terminal constraints
Let's try to fit the reference curve with a curve of lesser degree
%% Cell type:code id: tags:
``` python
pD.degree = refDegree - 1
problem = setup_control_points(pD)
variableBezier = problem.bezier()
A, b = genCost(variableBezier, ptsTime)
res = quadprog_solve_qp(A, b)
fitBezier = evalAndPlot(variableBezier, res)
```
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
We can see that the initial and goal positions are not reached.
A constraint_flag can be used to impose constraints on the initial/goal positions
and derivatives if required.
Let's rewrite simplefit to handle such case
%% Cell type:code id: tags:
``` python
from curves.optimization import constraint_flag
pD.flag = constraint_flag.INIT_POS | constraint_flag.END_POS
#set initial position
pD.init_pos = array([ptsTime[ 0][0]]).T
#set end position
pD.end_pos = array([ptsTime[-1][0]]).T
problem = setup_control_points(pD)
variableBezier = problem.bezier()
```
%% Cell type:markdown id: tags:
By imposing the initial and final position, we effectively reduce the number of variables by 6:
%% Cell type:code id: tags:
``` python
print "Shape of B: ", variableBezier(0).B().shape
```
%%%% Output: stream
Shape of B: (3, 3)
%% Cell type:markdown id: tags:
The least squares problem then has the following solution
%% Cell type:code id: tags:
``` python
prob = setup_control_points(pD)
variableBezier = prob.bezier()
A, b = genCost(variableBezier, ptsTime)
res = quadprog_solve_qp(A, b)
_ = evalAndPlot(variableBezier, res)
```
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
To impose constraints on the derivatives, we can activate the appropriate constraint flags as follows.
Note that derivatives constraints on velocities will only be considered if the constraints on position are also active.
For instance to impose a 0 velocity and acceleration at the initial and goal states we can proceed as follows:
%% Cell type:code id: tags:
``` python
#values are 0 by default, so if the constraint is zero this can be skipped
pD.init_vel = array([[0., 0., 0.]]).T
pD.init_acc = array([[0., 0., 0.]]).T
pD.end_vel = array([[0., 0., 0.]]).T
pD.end_acc = array([[0., 0., 0.]]).T
pD.flag = constraint_flag.END_POS | constraint_flag.INIT_POS | constraint_flag.INIT_VEL | constraint_flag.END_VEL | constraint_flag.INIT_ACC | constraint_flag.END_ACC
```
%% Cell type:markdown id: tags:
However, the definition of the variable problem will result in an error. Do you know why ?
%% Cell type:code id: tags:
``` python
try:
prob = setup_control_points(pD)
except RuntimeError,e:
print e
```
%%%% Output: stream
In setup_control_points; too many constraints for the considered degree
%% Cell type:markdown id: tags:
Indeed, there are not enough variables left in the problem to satisfy the constraints. We need to increase the degree of the curve:
%% Cell type:code id: tags:
``` python
pD.degree = refDegree + 4
prob = setup_control_points(pD)
variableBezier = prob.bezier()
A, b = genCost(variableBezier, ptsTime)
res = quadprog_solve_qp(A, b)
fitBezier = evalAndPlot(variableBezier, res)
```
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
We can check that the derivatives of the curve are 0 at start and end
%% Cell type:code id: tags:
``` python
print "initial velocity", fitBezier.derivate(fitBezier.min(),1)
print "initial acceleration", fitBezier.derivate(fitBezier.min(),2)
print "end velocity", fitBezier.derivate(fitBezier.max(),1)
print "end acceleration", fitBezier.derivate(fitBezier.max(),2)
```
%%%% Output: stream
initial velocity [0.0 0.0 0.0]
initial acceleration [0.0 0.0 0.0]
end velocity [0.0 0.0 0.0]
end acceleration [0.0 0.0 0.0]
%% Cell type:markdown id: tags:
Of course, with such constraints the curve does not really look like the original one anymore.
Although it is not recommended, the library is robust enough to allow for adding an arbitrary number of control points.
Just for fun, let's add 60 more control points and check that the curve is matched better
%% Cell type:code id: tags:
``` python
pD.degree = refDegree + 60
prob = setup_control_points(pD)
variableBezier = prob.bezier()
A, b = genCost(variableBezier, ptsTime)
#regularization matrix
reg = identity(A.shape[1]) * 0.001
res = quadprog_solve_qp(A + reg, b)
fitBezier = evalAndPlot(variableBezier, res)
```
%%%% Output: display_data
![](data:image/png;base64,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)
%% Cell type:markdown id: tags:
## Adding equality and inequality constraints
Suppose we want to add specific constraint.
For instance, we want that the velocity be exactly 0 at t = 0.8, additionally to the start and goal positions being satisfied. This can be done easily by obtaining the variable equation for the variable curve at that time.
%% Cell type:code id: tags:
``` python
#set initial / terminal constraints
pD.flag = constraint_flag.END_POS | constraint_flag.INIT_POS
pD.degree = refDegree
prob = setup_control_points(pD)
variableBezier = prob.bezier()
#get value of the curve first order derivative at t = 0.8
t08Constraint = variableBezier.derivate(0.8,1)
target = zeros(3)
A, b = genCost(variableBezier, ptsTime)
#solve optimization problem with quadprog
res = quadprog_solve_qp(A, b, C=t08Constraint.B(), d=target - t08Constraint.c())
fitBezier = evalAndPlot(variableBezier, res)
assert norm(fitBezier.derivate(0.8,1) - target) <= 0.001
```
%%%% Output: display_data
![](data:image/png;base64,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