title | date | released |
---|---|---|
Drake v1.23.0 |
2023-11-17 |
2023-11-17 |
- Drake now offers experimental support for the
Clarabel
solver (#20375, #20536, #20475).
- Our ClarabelSolver wrapper supports quadratic/linear costs and linear/second-order/exponential-cone/positive-semidefinite constraints.
- This feature is not available in our pre-compiled binary releases. To try it,
you must build from source using Bazel with
--define=WITH_CLARABEL=ON
. - ChooseBestSolver doesn't select ClarabelSolver. To try it, you must invoke the solver directly.
- Per our support policy schedule, macOS Monterey on arm64 is no longer supported (#20511).
- None
Refer to our Drake Stability Guidelines for our policy on API changes.
New features
- Provide image-processing systems in C++ (#20488)
- Update ImageWriter to add forced publish event (#20460)
Fixes
- None
New features
- Add ClarabelSolver (#20375, #20536, #20475)
- Add AffineBall as subclass of ConvexSet to represent bounded ellipsoidal convex sets that may not be full-dimensional (#20038)
- Allow linear constraints to be sparse (#20361)
- Allow conversion between Hyperellipsoid and AffineBall (#20040)
- Add ability to tighten and relax positive semi-definite (PSD) constraints as diagonally dominant constraints (DD), scaled diagonally dominant (SDD) constraints, and their dual (#20398)
- Add log(det(X)) >= lower to MathematicalProgram (#20411)
- Add AffineBall::MinimumVolumeCircumscribedEllipsoid (#20399) (#20399)
- Add bounding_region to IrisOptions (#20417)
- Add MonomialBasis for a map from Variables to its degree (#20523)
Fixes
- None
New features
- Add per model instance net actuation output port (#20549)
- Support .vtk meshes in CalcSpatialInertia() (#20539)
- Allow some uses of surface mesh or convex hull for VTK volume mesh files (#20278)
- Add support for using SDFormat merge-includes with custom parsed models (#16727)
- Use environment maps in RenderEngineVtk (#20385)
- Implement net actuation output port for MultibodyPlant (#20421)
- Add parsing of JointActuator PD controller gains (#20497)
- Add parsing of custom drake:mimic tag for SDFormat (#20503, #20551)
Fixes
- Fix MuJoCo parser joint kinematics (#20414)
- Fix actuation input ordering to be ordered by joint actuator index (#20212)
- Support drake:joint involving links in nested models (#20381)
- Make coordinate numbering for Weld mobilizers consistent with other mobilizers (#20428)
- Upgrade meshcat to latest commit (#20442)
- Fix point contact results store incorrect geometry data (#20378)
- RenderEngineVtk throws on errors (#20461)
- Apply upstream VTK changes for a textured capsule (#20492)
- Correct, test, and document FlattenModelDirectives (#20438)
- Make weld constraint use active status (#20530)
- Bugfix model directives ModelInstanceInfo offsets (#20513)
New features
- Add max clique solver interface and MIP (mixed integer programming)-based max clique solver (#20401)
- Add continuity constraints to GcsTrajectoryOptimization (#20441)
- Switch CollisionChecker and VisibilityGraph to use CRU parallel-for API to support non-OpenMP parallel operations (#20528)
Fixes
- None
- Adjust tutorial launcher to accommodate Jupyter 6 and 7 (#20408)
- Improve PointCloud::VoxelizedDownSample speed (#20476)
- Retain default YAML values when parsing a variant (#20391)
- Fix autodiff gradient in RotationMatrix::NormalizeOrThrow() (#20406)
- Add rotor inertias to iiwa7 model, fix rotation of inertias for link 2 and link 4 (#20420)
- Ensure MakeArmControllerModel uses same gravity as incoming plant (#20513)
New features
- Add basic conversion to/from SymPy (#20117, #20415)
- Bind all image types, ImageFileFormat, and PixelScalar (#20502, #20508)
Fixes
- Fix CompositeTrajectory binding to correctly derive from PiecewiseTrajectory (#20407)
- Only ship
*.pyi
typestubs for native code, not pure code (#20403) - Avoid stubgen timeouts when building from source (#20403)
- Consolidate modules to decrease download size by about 5% (#20465)
- Identify mismatched clang-format-{on,off} comments via linting tools (#20396)
- Remove macOS Monterey arm64 support (#20511)
- Precompiled binaries for stable releases now provide the version number instead of the date (#20532)
- Build libjpeg_turbo_internal from source (#20343)
- Upgrade abseil_cpp_internal to latest commit (#20469)
- Upgrade bazel to latest release 6.4.0 (#20410)
- Upgrade build_bazel_apple_support to latest release 1.11.1 (#20469)
- Upgrade buildifier to latest release 6.4.0 (#20543)
- Upgrade clp_internal to latest release 1.17.9 (#20469)
- Upgrade coinutils_internal to latest release 2.11.10 (#20469)
- Upgrade common_robotics_utilities to latest commit (#20374, #20387, #20528)
- Upgrade crate_universe to latest releases (#20474)
- Upgrade crate__num-traits to 0.2.17
- Upgrade crate__proc-macro2 to 1.0.69
- Upgrade crate__syn to 2.0.38
- Upgrade crate__thiserror to 1.0.50
- Upgrade crate__thiserror-impl to 1.0.50
- Upgrade curl_internal to latest release 8.4.0 (#20472)
- Upgrade dm_control_internal to latest release 1.0.15 (#20469)
- Upgrade ipopt_internal_fromsource to latest release 3.14.13 (#20525)
- Upgrade mypy_internal to latest release 1.6.1 (#20469)
- Upgrade platforms to latest release 0.0.8 (#20469)
- Upgrade pybind11 fork to latest commit, merging with upstream 2.11.1 (#20362, #20524)
- Upgrade pycodestyle to latest release 2.11.1 (#20469)
- Upgrade python_rules to latest release 0.26.0 (#20473)
- Upgrade rules_rust to latest release 0.30.0 (#20471)
- Upgrade suitesparse_internal to latest release 7.3.0 (#20469)
- Upgrade voxelized_geometry_tools to latest commit (#20374, #20387, #20528)
drake::multibody::MultibodyPlant::GetMutablePositions
(#20424)- Use
GetPositions
andSetPositions
instead
- Use
drake::multibody::MultibodyPlant::GetMutablePositionsAndVelocities
(#20424)- Use
GetPositionsAndVelocities
andSetPositionsAndVelocities
instead
- Use
drake::multibody::MultibodyPlant::GetMutableVelocities
(#20424)- Use
GetVelocities
andSetVelocities
instead
- Use
drake::multibody::Body::floating_velocities_start
(#20454)- Use
floating_velocities_start_in_v
instead
- Use
@libjpeg
external (#20343)- Please vendor your own dependency.
@conex
(#20463)@csdp
(#20463)@optitrack_driver
(#20463)@petsc
(#20463)@picosha2
(#20463)@rules_pkg
(#20463)@tinyobjloader
(#20463)@usockets
(#20463)@uwebsockets
(#20463)drake::geometry::optimization::GraphOfConvexSets::AddEdge
(VertexId overload only) (#20463)drake::geometry::optimization::GraphOfConvexSets::RemoveEdge
(EdgeId overload only) (#20463)drake::geometry::optimization::GraphOfConvexSets::RemoveVertex
(VertexId overload only) (#20463)drake::geometry::optimization::GraphOfConvexSets::SolveShortestPath
(VertexId overload only) (#20463)drake::multibody::Body::get_num_flexible_positions
(#20427)drake::multibody::Body::get_num_flexible_velocities
(#20427)drake::multibody::MinimumDistanceConstraint::minimum_distance
(#20463)drake::solvers::FindNonconvexQuadraticCost
(#20463)drake::solvers::MinimumValueConstraint::minimum_value
(#20463)drake::systems::sensors::OptitrackReceiver
(#20463)drake::systems::sensors::OptitrackSender
(#20463)pydrake.manipulation.kuka_iiwa
(#20463)pydrake.manipulation.schunk_wsg
(#20463)pydrake.manipulation.util
(#20463)
This release provides pre-compiled binaries named
drake-1.23.0-{focal|jammy|mac|mac-arm64}.tar.gz
. See Stable Releases for instructions on how to use them.
Drake binary releases incorporate a pre-compiled version of SNOPT as part of the Mathematical Program toolbox. Thanks to Philip E. Gill and Elizabeth Wong for their kind support.