FindMaximum causes kernel to quit (no more memory) at 20 variables

I basically have FindMaximum[{F,cons},z], with F[z] the highest real part of the eigenvalues of a matrix, cons are constraints, and z is a list of variables. It works great up until 20 variables, but I need to go much higher. Any ideas?

Notebook attached. The loop is artificially set for only ii=3, for which there is no problem. When you set ii=6, it hangs up on memory (at least for me using my laptop and version 8 of Mathematica)

emergencetest.nb (257 KB)