DEには幾つかの形式が提案されており,DE/best/1/bin や DE/rand/1/exp などがよく知られている. これらは,DE/// という記法で表現される. ``'' は基本ベクトルとなる親の選択方法を指定する. 例えば,DE/rand// は基本ベクトルのための親を集団からランダムに選択し,DE/best// は集団の最良個体を選択する. ``'' は基本ベクトルを変異させるための差分ベクトルの個数を指定する. ``'' は子を生成するために使用する交叉方法を指定する. 例えば,DE///bin は一定の確率で遺伝子を交換する交叉(binomial crossover)を用い,DE///exp は,指数関数的に減少する確率で遺伝子を交換する交叉(exponential crossover)を用いる.
DEでは,探索空間中にランダムに初期個体を生成し,初期集団を構成する. 各個体は決定ベクトルに対応し,個の決定変数を遺伝子として持つ. 各世代において,全ての個体を親として選択する. 各親に対して,次のような処理が行われる. 突然変異のために,選択された親を除く個体群から互いに異なる個の個体を選択する. 最初の個体が基本ベクトルとなり,残りの個体対が差分ベクトルとなる. 差分ベクトルは(scaling factor)が乗算され基本ベクトルに加えられる. その結果得られたベクトルと親が交叉し,(crossover rate)により指定された確率で親の遺伝子をベクトルの要素で置換することにより,子のベクトル(trial vector)が生成される. 最後に,生存者選択として,子が親よりも良ければ,親を子で置換する.