MKL.NET
autodiff
Our great sponsors
MKL.NET | autodiff | |
---|---|---|
3 | 7 | |
148 | 1,532 | |
3.4% | 2.5% | |
6.7 | 7.5 | |
5 months ago | 21 days ago | |
C# | C++ | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
MKL.NET
autodiff
- The Elements of Differentiable Programming
-
Astray: A performance-portable geodesic ray tracing library.
I completely agree. Specifying the metric rather than the Christoffel symbols would make it much easier for the users. Something like https://github.com/autodiff/autodiff might just work as the metric tensor is made up of primitives.
-
Point-to-Point Distance Constraint: Gradient of Forward Kinematics
Old username :D So far I have been using Eigen for linear algebra and NLOPT for optimization algorithms. I have found "autodiff" that hopefully looks easy to use: https://github.com/autodiff/autodiff
- Autodiff: Simple C++17 library for Automatic Differentiation
-
Gradients Without Backpropagation
Forward-mode differentiation is easy to implement in C++ with templates, operator overloading, and dual numbers (https://en.wikipedia.org/wiki/Automatic_differentiation#Auto...). Some libraries such as autodiff (https://github.com/autodiff/autodiff) and CppAD (https://github.com/coin-or/CppAD) use this method.
- Ensmallen: A C++ Library for Efficient Numerical Optimization
-
I am creating a fast, header-only, C++ library for control algorithms
I was thinking of adding [autodiff](https://github.com/autodiff/autodiff) in the future, mainly because it works seamlessly with *Eigen*. One big advantage would be that I could use it for AD for NonlinearSystems as well.
What are some alternatives?
MathNet - Math.NET Numerics
CppAD - A C++ Algorithmic Differentiation Package: Home Page
Math3D - A .NET Standard 2.0 library for simple and efficient 3D math that is a feature-rich replacement for System.Numerics https://vimaec.github.io/Math3D
FastAD - FastAD is a C++ implementation of automatic differentiation both forward and reverse mode.
AngouriMath - New open-source cross-platform symbolic algebra library for C# and F#. Can be used for both production and research purposes.
Microsoft Automatic Graph Layout - A set of tools for graph layout and viewing
CppRobotics - Header-only C++ library for robotics, control, and path planning algorithms. Work in progress, contributions are welcome!
Rationals - 🔟 Implementation of rational number arithmetic for .NET with arbitrary precision.
PythonRobotics - Python sample codes for robotics algorithms.
AutoDiff - A .NET library that provides fast, accurate and automatic differentiation (computes derivative / gradient) of mathematical functions.