Reinforcement learning · Mesh generation

HexIt: hexahedral block decomposition by expert iteration

An agent that carves a 3D solid into brick-like blocks, one cut at a time, and gets better by studying its own successes.

Arjun Narayanan · Per-Olof Persson
University of California, Berkeley

A large chamfered solid the agent never saw in training, split into 56 hexahedra.
The problem

Brick by brick

Many engineering simulations, from stress in a bracket to flow through a channel, run best on meshes of hexahedra: six-sided, brick-like cells. The first step is to split the solid into a handful of well-shaped hexahedral blocks. Experts still do much of this by hand, and doing it automatically for general shapes is a long-standing open problem in mesh generation.

We treat it as a game: the agent edits the solid one step at a time, and only learns whether it succeeded at the very end, often after a few hundred moves.

How it works

Imitate first, then learn from its own wins

1

A game of cuts

The solid starts as a single cell. Each move inserts a vertex, an edge or a face, splitting cells apart. The game is won when every cell is a hexahedron that passes a quality check. The network reads the mesh's own connectivity, so one agent handles small and large solids alike.

2

Start from answers we can write down

For some solids a correct decomposition can be built directly: stacks of boxes, simple chamfers, extruded 2D meshes. Taking these apart step by step yields demonstrations, and the agent first learns by imitating them.

3

Keep what works

On new solids the agent tries many times and keeps the attempts that succeed in a growing archive of solutions. Retraining on that archive, round after round, steadily improves it. This loop is called expert iteration.

The result

From solid to hexahedral mesh

A large chamfered input solid, the 56 hexahedra the agent splits it into, and the same mesh as a wireframe

A large chamfered solid (left), the 56 hexahedra the agent splits it into (middle), and the same mesh as a wireframe (right). Every block follows the slanted faces, and the mesh is as well shaped as this solid allows.

Code

Coming soon

The code, trained models and evaluation sets will be released in this repository.
Citation

Cite this work

The paper is on arXiv: HexIt: Learning Hexahedral Block Decomposition with Expert Iteration on Combinatorial Maps.

@misc{narayanan2026hexit,
  title         = {{HexIt}: Learning Hexahedral Block Decomposition with
                   Expert Iteration on Combinatorial Maps},
  author        = {Narayanan, Arjun and Persson, Per-Olof},
  year          = {2026},
  eprint        = {2611.10433},
  archivePrefix = {arXiv},
  primaryClass  = {cs.LG},
  url           = {https://arxiv.org/abs/2611.10433}
}