v2.10-1 (2024-11-03) o an example was removed from the manual page of 'NS' v2.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/ v2.9-0 (2023-12-29) 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 v2.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: http://enricoschumann.net/NMOF.htm#NMOFmanual v2.7-1 (2022-10-20) o various minor documentation updates o manual has been updated: http://enricoschumann.net/NMOF.htm#NMOFmanual o there is an additional public repository at https://git.sr.ht/~enricoschumann/NMOF v2.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) v2.6-0 (2022-01-26) 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') v2.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 v2.4-1 (2021-04-09) 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.) v2.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 v2.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 v2.2-0 (2020-10-20) 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 http://enricoschumann.net/notes/minimising-conditional-var.html o New function 'trackingPortfolio'. For details, see http://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/questions/63377180/finding-ideal-filter-setting-to-maximize-target-function 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 . v2.1-0 (2020-04-01) 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 v2.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 http://enricoschumann.net/notes/NMOF/ o manual has been updated: http://enricoschumann.net/NMOF.htm#NMOFmanual v1.6-0 (2019-04-01) o 'French' supports more datasets; invoking 'French()' lists the supported files v1.5-0 (2018-12-31) 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) v1.4-0 (2017-12-06) o new function 'convexity' v1.3-0 (2017-12-05) o new vignette 'Solving the N-Queens Problem with Local Search' v1.2-0 (2017-09-13) o new functions 'bundFuture' and 'bundFutureImpliedRate', for computing theoretical futures prices and implied repo rates, respectively v1.1-0 (2017-05-01) o new function 'divRatio', for computing the diversification ratio v1.0-0 (2017-04-01) 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 v0.99-0 (2017-02-15) 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: http://enricoschumann.net/NMOF.htm#NMOFmanual v0.40-0 (2016-10-20) o new function 'xtTickValue', which computes the tick value for of Australian government-bond futures v0.39-0 (2016-09-30) o new function 'xtContractValue', for computing contract values of Australian government-bond futures v0.38-0 (2016-09-03) o fixed: LSopt did not switch off 'printBar' in cases when 'printDetail > 1' o updates to documentation of LSopt/TAopt v0.37-6 (2016-08-27) o fixed: 'gbb' failed when only a single path was to be computed v0.37-5 (2016-08-23) o gbm: add fanplot example v0.37-4 (2016-07-12) o fixed: 'DEopt' did not work for univariate optimisation models. (Thanks to Torsten von Bartenwerffer for reporting.) v0.37-3 (2016-07-06) o TAopt: new option 'OF.target', which lets the algorithm stop when a desired objective-function value is reached v0.37-2 (2016-06-08) o TA.info: the best solution ('xbest') is now also provided v0.37-1 (2016-05-24) o new test function 'tfEggholder' v0.37-0 (2016-04-11) 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 v0.36-5 (2016-04-07) o repairMatrix: new argument 'eps', which specifies the replacement value for negative eigenvalues v0.36-4 (2015-11-18) o bracketing: the resulting matrix's columns are named 'lower' and 'upper' v0.36-3 (2015-11-09) o restartOpt: when 'cl' is specified and 'method' is identical to 'loop', the function will now issue a warning before changing method to 'snow' v0.36-2 (2015-10-16) o functions from packages other than 'base' are now explicity imported: 'grDevices', 'graphics', 'stats', 'utils' v0.36-1 (2015-07-22) o TAopt: more informative error message when objective function evaluates to NA during computation of thresholds v0.36-0 (2015-06-23) o experimental: new function 'LS.info' for accessing information during optimisation run (eg, current iteration) v0.35-1 (2015-06-04) o small correction in parameter description in 'callMerton' (suggested by Laurs Leth) v0.35-0 (2015-05-12) o new function 'pm' for computing partial moments v0.34-2 (2015-05-05) 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.) v0.34-1 (2015-02-03) o no user-visible changes (see ChangeLog for non-visible changes) v0.34-0 (2014-10-23) 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 v0.33-0 (2014-08-22) o updates in documentation and vignettes v0.32-1 (2014-08-14) o argument 'offset' in 'ytm' can be a vector (that worked before as well, but is now documented) o several small updates in documentation v0.32-0 (2014-03-26) 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' v0.31-2 (2014-02-21) o various small updates in documentation and vignettes (e.g. links to mailing lists) v0.31-1 (2013-12-31) o expanded vignette 'Overview of the NMOF package' v0.31-0 (2013-12-27) 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 v0.30-0 (2013-11-18) o new function 'duration' v0.29-2 (2013-11-02) o function 'ytm' has an argument 'offset' now; see ?ytm for examples v0.29-1 (2013-10-31) o function 'ytm' is slightly faster now o small additions to documentation v0.29-0 (2013-10-13) o added function 'drawdown' o Code examples in subdirectory 'NMOFex' (manual) updated. o small updates in documentation v0.28-2 (2013-09-04) 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 v0.28-1 (2013-07-22) 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). v0.28-0 (2013-06-08) 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) v0.27-5 (2013-04-26) 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 v0.27-4 (2013-04-22) 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 v0.27-3 (2013-01-04) 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.) v0.27-2 (2013-01-03) o Small corrections in docs for 'ytm' and 'vanillaOptionEuropean'. v0.27-1 (2013-01-02) o Added functions 'ytm' and 'vanillaBond': compute yield-to-maturity and price of plain-vanilla bond. v0.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). v0.26-4 (2012-11-14) o Minor changes in documentation and examples. o Code examples in subdirectory 'NMOFex' (manual) updated. v0.26-3 (2012-10-25) 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. v0.26-2 (2012-10-23) o Changes in documentation and unit tests. v0.26-1 (2012-10-12) o Small changes in documentation (option pricing functions). o Code examples in subdirectory 'NMOFex' (manual) updated. v0.26-0 (2012-09-19) 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. v0.25-9 (2012-09-19) 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. v0.25-8 (2012-08-28) 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'. v0.25-7 (2012-08-17) o minor internal changes (the only visible update are small changes in some of the examples) v0.25-6 (2012-08-07) 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. v0.25-5 (2012-07-20) 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). v0.25-4 (2012-07-03) 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.) v0.25-3 (2012-06-22) o Small changes in the vignettes (mostly layout). o Code examples in subdirectory 'NMOFex' updated. v0.25-2 (2012-06-17) 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. v0.25-1 (2012-05-22) o Edited some of the examples in the documentation; minor modifications in docs. o Code examples in subdirectory 'NMOFex' updated. v0.25-0 (2012-04-20) 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 http://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. v0.24-1 (2012-04-16) o Small changes in vignettes. o Re-organised existing/added new unit tests. v0.24-0 (2012-04-11) 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. v0.23-3 (2012-03-25) o fixed: 'restartOpt' could not take an argument named 'X' via the '...' argument. o Unit tests added in unitTests1.R. v0.23-2 (2012-03-19) 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. v0.23-1 (2012-02-27) o Added 'Depends: R (>= 2.10)' to DESCRIPTION (necessary because of file compression). v0.23-0 (2012-02-14) o Dataset 'optionData' was added. o More tests were added for function 'callCF'; and its documentation was updated. v0.22-3 (2012-01-15) 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 v0.22-2 (2012-01-05) o minor changes in vignettes/documentation o code examples in subdirectory 'NMOFex' updated v0.22-1 (2011-12-15) o tests for distributed computing have been organised into a report, 'Distributed computations with the NMOF package', available as a pdf-file from http://enricoschumann.net/files/NMOFdist_Windows.pdf and http://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 v0.22-0 (2011-12-08) o documentation updated o slight changes in vignette 'DEnss.Rnw' (to reduce time to build package) v0.21-5 (2011-12-01) 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 v0.21-4 (2011-11-29) 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) v0.21-3 (2011-11-25) 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. v0.21-2 (2011-11-22) 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 http://enricoschumann.net/files/NMOFex.pdf o code examples in subdirectory 'NMOFex' updated v0.21-1 (2011-11-15) 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') v0.21-0 (2011-11-08) 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 v0.20-1 (2011-10-28) 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' v0.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 v0.19-4 (2011-10-15) 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 v0.19-3 (2011-10-07) 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 v0.19-2 (2011-09-30) o minor cleanups in documentation v0.19-1 (2011-09-29) o minor cleanups in documentation o minor internal changes in 'restartOpt' (passing of the '...' arguments for method 'snow') v0.19-0 (2011-09-26) 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 v0.18-1 (2011-09-21) 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 v0.18-0 (2011-09-20) 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) v0.17-0 (2011-09-18) 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') v0.16-2 (2011-09-17) 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 v0.16-1 (2011-09-13) o fixed: 'bracketing' had not been added to the NAMESPACE file (now it is) o tests for 'bracketing' added (see directory unitTests) v0.16-0 (2011-09-12) o function 'bracketing' added o minor changes in function 'MA' (added checks) v0.15-6 (2011-09-11) o vignette for 'qTable' added/corrected v0.15-5 (2011-09-04) o 'qTable' revised (user-specified labels are now possible) o (very) short vignette for 'qTable' added o minor changes in code/documentation/examples v0.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.) v0.15-3 o new vignette ('Vectorised objective functions') added o more safeguards added to 'gridSearch' v0.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 v0.15-1 o more tests were added (see unitTests.R) o minor changes in code/documentation/examples v0.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 v0.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' v0.14-1 o test cases for portfolio optimisation added (in unitTests/unitTests.R) v0.14-0 o function 'gridSearch' was added v0.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 v0.13-5 o directory NMOFex was updated o internal changes in several functions o GAopt.Rd was updated v0.13-4 o directory NMOFex was updated o minor internal changes in several functions v0.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 v0.13-2 o documentation, checks, unit tests added for function 'GAopt' v0.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) v0.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) v0.12-9 o fewer simulation runs in vignettes to reduce build time v0.12-1 o documentation has been revised v0.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 v0.10-1 o opt-functions now have 'printBar' and 'printDetail' option (set via 'algo')