Gradients of bliss

Can organisms driven only by more or less pleasure behave as well as those driven by pain and pleasure?

Author
Manu Herrán
Code
gaiabasic-projects/gradients-of-bliss
Status
Concept and simulation design
Started at
Sentience Research
Open draft. This project is being developed in the open. The text is incomplete and the code uses the planned GaiaBasic API, so it will change. Comments and collaboration are welcome on GitHub.

The question

David Pearce has proposed that future beings, possibly through genetic engineering, could be motivated by gradients of bliss: by more or less pleasure, instead of by pain and pleasure. This project asks whether organisms motivated only by pleasure gradients can show the same behaviour, and survive as well, as organisms motivated by both.

Design in GaiaBasic

  1. Define the physical expression of pleasure: an incentive to stay in a state or to approach it. Define pain: an incentive to avoid a state or to change it.
  2. Simulate two kinds of organism, one with the full range and one with a pleasure-only range, and expose them to the same environments.
  3. Compare their behaviour and their survival.
import gaiabasic as gb

w = gb.World("bliss", seed=11)
w.populate(gb.species.Rabbit, n=200, tag="pain+pleasure",
           valence=gb.Valence.full())              # range -1 .. +1
w.populate(gb.species.Rabbit, n=200, tag="pleasure-only",
           valence=gb.Valence.gradient(0.2, 1.0))   # never below 0.2
w.environment.add(gb.hazards.Predators(), gb.hazards.Cold(), gb.hazards.Toxins())

r = w.run(steps=40_000)
r.survival_by("tag").plot()
r.behaviour_similarity("pain+pleasure", "pleasure-only")

What would count as a result

The most interesting result would be strong evidence that the same behaviour can come from either system. If it cannot, the project would study why: which situations need pain, and whether a steeper pleasure gradient can replace it.

A caveat: real-world evolutionary success is hard to predict from simulations, so a positive result would be an argument, not a proof.

Status

Concept and simulation design. Next step: implement the required GaiaBasic components and publish the code and results here.

Related: Short version in Examples · Concepts · Documentation.