Patent ID: 7444309

Claim:
In a computer system comprising a central processor and a plurality of peripheral processors, and at least one user interface including at least one input device and at least one output device, a method comprising: a) receiving by means of at least one of the at least one input devices information concerning an optimization problem, b) in response to a communication from one of the plurality of peripheral processors to the central processor, selecting a subpopulation of candidate solutions to the optimization problem from a pool of available candidate solutions, said subpopulation being selected from among a plurality of candidate solutions having fitness values found in a contiguous subrange among fitness values of available candidate solutions in the pool, c) processing the subpopulation according to an evolutionary algorithm until a termination condition is reached, d) merging the subpopulation whose processing has terminated back into the pool, e) repeating said selecting, processing, and merging until an ending condition is reached, and f) generating an output signal based upon the candidate solutions in the pool, and providing that output signal including information about at least one candidate solution to the optimization problem to a user by means of at least one of the at least one output devices, wherein the central processor maintains the pool, and two or more peripheral processors of heterogeneous capabilities communicatively linked to the central processor process the subpopulations, and wherein the contiguous subrange of fitness values from which the selection is made in at least one iteration of step b) does not overlap the contiguous subrange of fitness values from which the selection was made in at least one prior iteration of step b).