summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlivier Hallot <olivier.hallot@libreoffice.org>2020-05-22 14:25:26 -0300
committerOlivier Hallot <olivier.hallot@libreoffice.org>2020-05-22 19:34:49 +0200
commitabe8187060201a5e62844b53d3786c6b99070ec2 (patch)
tree219a173cffb54597185370fa92a4185ba09ca307
parenttdf#132643 Translate German section IDs (diff)
downloadhelp-abe8187060201a5e62844b53d3786c6b99070ec2.zip
help-abe8187060201a5e62844b53d3786c6b99070ec2.tar.gz
tdf81599 Better Help pages for Calc Solvers
Add information on algorithms paramenters Change-Id: I36f330593687efa616594e397cb7d6054c2198ed Reviewed-on: https://gerrit.libreoffice.org/c/help/+/94703 Tested-by: Jenkins Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
-rw-r--r--AllLangHelp_scalc.mk1
-rw-r--r--source/auxiliary/scalc.tree1
-rw-r--r--source/text/scalc/01/solver.xhp90
-rw-r--r--source/text/scalc/01/solver_options.xhp51
-rw-r--r--source/text/scalc/01/solver_options_algo.xhp386
5 files changed, 493 insertions, 36 deletions
diff --git a/AllLangHelp_scalc.mk b/AllLangHelp_scalc.mk
index d866000..d059928 100644
--- a/AllLangHelp_scalc.mk
+++ b/AllLangHelp_scalc.mk
@@ -266,6 +266,7 @@ $(eval $(call gb_AllLangHelp_add_helpfiles,scalc,\
helpcontent2/source/text/scalc/01/live_data_stream \
helpcontent2/source/text/scalc/01/solver \
helpcontent2/source/text/scalc/01/solver_options \
+ helpcontent2/source/text/scalc/01/solver_options_algo \
helpcontent2/source/text/scalc/01/statistics \
helpcontent2/source/text/scalc/01/statistics_anova \
helpcontent2/source/text/scalc/01/statistics_correlation \
diff --git a/source/auxiliary/scalc.tree b/source/auxiliary/scalc.tree
index a82517b..8aeeaac 100644
--- a/source/auxiliary/scalc.tree
+++ b/source/auxiliary/scalc.tree
@@ -190,6 +190,7 @@
<topic id="scalc/text/scalc/guide/auto_off.xhp">Deactivating Automatic Changes</topic>
<topic id="scalc/text/scalc/guide/consolidate.xhp">Consolidating Data</topic>
<topic id="scalc/text/scalc/guide/goalseek.xhp">Applying Goal Seek</topic>
+<topic id="scalc/text/scalc/01/solver.xhp">Using Linear and Non-Linear Solvers</topic>
<topic id="scalc/text/scalc/guide/multioperation.xhp">Applying Multiple Operations</topic>
<topic id="scalc/text/scalc/guide/multitables.xhp">Applying Multiple Sheets</topic>
<topic id="scalc/text/scalc/guide/validity.xhp">Validity of Cell Contents</topic>
diff --git a/source/text/scalc/01/solver.xhp b/source/text/scalc/01/solver.xhp
index 956f212..188b05f 100644
--- a/source/text/scalc/01/solver.xhp
+++ b/source/text/scalc/01/solver.xhp
@@ -27,54 +27,70 @@
<body>
-
<section id="solverhead">
<bookmark xml-lang="en-US" branch="index" id="bm_id7654652">
<bookmark_value>goal seeking;solver</bookmark_value>
<bookmark_value>what if operations;solver</bookmark_value>
<bookmark_value>back-solving</bookmark_value>
<bookmark_value>solver</bookmark_value>
+ <bookmark_value>mathematical programming;solver for Calc</bookmark_value>
+ <bookmark_value>mathematical optimization;solver for Calc</bookmark_value>
+ <bookmark_value>operations research;solver for Calc</bookmark_value>
</bookmark>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/SolverDialog" id="bm_id5634023" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/@@nowidget@@" id="bm_id5634023" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/.uno:SolverDialog" id="bm_id5634022" localize="false"/>
-<paragraph id="hd_id9216284" role="heading" level="1" xml-lang="en-US"><variable id="solver"><link href="text/scalc/01/solver.xhp">Solver</link></variable></paragraph>
-<paragraph id="par_id9210486" role="paragraph" xml-lang="en-US"><ahelp hid=".">Opens the Solver dialog. A solver allows you to solve equations with multiple unknown variables by goal-seeking methods.</ahelp></paragraph>
+<h1 id="hd_id9216284"><variable id="solver"><link href="text/scalc/01/solver.xhp">Solver</link></variable></h1>
+<paragraph id="par_id9210486" role="paragraph" xml-lang="en-US"><ahelp hid=".">Opens the Solver dialog. A solver allows you to solve mathematical problems with multiple unknown variables and a set of constraints on the variables by goal-seeking methods.</ahelp></paragraph>
</section>
<section id="howtoget">
<embed href="text/scalc/00/00000406.xhp#solver"/>
-</section><comment>target cell</comment>
+</section>
+<comment>target cell</comment>
+<h2 id="hd_id21589912365601">Solver settings</h2>
+
+<note id="par_id501589912905479">The dialog settings are retained until you close the current document.</note>
+
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/targetedit" id="bm_id8861964" localize="false"/>
-<paragraph id="par_id8538773" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Enter or click the cell reference of the target cell. This field takes the address of the cell whose value is to be optimized.</ahelp></paragraph><comment>maximum</comment>
+<h3 id="hd_id121589913023217">Target Cell</h3>
+<paragraph id="par_id8538773" role="paragraph" xml-lang="en-US"><ahelp hid=".">Enter or click the cell reference of the target cell. This field takes the address of the cell whose value is to be optimized.</ahelp></paragraph>
+
+<h3 id="hd_id441589913036601">Optimize results to</h3>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/max" id="bm_id8373973" localize="false"/>
-<paragraph id="par_id7564012" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Try to solve the equation for a maximum value of the target cell.</ahelp><comment>where is the equation?</comment></paragraph><comment>minimum</comment>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/min" id="bm_id6767174" localize="false"/>
-<paragraph id="par_id1186254" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Try to solve the equation for a minimum value of the target cell.</ahelp></paragraph><comment>value of</comment>
-<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/value" id="bm_id5222022" localize="false"/>
-<paragraph id="par_id7432477" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Try to solve the equation to approach a given value of the target cell.</ahelp></paragraph><comment>value of text field</comment>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/valueedit" id="bm_id2756126" localize="false"/>
-<paragraph id="par_id7141026" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Enter the value or a cell reference.</ahelp></paragraph><comment>by changing cells</comment>
+<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/value" id="bm_id5222022" localize="false"/>
+<list type="unordered">
+ <listitem>
+ <paragraph id="par_id7564012" role="listitem" xml-lang="en-US"><ahelp hid="."><emph>Maximum:</emph> Try to solve the equation for a maximum value of the target cell.</ahelp></paragraph>
+ </listitem>
+ <listitem>
+ <paragraph id="par_id1186254" role="listitem" xml-lang="en-US"><ahelp hid="."><emph>Minimum:</emph> Try to solve the equation for a minimum value of the target cell.</ahelp></paragraph>
+ </listitem>
+ <listitem>
+ <paragraph id="par_id7432477" role="listitem" xml-lang="en-US"><ahelp hid="."><emph>Value of:</emph> Try to solve the equation to approach a given value of the target cell.</ahelp></paragraph>
+ <paragraph id="par_id7141026" role="listitem" xml-lang="en-US"><ahelp hid=".">Enter the value or a cell reference in the text field.</ahelp></paragraph>
+ </listitem>
+</list>
+
+<h3 id="hd_id761589914010085">By Changing Cells</h3>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/changeedit" id="bm_id4908902" localize="false"/>
-<paragraph id="par_id8531449" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Enter the cell range that can be changed.</ahelp></paragraph><comment>cell reference</comment>
+<paragraph id="par_id8531449" role="paragraph" xml-lang="en-US"><ahelp hid=".">Enter the cell range that can be changed.</ahelp> These are the variables of the equations.</paragraph>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/ref1edit" id="bm_id8499099" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/ref2edit" id="bm_id9544663" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/ref3edit" id="bm_id5762199" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/ref4edit" id="bm_id9534287" localize="false"/>
-<paragraph id="par_id9183935" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Enter a cell reference.</ahelp></paragraph><comment>operators</comment>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/op1list" id="bm_id9408551" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/op2list" id="bm_id1329386" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/op3list" id="bm_id4931180" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/op4list" id="bm_id5970030" localize="false"/>
-<paragraph id="par_id946684" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Select an operator from the list.</ahelp><comment>what do these operators do? what is the meaning of Integer and Binary here?
-I hate such spec docs that leave so many questions</comment></paragraph><comment>value</comment>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/var1edit" id="bm_id496841" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/var2edit" id="bm_id7440717" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/var3edit" id="bm_id2470778" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/var4edit" id="bm_id3389080" localize="false"/>
-<paragraph id="par_id9607226" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Enter a value or a cell reference.</ahelp></paragraph><comment>shrinker</comment>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/targetbutton" id="bm_id5104220" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/valuebutton" id="bm_id6714" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/changebutton" id="bm_id8507339" localize="false"/>
@@ -86,22 +102,52 @@ I hate such spec docs that leave so many questions</comment></paragraph><comment
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/var2button" id="bm_id6998809" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/var3button" id="bm_id71413" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/var4button" id="bm_id2924283" localize="false"/>
-<paragraph id="par_id1939451" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Click to shrink or restore the dialog. You can click or select cells in the sheet. You can enter a cell reference manually in the input box.</ahelp></paragraph><comment>delete row</comment>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/del1" id="bm_id5781731" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/del2" id="bm_id6942045" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/del3" id="bm_id4721823" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/del4" id="bm_id5806756" localize="false"/>
-<paragraph id="par_id9038972" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Click to remove the row from the list. Any rows from below this row move up.</ahelp></paragraph><comment>options button</comment>
+
+<h3 id="hd_id671589914927836">Limiting Conditions</h3>
+<paragraph role="paragraph" id="par_id421589915278885">Add the set of constraints for the mathematical problem. Each constraint is represented by a cell reference (a variable), an operator, and a value.</paragraph>
+<list type="unordered">
+ <listitem>
+ <paragraph id="par_id9183935" role="listitem" xml-lang="en-US"><ahelp hid="."><emph>Cell reference:</emph> Enter a cell reference of the variable.</ahelp></paragraph>
+ <paragraph id="par_id1939451" role="listitem" xml-lang="en-US"><ahelp hid=".">Click the Shrink button to shrink or restore the dialog. You can click or select cells in the sheet. You can enter a cell reference manually in the input box.</ahelp></paragraph>
+ </listitem>
+ <listitem>
+ <paragraph id="par_id946684" role="listitem" xml-lang="en-US"><ahelp hid="."><emph>Operator:</emph> Select an operator from the list.</ahelp> Use Binary operator to restrict your variable to 0 or 1. Use the Integer operator to restrict your variable to take only integer values (no decimal part).</paragraph>
+ </listitem>
+ <listitem>
+ <paragraph id="par_id9607226" role="listitem" xml-lang="en-US"><ahelp hid="." ><emph>Value:</emph> Enter a value or a cell reference.</ahelp> This field is ignored when the operator is Binary or Integer.</paragraph>
+ </listitem>
+ <listitem>
+ <paragraph id="par_id9038972" role="paragraph" xml-lang="en-US"><ahelp hid="."><emph>Remove button:</emph> Click to remove the row from the list. Any rows from below this row move up.</ahelp></paragraph>
+ </listitem>
+</list>
+<note id="par_id511589916338595">You can set multiple conditions for a variable. For example, a variable in cell A1 that must be an integer less than 10. In that case, set two limiting conditions for A1.</note>
+
+<h3 id="hd_id441589917031236">Options</h3>
+
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/options" id="bm_id8915372" localize="false"/>
-<paragraph id="par_id2423780" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Opens the Options dialog.</ahelp></paragraph><comment>solve button</comment>
+<paragraph id="par_id2423780" role="paragraph" xml-lang="en-US"><ahelp hid=".">Opens the <link href="text/scalc/01/solver_options.xhp#solveroptionsh1" name="solveroptions">Solver Options</link> dialog.</ahelp></paragraph>
+<paragraph role="paragraph" id="par_id221589917833431">The <emph>Solver Options</emph> dialog let you select the different solver algorithms for either linear and non-linear problems and set their solving parameters.</paragraph>
+<h3 id="hd_id771589917064147">Solve</h3>
+<comment>solve button</comment>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solverdlg/solve" id="bm_id6070436" localize="false"/>
-<paragraph id="par_id2569658" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Click to solve the equation with the current settings. The dialog settings are retained until you close the current document.</ahelp></paragraph>
+<paragraph id="par_id2569658" role="paragraph" xml-lang="en-US"><ahelp hid=".">Click to solve the problem with the current settings. The dialog settings are retained until you close the current document.</ahelp></paragraph>
-<paragraph id="par_id5474410" role="heading" level="2" xml-lang="en-US">To solve equations with the solver</paragraph>
+<h2 id="par_id5474410">To solve equations with the solver</h2>
<paragraph id="par_id2216559" role="paragraph" xml-lang="en-US">The goal of the solver process is to find those variable values of an equation that result in an optimized value in the <emph>target cell</emph>, also named the "objective". You can choose whether the value in the target cell should be a maximum, a minimum, or approaching a given value.</paragraph>
<paragraph id="par_id7869502" role="paragraph" xml-lang="en-US">The initial variable values are inserted in a rectangular cell range that you enter in the <emph>By changing cells</emph> box.</paragraph>
<paragraph id="par_id9852900" role="paragraph" xml-lang="en-US">You can define a series of limiting conditions that set constraints for some cells. For example, you can set the constraint that one of the variables or cells must not be bigger than another variable, or not bigger than a given value. You can also define the constraint that one or more variables must be integers (values without decimals), or binary values (where only 0 and 1 are allowed).</paragraph>
-<paragraph id="par_id5323953" role="note" xml-lang="en-US">The default solver engine supports only linear equations.</paragraph><comment>Add an example. A good one is at http://www.solver.com/stepbystep.htm but that is not OpenSource</comment>
+<h2 id="hd_id0603200910430882">Using Non-Linear solvers</h2>
+<paragraph xml-lang="en-US" id="par_id0603200910430845" role="paragraph">Regardless whether you use DEPS or SCO, you start by going to <menuitem>Tools - Solver</menuitem> and set the Cell to be optimized, the direction to go (minimization, maximization) and the cells to be modified to reach the goal. Then you go to the Options and specify the solver to be used and if necessary adjust the according <link href="text/scalc/01/solver_options.xhp">parameters</link>.</paragraph>
+<paragraph xml-lang="en-US" id="par_id0603200910430821" role="paragraph">There is also a list of constraints you can use to restrict the possible range of solutions or to penalize certain conditions. However, in case of the evolutionary solvers DEPS and SCO, these constraints are also used to specify bounds on the variables of the problem. Due to the random nature of the algorithms, it is <emph>highly recommended</emph> to do so and give upper (and in case "Assume Non-Negative Variables" is turned off also lower) bounds for all variables. They don't have to be near the actual solution (which is probably unknown) but should give a rough indication of the expected size (0 ≤ var ≤ 1 or maybe -1000000 ≤ var ≤ 1000000).</paragraph>
+<paragraph xml-lang="en-US" id="par_id0603200910430873" role="paragraph">Bounds are specified by selecting one or more variables (as range) on the left side and entering a numerical value (not a cell or a formula) on the right side. That way you can also choose one or more variables to be <emph>Integer</emph> or <emph>Binary</emph> only.</paragraph>
+<section id="relatedtopics">
+ <embed href="text/scalc/01/solver_options.xhp#solveroptionsh1"/>
+ <embed href="text/scalc/01/solver_options_algo.xhp#SolverAlgorithmsOptionsh1"/>
+ <paragraph role="paragraph" id="par_id271589981559367"><link href="https://wiki.documentfoundation.org/" name="wikipage">Wiki page on solvers and theirs algorithms</link></paragraph>
+</section>
</body>
-
</helpdocument>
diff --git a/source/text/scalc/01/solver_options.xhp b/source/text/scalc/01/solver_options.xhp
index d77b385..e4e2291 100644
--- a/source/text/scalc/01/solver_options.xhp
+++ b/source/text/scalc/01/solver_options.xhp
@@ -20,7 +20,7 @@
<meta>
<topic id="textscalc01solver_optionsxml" indexer="include" status="PUBLISH">
- <title id="tit" xml-lang="en-US">Options</title>
+ <title id="tit" xml-lang="en-US">Solver Options</title>
<filename>/text/scalc/01/solver_options.xhp</filename>
</topic>
</meta>
@@ -29,29 +29,52 @@
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solveroptionsdialog/SolverOptionsDialog" id="bm_id7214271" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solveroptionsdialog/@@nowidget@@" id="bm_id7214271" localize="false"/>
+<bookmark xml-lang="en-US" branch="index" id="bm_id291590166034871">
+ <bookmark_value>solver for Calc;options</bookmark_value>
+</bookmark>
+<h1 id="hd_id2794274"><variable id="solveroptionsh1"><link href="text/scalc/01/solver_options.xhp" name="Solver Options">Solver Options</link></variable></h1>
-<paragraph id="hd_id2794274" role="heading" level="1" xml-lang="en-US">Options</paragraph>
-<paragraph id="par_id6776940" role="paragraph" xml-lang="en-US">The Options dialog for the <link href="text/scalc/01/solver.xhp">Solver</link> is used to set some options.</paragraph>
+<paragraph id="par_id3163853" role="paragraph" xml-lang="en-US">Use the Options dialog to configure the solver engine.</paragraph>
<section id="howtoget">
<embed href="text/scalc/00/00000406.xhp#solver_options"/>
-</section><comment>solver engine</comment>
+</section>
+
+<paragraph id="par_id9999694" role="paragraph" xml-lang="en-US">Click OK to accept the changes and to go back to the <link href="text/scalc/01/solver.xhp">Solver</link> dialog.</paragraph>
+<h2 id="hd_id581589922716672">Solver engine</h2>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solveroptionsdialog/engine" id="bm_id7214270" localize="false"/>
-<paragraph id="par_id393993" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Select a solver engine. The listbox is disabled if only one solver engine is installed. Solver engines can be installed as extensions.</ahelp></paragraph><comment>settings</comment>
+<paragraph id="par_id393993" role="paragraph" xml-lang="en-US"><ahelp hid=".">Select a solver engine. The listbox is disabled if only one solver engine is installed.</ahelp></paragraph>
+<note id="par_id221589959855748">You can install more solver engines as extensions, if available. Open <menuitem>Tools - Extension Manager</menuitem> and browse to the Extensions web site to search for extensions.</note>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solveroptionsdialog/settings" id="bm_id1331217" localize="false"/>
-<paragraph id="par_id5871761" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Configure the current solver.</ahelp></paragraph><comment>edit</comment>
+<h2 id="hd_id711589922750833">Settings</h2>
+<paragraph id="par_id130619" role="paragraph" xml-lang="en-US">Configure the current solver. In the Settings box, check all settings that you want to use for the current goal seeking operation. If the current option offers different values, the Edit button is enabled. Click <emph>Edit</emph> to open a dialog where you can change the value.</paragraph>
+<list type="unordered">
+ <listitem>
+ <paragraph id="par_id651589925044267" role="listitem" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#DEPSEvolutionaryalgorithmh2"/></paragraph>
+ </listitem>
+ <listitem>
+ <paragraph id="par_id391589925078747" role="listitem" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#SCOEvolutionaryAlgorithmh2"/></paragraph>
+ </listitem>
+ <listitem>
+ <paragraph id="par_id671589925148891" role="listitem" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#LinearSolverh2"/></paragraph>
+ </listitem>
+ <listitem>
+ <paragraph id="par_id711589925192067" role="listitem" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#SwarmNonLinearSolverh2"/></paragraph>
+ </listitem>
+</list>
+<h2 id="hd_id481589922813764">Edit</h2>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/solveroptionsdialog/edit" id="bm_id2186346" localize="false"/>
-<paragraph id="par_id6531266" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">If the current entry in the Settings listbox allows you to edit a value, you can click the Edit button. A dialog opens where you can change the value.</ahelp></paragraph><comment>edit settings spin box</comment>
+<paragraph id="par_id6531266" role="paragraph" xml-lang="en-US"><ahelp hid=".">If the current entry in the Settings listbox allows you to edit a value, you can click the Edit button. A dialog opens where you can change the value.</ahelp></paragraph>
+<h2 id="hd_id331589923158248">Edit settings spin box</h2>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/doubledialog/DoubleDialog" id="bm_id2761315" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/doubledialog/@@nowidget@@" id="bm_id2761315" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/integerdialog/IntegerDialog" id="bm_id2761314" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/modules/scalc/ui/integerdialog/@@nowidget@@" id="bm_id2761314" localize="false"/>
-<paragraph id="par_id3912778" role="paragraph" xml-lang="en-US"><ahelp hid="." visibility="hidden">Enter or change the value.</ahelp></paragraph>
-<paragraph id="par_id3163853" role="paragraph" xml-lang="en-US">Use the Options dialog to configure the current solver engine.</paragraph>
-<paragraph id="par_id121158" role="paragraph" xml-lang="en-US">You can install more solver engines as extensions, if available. Open Tools - Extension Manager and browse to the Extensions web site to search for extensions.</paragraph>
-<paragraph id="par_id3806878" role="paragraph" xml-lang="en-US">Select the solver engine to use and to configure from the listbox. The listbox is disabled if only one solver engine is installed.</paragraph>
-<paragraph id="par_id130619" role="paragraph" xml-lang="en-US">In the Settings box, check all settings that you want to use for the current goal seeking operation. If the current option offers different values, the Edit button is enabled. Click Edit to open a dialog where you can change the value.</paragraph>
-<paragraph id="par_id9999694" role="paragraph" xml-lang="en-US">Click OK to accept the changes and to go back to the <link href="text/scalc/01/solver.xhp">Solver</link> dialog.</paragraph>
+<paragraph id="par_id3912778" role="paragraph" xml-lang="en-US"><ahelp hid=".">Enter or change the value of the selected setting.</ahelp></paragraph>
+<section id="relatedtopics">
+ <embed href="text/scalc/01/solver.xhp#solver"/>
+ <embed href="text/scalc/01/solver_options_algo.xhp#SolverAlgorithmsOptionsh1"/>
+ <paragraph role="paragraph" id="par_id271589981559367"><link href="https://wiki.documentfoundation.org/NLPSolver" name="wikipage">Wiki page on non-linear solvers and theirs algorithms</link></paragraph>
+</section>
</body>
-
</helpdocument>
diff --git a/source/text/scalc/01/solver_options_algo.xhp b/source/text/scalc/01/solver_options_algo.xhp
new file mode 100644
index 0000000..4862122
--- /dev/null
+++ b/source/text/scalc/01/solver_options_algo.xhp
@@ -0,0 +1,386 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<helpdocument version="1.0">
+
+ <!--
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed
+ * with this work for additional information regarding copyright
+ * ownership. The ASF licenses this file to you under the Apache
+ * License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of
+ * the License at http://www.apache.org/licenses/LICENSE-2.0 .
+ -->
+
+ <meta>
+ <topic id="nlpsolveroptions" indexer="include">
+ <title xml-lang="en-US" id="tit">Options</title>
+ <filename>/text/scalc/01/solver_options_algo.xhp</filename>
+ </topic>
+ </meta>
+ <body>
+ <bookmark xml-lang="en-US" branch="index" id="bm_id0503200917110375_scalc">
+ <bookmark_value>Solver for Nonlinear Problems;Options</bookmark_value>
+ <bookmark_value>solver for Calc; DEPS evolutionary algorithm</bookmark_value>
+ <bookmark_value>solver for Calc; SCO evolutionary algorithm</bookmark_value>
+ <bookmark_value>solver for Calc; linear solver</bookmark_value>
+ <bookmark_value>solver for Calc; CoinMP linear solver</bookmark_value>
+ <bookmark_value>solver for Calc; swarm non-linear solver</bookmark_value>
+ </bookmark>
+
+ <h1 id="hd_id0503200917103593"><variable id="SolverAlgorithmsOptionsh1"><link href="text/scalc/01/solver_options_algo.xhp#SolverAlgorithmsOptionsh1" name="Solver Algorithms Options">Solver Algorithms Options</link></variable></h1>
+
+ <h2 id="par_id651589925044267"><variable id="DEPSEvolutionaryalgorithmh2"><link href="text/scalc/01/solver_options_algo.xhp#DEPSEvolutionaryalgorithmh2" name="DEPS Evolutionary algorithm">DEPS Evolutionary Algorithm</link></variable></h2>
+ <paragraph role="paragraph" id="par_id931590164412542">DEPS consists of two independent algorithms: Differential Evolution and Particle Swarm Optimization. Both are especially suited for numerical problems, such as nonlinear optimization, and are complementary to each other in that they even out their others shortcomings. </paragraph>
+ <table id="id=tab_id971589978166858">
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id91559962440066" role="tablehead" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#settingshead"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id111584962440067" role="tablehead" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#descriptionhead"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0603200910394232" role="tablecontent" >Agent Switch Rate</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0603200910394248" role="tablecontent" >Specifies the probability for an individual to choose the Differential Evolution strategy.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id481559963120045" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#noneghead" markup="ignore"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id301589063120047" role="tablecontent" xml-lang="en-US" localize="false" ><embedvar href="text/scalc/01/solver_options_algo.xhp#nonegdesc" markup="ignore"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0603200910394277" role="tablecontent" >DE: Crossover Probability</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0603200910394280" role="tablecontent" >Defines the probability of the individual being combined with the globally best point. If crossover is not used, the point is assembled from the own memory of the individual.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0643200910394216" role="tablecontent" >DE: Scaling Factor</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id360320091039424" role="tablecontent" >During crossover, the scaling factor decides about the “speed” of movement.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0507200917103771" role="tablecontent" >Learning Cycles</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503210917103720" role="tablecontent" >Defines the number of iterations, the algorithm should take. In each iteration, all individuals make a guess on the best solution and share their knowledge.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id3603200910394222" role="tablecontent" >PS: Cognitive Constant</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id3603200915394212" role="tablecontent" >Sets the importance of the own memory (in particular the best reached point so far).</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id060324091037421" role="tablecontent" >PS: Constriction Coefficient</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0608200910394225" role="tablecontent" >Defines the speed at which the particles/individuals move towards each other.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id060320091039425" role="tablecontent" >PS: Mutation Probability</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0603200910394272" role="tablecontent" >Defines the probability, that instead of moving a component of the particle towards the best point, it randomly chooses a new value from the valid range for that variable.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0603200910394292" role="tablecontent" >PS: Social Constant</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0603200910394284" role="tablecontent" >Sets the importance of the global best point between all particles/individuals.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200217103891" role="tablecontent" ><variable id="enhstatusheader">Show Enhanced Solver Status</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0523200917103832" role="tablecontent" ><variable id="enhstatusdesc">If <emph>enabled</emph>, an additional dialog is shown during the solving process which gives information about the current progress, the level of stagnation, the currently best known solution as well as the possibility, to stop or resume the solver.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200417103780" role="tablecontent" ><variable id="swarmheader">Size of Swarm</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503100917103723" role="tablecontent" ><variable id="swarmdesc">Defines the number of individuals to participate in the learning process. Each individual finds its own solutions and contributes to the overall knowledge.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0504200917103794" role="tablecontent" ><variable id="stagnationheader">Stagnation Limit</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id050320091710377" role="tablecontent" ><variable id="stagnationdesc">If this number of individuals found solutions within a close range, the iteration is stopped and the best of these values is chosen as optimal.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103762" role="tablecontent" ><variable id="stagtolheader">Stagnation Tolerance</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103834" role="tablecontent" ><variable id="stagtoldesc">Defines in what range solutions are considered “similar”.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103740" role="tablecontent" ><variable id="acrheader">Use ACR Comparator</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <section id="acrdesc">
+ <paragraph xml-lang="en-US" id="par_id0503200917103766" role="tablecontent" >If <emph>disabled</emph> (default), the BCH Comparator is used. It compares two individuals by first looking at their constraint violations and only if those are equal, it measures their current solution.</paragraph>
+ <paragraph xml-lang="en-US" id="par_id0503200917103744" role="tablecontent" >If <emph>enabled</emph>, the ACR Comparator is used. It compares two individuals dependent on the current iteration and measures their goodness with knowledge about the libraries worst known solutions (in regard to their constraint violations).</paragraph>
+ </section>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103792" role="tablecontent" >Use Random Starting Point</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103790" role="tablecontent" >If <emph>enabled</emph>, the library is simply filled up with randomly chosen points.</paragraph>
+ <paragraph xml-lang="en-US" id="par_id0503200917103765" role="tablecontent" >If <emph>disabled</emph>, the currently present values (as given by the user) are inserted in the library as reference point.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103732" role="tablecontent" ><variable id="variableguessheader">Variable Bounds Guessing</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id050320091710378" role="tablecontent" ><variable id="variableguessdesc">If enabled (default), the algorithm tries to find variable bounds by looking at the starting values.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103794" role="tablecontent" ><variable id="variablethresheader">Variable Bounds Threshold</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103710" role="tablecontent" ><variable id="variablethresdesc">When guessing variable bounds, this threshold specifies, how the initial values are shifted to build the bounds. For an example how these values are calculated, please refer to the Manual in the Wiki.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ </table>
+
+ <h2 id="par_id391589925078747"><variable id="SCOEvolutionaryAlgorithmh2"><link href="text/scalc/01/solver_options_algo.xhp#SCOEvolutionaryAlgorithmh2" name="SCO Evolutionary Algorithm">SCO Evolutionary Algorithm</link></variable></h2>
+ <paragraph role="paragraph" id="par_id681590165847694">Social Cognitive Optimization takes into account the human behavior of learning and sharing information. Each individual has access to a common library with knowledge shared between all individuals. </paragraph>
+ <table id="tab_id911589978200895">
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id41589962440066" role="tablehead" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#settingshead"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id11158996249067" role="tablehead" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#descriptionhead"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id481552963120045" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#noneghead" markup="ignore"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id341589063120047" role="tablecontent" xml-lang="en-US" localize="false" ><embedvar href="text/scalc/01/solver_options_algo.xhp#nonegdesc" markup="ignore"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103771" role="tablecontent" >Learning Cycles</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0503200917103720" role="tablecontent" >Defines the number of iterations, the algorithm should take. In each iteration, all individuals make a guess on the best solution and share their knowledge.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id961589978701649" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#enhstatusheader"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id591589978701651" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#enhstatusdesc"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id0603200910401382" role="tablecontent">Size of Library</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph xml-lang="en-US" id="par_id060320091040136" role="tablecontent"> Defines the amount of information to store in the public library. Each individual stores knowledge there and asks for information.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id201589979438102" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#swarmheader"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id51589979438103" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#swarmdesc"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id21589979541011" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#stagnationheader"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id381589979541012" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#stagnationdesc"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id371589979941538" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#stagtolheader"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id991589979941539" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#stagtoldesc"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id921589980257791" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#acrheader"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <embed href="text/scalc/01/solver_options_algo.xhp#acrdesc"/>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id941589980611077" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#variableguessheader"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id561589980611078" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#variableguessdesc"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id741589980722689" role="tablecontent" xml-lang="en-US" ><embedvar href="text/scalc/01/solver_options_algo.xhp#variablethresheader"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id901589980722691" role="tablecontent" xml-lang="en-US" ><embedvar href="text/scalc/01/solver_options_algo.xhp#variablethresdesc"/></paragraph>
+ </tablecell>
+ </tablerow>
+ </table>
+ <h2 id="par_id671589925148891"><variable id="LinearSolverh2"><link href="text/scalc/01/solver_options_algo.xhp#LinearSolverh2" name="%PRODUCTNAME Linear Solver">%PRODUCTNAME Linear Solver and CoinMP Linear solver</link></variable></h2>
+ <table id="tab_id251589925837980">
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id731589925837981" role="tablehead" xml-lang="en-US"><variable id="settingshead">Setting</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id611589925837982" role="tablehead" xml-lang="en-US"><variable id="descriptionhead">Description</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id511589925837984" role="paragraph" xml-lang="en-US"><variable id="integerhead">Assume variables as integers</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id11589925837985" role="paragraph" xml-lang="en-US"><variable id="integerdesc">Mark to force variables to be integers only.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id221589961756407" role="tablecontent" xml-lang="en-US" ><variable id="noneghead">Assume variables as non negative</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id861589961756408" role="tablecontent" xml-lang="en-US" ><variable id="nonegdesc">Mark to force variables to be positive only.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id971589961907787" role="tablecontent" xml-lang="en-US" >Epsilon level</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id421589961907788" role="tablecontent" xml-lang="en-US" >Epsilon level. Valid values are in range 0 (very tight) to 3 (very loose). Epsilon is the tolerance for rounding values to zero.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id71589961998523" role="tablecontent" xml-lang="en-US" >Limit branch-and-bound depth</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id331589961998525" role="tablecontent" xml-lang="en-US" > Specifies the maximum branch-and-bound depth. A positive value means that the depth is absolute. A negative value means a relative branch-and-bound depth limit.</paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id91589962070327" role="tablecontent" xml-lang="en-US" ><variable id="timelimithead">Solver time limit</variable></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id331589962070329" role="tablecontent" xml-lang="en-US" ><variable id="timelimitdesc">Sets the maximum time for the algorithm to converge to a solution.</variable></paragraph>
+ </tablecell>
+ </tablerow>
+ </table>
+ <h2 id="par_id711589925192067"><variable id="SwarmNonLinearSolverh2"><link href="text/scalc/01/solver_options_algo.xhp#SwarmNonLinearSolverh2" name="%PRODUCTNAME Swarm Non-Linear Solver (Experimental)">%PRODUCTNAME Swarm Non-Linear Solver (Experimental)</link></variable></h2>
+ <table id="tab_id471589962440065">
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id91589962440066" role="tablehead" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#settingshead"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id111589962440067" role="tablehead" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#descriptionhead"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id581589962440069" role="paragraph" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#integerhead" markup="ignore"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id161589962440070" role="paragraph" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#integerdesc" markup="ignore"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id481589963120045" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#noneghead" markup="ignore"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id301589963120047" role="tablecontent" xml-lang="en-US" localize="false" ><embedvar href="text/scalc/01/solver_options_algo.xhp#nonegdesc" markup="ignore"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id101589963304145" role="tablecontent" xml-lang="en-US" localize="false" ><embedvar href="text/scalc/01/solver_options_algo.xhp#timelimithead" markup="ignore"/></paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id461589963304146" role="tablecontent" xml-lang="en-US" localize="false"><embedvar href="text/scalc/01/solver_options_algo.xhp#timelimitdesc" markup="ignore"/></paragraph>
+ </tablecell>
+ </tablerow>
+ <tablerow>
+ <tablecell>
+ <paragraph id="par_id971589963431459" role="tablecontent" xml-lang="en-US" >Swarm algorithm</paragraph>
+ </tablecell>
+ <tablecell>
+ <paragraph id="par_id71589963431460" role="tablecontent" xml-lang="en-US" >Set the swarm algorithm. 0 for differential evolution and 1 for particle swarm optimization. Default is 0.</paragraph>
+ </tablecell>
+ </tablerow>
+ </table>
+ <section id="relatedtopics">
+ <embed href="text/scalc/01/solver_options.xhp#solveroptionsh1"/>
+ <embed href="text/scalc/01/solver.xhp#solver"/>
+ <paragraph role="paragraph" id="par_id271589981559367"><link href="https://wiki.documentfoundation.org/NLPSolver" name="wikipage">Wiki page on non-linear solvers and theirs algorithms</link></paragraph>
+ <paragraph role="paragraph" id="par_id211590163660314"><link href="http://lpsolve.sourceforge.net/">lp_solve reference guide in sourceforge.net</link></paragraph>
+ </section>
+</body>
+</helpdocument>