 

function X = sortX (X,fobj,N,D)
    
    fitval=zeros(1,N);
    sortedX=zeros(N,D+1);
    for i=1:N
        fitval(i)=fobj(X(i,:));
    end
    sortedX(1:N,1)=fitval(1:N);
    sortedX(1:N,2:D+1)=X(1:N,1:D);
    sortedX=sortrows(sortedX);
    X=sortedX(1:N,2:D+1);
endfunction
