8 dépôts
Numerical methods and solvers for optimizing nonlinear systems, often used in motion planning and predictive control.
Distinguishing note: No existing candidates provided; this specifically addresses C-GMRES and nonlinear predictive control techniques.
Explore 8 awesome GitHub repositories matching scientific & mathematical computing · Nonlinear Optimization Solvers. Refine with filters or upvote what's useful.
PythonRobotics est une collection complète d'algorithmes robotiques modulaires et de simulations éducatives conçues pour la navigation autonome, l'estimation d'état et le contrôle de mouvement. Le projet fournit une bibliothèque d'implémentations autonomes pour la planification de trajectoire, la localisation, la cartographie et la cinématique, servant de ressource aux chercheurs et aux étudiants pour expérimenter des théories robotiques fondamentales et avancées. Le projet se distingue par une conception centrée sur les algorithmes où chaque module fonctionne comme un script isolé, permettant des tests indépendants et une démonstration pédagogique claire. Chaque implémentation est explicitement liée à la littérature académique ou aux manuels de robotique fondamentaux, garantissant que les modèles mathématiques et les stratégies de contrôle restent vérifiables et précis. Les utilisateurs peuvent exécuter ces scénarios dans un environnement de simulation découplé qui maintient son propre état interne et ses boucles de contrôle, sans nécessiter de dépendances externes. La surface de capacités couvre un large éventail de domaines robotiques, y compris la navigation aérienne, la locomotion bipède et le contrôle de bras multi-articulés. Il propose des boîtes à outils étendues pour la fusion de capteurs probabilistes, la cartographie environnementale et le suivi de trajectoire, le tout alimenté par un calcul numérique haute performance. Les animations géométriques en temps réel et les estimations d'état sont rendues directement à partir des données de simulation en utilisant des bibliothèques de traçage standard.
A motion planning and path tracking simulation with NMPC of C-GMRES Reference - documentation
go-datastructures is a collection of thread-safe and lock-free data structures designed for high-performance concurrent applications in Go. It provides a modular library of specialized algorithmic toolsets, including a lock-free collection library and an immutable data structure library. The project distinguishes itself through a suite of persistent AVL trees and hash array mapped tries that use branch-copying to preserve previous versions. It also implements non-blocking hash maps, queues, and tries that enable linearizable snapshots and concurrent updates without the use of mutual exclusion
Implements a probabilistic global restart system for finding minimum or maximum values under nonlinear constraints.
CVXPY is a Python-embedded domain-specific language for modeling and solving convex optimization problems using natural mathematical syntax. It is built on a disciplined convex programming framework that automatically enforces convexity rules, ensuring that problems formulated by the user are valid for convex solvers. The project also functions as a multi-solver optimization interface, abstracting away backend details and dispatching problems to specialized solvers like ECOS, SCS, and Gurobi without manual configuration. Beyond standard convex optimization, CVXPY extends its reach to geometri
Extends convex optimization to nonlinear programming using a disciplined grammar for expression validation.
Ceres Solver est une bibliothèque C++ pour l'optimisation numérique, spécialisée dans les problèmes de moindres carrés non linéaires et d'optimisation sans contrainte. Elle sert de framework pour la différenciation automatique et l'ajustement de courbe robuste, fournissant des outils pour résoudre des modèles mathématiques à grande échelle. La bibliothèque se distingue par ses capacités d'ajustement de faisceau (bundle adjustment), qui exploitent des structures de matrices creuses pour affiner les points de scène 3D et les paramètres de caméra. Elle utilise la différenciation automatique par nombres duaux pour calculer les dérivées des fonctions de coût, supprimant le besoin de dérivation manuelle du Jacobien. Le projet couvre un large éventail de capacités d'optimisation, y compris les contraintes de variété pour les espaces non euclidiens, les fonctions de perte robustes pour atténuer les valeurs aberrantes, et la résolution de systèmes linéaires denses et creux. Elle fournit également des utilitaires pour la conversion de représentation de rotation, l'interpolation de données tabulées et l'estimation de covariance de paramètres. Des configurations de build sont disponibles pour les cibles Android et iOS afin de prendre en charge l'optimisation du matériel mobile.
Optimizes memory and computation when the structural patterns of data change during the optimization process.
Drake is a robotics simulation framework and control system modeling tool used for designing, simulating, and verifying the dynamics of complex robotic systems. It functions as a multibody dynamics simulator and a mathematical optimization library, providing a suite of algorithms for trajectory optimization and the simulation of articulated robots. The framework is distinguished by its block-diagram system for composing dynamical subsystems and its ability to formulate and solve diverse mathematical programs, including linear, quadratic, and nonconvex nonlinear problems. It supports specializ
Finds solutions for general nonlinear optimization problems using gradient-based or specialized non-convex solvers.
DifferentialEquations.jl est une bibliothèque numérique complète conçue pour résoudre des équations différentielles ordinaires, stochastiques, à retard et algébriques. Elle fonctionne comme une suite de solveurs haute performance qui intègre l'apprentissage automatique scientifique, la programmation probabiliste et la différenciation automatique dans un framework unifié. En tirant parti de la répartition multiple et de l'intégration symbolique-numérique, la bibliothèque fournit un environnement flexible pour la modélisation mathématique complexe et la simulation. Le projet se distingue par sa capacité à faire le pont entre l'analyse numérique traditionnelle et les techniques modernes d'apprentissage automatique. Il prend en charge l'entraînement aux équations différentielles universelles, permettant aux utilisateurs d'intégrer des réseaux de neurones directement dans des simulateurs scientifiques pour apprendre des dynamiques inconnues tout en maintenant des contraintes physiques. De plus, la bibliothèque offre des outils avancés d'analyse de sensibilité et d'estimation de paramètres, incluant des méthodes adjointes et l'inférence bayésienne, qui permettent un calibrage efficace des modèles et la découverte automatisée des équations gouvernantes à partir des données. La plateforme offre des capacités étendues pour le calcul haute performance, incluant un parallélisme agnostique au matériel qui répartit les simulations sur des CPU, GPU et clusters distribués. Elle intègre une quantification rigoureuse de l'incertitude via l'arithmétique d'intervalle et la propagation de Monte Carlo, garantissant une estimation fiable des erreurs dans les expériences numériques. De plus, le système propose des routines d'optimisation sophistiquées, telles que la détection de parcimonie basée sur les graphes et le calcul de produit sans matrice, pour accélérer les performances dans les systèmes à grande échelle.
Accelerates complex computations through automated sparsity detection, matrix coloring, and hardware offloading.
mujoco_menagerie is a curated library of physical robot specifications and XML model definitions designed for standardized dynamics and contact simulation. It provides a collection of high-quality robot model files for humanoids, quadrupeds, and manipulators, alongside detailed kinematic and inertial parameters used to reproduce real-world robot behavior in virtual environments. The project serves as a repository of robotics simulation assets and MJCF model definitions optimized for accuracy. It includes standardized model libraries specifically for bipedal, quadrupedal, and humanoid hardware
MuJoCo solves sequential quadratic programs using a nonlinear least squares optimizer.
Symbolics.jl is a foundational framework for symbolic mathematics, automated differentiation, and scientific compilation within the Julia programming language. It provides a comprehensive system for algebraic manipulation, expression simplification, and the construction of mathematical models, enabling users to represent complex physical and chemical systems as symbolic equations. The library distinguishes itself through a source-to-source compilation engine that translates high-level symbolic representations directly into optimized, parallelized, and hardware-specific numerical code. By util
Provides automated sparsity detection for Jacobians and Hessians to skip zero-value computations during numerical execution.