One or more non-transitory computer-readable media storing program instructions that, when executed by one or more processors, causes the one or more processors to generate designs for an urban design project via a computer-aided design (CAD) application by performing the steps of:
- generating, via a geometry engine included in the CAD application, a plurality of candidate designs based on a set of design criteria and a set of competing design objectives;
- generating, via a tradeoff engine included in the CAD application, a design tradeoff space that includes the plurality of candidate designs having values associated with multiple dimensions within the design tradeoff space based on different sets of design metrics, wherein each design metric included in the different sets of design metrics quantifies a degree to which a corresponding design objective is met, and wherein a first graphical user interface can be used to visualize two dimensions of the multiple dimensions at a given time;
- receiving a first set of performance modifications based on one or more user interactions, wherein the first set of performance modifications specifies one or more changes to one or more of the degrees to which one or more design objectives included in the set of competing design objectives are met;
- traversing, via the tradeoff engine, the design tradeoff space from a first position in the design tradeoff space associated with a first set of degrees to which the one or more design objectives are met for a first candidate design to a second position in the design tradeoff space associated with a second set of degrees to which the one or more design objectives are met based on the first set of performance modifications;
- generating a second candidate design not included in the plurality of candidate designs based on the second position in the tradeoff space;
- generating, via the tradeoff engine, a first combined metric for the first candidate design based on a first set of design metrics for the first candidate design;
- and
- generating, via the tradeoff engine, a second combined metric for the second candidate design based on a second set of design metrics for the second candidate design, wherein the second combined metric is greater than the first combined metric, thereby indicating that the second candidate design is a higher ranked design than the first candidate design.