Table of Contents
Fetching ...

Minimum Riesz s-Energy Subset Selection in Ordered Point Sets via Dynamic Programming

Michael Emmerich

TL;DR

The paper addresses selecting a small, well-distributed subset from larger point sets by minimizing the Riesz $s$-energy. It develops a dynamic programming formulation that exploits 1D ordering to efficiently produce near-optimal solutions, and extends the approach to 2D Pareto fronts by leveraging sorted, non-dominated point sequences. While exact global optimality cannot be guaranteed due to non-local energy interactions, the method demonstrates strong empirical performance across 1D and 2D cases, including large Pareto fronts and discontinuous fronts, and provides an open-source Python implementation. The work offers a practical, scalable alternative to greedy subset selection for energy-based diversity and Pareto-front representation, with clear avenues for hybrid or refined recurrences to further improve optimality guarantees.

Abstract

We present a dynamic programming algorithm for selecting a representative subset of size $k$ from a given set with $n$ points such that the Riesz $s$-energy is near minimized. While NP-hard in general dimensions, the one-dimensional case can use the natural data ordering for efficient dynamic programming as an effective heuristic solution approach. This approach is then extended to problems related to two-dimensional Pareto front representations arising in biobjective optimization problems. Under the assumption of sorted (or non-dominated) input, the method typically yields near-optimal solutions in most cases. We also show that the approach avoids mistakes of greedy subset-selection by means of example. However, as we demonstrate, there are exceptions where DP does not identify the global minimum; for example, in one of our examples, the DP solution slightly deviates from the configuration found by a brute-force search. This is because the DP scheme's recurrence is approximate. The total time complexity of our algorithm is shown to be $O(n^2 k)$. We provide computational examples with discontinuous Pareto fronts and an open-source Python implementation, demonstrating the approximate DP algorithm's effectiveness across various problems with large point sets.

Minimum Riesz s-Energy Subset Selection in Ordered Point Sets via Dynamic Programming

TL;DR

The paper addresses selecting a small, well-distributed subset from larger point sets by minimizing the Riesz -energy. It develops a dynamic programming formulation that exploits 1D ordering to efficiently produce near-optimal solutions, and extends the approach to 2D Pareto fronts by leveraging sorted, non-dominated point sequences. While exact global optimality cannot be guaranteed due to non-local energy interactions, the method demonstrates strong empirical performance across 1D and 2D cases, including large Pareto fronts and discontinuous fronts, and provides an open-source Python implementation. The work offers a practical, scalable alternative to greedy subset selection for energy-based diversity and Pareto-front representation, with clear avenues for hybrid or refined recurrences to further improve optimality guarantees.

Abstract

We present a dynamic programming algorithm for selecting a representative subset of size from a given set with points such that the Riesz -energy is near minimized. While NP-hard in general dimensions, the one-dimensional case can use the natural data ordering for efficient dynamic programming as an effective heuristic solution approach. This approach is then extended to problems related to two-dimensional Pareto front representations arising in biobjective optimization problems. Under the assumption of sorted (or non-dominated) input, the method typically yields near-optimal solutions in most cases. We also show that the approach avoids mistakes of greedy subset-selection by means of example. However, as we demonstrate, there are exceptions where DP does not identify the global minimum; for example, in one of our examples, the DP solution slightly deviates from the configuration found by a brute-force search. This is because the DP scheme's recurrence is approximate. The total time complexity of our algorithm is shown to be . We provide computational examples with discontinuous Pareto fronts and an open-source Python implementation, demonstrating the approximate DP algorithm's effectiveness across various problems with large point sets.

Paper Structure

This paper contains 27 sections, 29 equations, 5 figures, 2 algorithms.

Figures (5)

  • Figure 1: DP-selected representative subsets on two Pareto front examples (with $k=3$). The right illustration shows an instance where the DP method yields a near-optimal solution that deviates from the brute-force result.
  • Figure 3: Comparison of the DP and Brute Force solutions for Example 2. In the DP solution, points $P_1$, $P_3$, $P_4$, $P_5$, and $P_7$ are selected, while in the Brute Force solution, points $P_1$, $P_3$, $P_4$, $P_6$, and $P_7$ are selected.
  • Figure 4: Pareto front subset selection for a set of 1000 points (blue). The red points have been selected by the DP algorithm.
  • Figure 5: ZDT3 Pareto Front and DP-Selected Representative Subset. The blue scatter plot displays 1,000 points approximating the ZDT3 Pareto front, defined by $f_1$ over five disjoint intervals and $f_2 = 1 - \sqrt{f_1} - f_1\sin(10\pi f_1)$. The red markers represent the 15 representative points selected by a dynamic programming algorithm that minimizes the Riesz 1-energy, with a dashed line connecting them in the order they were chosen.
  • Figure 6: ZDT3 Pareto Front and DP-Selected Representative Subset (k=30).