1. A system, comprising: a memory for storing computer-executable instructions for an application program interface; and a processor in communication with the memory, wherein the processor is configured to execute the computer-executable instructions to enable a user of the application program interface to: specify parameters associated with an evolutionary algorithm, wherein an execution of the evolutionary algorithm is in accordance with the specified parameters; define a chromosome data structure that includes a plurality of variables that are permitted to evolve in value in accordance with the execution of the evolutionary algorithm in order to generate one or more child chromosome data structures; identify one or more objective functions for evaluating chromosome data structures, including the generated one or more child chromosome data structures; and define an output format for providing one or more optimal chromosome data structures of the evaluated generated child chromosome data structures as designs to the identified objective functions, wherein the chromosome data structure comprises at least one matrix gene having a plurality of rows, wherein each row specifies a variable number of genes that are permitted to evolve.