"Cheating" is simply a term imposed upon us by a culture that mistakenly believes humans are monogamous creatures. The erroneous and mythological presumption is that you must have one partner at a time, only one partner and be utterly, solely faithful to them. If you have more, you are a slut, a player, a harlot or a cheater. This is a terribly negative and destructive way to look at sex and relationships and is way past it's time.
In days of old, being branded a cheater was an emotionally violent way the Church (and other authorities of the time) used to control people and the population. Wouldn't it be nice if people embraced their sexuality, didn't make excuses for it, and refused to live by the standards of hypocritical narrow-minded religious and political nutjobs? I think so.
But the responsibility starts with the individual.
This isn't to say monogamy is wrong or shouldn't be enjoyed. If that is what you and your partner desire, have it. However, the notion of monogamy being virtuous, moral and the ONLY way it should be done is backwards, IMO.
Why do people cheat? Largely because they are not monogamous creatures.