Algoritam simpleks postupka po Nelderu i Meadu

// Ulazne velicine: X0, alfa, beta, gama, epsilon

izracunaj tocke simpleksa X[i], i = 0..n;

ponavljaj

{ odredi indekse h,l : F(X[h]) = max, F(X[l]) = min;

  odredi centroid Xc;

  Xr = Refleksija();

  ako F(Xr)<F(X[l])

  {   Xe = Ekspanzija();

      ako F(Xe)<F(X[l])

            X[h] = Xe;

      inace

            X[h] = Xr;

  }

  inace

  {   ako F(Xr)>F(X[j]) za svaki j=0..n, j!=h

      {     ako F(Xr)<F(X[h])

                  X[h] = Xr;

            Xk = Kontrakcija();

            ako F(Xk)<F(X[h])

                  X[h] = Xk;

            inace

                  pomakni sve tocke prema X[l];

      }

      inace

            X[h] = Xr;

  }

}dok nije zadovoljen uvjet zaustavljanja;