I'm using the method of Lagrange multipliers.
Optimization problem is to maximize $$\begin{align} Q &= \sum_d \sum_n \left[ \sum_z p(z|d,w_{dn}) \log p(z_{dn}) \\ + \sum_z p(z|d, w_{dn}) \log p(d|z_{dn}) \\ + \sum_z p(z|d, w_{dn}) \log p(w_{dn}|z_{dn}) \right] \end{align}$$ with respect to $p(d|z)$, subject to $\sum_d p(d|z) = 1$ for each $z$.
Lagrange function is $$H = Q + \sum_z \lambda_z \left(\sum_d p(d|z)-1 \right)$$
I'm now stuck at calculating ${\partial H}/{\partial p(d|z)}$.
For $Q$, I should focus on $\sum_z p(z|d, w_{dn}) \log p(d|z_{dn})$ and use $(\log(x))^{'} = 1/x$. Does $\partial Q / \partial p(d|z)$ become $$\frac{\partial Q }{ \partial p(d|z)} = \sum_d \sum_n \sum_z \frac{p(z|d,w_{dn})}{p(d|z_{dn})} \ \ ?$$
And for the second term, since $\partial \sum_d p(d|z) / \partial p(d|z)$ is $\sum_d 1 = d$, is it $\sum_z \lambda_z (d-1)$?