Notes de version
    Cette page regroupe les quelques points importants pour chaque nouvelle sortie de version (les évolutions sont décrites en anglais seulement, comme la documentation).
    
        
        
            
            
            
                
        
            -  Methods development:
            
                -  Add the Sensivitity::TCramerVonMises class to compute Cramer Von Mises indexes 
-  Add a new module to TMetropHasting to continue an existing MH computation for a given number of additional iterations and implement minor adjustments to facilitate restarting the TMetropHasting constructor with cleared tds attributes 
-  Add the possibility for DataServer to read (fileDataReadCSV) and export CSV (exportDataCSV) file 
-  Add a Ishigami binary (mainly for training session) 
-  Relauncher: improvement for launching complex codes (sharing of files between code, MPI parallel code call) (beta version - not yet documented) 
-  Launcher: Use of Boost.Process which should allow better scaling when using a large number of cpus 
 
-  Correction / modifications:
            
                -  Correction and improvement of the THSIC class 
 
-  User Manual
            
                -  Add a Macro for TCramerVonMises 
 
 
         
        
        
            
            
            
                
        
            -  Methods development:
            
                -  Add the Sensivitity::TSobolRank class to compute sobol indexes for given data (based Chatterjee method)
-  Add the ants colony optimization method in Vizir (Reoptimizer)
-  Add the CMAES optimization method in Vizir (Reoptimizer) 
-  Add drawCopulogram which looks like Pairs plot with rank scatterplot on the upper triangle
 
-  Correction / modifications
            
                -  Add an agregator to extract value from a TSensitivity object with the method getValue(order, input)
-  Simplify the way to run permutation in HSIC ("nperm=100" option)
-  Python2 is now deprecated (if you still want to use it, please use previous version)
-  Add an agregator to extract the scalar value of a quantile
 
- User manual :
            
                -  Update information about the compatibility with python
-  Add a Macro for TSobolRank 
-  Minor modification to explain how to use HSIC
-  Add the new way to extract results from sensitivity analysis using getValue
 
 
         
        
        
            
            
            
                
        
            - Correction / modifications:
            
                - Add the TComposedDistribution class to compose law from other distributions
- High speed up the computation of HSIC sensitivity indices
- Add a quiet mode in the computation of HSIC sensitivity indices and update U-Stat results 
- Replace the dependencies of Portable Coroutine Library for coroutines by Boost.Coroutines
- Uniformisation of all doxygen files
- Add exception in TCirce for setSelect
 
- User manual:
            
                - Add the Composing law description
- Add the description of the THISC class
- Add use case macro : sensitivityHSICFunctionFlowrate
 
- Methodology:
            
                - Add brief description of the HSIC sensitivity indices
 
 
         
        
        
            
            
            
                
        
            - Correction / modifications:
            
                - Beta version to interface FMU file using the Launcher using FMI library (only tested on Linux)
- Add the possibility to compute Shapley indices (beta version)
- Add the possibility to produce LHS doe with one or more constraints (TConstrLHS)
- Add the possibility to run nested MPI in Relauncher (a parallelised code in a parallelised loop)
- Add two new probability laws: TGeneralizedNormal and TGeneralizedNormalV2 (beta version for the last)
- Add quiet mode in fileDataRead to prevent any warning and information message (when one knows what these mean)
- Ensure and correct some sensitivity classes in order not to be computation-order sensitive (when computations are parallelised)
 
- User manual :
            
                - Full split between C++ and python version. All code in the text is now only either in C++ or in python. In both cases, code within is tested.
- Python macros have been corrected to be PEP8 complient.
- Add a chapter for the MetaModelOptim chapter: distributed efficient global optimisation (EGO)
- Rewrite Relauncher to discuss more precisely the distribution process
- Add the description of the TGeneralizedNormal law
- Add use case macros: metamodoptEgoHimmel, reoptimizeZoneBiSubMpi, reoptimizeZoneBiFunMpi, samplingConstrLHSLinear, samplingConstrLHSEllipses
 
- Methodology:
            
                - Description of the heuristic for the constrained LHS doe
 
- Windows specific:
            
                - First version tested with Python 3
 
 
         
        
        
            
            
            
                
        
            - Correction / modifications:
                - Allow to use already done doe to start Sobol analysis (in pick-and-freeze approach)
- Allow to load all computations from previous Sobol estimation in a new Sobol estimation to increase statistics (in pick-and-freeze approach)
- Change the way dataserver and tree are stored for thread safety (peculiar conditions)
- Add a TMpiRun constructor for C++ standlone compilation (to prevent from calling MPI_INIT)
- Correct strange behaviour in addAttributeUsingData
- Correct the Kriging export to dump properly the linear trend
- Correct Code submission procedure in TCodeEval to delete output file from previous estimation (proper failure detection)
- Correct mistake in relauncher output file detection to handle properly empty vector and code failures.
- User manual :
                - Rewrite part of the Relauncher discussion for parallelisation (thread and MPI) and failure handling
- Correct many use case macros to allow compatibility for windows python 2
- Add use case macros: relauncherCodeFlowrateMPIStandalone, relauncherCJitFunctionThreadTest,       relauncherCodeFlowrateSequentialFailure, relauncherCodeMultiTypeKeyEmptyVectors,      relauncherCodeMultiTypeKeyEmptyVectorsAsFailure sensitivitySobolRe-estimation, sensitivitySobolWithData,       sensitivitySobolLoadFile
 
         
        
        
            
            
            
                
        
            -  Methods development:
                -  Full reorganisation of the Reoptimizer module: now it allows the use of vectors as internal variable (but still not as  objectives)
-  New module named calibration offering different approaches to calibration-linked issues:
                    -  various minimisation techniques
-  linear analytical bayesian approach
-  first ABC method: the rejection one to get an approximation of a posteriori distributions
-  Markov-chain Metropolis-Hasting method to get a posteriori distributions
-  New module metamodeloptim, made for methods that combine optimisation and surrogate models
-  Different EGO implementations available (Beta version)
-  Corrections / modifications:
                -  Add method to set default values also for vectors and strings
-  Integrate EcCluster for remote launcher technique (specific to ECMWF clusters)
-  Add method to create a new attribute from an array of data (addAttributeUsingData)
-  ROOT specific update:
                -  This version has been tested against latest ROOT version 6.22.02.
-  It allows python2 and python3 handling at the same time with a single installation (for ROOT and URANIE).
-  User manual :
                -  New module calibration fully described along with use-cases
-  New section in introduction called How-to :
                    -  provides examples and discussions on how to convert specific C++ methods/objects to python and vice-versa.
-  it is meant to grow depending on your specific needs and requests
-  Discuss the correction item introduced above (default for vector, new attribute with data...)
-  Add use case macros: calibrationMinimisationFlowrate1D, calibrationLinBayesFlowrate1D,          calibrationRejectionABCFlowrate1D, calibrationMetropHastingFlowrate1D, calibrationMetropHastingLinReg,          calibrationMinimisationFlowrate2DVizir, howtoConvertTDataServerArray, howtoConvertTMatrixDArray, howtoLoadFunction,         howtoPassReference
-  Methodological manual:
                -  New module calibration documented (general introduction and specific method discussion)
-  Discussion on the general matern hyperparameters introduced
-  Add a glossary to help handle specific vocabulary and acronyms.
 
         
        
        
            
            
            
                
        
            - Methods development:
	            -  First implementation Johnson relative weight method for sensitivity. 
-  First implementation of Metropolis Hastings algorithm for calibration. Beta version. 
-  First implementation of cluster connection through SSH (to avoid Uranie installation on cluster). Beta version. 
-  Allow key input/output files to have blank space in the keys (for launcher). 
-  Allow correlation matrix computation for single-out element of vectors. 
- Corrections / modifications:
	            -  Correct bug in Morris: if used with unbounded laws, the provided physical response was possibly wrong. 
-  Improvement in Vizir many criteria algorithm to prevent stillborn and duplicated solutions. 
-  Feature in relauncher distribution to avoid stucking ressource while waiting for jobs. 
-  Improve detection of python version used within ROOT (to remain compatible with upcoming ROOT versions). 
- Windows specific:
	            -  So far, Windows specific archive remains pure C++ and will be working with a specific version of Visual. 
-  Investigation of a new workaround based on WSL (Windows Subsystem for Linux, see README for further           explanations): creation of a dedicated archive 
- User manual:
	            -  Add description of all aforementioned methods development, but Beta version. 
-  Discuss the truncation issues: Morris and Halton problems. 
-  Add use case macros: dataserverComputeCorrelationMatrixVector, launchCodeFilesWithBlank,           sensitivityJohnsonRWFunctionFlowrate, sensitivityJohnsonRWCorrelatedFunctionFlowrate,           sensitivityJohnsonRWJustCorrelationFakeFlowrate 
- Methodological manual:
	            -  Introduction of sensitivity analysis with correlation. 
-  Discussion of the Johnson relative weight method. 
 
         
        
        
            
            
            
                
        
            - Methods development:
	            -  Beta version of DGSM sensitivity measurement.
-  Beta version of Kernel PCA.
-  Allow both TSampling and TBasicSampling to deal with singular correlation matrix.
-  Add Kriging prediction with input covariance estimation (to uncorrolate residuals for instance).
-  Add methods in kriging and relauncher/reoptimizer to improve interface with python.
-  Add possibility to deal with several outputs in THSIC (Beta).
-  Add drawQQPlot in DataServer (with ROOT's mathmore).
-  Add drawPPPlot in DataServer (with ROOT's mathmore).
-  Add Student stochastic law (with ROOT's mathmore).
-  Allow Constant and Temporary variable in Relauncher and Reoptimizer with new architecture.
-  Add Laws in TTester and compute the p-values.
- Corrections / modifications:
	            -  Deprecate the halton sequence with unbounded infinite-based laws (will throw an exception from v4.6.0).
-  Correct bug concerning infinite-based laws once truncated.
-  Correct bug concerning size of output name in the sensitivity module.
-  Correct GenPareto distribution (unconstrained so far).
-  Minor correction for white space in the regexp of TKeyScript.
-  Correct a problem in TFlatResults when dealing with bounded vectors.
-  Prevent sensitivity classes to re-run when outputs are available
- Windows specific:
	            -  Allow interface with MPICH for Windows version.
-  So far, Windows specific archive remains pure C++ and will be working with a specific version of Visual (to be precised later on).
- User manual:
	            -  Add description of all aforementioned methods development, but Beta version.
-  Add use case macros: dataserverComputeQuantileVec, dataserverDrawQQPlot, dataserverDrawPPPlot, dataserverPCAExample,  samplerSingularCorrelationCase, modelerbuildSimpleGPEstimWithCov, relauncherCodeFlowrateSequential_ConstantVar,	  relauncherCodeFlowrateSequential_TemporaryVar, reoptimizeHollowBarCodeGradDeco, reoptimizeHollowBarCodeMultiStart.
- Methodological manual:
	            -  New generic introduction for modelling.
-  Discussion on PCA principle.
-  Discussion on correlated DOE generation.
-  Discussion on stochastic law truncation.
-  Discussion on kriging prediction (values and covariances)
 
         
        
        
            
            
            
                
        
            -  Add python 3 compatibility (and ROOT python verification).
                -  This implies a dedicated ROOT python3 installation.
-  Remove the limitation of 40000 samples in TSampling.
-  Add possibility to keep every folder in relauncher.
-  Add possibility to keep every computation in Reoptimiser.
-  Add possibility to change way entries are written in input files for relauncher.
-  Add possibility to restart genetic algorithm if it has not converged at once (illustration provided in usermanual).
-  First implementation of the HSIC algorithm.
-  First attempt to have a windows-compatible version.
                -  Limitation due to ROOT: only available in C++ and on a Windows 10 machine where Visual Studio 2017 (v15.7.6) is installed.
-  Change TSamplerField to be able to create many fields at once.
-  Correct ANN export/import incoherent behaviour when running on GPUs.
-  Correct wrong exit for nlopt max eval reached.
-  Correct plot for Morris Visualisation.
-  Remove hardcoded debug option in sampler / modeler.
 
         
        
        
            
            
            
                
        
            -  First implementation of URANIE using ROOT v6.14.00. 
-  Add matern1/2 covariance function to produce kriging surrogate model. 
-  Add constructor to all sensitivity classes, to be able to use sensitivity with relauncher architecture. 
-  Add possibility to export kriging in pmml format. 
-  Correct TMaximinLHS to do the simulated annealing only in the probability hyper-volume (not in the physical one). 
-  Correct an implementation error that was slowing down TSobol estimation of coefficients. 
-  Cleaning and adding more use case macros in dataserver, modeler, sensitivity, and relauncher sections. 
-  Implementation of all use-case macros in python :
            
                -  New chapter 13 in userManual.(pdf/html). 
-  All macros can be found in ${URANIESYS}/share/uranie/macros/. 
 
 
         
        
        
            
            
            
                
        
            -  First implementation of many-criteria algorithms (ibea, moead, knee-point). Beta version.  
-  First implementation of multi-layer and multi-output neural networks. Beta version.  
-  Allow standalone compilation of macro with MPI (relauncher). 
-  Add possibility for code and function to have formulaes to produce new inputs and outputs and optimise on the latter.
-  Correction of bug for launcher with multi input-files.
-  Correction of bug with vectors as input in relauncher.
-  Correction of bug for complicated TAttributeFormula.
-  Update of the documentation. 
 
         
        
        
            
            
            
                
        
            -  Add new maximin LHS sampling through the use of dedicated TMaxiMinLHS class 
-  Add two new probability laws : TGamma and TInvGamma 
-  Add second estimation of SRC^2 and SRRC^2 using correlation coefficient definition (to provide illustrative 95% confidence interval) 
-  Python is now consider as a default in the installation. to specifically turn it of, use -D--disable-python='ON' 
-  Fixing problem with GetV1 method, removing potential issued when dealing with more than one million entries 
-  Allows the change of the correlation length boundaries on the kriging 
-  Various bug corrections 
-  Update of the documentation (providing complete list of references) 
 
         
        
        
            
            
            
                
        
            -  Newly available building Uranie and its prerequisites in Release mode on Windows
-  Newly available PyUranie on Windows
-  Newly available PGauss library on Windows
-  Newly available types: Uranie can deal with strings and vectors (not yet available for (re-)optimizer and modeler)
-  Reorganisation of the user manual (with more use cases) and new methodological documentation (both html and pdf files) 
-  Fix of several bugs 
 
         
        
        
            
            
            
                
        
            - Implementation of the k Nearsest Neighbor (kNN) algorithm in the Modeler module
- Possibility to use GPU to evaluate a Gaussian Process (still in beta)
- Import/export data from JSON files
- PMMLlib library available in the ROOT interpreter