NSGA-II does not solve problem ZDT4 when stopping at 25000 evaluations, so there is an error somewhere that I have not detected so far. However, the fronts obtained when solving problems Schaffer, Kursawe, ZDT1, ZDT2, ZDT3, and ZDT6 are as expected.
I have checked that that implementation of the problem is correct. Furthermore, NSGA-II produces the expected front when configured with about 75000 function evaluations.
NSGA-II does not solve problem ZDT4 when stopping at 25000 evaluations, so there is an error somewhere that I have not detected so far. However, the fronts obtained when solving problems Schaffer, Kursawe, ZDT1, ZDT2, ZDT3, and ZDT6 are as expected.