Trajectory estimation¶
The estimation of the trajectory, and all auxilliary parameters, are performed through the
TrajectoryEstimator class.
Behind the scenes, the estimator builds a Ceres-Solver optimization problem that is then solved.
- 
class kontiki.TrajectoryEstimator¶
- Class that performs trajectory estimation. - 
solve(progress=True, max_iterations=50)¶
- Solve the estimation problem by minimizing the measurement residuals. Returns a - Summaryinstance.- If progress is True, then a progress report is written to stdout while the optimization in progressing. - max_iterations specify the number of steps the optimizer is allowed to take. 
 - 
add_measurement(m : Measurement)¶
- Add a measurement to the optimization problem. - Warning - Make sure the measurement m is alive until - solve()has been called, e.g. by putting it in a list.
 - 
add_callback(func, update_state=False)¶
- Adds a callback function which is called after every iteration of the optimizer. - The callback function should accepts a single - IterationSummaryinstance as argument, and return either None, or a- CallbackReturnTypevalue. None is the same as- CallbackReturnType.Continue.- If your callbacks need to access the objects currently being optimized (e.g. the trajectory), you must set update_state=True. 
 
- 
Estimator helper classes¶
The following classes are wrappers around the Ceres-Solver classes of the same name.
- 
class kontiki.CallbackReturnType¶
- Return types for iteration callbacks - Members: - Abort : Abort the optimization - Continue : Continue the optimization - TerminateSuccessfully : Stop the optimization, marking it as success 
- 
class kontiki.Summary¶
- 
BriefReport(self: kontiki._ceres.Summary) → str¶
 - 
FullReport(self: kontiki._ceres.Summary) → str¶
 - 
IsSolutionUsable(self: kontiki._ceres.Summary) → bool¶
 - 
final_cost¶
 - 
fixed_cost¶
 - 
initial_cost¶
 - 
inner_iteration_time_in_seconds¶
 - 
is_constrained¶
 - 
iterations¶
 - 
jacobian_evaluation_time_in_seconds¶
 - 
line_search_cost_evaluation_time_in_seconds¶
 - 
line_search_gradient_evaluation_time_in_seconds¶
 - 
line_search_polynomial_minimization_time_in_seconds¶
 - 
line_search_total_time_in_seconds¶
 - 
linear_solver_time_in_seconds¶
 - 
message¶
 - 
minimizer_time_in_seconds¶
 - 
num_effective_parameters¶
 - 
num_effective_parameters_reduced¶
 - 
num_inner_iteration_steps¶
 - 
num_linear_solver_threads_given¶
 - 
num_linear_solver_threads_used¶
 - 
num_parameter_blocks¶
 - 
num_parameter_blocks_reduced¶
 - 
num_parameters¶
 - 
num_parameters_reduced¶
 - 
num_residual_blocks¶
 - 
num_residual_blocks_reduced¶
 - 
num_residuals¶
 - 
num_residuals_reduced¶
 - 
num_successful_steps¶
 - 
num_threads_given¶
 - 
num_threads_used¶
 - 
num_unsuccessful_steps¶
 - 
postprocessor_time_in_seconds¶
 - 
preprocessor_time_in_seconds¶
 - 
residual_evaluation_time_in_seconds¶
 - 
termination_type¶
 - 
total_time_in_seconds¶
 
- 
- 
class kontiki.IterationSummary¶
- 
cost¶
 - 
cost_change¶
 - 
cumulative_time_in_seconds¶
 - 
eta¶
 - 
gradient_max_norm¶
 - 
gradient_norm¶
 - 
iteration¶
- Current iteration 
 - 
iteration_time_in_seconds¶
 - 
line_search_function_evaluations¶
 - 
line_search_gradient_evaluations¶
 - 
line_search_iterations¶
 - 
linear_solver_iterations¶
 - 
relative_decrease¶
 - 
step_is_nonmonotonic¶
 - 
step_is_successful¶
 - 
step_is_valid¶
- Step was numerically valid 
 - 
step_norm¶
 - 
step_size¶
 - 
step_solver_time_in_seconds¶
 - 
trust_region_radius¶
 
-