Which language is accepted by this Muller Automaton?
The solution given is incorrect.

The first clue that this might be the case is that $(a+b)^*(a+b)^\omega$ is a strange way to write anything: any finite number of $a$s and/or $b$s, followed by infinitely many $a$s and/or $b$s is just infinitely many $a$s and/or $b$s, so the given language is just a strange way of writing $(a+b)^\omega$.

Muller automata accept if the set of states visited infinitely often is one of the specified sets.
To see that the automaton doesn't accept $(a+b)^\omega$, consider the word $a^\omega$. This is a member of $(a+b)^\omega$ but it's not accepted by the automaton, since the run on that word visits every state infinitely often, and $\{p,q,r\}$ is not an accepting set.

If exactly two of the automaton's states are visited infinitely often, then there must be a point at which the third state is never visited again. From that point onwards, the automaton can only alternate between the remaining two states, so any accepted word must end $(ab)^\omega$. While the automaton is still visiting all three states, it can read in any word so, yes, the accepted language is $(a+b)(ab)^\omega$.