1. In a computing device, a computer-implemented method of solving an optimization problem for a modeled system using an adaptive mutation operator in a genetic algorithm, comprising: providing, to the computing device, a first population of a plurality of individuals for an optimization problem for a modeled system, the individuals being individual solutions to the optimization problem, the optimization problem including linear and bound constraints; selecting an individual for mutation using the computing device; generating programmatically, using the computing device, an initial step size; generating programmatically, using the computing device, a plurality of random mutation direction vectors extending from a plotted location representing the individual selected for mutation, the plurality of random mutation direction vectors based on the linear and bound constraints; generating programmatically, using the computing device, a mutated individual and moving a distance equal to the initial step size from the plotted location representing the individual selected for mutation along a randomly chosen one of the plurality of mutation direction vectors; and assessing programmatically, using the computing device, whether the mutated individual is in a feasible region, the feasible region representing a region encompassing acceptable solutions to the optimization problem considering the linear and bound constraints, the assessing further comprising: storing the mutated individual as part of second population in a computer-readable medium based on an assessment that the mutated individual is in the feasible region, or based on an assessment that the mutated individual is not in the feasible region, iteratively mutating a different mutated individual along the chosen mutation direction vector using a step size programmatically reduced from the initial step size and assessing whether the different mutated individual is in the feasible region until the different mutated individual is assessed to be in the feasible region, the reduced step size based on the linear and bound constraints, and storing the different mutated individual as part of a second population in a computer-readable medium based on an assessment that the different mutated individual is in the feasible region; and using the second population to solve the optimization problem.