improving improving ai decision modeling ai decision
play

Improving Improving AI Decision Modeling AI Decision Modeling - PowerPoint PPT Presentation

Improving Improving AI Decision Modeling AI Decision Modeling Through Through Utility Theory Utility Theory Dave Mark Kevin Dill Dave Mark Kevin Dill President & Lead AI Engineer President & Lead AI Engineer Designer


  1. Improving Improving AI Decision Modeling AI Decision Modeling Through Through Utility Theory Utility Theory Dave Mark Kevin Dill Dave Mark Kevin Dill President & Lead AI Engineer President & Lead AI Engineer Designer Lockheed Martin Designer Lockheed Martin Intrinsic Algorithm LLC Intrinsic Algorithm LLC

  2. Dave Mark • President & Lead Designer of Intrinsic Algorithm LLC, Omaha, NE • Independent Game Studio • AI Consulting Company • Author of Behavioral Mathematics for Game AI

  3. AIGameDev.net: Trends for 2009 in Retrospect http://aigamedev.com/open/editorial/2009-retrospective/ What's new in 2009 is: 1. There's now an agreed-upon name for this architecture: utility- based, which is much more reflective of how it works. Previous names, such as "Goal-Based Architectures" that Kevin Dill used were particularly overloaded already. 2. A group of developers advocate building entire architectures around utility, and not only sprinkling these old- school scoring-systems around your AI as you need them. The second point is probably the most controversial.

  4. We do requests… “Wow… you’ve got a lot of stuff on utility modeling in here… You should do a lecture on this stuff at the AI Summit.” Daniel Kline Outside P. F. Chang’s Stanford Mall October 2009

  5. What is “Utility Theory”? http://en.wikipedia.org/wiki/Utility In economics, utility is a measure of the relative satisfaction from, or desirability of, consumption of various goods and services. Given this measure, one may speak meaningfully of increasing or decreasing utility, and thereby explain economic behavior in terms of attempts to increase one's utility.

  6. What is “Utility Theory”? • How much is something worth to me? • Not necessarily equal to “value” – E.g. $20 might mean more or less than $20 • Allows comparisons between concepts • Allows decision analyses between competing interests • “Maximization of expected utility”

  7. What is “Utility Theory”? • Related to… – Game theory – Decision theory • Used by… – Economics John von Neumann – Business – Psychology – Biology

  8. Value Allows Analysis • Converting raw numbers to usable concepts – Distance – Ammo – Health • Converting raw numbers to useful concepts – Distance → Threat – Ammo → Reload Necessity – Health → Heal Necessity

  9. Value Allows Comparisons • By assigning value to a selection, we can compare it to others • Von Neumann and Morgenstern’s game theory • Without value, comparisons are difficult… or even impossible!

  10. Marginal Utility • Utility isn’t always the same

  11. Marginal Utility • Decreasing Marginal Utility – Each additional unit is worth less than the one before – The rate of increase of the total utility decreases – Utility of 20 slices != 20 * Utility of 1 slice Utility per Slice of Pizza Total Utility 1 5 4 3 2 1 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

  12. Marginal Utility • Increasing Marginal Utility – Each additional unit is worth more than the one before – The rate of increase of the total utility increases – Utility of 20 Lego != 20 * Utility of 1 Lego

  13. Converting Data to Concepts • What does the information say? • Raw data doesn’t mean much without context • If data is ambiguous, we can’t reason on it • Various techniques to make sense of raw data – Conversion formulas – Response curves – Normalization (e.g. 0..1)

  14. Processing One Piece of Info As the distance changes, how much anxiety do you have?

  15. Simple Rule If distance <= 30 then anxiety = 1 Binary Threshold 1.00 0.75 Anxiety 0.50 Binary 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  16. Linear Formula Anxiety = (100 – distance) / 100 Linear Threshold 1.00 0.75 Anxiety 0.50 Linear 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  17. Exponential Formula Anxiety = (100 – distance 3 ) / (100 3 ) Exponential Threshold 1.00 0.75 Anxiety 0.50 Exponential 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  18. Changing Exponents Anxiety = (100 – distance k ) / (100 k ) k = 2, 3, 4, 6 Exponent Function Variations 1.00 0.75 Anxiety 0.50 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  19. Shifting the Curve Exponent Function Variations 1.00 0.75 Anxiety 0.50 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  20. Threshold / Linear/ Exponential Exponential Threshold 1.00 0.75 Anxiety Binary 0.50 Linear Exponential 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  21. Logistic Function (One of the sigmoid – or “s-shaped” – functions) 1 = 1 y − + x e

  22. Logistic Function Anxiety = 1/(1+(2.718 x 0.45) distance+40 ) Logistic Function Threshold 1.00 0.75 Anxiety Soft threshold 0.50 Logist ic 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  23. Variations on the Logistic Curve Anxiety = 1/(1+(2.718 x 0.45) distance+40 ) Logistic Function Variations 1.00 0.75 Anxiety 0.50 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  24. Shifting the Logistic Function Anxiety = 1/(1+(2.718 x 0.45) distance+40 ) Logistic Function Variations 1.00 0.75 Anxiety 0.50 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  25. Curve Comparison Exponential Threshold 1.00 0.75 Anxiety Binary Linear 0.50 Exponent ial Logist ic 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  26. Logit Function 1 = log e − y 1 x

  27. 1 0.9 0.8 Logit Function 0.7 y = log e (x/(1- x )) 0.6 Logit Function 0.5 0.4 0.3 0.2 0.1 0 5 4 3 2 1 0 -1 -2 -3 -4 -5

  28. Logit Function y = log ? (x/(1- x )) Logit Function Variations 5 4 3 2 1 Anxiety 0 -1 -2 -3 -4 -5 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Distance

  29. Logit Function y = log e (x/(1- x ))+5 Logit Function Shifted +5 10 9 8 7 6 5 4 3 2 1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

  30. Logit Function y = (log e (x/(1- x ))+5)/10 Logit Function Shifted +5 and Divided by 10 1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

  31. How Do We Model Our Information? • Increasing or Decreasing? • Rates of change –Steady or Variable? –Inflection Point? • Amount of change –Constrained or Infinite? –Asymptotic?

  32. But What Good Is It? When Anxiety > n then… Exponential Threshold 1.00 0.75 Anxiety Binary Linear 0.50 Exponent ial Logist ic 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Distance

  33. Comparing Apples and Ammo • By using normalized utility values, we can define relationships and comparisons that otherwise would have been obscure –Risk vs. Reward (game theory) –Fear vs. Hate –Ammo vs. Health

  34. Comparing Apples and Ammo • 100 Health (Max) • 100 Ammo (Max) • 75 Health • 75 Ammo • 50 Health • 50 Ammo • 25 Health (??) • 25 Ammo • 5 Health (!!!) • 5 Ammo Normalized Importance of Taking Action 1.00 0.75 Importance Heal 0.50 Reload 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Value

  35. Comparing Apples and Ammo Normalized Importance of Taking Action 1.00 0.75 Importance Heal 0.50 Reload 0.25 0.00 0 10 20 30 40 50 60 70 80 90 100 Value • As health decreases, • As ammo decreases, urgency to heal increases urgency to reload increases • Make sure we don’t get too • Urgency hits maximum when low on health! we are out of ammo

  36. Comparing Apples and Ammo • Collect current states of independent variables • Normalize using response curves • (Combine as necessary) • Compare normalized values and select: – Highest scoring selection – Weighted random from all choices – Weighted random from top n choices

  37. Comparing Apples and Ammo Normalized Importance of Taking Action 1.00 0.684 0.75 Threat Level 0.50 Threat 0.25 0.00 0 5 10 15 20 Enemy Strength

  38. Comparing Apples and Ammo Enemies Ammo Health Normalized Importance of Taking Action 1.00 Value 5 50 50 0.684 0.75 Threat Level 0.50 Threat Utility 0.684 0.118 0.125 0.25 0.00 0 5 10 15 20 Enemy Strength Normalized Importance of Taking Action Normalized Importance of Taking Action 1.00 1.00 0.75 0.75 Importance Importance 0.50 0.50 Reload Heal 0.25 0.25 0.118 0.125 0.00 0.00 1 11 21 31 41 51 61 71 81 91 101 0 10 20 30 40 50 60 70 80 90 100 Value Value

  39. Comparing Apples and Ammo Enemies Ammo Health Normalized Importance of Taking Action 1.00 Value 5 50 35 0.684 0.75 Threat Level 0.50 Threat Utility 0.684 0.118 0.732 0.25 0.00 0 5 10 15 20 Enemy Strength Normalized Importance of Taking Action Normalized Importance of Taking Action 1.00 1.00 0.732 0.75 0.75 Importance Importance 0.50 0.50 Reload Heal 0.25 0.25 0.118 0.00 0.00 1 11 21 31 41 51 61 71 81 91 101 0 10 20 30 40 50 60 70 80 90 100 Value Value

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend