  Trusses are load-carrying light-weight structures consisting of bars
connected at joints ubiquitously applied in a variety of engineering scenarios.
Designing optimal trusses that satisfy functional specifications with a minimal
amount of material has interested both theoreticians and practitioners for more
than a century. In this paper, we introduce two main ideas to improve upon the
state of the art. First, we formulate an alternating linear programming problem
for geometry optimization. Second, we introduce two sets of complementary
topological operations, including a novel subdivision scheme for global
topology refinement inspired by Michell's famed theoretical study. Based on
these two ideas, we build an efficient computational framework for the design
of lightweight trusses. \AD{We illustrate our framework with a variety of
functional specifications and extensions. We show that our method achieves
trusses with smaller volumes and is over two orders of magnitude faster
compared with recent state-of-the-art approaches.
