×

Method, apparatus, and computer program product for optimizing parameterized models using functional paradigm of spreadsheet software

  • US 9,286,286 B1
  • Filed: 01/03/2015
  • Issued: 03/15/2016
  • Est. Priority Date: 01/03/2015
  • Status: Active Grant
First Claim
Patent Images

1. A method for optimizing solution of a parameterized equation system that satisfies one or more constraints using a spreadsheet software application, the method comprising:

  • A) displaying and operating a tabular datasheet by executing the spreadsheet software application on a computer device, the tabular datasheet having a plurality of cells each being designated with a column identifier and a row identifier, the cells being configured to receive input and display output;

    B) receiving, from a first group of the cells, one or more formula expressions representing the parameterized equation system, each of the formula expressions including a first sequence of substrings respectively representing a logical building block of the parameterized equation system;

    C) receiving, from a second group of the cells, variables of the formula expressions and, from a third group of the cells, parameters of the formula expressions;

    D) receiving, from a fourth group of the cells, a first solver function of the spreadsheet software application having one or more first input arguments, the first input arguments at least referencing the formula expressions in the first group of the cells and the variables in the second group of the cells;

    E) computing the first solver function to obtain an initial solution of the parameterized equation system, and displaying values of the initial solution in the fourth group of the cells;

    wherein computing the first solver function comprises;

    E1) constructing, for each of the formula expressions, an evaluable tree-structured graph of relational nodes containing an equivalent sequence of evaluable sub-expressions of said one or more formula expressions;

    E2) evaluating, by a graph evaluator, the relational nodes for the formula expressions to obtain values of the formula expressions based on values of the variables of the formula expressions; and

    E3) using an underlining algorithm of the first solver function to compute the initial solution in accordance with the formula expressions in the first group of the cells and the variables in the second group of the cells;

    wherein the underlining algorithm of the first solver function utilizes the graph evaluator to repeatedly evaluate the parameterized equation system for the values of the variables thereby computing the initial solution;

    F) receiving, from a fifth group of the cells, one or more constraint expressions representing the constraints for the parameterized equation system, each of the constraint expressions including a second sequence of substrings respectively representing a logical building entity of the constraint expressions, said one or more constraint expressions referencing the initial solution in the fourth group of the cells;

    G) receiving, from a sixth group of the cells, a second solver function of the spreadsheet software application having one or more second input arguments, the second input arguments at least referencing the constraint expressions in the fifth group of the cells and the parameters in the third group of the cells;

    H) computing the second solver function to obtain an optimized solution of the parameterized equation system, and displaying values of the optimized solution in the sixth group of the cells;

    wherein computing the second solver function comprises;

    H1) constructing, for each of the constraint expressions, an evaluable tree-structured graph of relational nodes containing evaluable sub-expressions including an expression of the first solver function;

    H2) evaluating, by the graph evaluator, the relational nodes for the constraint expressions to obtain dynamic values of the constraint expressions based on values of the parameters in the third group of the cells;

    wherein evaluating the relational nodes for the constraint expressions comprises computing a solution of the first solver function at said values of the parameters; and

    H3) using an underlining algorithm of the second solver function to compute the optimized solution in accordance with the constraint expressions in the fifth group of the cells and the parameters in the third group of the cells;

    wherein the underlining algorithm of the second solver function utilizes the graph evaluator to repeatedly evaluate the dynamic values of the constraints expressions for the values of the parameters thereby computing the optimized solution.

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