44,648 research outputs found
Fast evaluation of union-intersection expressions
We show how to represent sets in a linear space data structure such that
expressions involving unions and intersections of sets can be computed in a
worst-case efficient way. This problem has applications in e.g. information
retrieval and database systems. We mainly consider the RAM model of
computation, and sets of machine words, but also state our results in the I/O
model. On a RAM with word size , a special case of our result is that the
intersection of (preprocessed) sets, containing elements in total, can
be computed in expected time , where is the
number of elements in the intersection. If the first of the two terms
dominates, this is a factor faster than the standard solution of
merging sorted lists. We show a cell probe lower bound of time , meaning that our upper bound is nearly
optimal for small . Our algorithm uses a novel combination of approximate
set representations and word-level parallelism
QuickCSG: Fast Arbitrary Boolean Combinations of N Solids
QuickCSG computes the result for general N-polyhedron boolean expressions
without an intermediate tree of solids. We propose a vertex-centric view of the
problem, which simplifies the identification of final geometric contributions,
and facilitates its spatial decomposition. The problem is then cast in a single
KD-tree exploration, geared toward the result by early pruning of any region of
space not contributing to the final surface. We assume strong regularity
properties on the input meshes and that they are in general position. This
simplifying assumption, in combination with our vertex-centric approach,
improves the speed of the approach. Complemented with a task-stealing
parallelization, the algorithm achieves breakthrough performance, one to two
orders of magnitude speedups with respect to state-of-the-art CPU algorithms,
on boolean operations over two to dozens of polyhedra. The algorithm also
outperforms GPU implementations with approximate discretizations, while
producing an output without redundant facets. Despite the restrictive
assumptions on the input, we show the usefulness of QuickCSG for applications
with large CSG problems and strong temporal constraints, e.g. modeling for 3D
printers, reconstruction from visual hulls and collision detection
QuickCSG: Fast Arbitrary Boolean Combinations of N Solids
QuickCSG computes the result for general N-polyhedron boolean expressions
without an intermediate tree of solids. We propose a vertex-centric view of the
problem, which simplifies the identification of final geometric contributions,
and facilitates its spatial decomposition. The problem is then cast in a single
KD-tree exploration, geared toward the result by early pruning of any region of
space not contributing to the final surface. We assume strong regularity
properties on the input meshes and that they are in general position. This
simplifying assumption, in combination with our vertex-centric approach,
improves the speed of the approach. Complemented with a task-stealing
parallelization, the algorithm achieves breakthrough performance, one to two
orders of magnitude speedups with respect to state-of-the-art CPU algorithms,
on boolean operations over two to dozens of polyhedra. The algorithm also
outperforms GPU implementations with approximate discretizations, while
producing an output without redundant facets. Despite the restrictive
assumptions on the input, we show the usefulness of QuickCSG for applications
with large CSG problems and strong temporal constraints, e.g. modeling for 3D
printers, reconstruction from visual hulls and collision detection
Fast reliable interrogation of procedurally defined implicit surfaces using extended revised affine arithmetic.
Techniques based on interval and previous termaffine arithmetic next term and their modifications are shown to provide previous term reliable next term function range evaluation for the purposes of previous termsurface interrogation.next term In this paper we present a technique for the previous termreliable interrogation of implicit surfacesnext term using a modification of previous termaffine arithmeticnext term called previous term revised affine arithmetic.next term We extend the range of functions presented in previous termrevised affine arithmeticnext term by introducing previous termaffinenext term operations for arbitrary functions such as set-theoretic operations with R-functions, blending and conditional operators. The obtained previous termaffinenext term forms of arbitrary functions provide previous termfasternext term and tighter function range evaluation. Several case studies for operations using previous termaffinenext term forms are presented. The proposed techniques for previous termsurface interrogationnext term are tested using ray-previous termsurfacenext term intersection for ray-tracing and spatial cell enumeration for polygonisation. These applications with our extensions provide previous termfast and reliablenext term rendering of a wide range of arbitrary previous termprocedurally defined implicit surfacesnext term (including polynomial previous termsurfaces,next term constructive solids, pseudo-random objects, previous termprocedurally definednext term microstructures, and others). We compare the function range evaluation technique based on previous termextended revised affine arithmeticnext term with other previous termreliablenext term techniques based on interval and previous termaffine arithmeticnext term to show that our technique provides the previous termfastestnext term and tightest function range evaluation for previous termfast and reliable interrogation of procedurally defined implicit surfaces.next term
Research Highlights
The main contributions of this paper are as follows. ► The widening of the scope of previous termreliablenext term ray-tracing and spatial enumeration algorithms for previous termsurfacesnext term ranging from algebraic previous termsurfaces (definednext term by polynomials) to general previous termimplicit surfaces (definednext term by function evaluation procedures involving both previous termaffinenext term and non-previous termaffinenext term operations based on previous termrevised affine arithmetic)next term. ► The introduction of a technique for representing procedural models using special previous termaffinenext term forms (illustrated by case studies of previous termaffinenext term forms for set-theoretic operations in the form of R-functions, blending operations and conditional operations). ► The detailed derivation of special previous termaffinenext term forms for arbitrary operators
Accurate and Efficient Expression Evaluation and Linear Algebra
We survey and unify recent results on the existence of accurate algorithms
for evaluating multivariate polynomials, and more generally for accurate
numerical linear algebra with structured matrices. By "accurate" we mean that
the computed answer has relative error less than 1, i.e., has some correct
leading digits. We also address efficiency, by which we mean algorithms that
run in polynomial time in the size of the input. Our results will depend
strongly on the model of arithmetic: Most of our results will use the so-called
Traditional Model (TM). We give a set of necessary and sufficient conditions to
decide whether a high accuracy algorithm exists in the TM, and describe
progress toward a decision procedure that will take any problem and provide
either a high accuracy algorithm or a proof that none exists. When no accurate
algorithm exists in the TM, it is natural to extend the set of available
accurate operations by a library of additional operations, such as , dot
products, or indeed any enumerable set which could then be used to build
further accurate algorithms. We show how our accurate algorithms and decision
procedure for finding them extend to this case. Finally, we address other
models of arithmetic, and the relationship between (im)possibility in the TM
and (in)efficient algorithms operating on numbers represented as bit strings.Comment: 49 pages, 6 figures, 1 tabl
- …