AIKIDO v0.3.0 Release Notes

Release Date: 2020-05-22 // almost 4 years ago

    Common

    • Fixed bug in StepSequence::getMaxSteps(): #305
    • Fixed bug in StepSequence iterator: #320
    • Cleaned up doxygen errors: #357
    • Fixed bug in compiling with Boost 1.58 on Kinetic + Xenial: #490
    • Fixed bug in Interpolated::addWaypoint(): #483
    • Fixed bug in VanDerCorput sequence generator to handle non-unit span: #552

    - Updated to C++14 Standard: #570

    Distance

    • Added methods to rank configurations based on specified metric: #423
    • Added weights as optional parameter to rankers: #484

    - Updated constness of return type of SE2::getStateSpace(): #536

    State Space

    • Refactored JointStateSpace and MetaSkeletonStateSpace: #278
    • Added methods for checking compatibility between DART objects and state spaces: #315
    • Added flags to MetaSkeletonStateSaver to specify what to save: #339
    • Fixed bug in the representation of SO(2) statespace: #408
    • Fixed const correctness of StateHandle::getState(): #419
    • Fixed hidden compose function (in-place version): #421
    • Added clone functionality to StateSpace: #422
    • Used const StateSpaces everywhere: #429

    - Changed the SE(2) space representation to [x,y,theta]: #458

    Constraint

    • Added SequentialSampleable: #393

    - Changed deprecated DART call in InverseKinematics: #524

    Control

    • Fixed CollisionGroup bugs in Hand executors: #299
    • Rewrote executors for faster-than-realtime simulation: #316, #450
    • Introduced uniform and dart namespaces: #342
    • Removed Barrett-specific hand executors: #380

    - Supported canceling in-progress trajectories: #400

    Perception

    • Added integrated PoseEstimatorModule: #336
    • Added voxel grid perception module: #448
    • Added YAML communication between PoseEstimatorModule and third-party perception algorithms: #497

    - Made AssetDatabase key required for Marker text: #508

    Trajectory

    • Added B-spline trajectory: #453
    • Added trajectory utility functions: #462
    • Fixed toR1JointTrajectory to copy Waypoints with their time information: #510
    • Removed incorrect Spline to Interpolated conversions: #511
    • Updated findTimeOfClosestStateTrajectory to use StateSpace Distance Metric: #543

    - Add SO2 handling in spline conversions: #546

    Planner

    • Check that all planning problems only hold ScopedStates: #569
    • Make all DART planners take MetaSkeleton, and add adapter for turning planners into DART planners: #437
    • Added parabolic timing for linear spline #302, #324
    • Fixed step sequence iteration in VFP: #303
    • Refactored planning API: #314, #414, #426, #432
    • Added flags to WorldStateSaver to specify what to save: #339
    • Changed interface for TrajectoryPostProcessor: #341
    • Planning calls with InverseKinematicsSampleable constraints explicitly set MetaSkeleton to solve IK with: #379
    • Added a kinodynamic timer that generates a time-optimal smooth trajectory without completely stopping at each waypoint: #443
    • Fixed segmentation fault on 32-bit machines in vector-field planner: #459
    • Updated interface to OMPL planners to follow the style of the new refactored planning API: #466
    • Added convenience function for converting SO(2) trajectories to R1 trajectories, support for postprocessing SO(2) trajectories: #496
    • Used ConfigurationRanker in TSR planners: #503
    • Returned Interpolated trajectories from VFP: #513

    - Added support for taking state snapshots with list of skeleton names: #523

    Robot

    • Added Robot, Manipulator, Hand interfaces, and ConcreteRobot, ConcreteManipulator classes: #325, #392
    • Added Kunz timer to Robot class: #505

    - Made ConcreteRobot limit functions public: #556

    RViz

    • Fixed bug of not joining Viewer threads when stopping auto-update: #463
    • Fixed bug of not passing full file path to RViz when MeshShape is used: #518
    • Merged WorldInteractiveMarkerViewer into InteractiveMarkerViewer, removing the former: #520

    - Fixed bug of not removing SkeletonMarkers of skeletons removed from the associated World: #560

    IO

    • Added loadSkeletonFromURDF convenience function: #388, #401

    - Added methods for caching and retrieving trajectories: #541

    🏗 Build & Testing & ETC

    • Fixed Eigen memory alignment issues on 32bit Ubuntu: #368
    • Defined optional dependencies: #376
    • Fixed compilation bug with Eigen 3.3.5: #452
    • Updated gtest version to 1.8.1: #478
    • Added DART 6.7 support: #480
    • Fixed use of dart::common::make_unique for C++14 enabled compilers: #481
    • Changed to use own build script for GoogleTest: #485
    • Added aikido::common::make_unique wrapper: #532
    • Manually generated (minimal) Python bindings: #499