File Exchange

image thumbnail

Shuffled Complex Evolution (SCE-UA) Method

version 1.0 (420 KB) by

An efficient and robuse global optimization method.

4.3913
21 Ratings

15 Downloads

Updated

No License

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.

Comments and Ratings (27)

Marwan Kheimi

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

shunfu zhang

I want to do some global optimization. I am so glad it is already here

beykfeysal

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.

Feng Li

Zhenhai Li

Paula

Paula (view profile)

Helios

Helios (view profile)

TIANTIAN Yang

Dear Paula,
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.

Paula

Paula (view profile)

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 all

Barnaby

Barnaby (view profile)

guo

guo (view profile)

Thanks a lot to share your code! Duan Laoshi

Sarah

Sarah (view profile)

Rajan devkota

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.

Peng Bai

mary

mary (view profile)

Thanks a lot to share your code! Duan Laoshi :) You will find it is used in the paper I publish in the future.

mehdi moayeri

thx for matlab code, a more comprehensive documentation might be useful.

Thanks alot,
Any idea, how we can incorporate this in a neural network model? For instance in newff network which uses mse as net.performFcn..

Dingzhi Peng

Very well. It's better than the Fortran and C version.

Samer Barakat

Works well and easy to use in structural engineering problems (constrained). Add plots of the steps for 2D and 3D problems.

Brecht Donckels

I used this implementation as a start to create my own implementation, which is available at http://biomath.ugent.be/~brecht

Thanks! Good job!

Sebastiaan Luyssaert

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.

Jennie W

I've read your paper. Useful tool in model calibration.

ELIE ZIHINDULA

no comments

Mohaned Korjie

Good response

xunkai wei

Really Good for Use!
Although seems strange to me first, Thanks!

MATLAB Release
MATLAB 5.2 (R10)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video