Según cálculo matricial la derivada de lo que se quiere maximizar con respecto a $W$ es
$$ \frac{2 |W^TAW| |W^TBW| \left( AW (W^TAW)^{-1} - BW (W^TBW)^{-1} \right)}{|W^TBW|^2} = 0 $$ donde $|\cdot|$ representa el determinante. Por lo tanto, se necesita
$$ AW = BW (W^TBW)^{-1} (W^TAW) $$
Es fácil ver que la solución satisface $AW = BWX$ para algunos $X \in \mathbb{R}^{k \times k}$ y también
$$ \frac{|W^TAW|}{|W^TBW|} = |X| $$
Como el determinante es el producto de los valores propios, se obtiene el resultado.
Sin embargo, hay que tener en cuenta el signo de los valores propios. Por ejemplo, si los valores propios son $-1, -2, 1$ . Para $k = 1$ el maximizador es $w_3$ mientras que para $k=2$ , $W=[w_1 ~~ w_2]$ es el maximizador.
Edita: La ecuación específica en la wiki de cálculo matricial está en la tabla "Identidades: escalar por matriz" una anterior de la última fila: "A no es una función de X, X no es cuadrada, A es simétrica".
Si $AW=BWX$ entonces
$$\begin{align} AW &= BW (W^TBW)^{-1} (W^TAW)\\ &= BW (W^TBW)^{-1} (W^TBW)X\\ &= BWX \end{align}$$
Sea $X = T \tilde{X} T^{-1}$ entonces $$\begin{align} AW &= BW X\\ AW &= BW T \tilde{X} T^{-1}\\ AWT &= BW T \tilde{X}\\ A \tilde{W} &= B \tilde{W} \tilde{X} \end{align}$$
donde $\tilde{W} := WT$ . Por lo tanto, sin perder generalidad, podemos suponer que $X$ está en la forma normal de Jordan. En particular, si $X$ es diagonal, entonces sus elementos corresponden a los valores propios generalizados de $(A,B)$ . Por lo tanto, la maximización del determinante se puede hacer mediante la selección de los valores propios que tiene el máximo valor de multiplicación. (Si $X$ es triangular superior, entonces sus elementos diagonales corresponden a los valores propios).