Data processing: database and file management or data structures – Database design – Data structure types
Reexamination Certificate
1998-09-15
2001-03-06
Feild, Joseph H. (Department: 2771)
Data processing: database and file management or data structures
Database design
Data structure types
Reexamination Certificate
active
06199078
ABSTRACT:
COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or of the patent disclosure as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION
The present invention relates to a data processing system and method for providing a data network with the ability to perform circular calculations. More particularly, the present invention relates to an analytic engine having a network of integrated calculator relationships which may be used as a simulator or scenario building system.
Prior to the advent of computerized data processing systems, solving matrices describing large, complex systems was a difficult, time consuming task. Completing a large matrix frequently requires hundreds of individual calculations. Some relief came in the mid 1970's when desktop and hand held electronic calculators, such as the UNICOM 102 by Rockwell and the HP-29C by Hewlett Packard, became widely available. Some calculators, such as the HP 9810A by Hewlett Packard, were developed as programmable calculators with limited memory. With these calculators, commonly used formulas for a matrix could be input into the calculator and stored in order to speed calculation of the matrix.
As personal computers became available, the potential use in calculating matrices using an electronic spreadsheet program was seen quickly. An electronic spreadsheet has the elements of a matrix, plus the ability to automatically calculate the relationships between data fields to produce output. An electronic spreadsheet has columns and rows, with individual intersections representing fields or cells in the spreadsheet. As with a matrix, values can be input into the individual fields of the spreadsheet. Output fields are created by inputting a formula into each output field. The inputs for entered formulas can be either input data fields or outputs from other formulas. When an error is found, the error can be corrected by editing the formula for an output field without having to recalculate the formulas dependent on that field.
Heretofore, users could not provide circular formulas to a spreadsheet. There are times when it is desirable to provide for such circular formulas. For example, a user may want to perform scenarios on a spreadsheet. With some spreadsheet applications, such as EXCEL™ from Microsoft, the only way this could be done was to successively try different combinations of input values until the desired output value is found. Some spreadsheet programs do provide solver functions wherein a dialog box appears allowing a user to enter a result for the formula to solve for. The spreadsheet's solver then attempts to guess the input values. However, the user must choose which input fields can be changed and only the formula for the output field the user is trying to solve for could be used. Using the solver is cumbersome due to the need to fill in a dialog box each time the function is to be used. Further, users are forced to designate fields as either input or output, each type having different characteristics.
Another limitation on data networks and spreadsheets heretofore has been that they do not have the ability to have more one than formula associated with an output field. It may be desirable to associate an output field with more than one formula so that different scenarios can be performed and different output can be displayed.
Moreover, a specific limitation to spreadsheets heretofore has been that they do not provide the ability to hide calculation layers from users so that a spreadsheet-based application can be published to users who can only type in values and get back answers without ever seeing, or being able to change the calculations that drive that application.
In business, engineering, scientific or personal finance applications, the ability to perform what-if scenarios is crucial. Although attempts have been made to provide a user with the ability to perform what-if scenarios, they have been substantially limited by algorithms which only provide the ability to guess at inputs successively until the desired output is reached. Problem or spreadsheet solvers have only allowed users to give a single output value and choose fields in the data network which can be changed, and are generally cumbersome to use because the user must perform those choices through a series of programming commands, menus or dialog boxes. Finally, solvers heretofore did not provide the ability to allow use of different formulas for calculating the inputs for a desired output in what-if scenarios than was used for calculating the output.
There is thus a need for a data network system which provides homogenous fields that do not need designation as input or output fields so that, among other things, what-if scenarios can be easily performed. There is further a need for fields in a data network which allow entry of multiple circular formulas for various what-if scenarios.
BRIEF SUMMARY OF THE INVENTION
It is an object of the present invention to solve the problems described above with existing spreadsheet programs.
It is another object of the present invention to provide a powerful and efficient scenario building tool.
It is another object of the present invention to allow for scenario building while resolving conflicts arising from circular relationships.
These and other objects of the invention are provided by a method and system for calculating values for fields interrelated by circular formulas in a data network The system contains a first calculator for which a first field serves as an input value and a second field serves as an output and a second calculator for which the second field serves as an input value and the first field serves as an output. A conflict checker determines whether a circular conflict exists after input of the input value into the first field or the second field, and a conflict resolver resolves the conflict by suppressing the input value in the first field or second field upon determination of the circular conflict.
Some of the objects of the invention are also achieved by programming methods and processing systems for use in connection with a spreadsheet application program having a plurality of fields capable of storing a plurality of values. The methods and systems may be implemented in whole or in part by computer programs stored on a computer readable medium such as a floppy or hard disk or optical medium such as a CD-ROM or DVD and executable on a computer. The programs may also be stored on a server computer and may be downloaded to client computers via a network such as the Internet.
One such method comprises storing a first formula which receives as input a value from each of one or more first fields in the spreadsheet program and produces an output value to be presented in a second field in the spreadsheet program, and storing a second formula which receives as input a value from each of one or more third fields in the spreadsheet program and produces an output to be presented in the second field. Thus, two formulas produce output for the same spreadsheet field, a condition which is typically disallowed by and causes an error message with conventional spreadsheet programs. In the method of the present invention, however, when input values are available in the one or more first fields or one or more third fields, one of the first formula and second formula is selected, and the selected formula is used to produce an output value for the second field.
When input values are available in the first fields only, the first formula is selected. As described herein, different logic may be employed by the computer program implementing the method in selecting one of the formulas when input values are available in both the one or more first fields and the one or more third fields. For example, when the input values in the first fields
Baskin Mat
Brittan Philip
Franco Louis
Rose Frank Leon
Brown & Raysman Millstein Felder & Steiner LLP
Feild Joseph H.
Kindred Alford W.
Sphere Software Engineering, Inc.
LandOfFree
Analytic network engine and spreadsheet interface system does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Analytic network engine and spreadsheet interface system, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Analytic network engine and spreadsheet interface system will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2543684