1. A computer-implemented process for creating an entity that satisfies a predetermined design requirement that at least one characteristic is not in a reference structure, the process comprising: initializing a plurality of candidate entities and an iteration count with a predetermined value by supplying, from an external source, at least one candidate entity partially satisfying the predetermined design requirement which includes a characteristic of the reference structure to the initialized plurality of candidate entities, wherein each candidate entity is represented by a tree structure having a plurality of nodes representing a structure of the candidate entity; performing iterative genetic programming operations, each iteration including: creating a description of the structure for each of the candidate entities based on its tree structure, analyzing behavior and characteristics based on the description of the structure of each candidate entity, including a simulation of the structure, comparing each of the plurality of candidate entities with the reference structure based on the analysis of the behavior and characteristics to obtain an isomorphism value for each candidate entity, the isomorphism value representing a dissimilarity between the respective candidate entity and the reference structure, determining a fitness value for each of the candidate entities based on a compliance with the predetermined design requirement and the isomorphism value of the respective candidate entity, selecting at least one candidate entity from the plurality of candidate entities that has a fitness value exceeds a predetermined threshold, creating at least one new candidate entity by creating a variation in the selected at least one candidate entity if the selected at least one candidate does not satisfy the predetermined design requirement or a number of iterations has not reached the predetermined value of the iteration count, including performing one of a reproduction operation, offspring crossover operation, mutation operation, and an architecture altering operation on the at least one selected candidate entity, and terminating the iterations if the selected at least one candidate satisfies the predetermined design requirement or a number of iterations has reached the predetermined value of the iteration count, wherein at least one of the selected candidate entities is used to design an end-result structure in view of the predetermined design requirement, wherein the end-result structure does not possess key characteristics of the reference structure; and updating the iteration count at the end of each iteration.