View License

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

» Watch video

Highlights from
Normalized Normal Constraint (NNC) algorithm for multi-objective optimization

Join the 15-year community celebration.

Play games and win prizes!

» Learn more

5.0 | 1 rating Rate this file 17 Downloads (last 30 days) File Size: 9.06 KB File ID: #38976 Version: 1.4
image thumbnail

Normalized Normal Constraint (NNC) algorithm for multi-objective optimization



09 Nov 2012 (Updated )

This code implements a NNC algorithm for multi-objective optimization.

| Watch this File

File Information

This Toolset comprises of the following files:

1) NNCparam.m

Generates the required parameters to run the NNC optimization algorithm.

2) NNC.m

Runs the optimization algorithm. This code implements the NNC algorithm for 2 and 3 objectives as described in:

A. Messac, A. Ismail-Yahaya and C.A. Mattson. The normalized normal
constraint method for generating the Pareto frontier structural and
multidisciplinary optimization Volume 25, Number 2 (2003), 86-98.

3) OPTroutine.m
Implements the optimization routine for NNC algorithm.

4) CostFuntion.m
The cost function to optimize

Required Products MATLAB
MATLAB release MATLAB 7.9 (R2009b)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (4)
07 Oct 2016 Jhonys Leite de Oliveira  
03 Oct 2013 pooya pooya

Hi Dear Gilberto Reynoso Meza
thanks for your NNC code,I use it.
but have problem with it,I can't understand what i have write "OPTroutine" in "NNCparam.m".
if it is possible for you , give me an example of simple multi objective problem with using this code.
thanks alot.

Comment only
14 Jan 2013 Gilberto Reynoso-Meza

It is possible; in that case, you would have to re-write the step 3 (Utopia line vector) and step 5 (utopia linea points) accordingly to your desired number of objectives. When dealing with more than 3 objectives, I use usually an evolutionary algorithm instead of the NNC; a local optimization routine could be always used at the end of the evolutionary optimization process, to improve convergence.

Comment only
11 Jan 2013 Rangasamy Kotteeswaran

using this matlab code could it be possible to handle more than 3 objectives. if so, how this could be done.

Comment only
13 Dec 2012 1.4

December 13th. 2012: A bug reported by users in Smart Filter has been fixed (Correspondence between Filtered Front and Filtered Set).

Contact us