Class Z3Planner


  • public class Z3Planner
    extends java.lang.Object
    Z3 based planners

    See "The Z3-Method for Fast Path Planning in Dynamic Environments", Boris
    Baginski, 1996.
    • Constructor Detail

      • Z3Planner

        public Z3Planner​(long cPtr,
                         boolean cMemoryOwn)
    • Method Detail

      • getCPtr

        public static long getCPtr​(Z3Planner obj)
      • delete

        public void delete()
      • makeQToQPlanner

        public static QToQPlannerPtr makeQToQPlanner​(QSamplerPtr sampler,
                                                     QToQPlannerPtr localPlanner,
                                                     int nodeCnt,
                                                     int repeatCnt)
        Z3 based point-to-point planner.

        Parameters:
        sampler - [in] Sampler of the configuration space.

        localPlanner - [in] Local planner for connecting the configurations.

        nodeCnt - [in] Number of supporting configurations to insert.
        If nodeCnt is negative, a default value is chosen.

        repeatCnt - [in] Number of times to repeat the attempt. If
        repeatCnt is negative (the default), the attempts are repeated until
        the stop criteria returns true.
      • makeQToQPlanner

        public static QToQPlannerPtr makeQToQPlanner​(QSamplerPtr sampler,
                                                     QToQPlannerPtr localPlanner,
                                                     int nodeCnt)
        Z3 based point-to-point planner.

        Parameters:
        sampler - [in] Sampler of the configuration space.

        localPlanner - [in] Local planner for connecting the configurations.

        nodeCnt - [in] Number of supporting configurations to insert.
        If nodeCnt is negative, a default value is chosen.

      • makeQToQPlanner

        public static QToQPlannerPtr makeQToQPlanner​(QSamplerPtr sampler,
                                                     QToQPlannerPtr localPlanner)
        Z3 based point-to-point planner.

        Parameters:
        sampler - [in] Sampler of the configuration space.

        localPlanner - [in] Local planner for connecting the configurations.



      • makeQToQPlanner

        public static QToQPlannerPtr makeQToQPlanner​(PlannerConstraint constraint,
                                                     DevicePtr device)
        Z3 based point-to-point planner.

        A default configuration space sampler (rw::pathplanning::QSampler)
        and local planning is chosen for device using constraint for
        collision checking.

        Parameters:
        constraint - [in] Constraint for configurations and edges.

        device - [in] Device for which the path is planned.
      • makeSlidingQToQPlanner

        public static QToQPlannerPtr makeSlidingQToQPlanner​(PlannerConstraint constraint,
                                                            QSamplerPtr directionSampler,
                                                            QConstraintPtr boundsConstraint,
                                                            MetricQPtr metric,
                                                            double extend,
                                                            double slideImprovement)
        Sliding local planner.

        This is a variation of the sliding local planner described in the Z3
        paper.

        This is the default local planner used for instantiation of the Z3
        based planners.

        Parameters:
        constraint - [in] Path planning constraint.

        directionSampler - [in] Sampler of direction vectors in the
        configuration space.

        boundsConstraint - [in] Constraint checking for the bounds of
        the configuration space.

        metric - [in] Configuration space distance measure.

        extend - [in] The length of each sliding step as measured by
        metric.

        slideImprovement - [in] The minimum decrease in distance to the
        goal that should be acheived for every valid slide step. If
        slideImprovement is negative, a default value for slideImprovement
        is chosen based on the value of extend.
      • makeSlidingQToQPlanner

        public static QToQPlannerPtr makeSlidingQToQPlanner​(PlannerConstraint constraint,
                                                            QSamplerPtr directionSampler,
                                                            QConstraintPtr boundsConstraint,
                                                            MetricQPtr metric,
                                                            double extend)
        Sliding local planner.

        This is a variation of the sliding local planner described in the Z3
        paper.

        This is the default local planner used for instantiation of the Z3
        based planners.

        Parameters:
        constraint - [in] Path planning constraint.

        directionSampler - [in] Sampler of direction vectors in the
        configuration space.

        boundsConstraint - [in] Constraint checking for the bounds of
        the configuration space.

        metric - [in] Configuration space distance measure.

        extend - [in] The length of each sliding step as measured by
        metric.

      • makeSlidingQToQPlanner

        public static QToQPlannerPtr makeSlidingQToQPlanner​(PlannerConstraint constraint,
                                                            DevicePtr device,
                                                            MetricQPtr metric,
                                                            double extend,
                                                            double slideImprovement)
        Sliding local planner.

        A default direction sampler and bounds checker is chosen for
        device.

        Parameters:
        constraint - [in] Path planning constraint.

        device - [in] Device for which the planning is done.

        metric - [in] Configuration space distance measure. If no metric
        is given, a default metric for device is chosen. In this case
        extend and slideImprovement should be negative, and default values
        for these will be chosen.

        extend - [in] The length of each sliding step as measured by
        metric.

        slideImprovement - [in] The minimum decrease in distance to the
        goal that should be acheived for every valid slide step. If
        slideImprovement is negative, a default value for slideImprovement
        is chosen based on the value of extend.
      • makeSlidingQToQPlanner

        public static QToQPlannerPtr makeSlidingQToQPlanner​(PlannerConstraint constraint,
                                                            DevicePtr device,
                                                            MetricQPtr metric,
                                                            double extend)
        Sliding local planner.

        A default direction sampler and bounds checker is chosen for
        device.

        Parameters:
        constraint - [in] Path planning constraint.

        device - [in] Device for which the planning is done.

        metric - [in] Configuration space distance measure. If no metric
        is given, a default metric for device is chosen. In this case
        extend and slideImprovement should be negative, and default values
        for these will be chosen.

        extend - [in] The length of each sliding step as measured by
        metric.

      • makeSlidingQToQPlanner

        public static QToQPlannerPtr makeSlidingQToQPlanner​(PlannerConstraint constraint,
                                                            DevicePtr device,
                                                            MetricQPtr metric)
        Sliding local planner.

        A default direction sampler and bounds checker is chosen for
        device.

        Parameters:
        constraint - [in] Path planning constraint.

        device - [in] Device for which the planning is done.

        metric - [in] Configuration space distance measure. If no metric
        is given, a default metric for device is chosen. In this case
        extend and slideImprovement should be negative, and default values
        for these will be chosen.



      • makeSlidingQToQPlanner

        public static QToQPlannerPtr makeSlidingQToQPlanner​(PlannerConstraint constraint,
                                                            DevicePtr device)
        Sliding local planner.

        A default direction sampler and bounds checker is chosen for
        device.

        Parameters:
        constraint - [in] Path planning constraint.

        device - [in] Device for which the planning is done.