/*! \page pageAddANewOptimAlgo How to add a new optimization algorithm

%Problem type Optimization offers several algorithms to compute problem (e.g. SPEA2, NSGA2, SPEA2Adapt). All of these algorithms inherits OptimAlgo class.

To add a new optimization algorithm, one should:

-# create a new class inheriting OptimAlgo
-# add it in OptimAlgosList

\section secNewAlgo Create a new optimization algorithm

%Optimization algorithm main function is OptimAlgo::launch(QString) which is the computation itself.

Parameters of optimization algorithm may be filled in constructor: they will then automatically be available to user customing.



\section secAddOptimAlgo Add it in OptimAlgosList

\code

static const int nbAlgos = 5;

    enum Type
    {
        iSPEA2Adapt,
        iNSGA2,
        iSPEA2,
        iSA1,
		iMyAlgo
    };

 switch(iAlgo)
    {
    case OptimAlgosList::iNSGA2:
        return new NSGA2(project,problem);
    case OptimAlgosList::iSPEA2:
        return new SPEA2(project,problem);
    case OptimAlgosList::iSPEA2Adapt:
        return new SPEA2Adapt(project,problem);
    case OptimAlgosList::iSA1:
        return new SA1(project,problem);
	case OptimAlgosList::iMyAlgo:
        return new MyAlgo(project,problem);
    default:
        //Problem
        return NULL;
    }
	
\endcode
 **/
