skip to main content


Title: PICO: Procedural Iterative Constrained Optimizer for Geometric Modeling
Procedural modeling has produced amazing results, yet fundamental issues such as controllability and limited user guidance persist. We introduce a novel procedural system called PICO (Procedural Iterative Constrained Optimizer) using PICO-Graph, a procedural model designed with optimization in mind. PICO enables the exploration of generative designs by combining user and environmental constraints into a single framework and using optimization without the need to write procedural rules. The PICO-Graph is a data-flow procedural model consisting of a set of geometry-generating operation nodes. The forward generation is initiated by sending geometric objects from initial nodes. These objects travel through the graph, triggering generation of more objects along the way. We combine the PICO-Graph with evolutionary optimization that allows for exploration of the generated models and the generation of variants. The user defines the geometry-generating operations and the set of constraints; e.g, whether an existing object should be supported by the generated model, whether symmetries exist, etc. PICO then generates geometric models that fulfill the constraints through optimization, allowing interactive user control of constraints. We show PICO on a variety of examples, including generation of procedural chairs, generation of support structures for 3D printing, or generation of procedural terrains matching a given input.  more » « less
Award ID(s):
1816514
NSF-PAR ID:
10167924
Author(s) / Creator(s):
; ; ; ;
Date Published:
Journal Name:
IEEE Transactions on Visualization and Computer Graphics
ISSN:
1077-2626
Page Range / eLocation ID:
1 to 1
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. Abstract

    Procedural modeling allows for an automatic generation of large amounts of similar assets, but there is limited control over the generated output. We address this problem by introducing Automatic Differentiable Procedural Modeling (ADPM). The forward procedural model generates a final editable model. The user modifies the output interactively, and the modifications are transferred back to the procedural model as its parameters by solving an inverse procedural modeling problem. We present an auto‐differentiable representation of the procedural model that significantly accelerates optimization. In ADPM the procedural model is always available, all changes are non‐destructive, and the user can interactively model the 3D object while keeping the procedural representation. ADPM provides the user with precise control over the resulting model comparable to non‐procedural interactive modeling. ADPM is node‐based, and it generates hierarchical 3D scene geometry converted to a differentiable computational graph. Our formulation focuses on the differentiability of high‐level primitives and bounding volumes of components of the procedural model rather than the detailed mesh geometry. Although this high‐level formulation limits the expressiveness of user edits, it allows for efficient derivative computation and enables interactivity. We designed a new optimizer to solve for inverse procedural modeling. It can detect that an edit is under‐determined and has degrees of freedom. Leveraging cheap derivative evaluation, it can explore the region of optimality of edits and suggest various configurations, all of which achieve the requested edit differently. We show our system's efficiency on several examples, and we validate it by a user study.

     
    more » « less
  2. Abstract Modern CAD tools represent 3D designs not only as geometry, but also as a program composed of geometric operations, each of which depends on a set of parameters. Program representations enable meaningful and controlled shape variations via parameter changes. However, achieving desired modifications solely through parameter editing is challenging when CAD models have not been explicitly authored to expose select degrees of freedom in advance. We introduce a novel bidirectional editing system for 3D CAD programs. In addition to editing the CAD program, users can directly manipulate 3D geometry and our system infers parameter updates to keep both representations in sync. We formulate inverse edits as a set of constrained optimization objectives, returning plausible updates to program parameters that both match user intent and maintain program validity. Our approach implements an automatically differentiable domain‐specific language for CAD programs, providing derivatives for this optimization to be performed quickly on any expressed program. Our system enables rapid, interactive exploration of a constrained 3D design space by allowing users to manipulate the program and geometry interchangeably during design iteration. While our approach is not designed to optimize across changes in geometric topology, we show it is expressive and performant enough for users to produce a diverse set of design variants, even when the CAD program contains a relatively large number of parameters. 
    more » « less
  3. Computational modeling and simulation of real-world problems, e.g., various applications in the automotive, aerospace, and biomedical industries, often involve geometric objects which are bounded by curved surfaces. The geometric modeling of such objects can be performed via high-order meshes. Such a mesh, when paired with a high-order partial differential equation (PDE) solver, can realize more accurate solution results with a decreased number of mesh elements (in comparison to a low-order mesh). There are several types of high-order mesh generation approaches, such as direct methods, a posteriori methods, and isogeometric analysis (IGA)-based spline modeling approaches. In this paper, we propose a direct, high-order, curvilinear tetrahedral mesh generation method using an advancing front technique. After generating the mesh, we apply mesh optimization to improve the quality and to take advantage of the degrees of freedom available in the initially straight-sided quadratic elements. Our method aims to generate high-quality tetrahedral mesh elements from various types of boundary representations including the cases where no computer-aided design files are available. Such a method is essential, for example, for generating meshes for various biomedical models where the boundary representation is obtained from medical images instead of CAD files. We present several numerical examples of second-order tetrahedral meshes generated using our method based on input triangular surface meshes. 
    more » « less
  4. In computer vision, tracking humans across camera views remains challenging, especially for complex scenarios with frequent occlusions, significant lighting changes and other difficulties. Under such conditions, most existing appearance and geometric cues are not reliable enough to distinguish humans across camera views. To address these challenges, this paper presents a stochastic attribute grammar model for leveraging complementary and discriminative human attributes for enhancing cross-view tracking. The key idea of our method is to introduce a hierarchical representation, parse graph, to describe a subject and its movement trajectory in both space and time domains. This results in a hierarchical compositional representation, comprising trajectory entities of varying level, including human boxes, 3D human boxes, tracklets and trajectories. We use a set of grammar rules to decompose a graph node (e.g. tracklet) into a set of children nodes (e.g. 3D human boxes), and augment each node with a set of attributes, including geometry (e.g., moving speed, direction), accessories (e.g., bags), and/or activities (e.g., walking, running). These attributes serve as valuable cues, in addition to appearance features (e.g., colors), in determining the associations of human detection boxes across cameras. In particular, the attributes of a parent node are inherited by its children nodes, resulting in consistency constraints over the feasible parse graph. Thus, we cast cross-view human tracking as finding the most discriminative parse graph for each subject in videos. We develop a learning method to train this attribute grammar model from weakly supervised training data. To infer the optimal parse graph and its attributes, we develop an alternative parsing method that employs both top-down and bottom-up computations to search the optimal solution. We also explicitly reason the occlusion status of each entity in order to deal with significant changes of camera viewpoints. We evaluate the proposed method over public video benchmarks and demonstrate with extensive experiments that our method clearly outperforms state-of-theart tracking methods. 
    more » « less
  5. This paper introduces a web-based interactive educational platform for 3D/polyhedral graphic statics (PGS) [1]. The Block Research Group (BRG) at ETH Zürich developed a dynamic learning and teaching platform for structural design. This tool is based on traditional graphic statics. It uses interactive 2D drawings to help designers and engineers with all skill levels to understand and utilize the methods [2]. However, polyhedral graphic statics is not easy to learn because of its characteristics in three-dimensional. All the existing computational design tools are heavily dependent on the modeling software such as Rhino or the Python-based computational framework like Compass [3]. In this research, we start with the procedural approach, developing libraries using JavaScript, Three.js, and WebGL to facilitate the construction by making it independent from any software. This framework is developed based on the mathematical and computational algorithms deriving the global equilibrium of the structure, optimizing the balanced relationship between the external magnitudes and the internal forces, visualizing the dynamic reciprocal polyhedral diagrams with corresponding topological data. This instant open-source application and the visualization interface provide a more operative platform for students, educators, practicers, and designers in an interactive manner, allowing them to learn not only the topological relationship but also to deepen their knowledge and understanding of structures in the steps for the construction of the form and force diagrams and analyze it. In the simplified single-node example, the multi-step geometric procedures intuitively illustrate 3D structural reciprocity concepts. With the intuitive control panel, the user can move the constraint point’s location through the inserted gumball function, the force direction of the form diagram will be dynamically changed from compression-only to tension and compression combined. Users can also explore and design innovative, efficient spatial structures with changeable boundary conditions and constraints through real-time manipulating both force distribution and geometric form, such as adding the number of supports or subdividing the global equilibrium in the force diagram. Eventually, there is an option to export the satisfying geometry as a suitable format to share with other fabrication tools. As the online educational environment with different types of geometric examples, it is valuable to use graphical approaches to teach the structural form in an exploratory manner. 
    more » « less