The SCE-UA method is a general purpose global optimization program. It was originally developed by Dr. Qingyun Duan as part of his doctoral dissertation work at the Department of Hydrology
and Water Resources, University of Arizona, Tucson, AZ 85721, USA. The dissertation is entitled "A Global Optimization Strategy for Efficient and Effective Calibration of Hydrologic Models". The program has since been modified to make it easier for use on problems of users' interests. The algorithm has been described in detail in an article entitled "Effective and Efficient Global Optimization for Conceptual Rainfall-Runoff Models", Water Resources Research, Vol 28(4), pp.1015-1031, 1992; and in an article entitled "A Shuffled Complex Evolution Approach for Effective and Efficient Global Minimization" by Q. Duan, V.K. Gupta and S. Sorooshian, Journal of Optimization Theory and its Applications, Vol 76(3), pp 501-521, 1993. A paper entitled "Optimal Use of the SCE-UA Global Optimization Method for Calibrating Watershed Models", by Q. Duan, S. Sorooshian, & V.K. Gupta, Journal of Hydrology, Vol.158, 265-284, 1994, discussed how to use the SCE-UA Method in an efficient and effective manner. The SCE-UA algorithm is also briefly described in the accompanying ASCii file 'CONCEPT_SCE.txt' contained in this package.
I am trying to use this to optimize the calibration process for HyMOD rainfall-runoff model by maximizing NSE. I would like someone to guide me through the process
I want to do some global optimization. I am so glad it is already here
hello.... I want to optimize the 5 parameters of HYMOD rainfall runoff model using sce-ua method using RMSE objective function. How can I start with if I have the ranges of all the 5 parameters? I mean how should I give the input range of parameters.
I will try to help with your problem.
The problems that SCE-UA focused is mainly on the constrained problems, which have a fixed parameter bounds,such as [2,54]. To solve your problem, i think it is able to set a very small number (10e-7) as the fixed lower bound for both a and b. Same way to deal with the upper bound. It might need to play with the algorithm parameter (Number of complexes or simplexes) to improve the computation efficiency. Hope this can help.
I have to use this optimization algorithm to minimizing a objective function like this:
error = ((((a./(a+b))-mean).^2)./(mean.^2))+(((((a.*b)./((a+b+1).*((a+b).^2)))-variance).^2)./(variance.^2))+(((((2.*(b-a).*(sqrt(a+b+1)))./((a+b+2).*(sqrt(a.*b))))-skewness).^2)./(skewness.^2))
This is a function beta with parameters a and b. I want to calculate a and b minimizing this fuction error.
I dont know how I can impose the limits of a and b in the algorithm. The limits are, a>0,b>0 and b>0.
Thanks a lot to share your code! Duan Laoshi
Hi I was following your Readme but the problem is that there is no funtion for the SIXPAR model. It talks about how to Use SCE-UA Method on the SIXPAR Model but there is nothing about it. Could you include SIXPAR model's code. I'm confused.
Thanks a lot to share your code! Duan Laoshi :) You will find it is used in the paper I publish in the future.
thx for matlab code, a more comprehensive documentation might be useful.
Any idea, how we can incorporate this in a neural network model? For instance in newff network which uses mse as net.performFcn..
Very well. It's better than the Fortran and C version.
Works well and easy to use in structural engineering problems (constrained). Add plots of the steps for 2D and 3D problems.
I used this implementation as a start to create my own implementation, which is available at http://biomath.ugent.be/~brecht
Thanks! Good job!
Works well and is easy to use. Documentation files are not up-to-date. Write the function/model you want to optimize in functn.m.
I've read your paper. Useful tool in model calibration.
Really Good for Use!
Although seems strange to me first, Thanks!
Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.