Changes in version 2.11-0 (2025-10-20) o 'Ritter' has been adapted to new file format and allows to pass parameters to 'download.file' o 'trackingPortfolio' keeps column names of the input data o new function 'PBO', for computing probability of backtest overfitting, as descrived in Bailey et al. (2017; https://doi.org/10.21314/JCF.2016.322 ) Changes in version 2.10-2 o French: support more datasets; see https://quant.stackexchange.com/a/81590 Changes in version 2.10-1 (2024-11-03) o an example was removed from the manual page of 'NS' Changes in version 2.10-0 (2024-10-20) o fix bug in bracketing introduced in version 2.9-0 o 'French' supports more datasets: "F-F_Research_Data_5_Factors_2x3_daily_CSV.zip", and "market" with frequency "monthly" o 'French' gains an argument "return.class": supported are "data.frame" (the current behaviour) and "zoo", which can easily be transformed to "xts" o 'Shiller' tries to fetch data from new URL at https://shillerdata.com/ Changes in version 2.9-0 o new function 'approxBondReturn', for approximating the total return of a (par) bond through its current yield, duration and convexity, as described in Swinkels (2019; https://doi.org/10.3390/data4030091 ) o 'bracketing' better handles cases when 'fun' evaluates to exactly zero, matching the MATLAB implementation in the NMOF book Changes in version 2.8-0 (2023-10-20) o 'callHestoncf' gains an argument 'uniroot.control', which allows passing settings for 'uniroot' (to compute implied vol), and 'uniroot.info'; both arguments work the same way as in functions 'vanillaOptionImpliedVol' and 'callCF' o 'trackingPortfolio' now has an argument 'ls.algo', for specifying settings for method 'ls' o new function 'minMAD' for computing minimum-MAD portfolios, as described in Konno and Yamazaki (1991; https://doi.org/10.1287/mnsc.37.5.519 ) o 'vanillaOptionEuropean' also provides "DvegaDspot" and "DvegaDvol" o 'Ritter' has been adapted to new file format o all functions that allow parallel programming now support argument 'affinity.list' o the package now depends on R >= 3.5 (which was released in 2018) o the manual has been updated: https://enricoschumann.net/NMOF.htm#NMOFmanual Changes in version 2.7-1 (2022-10-20) o various minor documentation updates o manual has been updated: https://enricoschumann.net/NMOF.htm#NMOFmanual o there is an additional public repository at https://git.sr.ht/~enricoschumann/NMOF Changes in version 2.7-0 (2022-08-19) o function 'gbm' gains an argument "antithetic": if TRUE, paths are created based on antithetic variates o functions 'gbm' and 'gbb' gain an argument 'exp.result', with default TRUE. If FALSE, the log paths are returned. Function 'gbb' gets an argument 'log', with default FALSE, which matches the previous behaviour o new function 'barrierOptionEuropean', for computing theoretical prices for various barrier-option types o function 'French' tries harder to evaluate to NULL when a download fails o function vanillaOptionAmerican now works for very small values for M (M <= 3) Changes in version 2.6-0 o function 'randomReturns' gains an argument "exact": if TRUE, the created matrix has the exact specified column means (up to numerical, but not sampling accuracy) o group constraints now work with only a single group (e.g. in functions 'minCVaR' or 'minvar') Changes in version 2.5-0 (2021-10-20) o new function 'Ritter', which downloads IPO data provided by Jay Ritter o 'gridSearch' now can handle arbitrary lists (before, only lists of numeric vectors were supported) o 'French': improve formatting of (some) datasets Changes in version 2.4-1 (2021-04-10) o the default value for option 'printBar' in all optimisation routines is now 'interactive()', so progress bars remain shown in interactive sessions, but are suppressed otherwise. (For the old behaviour, set 'printBar' to TRUE.) Changes in version 2.4-0 (2021-04-01) o fixed: 'minCVaR' no longer ignores minimum and maximum holding constraints; thanks to Peter Garnry for reporting on GitHub. Group constraints are supported, too. See https://github.com/enricoschumann/NMOF/issues/3 . o 'randomReturns': argument 'rho' may now be a correlation matrix o 'callHestoncf' gains a '...' argument, for passing settings to integrate o 'French' supports more datasets Changes in version 2.3-1 (2021-01-19) o 'minCVaR' gains an argument 'min.return' for specifying a minimum required return (and another argument 'm' for specifying expected returns) o 'Shiller' includes additional columns, such as bond returns Changes in version 2.2-0 o New function 'minCVaR' for computing minimum CVaR portfolios, as described in Rockafellar/Uryasev (2000; http://doi.org/10.21314/JOR.2000.038 ). For details on implementation, see https://enricoschumann.net/notes/minimising-conditional-var.html o New function 'trackingPortfolio'. For details, see https://enricoschumann.net/notes/return-based-tracking-portfolios.html o New vignette 'Functions for portfolio selection'. o 'TAopt' gains a new option 'drop0' (to be passed via 'algo): if TRUE, zero values are dropped from the sample of objective-function values during the computation of the threshold sequence. See https://stackoverflow.com/a/63429510 . o 'French' supports more datasets. For industry portfolios, the function now also provides "Sum of BE/Sum of ME". The data are attached as an attribute "sumBE.sumME". All data-frames attached as attributes now have the timestamps as rownames. o The setting-up of constraints matrices in portfolio-selection functions such as 'minvar' is now fixed; thanks to 'clcsar' for reporting on GitHub. Also, the functions now allow group labels for specifying constraints. See https://github.com/enricoschumann/NMOF/issues/2 . Changes in version 2.1-0 (2020-04-06) o 'Shiller': adapt function to new file format o 'French'/'Shiller': if download fails, the functions now return NULL (invisibly). Also, 'French' supports additional datasets. o 'minvar', 'mvFrontier', 'mvPortfolio': the functions gain arguments 'groups', 'groups.wmin' and 'groups.wmax', which allow to specify group constraints o 'mvPortfolio': new argument 'lambda' for specifying a risk--reward trade-off Changes in version 2.0-1 (2019-10-20) o The package now includes the code examples from the second edition of 'Numerical Methods and Optimization in Finance". 'showExample' has been updated as well: it gains an argument 'edition', which defaults to 2. Also, the default for 'ignore.case' was changed to TRUE. (To get back the old behaviour of the function, set 'edition' to 1 and 'ignore.case' to FALSE.) o 'French' supports more datasets, e.g. for momentum. Invoking 'French()' lists the supported files. Also supported are datasets "market" and "rf", which provide the market return and the (so-called) risk-free rate. o 'resampleC': 'cormat' can be a single number (the correlation), which is then expanded into a correlation matrix (this has worked before, but only for the case of two series) o new functions 'greedySearch' and 'randomReturns' o 'DEopt' and 'PSopt' gain a 'drop' option. If FALSE, the dimension attribute of a solution is kept when the population is evaluated via a loop, i.e. functions receive a one-column matrix. Note that the defaults differ for both functions, so as to keep both functions' behaviour unchanged. o a tutorial on optimisation heuristics is available at https://ssrn.com/abstract=3391756 o a tutorial on backtesting, which makes much use of the NMOF package, is available at https://ssrn.com/abstract=3374195 o various documentation updates; new features are now described at https://enricoschumann.net/notes/NMOF/ o manual has been updated: https://enricoschumann.net/NMOF.htm#NMOFmanual Changes in version 1.6-0 (2019-04-01) o 'French' supports more datasets; invoking 'French()' lists the supported files Changes in version 1.5-0 o new function 'mvPortfolio', for computing efficient frontiers, with or without cash o new function 'mvFrontier', for computing mean--variance efficient portfolios o new functions 'French' and 'Shiller', for downloading research datasets o 'TAopt' gains an option 'thresholds.only': if TRUE, 'TAopt' only computes the threshold sequence and then exits o optimisation functions 'LSopt', 'SAopt' and 'TAopt' gain an option 'nI' (total number of iterations) Changes in version 1.4-0 o new function 'convexity' Changes in version 1.3-0 o new vignette 'Solving the N-Queens Problem with Local Search' Changes in version 1.2-0 o new functions 'bundFuture' and 'bundFutureImpliedRate', for computing theoretical futures prices and implied repo rates, respectively Changes in version 1.1-0 o new function 'divRatio', for computing the diversification ratio Changes in version 1.0-0 o 'LSopt' gains an option 'OF.target', which lets the algorithm stop when a desired objective-function value is reached o 'minvar' allows Inf and -Inf as maximum/minimum weights; the function now also returns the portfolio's variance o 'resampleC': if only two series are passed, 'cormat' can be a single number (the correlation) o various small updates in documentation Changes in version 0.99-0 o new function 'CPPI': simulate a constant-proportion portfolio-insurance strategy o new function 'SAopt': optimisation with Simulated Annealing o new function 'minvar': compute minimum-variance portfolios o manual has been updated: https://enricoschumann.net/NMOF.htm#NMOFmanual Changes in version 0.40-0 (2016-10-20) o new function 'xtTickValue', which computes the tick value for of Australian government-bond futures Changes in version 0.39-0 o new function 'xtContractValue', for computing contract values of Australian government-bond futures Changes in version 0.38-0 o fixed: LSopt did not switch off 'printBar' in cases when 'printDetail > 1' o updates to documentation of LSopt/TAopt Changes in version 0.37-6 o fixed: 'gbb' failed when only a single path was to be computed Changes in version 0.37-5 o gbm: add fanplot example Changes in version 0.37-4 o fixed: 'DEopt' did not work for univariate optimisation models. (Thanks to Torsten von Bartenwerffer for reporting.) Changes in version 0.37-3 o TAopt: new option 'OF.target', which lets the algorithm stop when a desired objective-function value is reached Changes in version 0.37-2 o TA.info: the best solution ('xbest') is now also provided Changes in version 0.37-1 o new test function 'tfEggholder' Changes in version 0.37-0 o TAopt: experimental/rudimentary plot and print methods. The methods are invoked if 'algo$classify' is TRUE (default is FALSE in order to keep old behaviour) o there is now a public Git repository at https://github.com/enricoschumann/NMOF Changes in version 0.36-5 o repairMatrix: new argument 'eps', which specifies the replacement value for negative eigenvalues Changes in version 0.36-4 o bracketing: the resulting matrix's columns are named 'lower' and 'upper' Changes in version 0.36-3 o restartOpt: when 'cl' is specified and 'method' is identical to 'loop', the function will now issue a warning before changing method to 'snow' Changes in version 0.36-2 (2015-10-20) o functions from packages other than 'base' are now explicity imported: 'grDevices', 'graphics', 'stats', 'utils' Changes in version 0.36-1 o TAopt: more informative error message when objective function evaluates to NA during computation of thresholds Changes in version 0.36-0 o experimental: new function 'LS.info' for accessing information during optimisation run (eg, current iteration) Changes in version 0.35-1 o small correction in parameter description in 'callMerton' (suggested by Laurs Leth) Changes in version 0.35-0 o new function 'pm' for computing partial moments Changes in version 0.34-2 (2015-05-07) o fixed: 'DEopt' did not properly handle the 'minmaxConstr' option, which could result in solutions that violated the box constraints. (Thanks to David Ashear for reporting.) Changes in version 0.34-1 (2015-02-03) o no user-visible changes (see ChangeLog for non-visible changes) Changes in version 0.34-0 (2014-11-05) o Functions such as 'mclapply' from package 'parallel' are imported; 'parallel' is no longer attached when these functions are used (ie, the package is not added to the user's search path). [Please note that the CRAN version of NMOF has required R (>= 2.14) for some time now, and since that R-version package 'parallel' has been available anyway.] o report 'Distributed computations with the NMOF package' was updated Changes in version 0.33-0 o updates in documentation and vignettes Changes in version 0.32-1 o argument 'offset' in 'ytm' can be a vector (that worked before as well, but is now documented) o several small updates in documentation Changes in version 0.32-0 o new function 'colSubset' o experimental: new function 'TA.info' for accessing information during optimisation run (eg, current iteration) o rewrote example in 'Asset selection with Local Search' Changes in version 0.31-2 o various small updates in documentation and vignettes (e.g. links to mailing lists) Changes in version 0.31-1 o expanded vignette 'Overview of the NMOF package' Changes in version 0.31-0 o new function 'callMerton' for European calls under Merton's jump--diffusion model o new vignette 'Overview of the NMOF package' o smaller changes/updates in documentation Changes in version 0.30-0 o new function 'duration' Changes in version 0.29-2 o function 'ytm' has an argument 'offset' now; see ?ytm for examples Changes in version 0.29-1 o function 'ytm' is slightly faster now o small additions to documentation Changes in version 0.29-0 o added function 'drawdown' o Code examples in subdirectory 'NMOFex' (manual) updated. o small updates in documentation Changes in version 0.28-2 (2013-09-06) o vignettes are now all placed in vignettes, again [see NEWS entries v0.27-5 (2013-04-26) and v0.26-0 (2012-09-19)]; small changes in vignettes Changes in version 0.28-1 o 'snow' was removed from 'Suggested'. Whenever distribution of computations is done via method 'snow', package 'parallel' is now used. Note that this is currently experimental and little-tested; feedback is thus much appreciated. o in 'callHestoncf' and 'callCF', the upper integration limit is now 'Inf' (suggested by Wolfgang H\"ormann). This may make it easier to compare different numerical implementations (but accuracy with the old cutoff value was sufficient: numeric differences in prices are of the order of a few hundredths of one cent). Changes in version 0.28-0 (2013-06-10) o 'multicore' was removed from the 'Suggested' packages. (Package 'parallel' had already been used -- if possible -- since version 0.25-6; see the NEWS entry.) o the package now 'Depends' on R version >= 2.14 (because of 'parallel') o new functions 'gbm' and 'gbb' added (geometric Brownian motion/bridge) Changes in version 0.27-5 o since vignettes are built offline, the number of restarts was increased again; cf. NEWS entry for v0.26-0 (2012-09-19) o fixed a small error in help page for 'vanillaBond' o internal changes in option pricing functions; more tests added for dividend handling Changes in version 0.27-4 o function 'putCallParity' added o for 'vanillaOptionEuropean', a parameter 'vol' can be passed via '...' (which is translated into 'v' by squaring and ignored if 'v' is already specified) o a few internal changes and doc changes Changes in version 0.27-3 o Experimental: 'vanillaOptionEuropean' has arguments 'model' (default is NULL which corresponds to Black-Scholes-Merton) and '...'. This allows to pass other models; for example, 'heston'. With 'greeks' set to TRUE, the function also returns (some) derivatives. More will be added over time, so the results should be extracted by name, not by position (eg, x[["delta"]], but not x[[2L]]). (Adding derivatives for non-BSM models was suggested by Nitesh Kumar.) Changes in version 0.27-2 o Small corrections in docs for 'ytm' and 'vanillaOptionEuropean'. Changes in version 0.27-1 o Added functions 'ytm' and 'vanillaBond': compute yield-to-maturity and price of plain-vanilla bond. Changes in version 0.27-0 (2012-11-29) o Function 'qTable' has new arguments 'funs', 'tabular.format' and 'skip'; see vignette 'qTableEx' and ?qTable. The function now (correctly) adds more space at the end of the tabular (unless 'skip' is FALSE, which corresponds to the previous behaviour). Changes in version 0.26-4 o Minor changes in documentation and examples. o Code examples in subdirectory 'NMOFex' (manual) updated. Changes in version 0.26-3 o Important: all option pricing functions that return lists of named elements (callCF, vanillaOptionE/A, callHestoncf) now call the theoretical option value just 'value'. Before, they returned 'price' or 'callPrice', which could be confusing for instance in case of implied vol calculations. o DEopt, GAopt and PSopt now also return the initial populations (but only if 'algo$storeSolutions' is TRUE) o More unit tests added. Changes in version 0.26-2 o Changes in documentation and unit tests. Changes in version 0.26-1 o Small changes in documentation (option pricing functions). o Code examples in subdirectory 'NMOFex' (manual) updated. Changes in version 0.26-0 o Vignettes (except for one) are now built offline to reduce build/check time for R-Forge/CRAN. (As suggested by Kasper Daniel Hansen in this post: https://stat.ethz.ch/pipermail/r-devel/2012-September/064810.html ) o Small changes in documentation. Changes in version 0.25-9 o Added functions 'vanillaOptionEuropean', 'VanillaOptionAmerican' and 'vanillaOptionImpliedVol'. o Test files have been reorganised (there are now about 700 unit tests; they all can be run from /unitTests/runTests.R). o New maintainer e-mail address. Changes in version 0.25-8 o all opt-functions now return 'initial.state' (which is the value of '.Random.seed' when the function is called). All the warnings of '?Random' apply (in particular, see section 'Note'); the preferred way is still to set a seed explicitly with 'set.seed'. Changes in version 0.25-7 o minor internal changes (the only visible update are small changes in some of the examples) Changes in version 0.25-6 o Package 'parallel' is now suggested. In functions gridSearch, restartOpt, bracket: with method 'multicore' the functions first check if package 'parallel' is available; if not, they look for package 'multicore' o 'restartOpt' has a new argument 'best.only': if TRUE, only the best run is reported. Default is FALSE. Changes in version 0.25-5 o Added checks in DEopt that vectorised functions return objects of correct size (will be added to PSopt and GAopt as well). o Removed NEWS.Rd (NEWS now back to plain text). Changes in version 0.25-4 (2012-07-08) o Added checks on the parameters for 'callCF'; added new arguments 'uniroot.control', which allows to pass the settings for 'uniroot' (to compute implied vol), and 'uniroot.info'. (Computation of implied vol would fail when spot equalled strike and r equalled q; thanks to Douglas McLean for reporting this case.) Changes in version 0.25-3 o Small changes in the vignettes (mostly layout). o Code examples in subdirectory 'NMOFex' updated. Changes in version 0.25-2 o Small changes in the vignettes (mostly layout). o In 'TAopt', 'LSopt': if 'x0' is not a function, it is initialised with 'eval(x0)'; thus, it can be an expression. o Several minor internal changes. Changes in version 0.25-1 o Edited some of the examples in the documentation; minor modifications in docs. o Code examples in subdirectory 'NMOFex' updated. Changes in version 0.25-0 o All the R-code examples from the book are now available in the package through function 'showExample'; eg, 'showExample("equations.R")' (The scripts are stored in subdirectory 'book'.) o A first draft of the 'NMOF Manual' is available from https://enricoschumann.net/NMOF.htm . The manual's code examples are collected in file 'NMOFman.R' (in subdirectory 'NMOFex'). The manual supersedes 'Examples and Extensions for the NMOF package'. o The tests on specific TA applications (minimum variance, tangency portfolio) have been removed; the code was added to the manual. Changes in version 0.24-1 o Small changes in vignettes. o Re-organised existing/added new unit tests. Changes in version 0.24-0 o Added function 'resampleC': allows to sample with replacement from arbitrary numeric vectors (ie, samples) and making the samples (rank) correlated. o 'DEopt' and 'PSopt' now have an argument 'algo$minmaxConstr'. If TRUE, 'algo$min' and 'algo$max' are become constraints. These constraints are implemented through an internal repair function that is called before any user-defined repair function. Changes in version 0.23-3 o fixed: 'restartOpt' could not take an argument named 'X' via the '...' argument. o Unit tests added in unitTests1.R. Changes in version 0.23-2 o fixed: with 'algo$storeSolutions==TRUE', functions 'LSopt' and 'TAopt' only returned the current (=accepted) solution in a given iteration, but not the candidate solution. (These data can be found in 'xlist'. See ?TAopt and ?LSopt, under 'Value'.) o Unit tests added in unitTests1.R. Changes in version 0.23-1 (2012-03-04) o Added 'Depends: R (>= 2.10)' to DESCRIPTION (necessary because of file compression). Changes in version 0.23-0 o Dataset 'optionData' was added. o More tests were added for function 'callCF'; and its documentation was updated. Changes in version 0.22-3 o with 'algo$printDetail = TRUE', functions DEopt, GAopt and PSopt give more information o vignette 'DEnss.Rnw' was shortened to reduce build-time of the package (removed parts are now in 'Examples and Extensions for the NMOF package') o code examples in subdirectory 'NMOFex' updated Changes in version 0.22-2 o minor changes in vignettes/documentation o code examples in subdirectory 'NMOFex' updated Changes in version 0.22-1 o tests for distributed computing have been organised into a report, 'Distributed computations with the NMOF package', available as a pdf-file from https://enricoschumann.net/files/NMOFdist_Windows.pdf and https://enricoschumann.net/files/NMOFdist_Linux.pdf (package 'multicore' is only available on Linux) o the code for 'Distributed computations with the NMOF package' is available in file 'NMOFdist.R', stored in subdirectory 'NMOFex' (the file 'multicore.R' has been removed from subdirectory 'unitTests') o unit tests updated Changes in version 0.22-0 (2011-12-10) o documentation updated o slight changes in vignette 'DEnss.Rnw' (to reduce time to build package) Changes in version 0.21-5 o fixed: in 'GAopt', optional arguments for 'mclapply' (multicore) were not passed. An example for passing an argument was added to file 'unitTests/multicore.R'. o documentation for 'GAopt' updated o code examples in subdirectory 'NMOFex' updated Changes in version 0.21-4 o 'GAopt' now has an argument 'algo$methodOF' that supports 'loop' (default) but also 'snow' or 'multicore'. See 'Examples and Extensions for the NMOF package' (with code in subdirectory 'NMOFex') for an example. o vignette 'TAportfolio' updated (now with example for rank-deficient matrix) Changes in version 0.21-3 o fixed: 'gridSearch' with 'printDetail=TRUE' did not give a meaningful message o experimental: 'GAopt' now has an argument 'algo$methodOF' that can be 'loop' (default) but also 'snow' or 'multicore' (currently, only 'snow' is operational). If 'algo$methodOF' is not 'loop', the evaluation of the objective function will be distributed. See 'Examples and Extensions for the NMOF package'(with code in subdirectory 'NMOFex') for an example. Changes in version 0.21-2 o fixed: with 'printDetail' greater than zero, 'TAopt' did not print the best solution, but the current solution (but internal book keeping worked correctly, and the best solution was returned) o 'bracketing', 'gridSearch', 'restartOpt': when 'cl' argument is not NULL, then argument 'method' is set to 'snow' (but as before it is checked whether package 'snow' is available) o the latest pdf-version of 'Examples and Extensions for the NMOF package' is now available from https://enricoschumann.net/files/NMOFex.pdf o code examples in subdirectory 'NMOFex' updated Changes in version 0.21-1 o the 'printDetail' option for opt-functions is now more consistent: a positive integer 'i' greater than one means that information is printed at every 'i'th iteration o minor changes in vignettes o unit tests for 'callCF' added (in file 'unitTests/unitTests5.R') Changes in version 0.21-0 o added function 'callCF' as a wrapper for pricing European calls with the characteristic function; characteristic functions for BSM, Merton, Bates, Heston and Variance-Gamma were also added o when 'algo$q' in 'TAopt' is zero, all thresholds are set to zero o code examples in subdirectory 'NMOFex' updated o CITATION file now points to the book's homepage http://nmof.net Changes in version 0.20-1 o the 'keepNames' argument of function 'gridSearch' is now supported o more examples added for 'gridSearch' (and corresponding tests in 'unitTests/unitTests2.R') o fixed: some typos in vignette 'Vectorised objective functions' Changes in version 0.20-0 (2011-10-20) o *first CRAN release* o the 'printDetail' argument for 'LSopt' now recognises TRUE and FALSE (as before), but also an integer 'i' greater than 1. In the latter case, information on the best solution is printed at every 'i'th step. o minor cleanups in documentation Changes in version 0.19-4 o small changes in vignette 'Repairing solutions' o small internal changes in 'GAopt' and 'DEopt' (auxiliary functions like 'switch' and 'shift' have been inlined) o code examples in subdirectory 'NMOFex' updated Changes in version 0.19-3 o fixed: a bug had been introduced into 'GAopt' in version 0.19-2 (revision 88), which let the population grow to algo$nP+1 o minor changes in documentation/examples Changes in version 0.19-2 o minor cleanups in documentation Changes in version 0.19-1 o minor cleanups in documentation o minor internal changes in 'restartOpt' (passing of the '...' arguments for method 'snow') Changes in version 0.19-0 o 'bracketing', 'gridSearch' and 'restartOpt' now support distributed evaluation of 'fun' via 'clusterApply' from the 'snow' package. As a side effect, the interface of 'gridSearch' and 'restartOpt' has changed: instead of an option 'multicore', they now have an argument 'method', which can be 'loop', 'multicore' or 'snow'. See the documentation of these functions. o for consistency, the 'method' argument of 'bracketing' expects 'vectorised' rather than 'vectorise' (but both work, and also the '-ize' spellings) o substantial revision of documentation/examples o more intelligible error/warning messages in 'bracketing' added o small changes in vignettes 'Robust Regression with Particle Swarm Optimisation and Differential Evolution' and 'Repairing solutions' o file 'multicore.R' was moved to subdirectory inst/unitTests; thus, it is installed with the package. Some tests for package 'snow' were added. o more tests added (subdirectory unitTests); in particular, tests are more comprehensively commented now Changes in version 0.18-1 o fixed: 'restartOpt' with 'multicore = TRUE' did not correctly pass '...' arguments to 'fun' o fixed: typo in message issued by 'gridSearch' o new file 'multicore.R' added in subdirectory tests; it contains a number of timing tests to see if the 'multicore' option works. (The tests are not run when the package is built.) o minor updates in documentation Changes in version 0.18-0 o 'restartOpt' now has option 'multicore' o the 'method' option of function 'xwGauss' can now take on values 'hermite' and 'laguerre' o documentation updated o new examples added in 'Examples and Extensions for the NMOF package' (see subdirectory NMOFex) o test cases added for 'restartOpt' and 'xwGauss' (see subdirectory unitTests) Changes in version 0.17-0 o functions for Gaussian integration added: 'xwGauss' computes nodes and weights; 'changeInterval' transforms the nodes/weights to arbitrary intervals. Currently, only method 'legendre' is supported. o documentation updated o more tests added for opt-functions (for returned objects 'Fmat' and 'xlist') Changes in version 0.16-2 o all opt-functions now have arguments 'storeF' and 'storeSolutions' (passed through 'algo'). If the latter is TRUE, intermediary results will be stored in a list 'xlist' that is returned by the function (what exactly 'xlist' contains, depends on the specific function) o minor revision in vignette 'Robust Regression with Particle Swarm Optimisation and Differential Evolution' o NEWS file can now be found under inst/NEWS.Rd o internal changes: a number of test utilities have been added (not exported); see, for instance, ?checkList Changes in version 0.16-1 o fixed: 'bracketing' had not been added to the NAMESPACE file (now it is) o tests for 'bracketing' added (see directory unitTests) Changes in version 0.16-0 o function 'bracketing' added o minor changes in function 'MA' (added checks) Changes in version 0.15-6 o vignette for 'qTable' added/corrected Changes in version 0.15-5 o 'qTable' revised (user-specified labels are now possible) o (very) short vignette for 'qTable' added o minor changes in code/documentation/examples Changes in version 0.15-4 o experimental: 'DEopt' takes further arguments 'storeF' and 'storeSolutions' (through list 'algo'). If 'storeF' is FALSE, objective function values are not stored ('Fmat' is set to NA; see ?DEopt). If 'storeSolutions' is TRUE, all population matrices are stored for every generation. This should be helpful for diagnostic checking (and demonstration purposes), but may use up a lot of memory for larger problems; hence default is FALSE. (These settings will either be removed from 'DEopt' or be added to all opt-functions in one of the next package versions.) Changes in version 0.15-3 o new vignette ('Vectorised objective functions') added o more safeguards added to 'gridSearch' Changes in version 0.15-2 o function 'gridSearch' now takes a list 'mc.control' as an argument; it allows to pass settings to 'mclapply' o more tests were added (see unitTests.R) o minor changes in code/documentation/examples Changes in version 0.15-1 o more tests were added (see unitTests.R) o minor changes in code/documentation/examples Changes in version 0.15-0 o function 'gridSearch' can now evaluate a function that expects a list or a vector as its first argument o test cases for 'gridSearch' added (in unitTests/unitTests.R) o 'DEopt' can take a vector 'F' to set specific step sizes for each decision variable (this actually worked before but is now documented and tested) o 'PSopt' can take a function 'changeV' and a logical 'loopChangeV' (passed via the list 'algo'); 'changeV' allows to impose restrictions on the velocity (see the code in directory NMOFex for an example) o more checks were added in opt-functions o small changes in the vignettes (in particular, seeds are set now) o minor changes in documentation/examples Changes in version 0.14-2 o experimental: 'gridSearch' now an has argument 'multicore'; if TRUE, the function calls 'mclapply' (from the multicore package) to evaluate argument 'fun'. Currently added only for cross-platform testing (in particular, to see how R CMD check reacts under Windows). o directory NMOFex was updated o small correction in output of 'TAopt' Changes in version 0.14-1 o test cases for portfolio optimisation added (in unitTests/unitTests.R) Changes in version 0.14-0 o function 'gridSearch' was added Changes in version 0.13-6 o an initial population in 'DEopt', 'GAopt' and 'PSopt' is now passed through 'algo$initP' (before, a population could be passed via 'algo$mP') o directory NMOFex was updated o documentation was updated Changes in version 0.13-5 o directory NMOFex was updated o internal changes in several functions o GAopt.Rd was updated Changes in version 0.13-4 o directory NMOFex was updated o minor internal changes in several functions Changes in version 0.13-3 o directory NMOFex was added; it contains the code for 'Examples and Extensions for the NMOF package' o documentation updated; minor changes in examples and vignettes Changes in version 0.13-2 o documentation, checks, unit tests added for function 'GAopt' Changes in version 0.13-1 o the population in 'GAopt' is now of mode logical (mistaking a logical vector for a numeric one is less harmful than the other way around) Changes in version 0.13-0 o function 'GAopt' added (minimisation by a Genetic Algorithm) o several unit tests added o documentation revised (thanks to Manfred Gilli for comments) Changes in version 0.12-9 o fewer simulation runs in vignettes to reduce build time Changes in version 0.12-1 o documentation has been revised Changes in version 0.11-1 o a number of test functions have been added (see ?testFunctions) o new examples added for 'DEopt' and 'TAopt' o vignettes have been revised Changes in version 0.10-1 o opt-functions now have 'printBar' and 'printDetail' option (set via 'algo')