I disagree it is them at the root cause of this inconvenience.
If I were implementing a seating algorithm, my instinct would be to sit members of the same booking together. Presumably members of the same booking are family or friends.
However the actual algorithm the airlines chose to use do not do this. This must be a conscious decision. And the reason for that is they want you to pay extra to sit together.
They have decided to make the deliberate choice to not seat families together.
They have decided that their profits are more important than your annoyance.