A while back, a poster named TVAA argued that there is an objective morality of sorts, on the basis that morality is subject to evolution along with the other little built-in rewards and punishments that guide our behaviour. By his logic, the raping murderous society will eventually be out-competed by the more empathic, less selfish society (probably because the raping murderers can’t work together effectively.)
Games with cellular automata show that mindless entities operating in very simple universes can develop “morality” of a kind. When the automata interact, they can choose to “co-operate” or “welch”. Welching on a co-operator gets the most reward, mutual co-operation gets the second highest reward, mutual welching gets both automata screwed, and co-operating with a welcher (being played for a sucker) gets the co-operator royally screwed.
Under these rules, the most successful strategy is to co-operate on the first interaction with an automaton, and every encounter afterwards to do what it did last time. This is the famous “tit-for-tat”. Although “tit for tat” is hardly what we would normally think of as “moral”, it works better than simple “always welch”. “Tit-for-tat” automata accumulate more rewards than “always welch” or “always co-operate”. If you start with an assortment of automata and let them reproduce when they reach a certain score, “tit-for-tat” will simply outbreed the other strategies.
No on-line cite, but I’ve read it gets more interesting when we allow misunderstanding in the model universe that cause accidental bad interactions between the cellular automata. This is closer to the type of universe we know - you can be getting on fine with your neighbour until you accidentally scrape their car!
In this error-prone universe, “tit-for-tat-plus-random-forgiveness” works better than simple “tit for tat”. This is because simple “tit-for-tat” populations tend to get locked into unbreakable cycles of retribution due to misunderstandings. And both still work better than “always screw everyone”.
“Tit-for-tat-plus-random-forgiveness” isn’t too far from simple human moral codes. Work with people who worked with you before, punish transgressors, sometimes let bygones be bygones and try and re-establish good relations. Note that this doesn’t involve emotion or even sentience - it’s simply that some moral codes promote survival and reproduction more than others.