At step 914, analysis engine 204 determines whether sufficient information exists within problem specification 202 to generate at least a coarse design solution that roughly approximates a feasible design solution. For example, analysis engine 204 could analyze problem specification 202 to determine whether all portions of the design problem geometry are fully constrained. More generally, analysis engine 204 identifies the minimum input requirements of client-side solver 208, and then determines whether problem specification 202 provides those minimum input requirements. If problem specification 202 does not include sufficient information, then the method 900 returns to step 912 and proceeds as described above. Otherwise, the method 900 proceeds to step 916.
At step 916, client-side solver 208 generates solution approximation 210. In performing step 916, client-side solver executes the multi-objective solver mentioned previously to generate a set of design solutions that potentially solve the design problem associated with problem specification 202. Client-side solver 208 then generates a composite of those design problems to arrive at solution approximation 210. Again, solution approximation 210 represents a “fuzzy” version of a range of potentially feasible design solutions.
At step 918, GUI engine 212 updates GUI 214 to include solution approximation 210. GUI engine 212 may also populate GUI 214 with various data associated with solution approximation 210, including constraint information as well as data that reflects variability across design solutions within solution approximation 210.