Abstract
We propose two novel algorithms for constructing convex probabilistically collision-free polytopes in robot configuration space. Finding these polytopes enables the application of stronger motion-planning frameworks such as trajectory optimization with Graphs of Convex Sets (Marcucci et al., 2023) and is currently a major roadblock in the adoption of these approaches. In this paper, we build upon the IRIS-NP algorithm (Iterative Regional Inflation by Semidefinite & Nonlinear Programming) of Petersen and Tedrake (2023) to significantly improve tunability, runtimes, and scaling to complex environments. IRIS-NP uses nonlinear programming paired with uniform random initialization to find configurations on the boundary of the free configuration space. Our key insight is that finding nearby configuration-space obstacles using sampling is inexpensive and greatly accelerates region generation. We propose two algorithms using such samples to either employ nonlinear programming more efficiently (IRIS-NP2) or circumvent it altogether using a massively parallel zero-order optimization strategy (IRIS-ZO). Both algorithms employ a novel termination condition that controls the probability of exceeding a user-specified permissible fraction-in-collision, eliminating a significant source of tuning difficulty in IRIS-NP. We further present an approach for applying both algorithms in parametrized configuration spaces. We compare the performance across eight robot environments, showing that IRIS-ZO achieves an order-of-magnitude speed advantage over IRIS-NP, which is extended roughly by an additional order of magnitude by parallelizing it with a GPU. IRIS-NP2, also significantly faster than IRIS-NP, builds larger polytopes using fewer hyperplanes which has the additional benefit of accelerating downstream motion planning. Website: https://sites.google.com/view/fastiris.
1. Introduction
A major challenge in robot motion planning is the need to simultaneously consider task space, the world in which the robot physically resides, and configuration space,
The unavailability of obstacles’ configuration-space descriptions has not prevented the development of a rich literature of motion planning algorithms. Many approaches approximate the set of collision-free configurations
These representations of
Modern decomposition-based motion planning algorithms (DBMPs) leverage these representations to quickly produce high-quality, collision-free trajectories and can scale to high-dimensional robotic systems (Chen et al., 2016; Chew Chia et al., 2024; Liu et al., 2017; Marcucci et al., 2023, 2024; Morozov et al., 2024, 2025; Natarajan et al., 2024; Wu et al., 2024). Furthermore, by nature of their use of optimization, these planners can handle a variety of costs and constraints. However, the performance of these planners is highly dependent on the properties of the convex sets. It is desirable for these sets to have large volumes in order to reduce the number of sets required to approximate
Recent results for planning on Graph of Convex Sets (GCSTrajOpt) leverage the IRIS-NP algorithm (Cohn et al., 2024; Marcucci et al., 2023; Morozov et al., 2024, 2025). IRIS-NP takes in a collision-free seed configuration and attempts to construct a convex, collision-free polytope containing it. IRIS-NP, however, falls short of meeting the aforementioned criteria in practice. Its runtime is substantial and trading off between runtime and correctness (how much of the region is collision-free) proves challenging. IRIS-NP only terminates after failing to solve a user-specified number of nonlinear programs in succession, a time-consuming process dependent on this user-specified parameter acting as a proxy for correctness, when the actual relationship is unclear. Furthermore, these nonlinear programs must be run separately for every object in the scene, causing IRIS-NP to scale poorly with environment complexity.
In this paper, we improve upon IRIS-NP, focusing on a key subroutine that constructs hyperplanes to separate the seed point from obstacles. Our improvements leverage the fact that we can evaluate thousands of configurations for collisions in the time it takes to solve a single nonlinear optimization problem. We employ random sampling and collision-checking to estimate the proportion of the polytope that is collision-free, providing a rigorous probabilistic certificate and enabling intuitive tradeoffs between region correctness and computation times. We further present two algorithms that utilize sampling and collision-checking to improve polytope generation: IRIS-ZO rapidly generates polytopes using a simple parallelized zero-order optimization strategy that requires no gradient computations and is easy to implement. IRIS-NP2 uses sampled collisions to seed nonlinear optimizations, increasing search success and dramatically reducing the required number of programs. We demonstrate that both algorithms outperform IRIS-NP in terms of computation time and region quality.
This paper further extends the initial conference paper (Werner et al., 2024b) in several ways. We demonstrate that our algorithmic improvements accelerate downstream motion planning and lead to lower-cost plans, and show that IRIS-ZO can be further sped up by a factor of 10 by leveraging GPU-parallelism. Finally, we show how both IRIS-ZO and IRIS-NP2 can be used to grow regions under any smooth parametrization of configuration space. This allows us to grow regions for kinematically constrained systems (e.g., for constrained bimanual manipulation), even when the feasible set is measure-zero, as in (Cohn et al., 2024). An open-source implementation of our method is made available as part of the Drake modeling and simulation framework (Tedrake and the Drake Development Team, 2019).
2. Problem formulation
In this section, we introduce the problem formulation and discuss the required inputs and provided outputs of our proposed algorithms.
We aim to generate polytopes
1
in configuration space whose volume is large, and whose fraction in collision is less than a user-provided constant. More precisely, let λ denote the Lebesgue measure in the free configuration space
Since obtaining a closed-form description of
We expect the robotic system to be described as M sets
We let
For a configuration q, the system is in collision if there exists a valid
2
pair of collision geometries
We avoid explicitly describing
3. Related works
Algorithms for computing positive-volume subsets of
If descriptions of all obstacles are given as convex sets, the original IRIS algorithm can construct large collision-free polytopes about a seed points using a series of convex optimizations (Deits and Tedrake, 2015). Such descriptions can be obtained from arbitrary meshes via approximate convex decomposition techniques (Mamou and Ghorbel, 2009). Wu et al. (2024) use a similar approach to grow polytopes around an existing trajectory, towards producing a shorter, collision-free path.
Due to the complex kinematics of robotic manipulators, obstacles in configuration space are frequently given by implicit descriptions. Yang and LaValle (2004) leveraged the kinematic Jacobian to relate motion in configuration-space and task space, allowing the construction of collision-free ellipsoids. Unfortunately, large numbers of ellipsoids are required to approximate even simple, low-dimensional configuration spaces.
The original IRIS algorithm has been extended to handle such implicit descriptions in two ways. IRIS-NP (Petersen and Tedrake, 2023) uses nonlinear programming to find multiple locally separating hyperplanes to each obstacle, until the program becomes infeasible—an imprecise termination condition that often leaves some obstacle volume in regions. Jaitly and Farzan (2024) modified IRIS-NP to use a nonuniform sampling strategy to seed the collision search program. The other option is to use a rational parametrization of the kinematics to construct regions that are rigorously certified to be collision-free with sums-of-squares programming (Dai et al., 2024). However, such optimizations are computationally expensive, and the regions are grown in a stereographic projection of configuration space, which distorts distances.
Alternatively, Sarmientoy et al. (2005) directly decompose three-dimensional spaces into polytopes only using sample-based collision-checking. Unfortunately, this approach requires dense sampling of the configuration space to produce large sets which is intractable in all but the simplest cases.
4. Background on IRIS algorithms
In this section, we review the key algorithms our approach builds upon. The IRIS algorithm (Deits and Tedrake, 2015) takes in a list of convex obstacles and produces a collision-free polytope around a seed point in the same space as these obstacles. IRIS-NP (Petersen and Tedrake, 2023) generalizes IRIS to operate in configuration space using nonlinear programming.
4.1. IRIS with convex obstacles
IRIS takes as input N
o
convex obstacles
The SeparatingPlanes step starts with a collision-free ellipsoid
4.2. Computing separating planes in robot configuration space
IRIS requires convex obstacles to ensure the convexity of (4). However, configuration-space obstacles are generally non-convex. IRIS-NP generalizes the closest-point-in-obstacle program (4) for the configuration-space obstacle The nonlinear closest-point-in-obstacle program seeks the closest configuration q, under the ellipsoidal metric 
Because configuration-space obstacles are generally non-convex, multiple hyperplanes may be necessary to separate c from
To construct the separating hyperplanes for the collision pair
To summarize, the IRIS-NP strategy to approximating SeparatingPlanes in robot configuration space is to create a list of all valid collision pairs ordered by their task-space distance, and, for each collision pair, repeatedly find locally optimal solutions to (5) and update A visualization of an IRIS-NP region for a simple two dof system. Left: Two dof robot arm with a disk shaped obstacle. Two selected collision geometries of the system are highlighted in green and blue. Center: Configuration space of the system. The black regions correspond to collisions. Two of the configuration-space obstacles are highlighted in blue and green, corresponding to the configurations where the blue and green collision geometries intersect the disk obstacle. Right: Resulting region (red outline), when seeding at the red dot. The configuration in left frame is shown by the blue dot.
Looping over all collision pairs in a fixed order is a major inefficiency leading to longer computation times and polytopes with needlessly many hyperplanes. In the following, we propose two ways of using sampling and collision-checking in order to improve the SeparatingPlanes-step and eliminate this fixed-order traversal of all collision pairs from the algorithm, making our approaches significantly more performant.
5. Improving the separating hyperplanes routine
Glossary of algorithm parameters.
In particular, we still initialize the ellipsoid with a small ball of radius rstart and employ the same overall termination conditions for the alternations (Petersen and Tedrake, 2023, §II.D): the seed point s no longer being contained in
5.1. Termination condition for the separating planes step
In this section, we discuss a termination condition that allows a user to specify a desired bound on the fraction of the volume of the polytope
Instead, we propose a statistical test that controls the probability of falsely claiming a polytope is sufficiently collision-free and terminating. For some user-specified uncertainty δ, a correct termination condition allows a region with ɛ tr > ɛ to be returned with probability at most δ. To accomplish this, we pair union bounds with a simple statistical test based on a Chernoff bound.
We sample a batch of M points
If τ > 1 both sides evaluate to 0. Otherwise, it holds that (1 − τ)ɛ ≤ (1 − τ)ɛ
tr
. Next, we use the standard multiplicative Chernoff bound
(Alon and Spencer 2016, §A, Thm A.1.15), and use the fact that
(Unadaptive Test).
(Controlling False Accept). Suppose ɛ
tr
≥ ɛ, that is,. the true fraction in collision is higher than allowed, and we have
Thus, our test behaves as follows: Assume we are given a polytope
Within SeparatingPlanes, for both algorithms, hyperplanes are iteratively added to
In order to control the probability of falsely accepting, that is, terminating, after an unknown number of inner iterations, in the case where a single outer iteration is to be run, we simply select δ
k
according to the sequence δ
k
= 6δ/(π2k2) for the k-th test, as this sequence sums to δ as k → ∞. If an unknown number of outer iterations (i.e., alternations between updating the polytope and the ellipsoid) are to be run, we must account for the additional UnadaptiveTest queries. In order for the probability of falsely accepting to sum to δ over infinite inner and outer iterations, we run
Note that this termination condition assumes uniform samples in
5.2. The IRIS-ZO algorithm
The IRIS-ZO algorithm uses a simple parallelized zero-order optimization strategy to directly solve SeparatingPlanes in Alg. 1 for all collision pairs simultaneously. We call this subroutine ZeroOrderSeparatingPlanes and summarize it in Alg. 2. Figure 3 illustrates how ZeroOrderSeparatingPlanes optimizes hyperplanes. One iteration of ZeroOrderSeparatingPlanes. Left: Configuration space with gray configuration-space obstacles. First, a batch of samples is drawn uniformly in the current polytope and checked for collisions. Center: The found collisions 
The ZeroOrderSeparatingPlanes step constructs a probabilistically collision-free polytope
The first step is to uniformly sample a batch of configurations
If the probabilistic test fails, we then add hyperplanes to the polytope. We produce candidate solutions for the closest point in collision program (5) based on the first Np configurations q in
5.3. The IRIS-NP2 algorithm
The IRIS-NP2 algorithm (Alg. 3) places hyperplanes more carefully than IRIS-ZO, increasing runtime in favor of larger regions with fewer hyperplanes, while still improving upon IRIS-NP runtimes. Like IRIS-NP, IRIS-NP2 uses nonlinear programming, solving (5) to find separating hyperplanes. In contrast to IRIS-NP, IRIS-NP2 always initializes NLP searches with feasible initial guesses q0, prioritizing initial guesses with lower ellipsoid metric
This strategy of always using a feasible initial guess presents a major advantage over IRIS-NP, as IRIS-NP spends substantial time in NLP solves that return infeasible. In part, this property of IRIS-NP is due to initializing NLP searches with uniform samples q0, in the hopes that the nonlinear program solver can pull those q0 not in collision into collision to return feasible optimized solutions q⋆. In practice, this frequently fails even when the polytope does contain collisions. Furthermore, as discussed in Sec. 4.2, IRIS-NP requires that many consecutive NLP solves return infeasible in order to terminate. Assessing termination readiness via the Bernoulli trials is faster, allowing the NLP, which is slow to solve, to be used only to construct hyperplanes. Another advantage of this strategy is it scales better with environment complexity. IRIS-NP must solve a minimum number of NLPs for every valid collision pair. This quantity grows quickly with scene complexity, while many of these pairs never actually collide, resulting in infeasible NLPs and wasted computation time. IRIS-NP2 only considers pairs known to collide, and hence solves only feasible NLPs. We present two options for GetConfigInCollision, with differing costs and benefits: the greedy collision finder, which is hyperparameter-free, and the ray collision finder, which can be tuned for higher performance.
For the Greedy Collision Finder, all samples from the Bernoulli trial that are in collision are aggregated and sorted in ascending order of distances to the center point of the ellipsoid, w.r.t. the ellipsoidal metric. (In effect, N
p
is dynamically set to equal the number of collision particles.) When queried, this subroutine returns the sample with the next-lowest ellipsoid metric, until all in-collision samples from the Bernoulli trial have been exhausted. If a sample is not in the polytope (due to new hyperplanes from an earlier sample), it would no longer be a feasible initial guess for Equation (5), so
The Ray Collision Finder (Figure 4) prioritizes the quality of the constructed hyperplanes via an inexpensive line search to find configurations in collision near the ellipsoid center. The ray collision finder takes a subset of the samples drawn for the Bernoulli trial, and, for each sample, steps outward in discrete steps along the ray from the ellipsoid center through the sample. The first step in collision is returned. If a step has exited the polytope, Execution of NP2-SeparatingPlanes using the ray collision finder for GetConfigInCollision. Blue dots represent uniform samples in the polytope. Red dots represent the results of the corresponding discrete line searches. Stars represent the results of local nonlinear searches (). On the right, the corresponding hyperplanes (green) form the updated polytope.
6. Growing polytopes in parametrized configuration spaces
For collision-free motion planning, constructing convex subsets of
To plan along constraint manifolds, sampling-based planners must use specialized techniques to draw samples (Kingston et al., 2018). Trajectory optimizers must use similar techniques (Bordalba et al., 2022) or accept slight constraint violations away from the control points of the trajectory (Bonalli et al., 2019). But GCSTrajOpt, and DBMPs in general, were wholly inapplicable, as any convex subset of
6.1. Prior methods
Recent work, using analytic inverse kinematics as a parametrization of the constraint manifold, enabled trajectory optimization intrinsic to
Cohn et al. (2024) propose growing convex sets in terms of the nonlinear coordinates in order to use DBMPs restricted to (1) avoid function domain violations, (2) avoid joint limit violations, and (3) avoid non-reachable configurations
(in that order), before finally searching across all possible collision pairs. While this approach enables planning intrinsic to
In the following, we show that we can circumvent these challenges by adapting both IRIS-ZO and IRIS-NP2 to operate in parametrized configuration spaces.
6.2. IRIS-ZO and IRIS-NP2 on a manifold
Suppose we have a smooth function In order to grow polytopes on a measure-zero subset of

The bisection search of IRIS-ZO adapts very naturally to this formulation, except instead of directly checking the sample for a collision, the algorithm checks for any constraint violations before applying the parametrization to check for collisions in the full configuration space. IRIS-NP2 identifies which constraint was violated or which geometries were in collision and then solves the appropriate nonlinear program. Since constraints are imposed in
Because
7. Experiments
7.1. Polytope construction benchmark
To evaluate our proposed changes to the IRIS-NP algorithm, we put forth a comprehensive benchmark. This benchmark includes eight different robotic systems, described in Figure 6. For each benchmark, we select 10 seed configurations manually, placing the robot in a variety of configurations in its environment. Each experiment is run for a single outer iteration, to isolate performance differences in the SeparatingPlanes steps. The systems we use to benchmark our algorithms, along with the number of degrees of freedom, number of collision pairs, and the ratio of the volume of the free configuration space relative to the entire configuration space 
We compare the approaches for two different settings: a “fast” setting, where we request the region to be 90% collision-free, with 90% confidence, and a “precise” setting, where we request the region to be 99% collision-free with 95% confidence. IRIS-NP cannot take these arguments directly, so we hand-tune the required number of consecutive infeasible solves to roughly match the average collision fractions achieved by our algorithms. For IRIS-NP2, we tuned the algorithm hyperparameters of Table 1 on a per-experiment basis.
To mitigate the effects of randomness of the algorithms in our comparisons, we construct regions around each seed point 10 times. This yields 100 trials per robot environment, or 800 total, for each algorithm. For the parallelized components of the algorithms, an Intel Core i9-10850K (10 cores, 20 threads) is used. All convex programs are solved using MOSEK (MOSEK ApS, 2025) and the nonlinear programs are solved using SNOPT (Gill et al., 2005). The volume of the maximum-volume inscribed ellipsoid is used as a proxy for polytope volume, as actual volume is intractable to compute in higher dimensions. We report these volumes normalized by the averaged IRIS-NP results.
Compared to the conference version of this paper (Werner et al., 2024b), we have rerun these benchmarks using the publicly available implementations of IRIS-ZO and IRIS-NP2 in Drake (Tedrake and the Drake Development Team, 2019).
Statistics averaged over all 10 seed points. “Rel Volume” corresponds to the volumes of the MVIE, normalized by that of IRIS-NP. For the “Fast” settings, on average, IRIS-ZO was 11.9 times faster than IRIS-NP with 1.4 times fewer hyperplanes. IRIS-NP2 with the greedy strategy was 6.55 times faster with 2.1 times fewer hyperplanes, and with the ray strategy was 4.2 times faster with 2.3 times fewer hyperplanes. For the “Precise” settings, IRIS-ZO was 13.4 times faster than IRIS-NP with around the same number of hyperplanes. IRIS-NP2 with the greedy strategy was 33.9 times faster with 2.4 times fewer hyperplanes, and with the ray strategy was 13.6 times faster with 2.6 times fewer hyperplanes.

7.2. Downstream motion planning improvements
A key motivation behind this work is to enable and improve motion planning through the computed regions. In this section, we characterize this performance on a three-DOF environment,
A challenge in comparing regions generated for motion planning is that, for all IRIS variants, regions initialized with haphazardly chosen ellipsoids may grow in unpredicted ways; two regions initialized with the same such ellipsoid may cover significantly different parts of
Figure 8 shows statistics for this experiment. As previously seen, IRIS-NP is significantly slower than our proposed algorithms. It also yields the largest number of hyperplanes per polytope on average. The IRIS-NP2 algorithms improve the computation time for calculating the shortest path as well as reduce the overall path length. The latter result aligns with our observations in Sec. 7.1: on average, IRIS-NP2 produced polytopes where the MVIE had a larger volume than those produced by IRIS-NP. These results confirm the intended impacts of our proposed algorithms: both IRIS-ZO and IRIS-NP2 dramatically speed up the calculation of free-space regions, while IRIS-NP2 additionally yields improved motion plans, calculated faster. Statistics for the motion planning experiment. Top-left: Total time for the IRIS algorithm to compute the polytopes. Bottom-left: Number of hyperplanes per polytope, averaged over the computed polytopes. Top-right: Time for the optimizer to compute the shortest path through the sequence of polytopes, averaged over 100 optimization trials. Bottom-right: Length of the optimized path. All results are averaged over 10 trials of growing the polytopes. The standard deviations over these trials are shown in error bars.
7.3. Accelerating IRIS-ZO using GPUs
The ZeroOrderSeparatingPlanes subroutine (alg. 2) is highly parallelizeable. In this section, we briefly investigate the benefits of using a GPU to perform the sampling and collision-checking within this subroutine. To this end, we build IRIS-ZO off of the existing infrastructure in the CSDECOMP software package Werner et al. (2025), which implements forward kinematics and collision-checking for box and sphere geometries directly in CUDA. In order to compare our CPU implementation of IRIS-ZO, which supports a wider variety of shape primitives such as meshes, capsules, and cylinders, to the GPU implementation, we employ the 2IIWAs environment from the benchmarks, where the collision geometries have been converted to spheres and boxes. The new environment is comprised of 101 collision geometries and has 4125 collision pairs. For each of the ten seed configurations, we grow each polytope ten times while capping the algorithm at a single outer iteration in order to simplify the comparison between the implementations.
For the fast settings, which uses N p = 100, the GPU implementation takes 0.162 seconds on average for all 100 regions, whereas the CPU version took 1.326 seconds on average. This corresponds to an 8.17-times speedup on average. For the precise settings, which uses N p = 800, the mean computation times per polytope are 1.114 seconds for the GPU, and 12.415 seconds for the CPU implementation, respectively. This corresponds to an 11.45-times speedup on average.
A further benefit of the GPU implementation is that we can increase the number of particles N
p
used for the bisection search significantly, while only marginally increasing the computation time per inner iteration. This has the benefit of decreasing the number of hyperplanes. We demonstrate this by rerunning the above benchmark task with the precise settings for N
p
= 50, 500, 5000, 50000. The results are shown in Figure 9. We find that the GPU implementation only begins to slow down noticeably at N
p
= 50000 where the time for one inner iteration is around 81 ms on average. The CPU implementation already begins to slow down noticeably at N
p
= 500, where the time for one inner iteration is 92 ms, on average. We then, per seed point, compute the number of hyperplanes relative to the average number of hyperplanes computed with N
p
= 50 for the GPU implementation. We find that increasing N
p
from 50 to 50000 reduces the number of faces of the final polytopes by around 41% on average. For N
p
= 50 the regions had an average of 492.2 hyperplanes. For N
p
= 50000 the regions had 289.42 hyperplanes on average. Comparison of the GPU to the CPU implementation of IRIS-ZO on the 
7.4. Growing polytopes along manifolds
In this section, we investigate how IRIS-ZO and IRIS-NP2 operate in parametrized configuration spaces. We begin with an illustrative example and then provide a more in-depth comparison of the performance to prior work on a constrained bimanual system.
Consider a planar double pendulum with link lengths l1 and l2, with a circular collision geometry on the end of the second link of radius r, and two walls at a distance w from the origin. The free space can be written in closed form as
We now grow a collision-free polytope around the origin under the stereographic projection s
i
≔ tan q
i
/2. Note that this choice of coordinates allows us to rigorously certify that the polytope is entirely collision-free (Amice et al., 2024; Dai et al., 2024). The parametrization therefore reads ϕ(s)≔ arctan(2s), where arctan is applied component-wise. Figure 10 visualizes The polytope generated for the double pendulum by IRIS-NP2 under the rational parametrization. The blue curve is the boundary of 
A comparison of the original IRIS-NP algorithm with the three new approaches for the constrained bimanual configuration space. As in Table 3, the volume is approximated by the maximum-volume inscribed ellipsoid. We estimate the fraction in collision with 10,000 uniform random samples. Across the board, the new algorithms are much faster than IRIS-NP, require fewer hyperplanes to describe the collision-free polytopes, and satisfy the target fraction in collision of

When the relative transform between the end-effectors of two robot arms is fixed, the set of valid configurations is a measure-zero set, preventing the direct use of our polytope inflation algorithms. Instead, we can use the parametrization machinery to grow polytopes along this constraint manifold. Here, we visualize three collision-free bimanual configurations from a single convex set, demonstrating that a single region can cover a large portion of task space.
Compared to the specialized version of IRIS-NP presented in Cohn et al. (2024), our new algorithms are significantly more performant. IRIS-ZO, IRIS-NP2 (greedy), and IRIS-NP2 (ray) consistently achieve more than a 100x speedup over IRIS-NP. The fastest algorithm was either IRIS-ZO or IRIS-NP2 (greedy), with about a 50/50 split. The new algorithms produced polytopes that required around 2 to 10 times fewer hyperplanes than IRIS-NP, with IRIS-NP2 (ray) almost always requiring the fewest. IRIS-NP2 (ray) usually produces the largest regions, although IRIS-NP2 (greedy) sometimes gains a slight volume advantage. IRIS-ZO sometimes produces smaller regions than IRIS-NP, although this may be correlated with IRIS-NP regions that had large fractions in collision. IRIS-NP frequently produced regions with a large fraction in collision or in violation of constraints—8 out of 19 regions exceeded the target of 99% valid. In contrast, all the new algorithms cleared this threshold.
8. Discussion
In recent years, region generation has posed a major roadblock for the adoption of new decomposition-based motion planners such as GCSTrajOpt. Toward alleviating this roadblock, we have presented significant improvements to the IRIS-NP algorithm, reducing its runtime, making it more user-friendly, and increasing the quality of the resulting regions. We derive a probabilistic test for the proportion of a given region that is collision-free, allowing the user to more directly trade off algorithmic precision and speed. We have also presented new approaches to the SeparatingPlanes subroutine, which show significantly better performance than IRIS-NP, while consistently achieving the user-specified collision-free threshold. IRIS-NP2 is generally faster and requires fewer hyperplanes to define the polytopes. IRIS-ZO is easy to implement, is around 12.7 times faster, and often uses fewer hyperplanes than IRIS-NP, although the regions are smaller. Our preliminary investigations show that we can further speed up IRIS-ZO by around a factor of 10 if we run it on a GPU. Additionally, we have confirmed that IRIS-NP2 improves downstream motion planning by reducing planning time and path cost. When sets are constructed offline for real-time motion planning, these improvements can compound with the benefits of calculating simplified approximations of the regions downstream (Jiang et al., 2025) to enable fast motion planning. Furthermore, these new approaches scale more favorably with the complexity of the environment. As they are deployed in environments with increasingly many collision geometries, we anticipate the performance gap will grow even further. Besides the quantitative improvements, the hyperparameters are straightforward to tune and have clear effects on the behavior of the algorithm. We have also extended both algorithms to operate in parametrized configuration spaces. Our experiments on a constrained bimanual system show that our new algorithms provide dramatic speedups of around 100 times over prior work when computing polytopes on this constraint manifold.
There are myriad directions for future research. CPU-level multithreading, SIMD instructions (Tan et al., 2019) and GPU programming (Lauterbach et al., 2009) have shown great promise for speeding up collision-checking beyond our preliminary investigations. In addition, we would like to extend the support of our GPU code to additional nonlinear constraints and parametrized configuration spaces. Furthermore, the speed at which useful regions can now be constructed opens new avenues for research in combining DBMPs and SBMPs (Werner et al., 2025).
Finally, obstacles of small or zero measure may still pose a collision risk. But such obstacles would be hard for our algorithms to identify, due to our use of (relative) volume in collision as a target metric. This can be mitigated by initializing the IRIS-NP2 counterexample search program with samples that are nearly in-collision, or just inflating the obstacles. Alternatively, the certifiable IRIS algorithm (Amice et al., 2024; Dai et al., 2024) will avoid all collisions, but its use of polynomial optimization techniques requires significant runtime and compute resources. Thus, the fast construction of regions that can satisfy stronger safety notions, such as geometric clearance, remains an open question.
Footnotes
Acknowledgments
We thank Ravi Gondhalekar (The Charles Stark Draper Laboratory, Inc.) and Alexandre Amice for their feedback. This work was supported by the Toyota Research Institute,
, PO No. 2D-06310236, the MIT Quest for Intelligence, and the National Science Foundation Graduate Research Fellowship Program under Grant No. 2141064, as well as the Office of Naval Research grant N00014-23-1-2354. Any opinions, findings, conclusions, or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation (or other funding organizations).
Funding
The authors disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the Toyota Research Institute,
, PO No. 2D-06310236, the MIT Quest for Intelligence, and the National Science Foundation Graduate Research Fellowship Program under Grant No. 2141064, as well as the Office of Naval Research grant N00014-23-1-2354.
Declaration of conflicting interests
The authors declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
