Short description of a possible Solver (optimization tool) component

A Solver component modifies a set of input cells in a spreadsheet, observing the impact on result and constraint formula cells. The goal is to find an optimal set of input values, for which the result is minimized, maximized or approximated to a target value, while the constraints remain within specified limits. There has to be a user interface to select the input and result cells, constraints and internal parameters. The component would then use the StarOffice API to fill the input cells and read the resulting formula results. For best results, a selection of algorithms (for example linear and non-linear) should be available.