A tip: I highly recommend not trying to create these sorts of calculations in a single field, precisely for the reasons that you have just experienced.
It's a lot easier when you have long, complex calculations to break them down into individual parts. That way you can see what part of the calculation is failing to evaluate correctly.
In this case, I recommend that you create one field that evaluates whether the user has selected a "known" answer, then another field to evaluate whether they have selected an "unknown" answer.
Once you have those fields evaluating correctly, set your constraint based on whether they have selected both a "known" and an "unknown".
I have attached a working example of this below.


FWIW, the problem with your calculation is is that you aren't using any joiner (eg "and" or "or") in your expression. So the calculation is asking the app to look for an answer that is literally:
‘ImpairedHearing’,'ImpairedVision', 'Developmental/CognitiveDisability', 'DifficultyUnderstandingEnglish', 'DifficultyUnderstandingWrittenMaterial'
That will only happen when you have selected every answer from 1-5. You entire expression will only evaluate to true when you select all 8 answers at once.
You could do this in a single field by using a calculation similar to:
not ((selected(.,'ImpairedHearing') or selected(.,'ImpairedVision')) and (selected(., 'NoneAbove) or selected(.,'DontKnow')))
But I really suggest that you not do that sort of thing. It's a real pain to debug.