×

Method and system for algorithm synthesis in problem solving

  • US 6,912,515 B2
  • Filed: 06/04/2001
  • Issued: 06/28/2005
  • Est. Priority Date: 06/04/2001
  • Status: Expired due to Fees
First Claim
Patent Images

1. A problem solving method for use in a computer system, wherein the computer system includes an applications module having a problem solver, wherein the problem solver comprises a solving module and a complexity module, the method comprising:

  • receiving a problem statement from the applications module;

    predicting an expected problem solver behavior associated with configuration parameters for said problem statement;

    providing the solving module with said configuration parameters;

    selecting a set of configuration parameter vectors;

    determining a set of search space points;

    perform a partial search with said configuration parameter vectors;

    determining actual solver behavior;

    reviewing said actual solver behavior incrementally to determine if a problem solution has been found, wherein reviewing comprises comparing said expected solver behavior with said actual solver behavior;

    determining whether to perform a solver iteration step or to request the complexity module to perform an adaptation step if a problem solution has not been found, wherein said complexity module includes means for detecting problem complexity, means for estimating rate of improvement bounds, and means for selecting a complexity related action, wherein said complexity related action comprises selecting at least one member from the group consisting of returning an error, accepting the best result possible for fixed computational resources, adding computational resources, and changing the problem statement;

    performing a said solver iteration step when said solver iteration step is selected, comprising the steps of determining new actual solver behavior and determining whether to repeat said solver iteration step;

    repeating said solver iteration step until said adaptation step is selected;

    comparing said actual solver behavior with said expected solver behavior when said adaptation step is selected;

    requesting the complexity module to perform said adaptation step;

    performing said adaptation step, comprising the steps of modifying said configuration parameters within the complexity module, configuring the solving module with said modified configuration parameters, determining expected solver behavior associated with said modified configuration parameters for said problem statement, selecting an algorithm to calculate a revised problem solution, determining a revised actual solver behavior associated with said modified configuration parameters for said problem statement, reviewing said revised actual solver behavior to determine if a problem solution has been found, determining whether to perform said solver iteration step or to request the complexity module to perform another adaptation step if a problem solution has not been found, and repeating said iteration step until said adaptation step is selected;

    repeating said adaptation step until a problem solution is found; and

    providing the solution to the applications module.

View all claims
  • 5 Assignments
Timeline View
Assignment View
    ×
    ×