Sameer Agarwal | 8ed29a7 | 2012-06-07 17:04:25 -0700 | [diff] [blame] | 1 | %!TEX root = ceres-solver.tex |
| 2 | |
| 3 | \chapter{Version History} |
Sameer Agarwal | 3e3b892 | 2012-07-19 10:34:16 -0700 | [diff] [blame] | 4 | \section*{1.3.0} |
| 5 | \subsection{New Features} |
| 6 | \begin{itemize} |
| 7 | \item Windows port. (Changchang Wu and Pierre Moulon also contributed to the port) |
| 8 | \item Support for returning initial and final derivatives (Gradient \& Jacobian). |
| 9 | \item Gradient computation support in the evaluators, with an eye towards developing first order/gradient based solvers. |
| 10 | \item Ability to build Ceres as a shared library, associated versioning and build release script changes. |
| 11 | \item A better way to compute \texttt{Solver::Summary::fixed\_cost}. (Markus Moll) |
| 12 | \item Portable floating point classification API. |
| 13 | \end{itemize} |
| 14 | |
| 15 | \subsection{Bug Fixes} |
| 16 | \begin{itemize} |
| 17 | \item Fix IsInfinite on Jets. |
| 18 | \item Drop alignment requirements for Jets. |
| 19 | \item Fixed Jet to integer comparison. (Keith Leung) |
| 20 | \item Fix use of uninitialized arrays. (Sebastian Koch \& Markus Moll) |
| 21 | \item Conditionally compile gflag dependencies.(Casey Goodlett) |
| 22 | \item Add \texttt{data\_fitting.cc } to the examples CMake file. |
| 23 | \end{itemize} |
| 24 | |
Sameer Agarwal | 57a3458 | 2012-06-24 12:42:36 -0700 | [diff] [blame] | 25 | \section*{1.2.3} |
| 26 | \subsection{Bug Fixes} |
| 27 | \begin{itemize} |
| 28 | \item \texttt{suitesparse\_test} is enabled even when \texttt{-DSUITESPARSE=OFF}. |
| 29 | \item \texttt{FixedArray} internal struct did not respect \texttt{Eigen} |
Sameer Agarwal | 3e3b892 | 2012-07-19 10:34:16 -0700 | [diff] [blame] | 30 | alignment requirements (Koichi Akabe \& Stephan Kassemeyer). |
Sameer Agarwal | 57a3458 | 2012-06-24 12:42:36 -0700 | [diff] [blame] | 31 | \item Fixed \texttt{quadratic.cc} documentation and code mismatch |
Sameer Agarwal | 3e3b892 | 2012-07-19 10:34:16 -0700 | [diff] [blame] | 32 | (Nick Lewycky). |
Sameer Agarwal | 57a3458 | 2012-06-24 12:42:36 -0700 | [diff] [blame] | 33 | \end{itemize} |
Keir Mierle | 2993770 | 2012-06-19 00:39:32 -0700 | [diff] [blame] | 34 | \section*{1.2.2} |
| 35 | \subsection{Bug Fixes} |
| 36 | \begin{itemize} |
Sameer Agarwal | 3e3b892 | 2012-07-19 10:34:16 -0700 | [diff] [blame] | 37 | \item Fix constant parameter blocks, and other minor fixes (Markus Moll) |
Sameer Agarwal | 57a3458 | 2012-06-24 12:42:36 -0700 | [diff] [blame] | 38 | \item Fix alignment issues when combining \texttt{Jet} and |
| 39 | \texttt{FixedArray} in automatic differeniation. |
| 40 | \item Remove obsolete \texttt{build\_defs} file. |
Keir Mierle | 2993770 | 2012-06-19 00:39:32 -0700 | [diff] [blame] | 41 | \end{itemize} |
Sameer Agarwal | 97fb6d9 | 2012-06-17 10:08:19 -0700 | [diff] [blame] | 42 | \section*{1.2.1} |
| 43 | \subsection{New Features} |
| 44 | \begin{itemize} |
Keir Mierle | 64f1410 | 2012-06-18 00:57:59 -0700 | [diff] [blame] | 45 | \item Powell's Dogleg solver |
| 46 | \item Documentation now has a brief overview of Trust Region methods and how the Levenberg-Marquardt and Dogleg methods work. |
Sameer Agarwal | 97fb6d9 | 2012-06-17 10:08:19 -0700 | [diff] [blame] | 47 | \end{itemize} |
| 48 | \subsection{Bug Fixes} |
| 49 | \begin{itemize} |
Sameer Agarwal | 3e3b892 | 2012-07-19 10:34:16 -0700 | [diff] [blame] | 50 | \item Destructor for \texttt{TrustRegionStrategy} was not virtual (Markus Moll) |
| 51 | \item Invalid \texttt{DCHECK} in \texttt{suitesparse.cc} (Markus Moll) |
| 52 | \item Iteration callbacks were not properly invoked (Luis Alberto Zarrabeiti) |
Keir Mierle | 64f1410 | 2012-06-18 00:57:59 -0700 | [diff] [blame] | 53 | \item Logging level changes in ConjugateGradientsSolver |
| 54 | \item VisibilityBasedPreconditioner setup does not account for skipped camera pairs. This was debugging code. |
| 55 | \item Enable SSE support on MacOS |
Sameer Agarwal | 3e3b892 | 2012-07-19 10:34:16 -0700 | [diff] [blame] | 56 | \item \texttt{system\_test} was taking too long and too much memory (Koichi Akabe) |
Sameer Agarwal | 97fb6d9 | 2012-06-17 10:08:19 -0700 | [diff] [blame] | 57 | \end{itemize} |
Sameer Agarwal | 8ed29a7 | 2012-06-07 17:04:25 -0700 | [diff] [blame] | 58 | \section*{1.2.0} |
| 59 | \subsection{New Features} |
| 60 | \begin{itemize} |
| 61 | \item \texttt{CXSparse} support. |
| 62 | \item Block oriented fill reducing orderings. This |
| 63 | reduces the factorization time for sparse |
| 64 | \texttt{CHOLMOD} significantly. |
| 65 | \item New Trust region loop with support for multiple |
| 66 | trust region step strategies. Currently only Levenberg-Marquardt is supported, but this refactoring opens the door for Dog-leg, Stiehaug and others. |
| 67 | \item \texttt{Cmake} file restructuring. Builds in \texttt{Release} mode by default, and now has platform specific tuning flags. |
| 68 | \item Re-organized documentation. No new content, but better organization. |
| 69 | \end{itemize} |
| 70 | |
| 71 | \subsection{Bug Fixes} |
| 72 | \begin{itemize} |
| 73 | \item Fixed integer overflow bug in \texttt{block\_random\_access\_sparse\_matrix.cc}. |
| 74 | \item Renamed some macros to prevent name conflicts. |
| 75 | \item Fixed incorrent input to \texttt{StateUpdatingCallback}. |
| 76 | \item Fixes to AutoDiff tests. |
| 77 | \item Various internal cleanups. |
| 78 | \end{itemize} |
| 79 | |
| 80 | \section*{1.1.1} |
| 81 | \subsection{Bug Fixes} |
| 82 | \begin{itemize} |
Sameer Agarwal | 3e3b892 | 2012-07-19 10:34:16 -0700 | [diff] [blame] | 83 | \item Fix a bug in the handling of constant blocks. (Louis Simard) |
Sameer Agarwal | 8ed29a7 | 2012-06-07 17:04:25 -0700 | [diff] [blame] | 84 | \item Add an optional lower bound to the Levenberg-Marquardt regularizer to prevent oscillating between well and ill posed linear problems. |
| 85 | \item Some internal refactoring and test fixes. |
| 86 | \end{itemize} |
| 87 | \section{1.1.0} |
| 88 | \subsection{New Features} |
| 89 | \begin{itemize} |
| 90 | \item New iterative linear solver for general sparse problems - \texttt{CGNR} and a block Jacobi preconditioner for it. |
| 91 | \item Changed the semantics of how \texttt{SuiteSparse} dependencies are checked and used. Now \texttt{SuiteSparse} is built by default, only if all of its dependencies are present. |
| 92 | \item Automatic differentiation now supports dynamic number of residuals. |
| 93 | \item Support for writing the linear least squares problems to disk in text format so that they can loaded into \texttt{MATLAB}. |
| 94 | \item Linear solver results are now checked for nan and infinities. |
| 95 | \item Added \texttt{.gitignore} file. |
| 96 | \item A better more robust build system. |
| 97 | \end{itemize} |
| 98 | |
| 99 | \subsection{Bug Fixes} |
| 100 | \begin{itemize} |
| 101 | \item Fixed a strict weak ordering bug in the schur ordering. |
| 102 | \item Grammar and typos in the documents and code comments. |
| 103 | \item Fixed tests which depended on exact equality between floating point values. |
| 104 | \end{itemize} |
| 105 | \section*{1.0.0} |
Keir Mierle | 64f1410 | 2012-06-18 00:57:59 -0700 | [diff] [blame] | 106 | Initial Release. |