Utilitarianism
Utilitarianism is the ethical paradigm that judges the morality of an action based on whether it maximizes the good over the bad, which is typically determined via a utility function.
[Ethics is] the rules and precepts for human conduct, by the observance of which [a happy existence] might be, to the greatest extent possible, secured.
Utilitarianism
Discussion
The progenitors of classic utilitarianism, Mill and Bentham, sought to free up moral discourse and its role in political policy from the strictures of adherence to tradition, which the paradigms of deontology and virtue ethics seemed to promote. They wished to provide scientific grounds for determining which courses of action and policies would do the most moral good. This shifts the focus from determining what a good person is or what our duties are to that of determining what is good in general terms. The utility function represents the beneficial quality of a situation or object.
The debate is then what the utility function should actually measure and how to aggregate personal and societal utility functions. For example, are ‘higher’ or ‘lower’ pleasures more significant for a happy existence? Does utility fundamentally boil down to pleasures and pains as proponents of hedonistic utilitarianism hold? As an optimization problem, does minimizing pain unilaterally take higher precedence than maximizing pleasure as negative utilitarianism holds? Preference utilitarianism holds that preference fulfillment is to be maximized rather than happiness itself. So far, each choice seems to have its own pros and cons.
Utilitarian philosophies are usually consequentialist, which is the claim that the moral rightness of an act depends only on its consequences. This can appear to be an explicit rejection of any virtue and duty-based grounding of moral good. Consequentialism limits the scope of possible utility functions.
A definitional difficulty is whether to consider the paradigm of utilitarianism as being defined by a central goal of “the greatest happiness for all” or to consider “utility function-based optimization” as the defining feature of the paradigm. Given the aforementioned debates on what “happiness” means, I believe the more general, paradigmatic approach is to focus on utility function-based optimization, which could be called optimizationism1David Weinberger presents an argument that we should prioritize optimized ethical performance over being able to explain why our choices are good in the case of applied AI systems..
SUMO
(theoryPhilosophyPair Utilitarianism UtilitarianTheory)
(documentation Utilitarianism EnglishLanguage "Utilitarianism is the ethical paradigm that judges the morality of an action based on whether it maximizes the good over the bad, which is typically determined via a utility function.")
(subclass Utilitarianism Ethics)
(documentation UtilitarianTheory EnglishLanguage "A set of sentences dealing with the utility of behaviors.")
(subclass UtilitarianTheory MoralTheory)
(documentation UtilitarianSentence EnglishLanguage "A sentence of the variety of a utilitarian theory.")
(subclass UtilitarianSentence MoralSentence)
(documentation SimpleUtilitarianSentence EnglishLanguage "A sentence that assigns or compares the value of situations described by formulas.")
(subclass SimpleUtilitarianSentence UtilitarianSentence)
(documentation UtilityAssignmentSentence EnglishLanguage "A Sentence that assigns a (real) number value to a situation described by a formula.")
(subclass UtilityAssignmentSentence SimpleUtilitarianSentence)
(documentation UtilityComparisonSentence EnglishLanguage "A sentence that compares the value of two situations described by formulas.")
(subclass UtilityComparisonSentence SimpleUtilitarianSentence)
(<=>
(instance ?SENTENCE SimpleUtilitarianSentence)
(or
(instance ?SENTENCE UtilityComparisonSentence)
(instance ?SENTENCE UtilityAssignmentSentence)))
(<=>
(instance ?SENTENCE UtilitarianSentence)
(exists (?SUS)
(and
(instance ?SUS SimpleUtilitarianSentence)
(part ?SUS ?SENTENCE))))
(<=>
(instance ?U UtilitarianTheory)
(forall (?S)
(=>
(element ?S ?U)
(instance ?S UtilitarianSentence))))
(documentation UtilityFormulaFn EnglishLanguage "A UnaryFunction that maps Formulas to the net utility of that which is described. Typically, the formula should refer to an action.")
(subclass UtilityFormulaFn TotalValuedRelation)
(subclass UtilityFormulaFn UnaryFunction)
(=>
(instance ?UF UtilityFormulaFn)
(and
(domain ?UF 1 Formula)
(range ?UF RealNumber)))
(<=>
(instance ?SENTENCE UtilityAssignmentSentence)
(exists (?FORMULA ?VALUE ?UF)
(and
(equal ?SENTENCE (equal (AssignmentFn ?UF ?FORMULA) ?VALUE))
(instance ?UF UtilityFormulaFn)
(instance ?FORMULA Formula)
(instance ?VALUE Number))))
(<=>
(instance ?SENTENCE UtilityComparisonSentence)
(exists (?FORMULA1 ?FORMULA2 ?COMPARATOR ?UF)
(and
(instance ?FORMULA1 Formula)
(instance ?FORMULA2 Formula)
(instance ?UF UtilityFormulaFn)
(or
(equal ?COMPARATOR greaterThan)
(equal ?COMPARATOR lessThan)
(equal ?COMPARATOR greaterThanOrEqualTo)
(equal ?COMPARATOR lessThanOrEqualTo)
(equal ?COMPARATOR equal))
(equal ?SENTENCE (AssignmentFn ?COMPARATOR (AssignmentFn ?UF ?FORMULA1) (AssignmentFn ?UF ?FORMULA2))))))
(documentation UtilityAssignmentToValueJudgmentSentenceFn EnglishLanguage "A UnaryFunction that maps utility assignment sentences into simple value judgment sentences.")
(domain UtilityAssignmentToValueJudgmentSentenceFn 1 UtilityAssignmentSentence)
(range UtilityAssignmentToValueJudgmentSentenceFn SimpleValueJudgmentSentence)
(instance UtilityAssignmentToValueJudgmentSentenceFn TotalValuedRelation)
(instance UtilityAssignmentToValueJudgmentSentenceFn UnaryFunction)
(=>
(and
(equal (UtilityAssignmentToValueJudgmentSentenceFn ?UAS) ?VJS)
(equal ?UAS (equal (AssignmentFn ?UF ?FORMULA) ?VALUE))
(instance ?UF UtilityFormulaFn)
(instance ?FORMULA Formula)
(instance ?VALUE Number))
(and
(=>
(greaterThan ?VALUE 0)
(equal ?VJS
(modalAttribute ?FORMULA MorallyGood)))
(=>
(lessThan ?VALUE 0)
(equal ?VJS
(modalAttribute ?FORMULA MorallyBad)))
(=>
(equal ?VALUE 0)
(equal ?VJS
(modalAttribute ?FORMULA MorallyNeutral)))))
(documentation ValueJudgmentToUtilityAssignmentSentenceFn EnglishLanguage "A UnaryFunction that maps value judgment sentences to utility assignment sentences.")
(domain ValueJudgmentToUtilityAssignmentSentenceFn 1 SimpleValueJudgmentSentence)
(range ValueJudgmentToUtilityAssignmentSentenceFn UtilityAssignmentSentence)
(instance ValueJudgmentToUtilityAssignmentSentenceFn TotalValuedRelation)
(instance ValueJudgmentToUtilityAssignmentSentenceFn UnaryFunction)
(=>
(and
(equal (ValueJudgmentToUtilityAssignmentSentenceFn ?VJS) ?UAS)
(equal ?VJS (modalAttribute ?FORMULA ?MORALATTRIBUTE))
(instance ?FORMULA Formula)
(instance ?MORALATTRIBUTE MoralAttribute)
(instance ?UF UtilityFormulaFn))
(and
(=>
(equal ?MORALATTRIBUTE MorallyGood)
(equal ?UAS
(equal (AssignmentFn ?UF ?FORMULA) 1)))
(=>
(equal ?MORALATTRIBUTE MorallyBad)
(equal ?UAS
(equal (AssignmentFn ?UF ?FORMULA) -1)))
(=>
(equal ?MORALATTRIBUTE MorallyNeutral)
(equal ?UAS
(equal (AssignmentFn ?UF ?FORMULA) 0)))))
(documentation ValueJudgmentToUtilityAssignmentLikelihoodSentence EnglishLanguage "A UnaryFunction that maps value judgment sentences to utility assignment likelihood sentences.")
(domain ValueJudgmentToUtilityAssignmentLikelihoodSentence 1 SimpleValueJudgmentSentence)
(range ValueJudgmentToUtilityAssignmentLikelihoodSentence UtilitarianSentence)
(instance ValueJudgmentToUtilityAssignmentLikelihoodSentence TotalValuedRelation)
(instance ValueJudgmentToUtilityAssignmentLikelihoodSentence UnaryFunction)
(=>
(and
(equal (ValueJudgmentToUtilityAssignmentLikelihoodSentence ?VJS) ?UAS)
(equal ?VJS (modalAttribute ?FORMULA ?MORALATTRIBUTE))
(instance ?FORMULA Formula)
(instance ?MORALATTRIBUTE MoralAttribute)
(instance ?UF UtilityFormulaFn))
(and
(=>
(equal ?MORALATTRIBUTE MorallyGood)
(equal ?UAS
(modalAttribute
(greaterThan (AssignmentFn ?UF ?FORMULA) 0) Likely)))
(=>
(equal ?MORALATTRIBUTE MorallyBad)
(equal ?UAS
(modalAttribute
(lessThan (AssignmentFn ?UF ?FORMULA) 0) Likely)))
(=>
(equal ?MORALATTRIBUTE MorallyNeutral)
(equal ?UAS
(modalAttribute
(equal (AssignmentFn ?UF ?FORMULA) 0) Likely)))))