Papers
Topics
Authors
Recent
2000 character limit reached

Vitruvion: A Generative Model of Parametric CAD Sketches

Published 29 Sep 2021 in cs.LG | (2109.14124v2)

Abstract: Parametric computer-aided design (CAD) tools are the predominant way that engineers specify physical structures, from bicycle pedals to airplanes to printed circuit boards. The key characteristic of parametric CAD is that design intent is encoded not only via geometric primitives, but also by parameterized constraints between the elements. This relational specification can be viewed as the construction of a constraint program, allowing edits to coherently propagate to other parts of the design. Machine learning offers the intriguing possibility of accelerating the design process via generative modeling of these structures, enabling new tools such as autocompletion, constraint inference, and conditional synthesis. In this work, we present such an approach to generative modeling of parametric CAD sketches, which constitute the basic computational building blocks of modern mechanical design. Our model, trained on real-world designs from the SketchGraphs dataset, autoregressively synthesizes sketches as sequences of primitives, with initial coordinates, and constraints that reference back to the sampled primitives. As samples from the model match the constraint graph representation used in standard CAD software, they may be directly imported, solved, and edited according to downstream design tasks. In addition, we condition the model on various contexts, including partial sketches (primers) and images of hand-drawn sketches. Evaluation of the proposed approach demonstrates its ability to synthesize realistic CAD sketches and its potential to aid the mechanical design workflow.

Citations (53)

Summary

  • The paper introduces a generative model that leverages autoregressive techniques to synthesize CAD sketches using tokenized geometric primitives.
  • It factorizes sketch synthesis into primitive and constraint modeling, achieving robust autocompletion and noise-resilient inference.
  • The model enhances design workflows by enabling dynamic sketch autocompletion and scalable constraint inference for automated design refinement.

Vitruvion: A Generative Model of Parametric CAD Sketches

Introduction

The paper "Vitruvion: A Generative Model of Parametric CAD Sketches" introduces a machine learning approach for generative modeling of parametric CAD sketches using autoregressive models. This research aims to enhance the design process by enabling tools like autocompletion, constraint inference, and conditional synthesis, effectively integrating machine learning into modern mechanical design workflows. Figure 1

Figure 1: CAD sketch generation conditioned on a hand drawing.

The model synthesizes sketches by generating geometric primitives and constraints. These constraints mirror the relational structure fundamental to CAD, capturing a designer's intent and allowing parametric modification. Figure 1 depicts this capability, where a hand-drawn sketch conditions the generation of a computable model.

Methodology

The methodology centers on factorizing CAD sketch synthesis into primitive generation and constraint generation (Figure 2). The process starts with a sequence of geometric primitives, each represented by tokenized parameters. These primitives are subject to constraints that ensure coherence in design alteration. Figure 2

Figure 2: Factorization of CAD sketch synthesis into primitive generation and constraint generation.

Primitive Model

The primitive model uses a decoder-only transformer to predict sequences of sketch primitives. These take quantitative forms, such as lines or arcs, parameterized by position and type, captured using token embeddings processed through a transformer architecture. Training involves maximizing token sequence log-likelihood, and the model's performance is validated using test set likelihood (Figure 3). Figure 3

Figure 3

Figure 3: Random examples from the SketchGraphs dataset (left) and random samples from the primitive model (right).

Constraint Model

The constraint model conditions on the primitive sequence to generate the constraint graph—essentially edges in a geometric graph reflecting relational dependencies. Utilizing an encoder-decoder transformer, it refines primitive placements, robust against noise through Gaussian perturbations during training (Figure 4). Figure 4

Figure 4: Image-conditional samples showing noise-resilient inference.

Evaluation

The model's capabilities extend to autocompleting designs and interpreting sketches from rough hand drawings. Evaluated across various settings—including image conditioning and primer-based generation—the model exhibits significant improvements over baselines in reconstructing precise constraint graphs and maintaining geometric intent through edits.

Autocompletion and Noise Robustness

Exemplifying practical applications, the model's robustness to noise increases real-world applicability. Figure 5 shows improved constraint recovery versus noiseless constraints, capitalizing on augmentation strategies to maintain performance. Figure 5

Figure 5: Differing results from constraint models trained with and without noise.

Implications and Future Work

The implications of Vitruvion are twofold: it enriches the design process by potentially automating routine tasks in mechanical design, and it offers scalable generative models for constraints in sketch modeling. Future developments may involve expanding the models to 3D datasets or dynamic inputs like 3D scans.

In conclusion, Vitruvion not only illustrates the potential of machine learning in CAD but also provides a framework toward fully integrated design environments supporting intelligent design tools. The research opens pathways for further exploration in efficient, user-driven design automation.

Paper to Video (Beta)

Whiteboard

No one has generated a whiteboard explanation for this paper yet.

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Collections

Sign up for free to add this paper to one or more collections.