No License

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

» Watch video

Highlights from
Shuffled Complex Evolution (SCE-UA) Method

4.8 | 20 ratings Rate this file 27 Downloads (last 30 days) File Size: 420 KB File ID: #7671 Version: 1.0
image thumbnail

Shuffled Complex Evolution (SCE-UA) Method



16 May 2005 (Updated )

An efficient and robuse global optimization method.

| Watch this File

File Information

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.

MATLAB release MATLAB 5.2 (R10)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (24)
21 Aug 2016 Feng Li

11 Jul 2016 Zhenhai Li

25 May 2016 Paula

Paula (view profile)

07 Apr 2015 Helios

Helios (view profile)

19 Nov 2014 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.

02 Sep 2014 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

Comment only
16 Mar 2014 Barnaby

Barnaby (view profile)

06 Mar 2014 guo

guo (view profile)

Thanks a lot to share your code! Duan Laoshi

16 Jan 2014 Sarah

Sarah (view profile)

11 Dec 2012 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.

Comment only
17 Nov 2011 James blunt

17 Nov 2011 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.

26 Apr 2011 Alejandra Botero

21 Apr 2011 mehdi moayeri

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

11 Jan 2011 Mehmet Demirel

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..

06 Feb 2010 Andre Guy Tranquille

12 Aug 2008 Dingzhi Peng

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

20 Jun 2008 Samer Barakat

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

29 Oct 2007 Brecht Donckels

I used this implementation as a start to create my own implementation, which is available at

Thanks! Good job!

17 Apr 2007 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.

24 Mar 2006 Jennie W

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


no comments

Comment only
06 Aug 2005 Mohaned Korjie

Good response

05 Aug 2005 xunkai wei

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

Comment only

Contact us