Operationalizing Creative Theories

B6ff5f798c18a3367b2770aa3ada0730?s=47 Chris
January 24, 2016

Operationalizing Creative Theories

Hypothetical reasoning is one of the best interdisciplinary tools we have for growing human knowledge, as it exercises imagination and empathy while yielding powerful abstractions. Operationalizing hypothetical reasoning (via programming languages) can therefore be used fruitfully in creative, imaginative activities. Conversely, pre-digital techniques for adding spontaneity and serendipity into creative work, based on collaborative play, have inspired digital interfaces and might be fruitfully extended to programming languages. I will illustrate how hypothetical reasoning and collaborative play pair well together as guiding principles, and using them, I will describe a unified design space of computational artifacts for programming, proving, storytelling, playing, and generating computational artifacts.

B6ff5f798c18a3367b2770aa3ada0730?s=128

Chris

January 24, 2016
Tweet

Transcript

  1. Operationalizing Creative Theories Chris Martens UC Santa Cruz Expressive Intelligence

    Studio OBT 2016 1
  2. 2

  3. 3

  4. 4

  5. 5 Confluence

  6. confluence of programming abstractions and interactive expression 6

  7. Roadmap ! Imaginative Play Collaborative Play Generative Methods Tool Design

    7
  8. Roadmap ! Imaginative Play Collaborative Play Generative Methods Tool Design

    8
  9. “Imaginative play: [children] must practice pretending to be someone else,

    in another place. Making up character, plot, and dialogue, for the stories they invent. They are, in truth, inventing abstract thinking.” Vivian Gussin Paley, early education researcher: 9
  10. 10

  11. Hypothetical Reasoning 11

  12. Hypothetical Reasoning wizards are real, wizards can cast spells, “accio”

    is a spell that summons an object, … ! 12
  13. magic circles Adams & Rollings 2009 13

  14. other “magic circles:” ! metacircular interpreters self-similarity & fractals recursion

    in general 14
  15. “magic” in digital games 15

  16. 16 inventory systems

  17. 17 verb/noun systems

  18. emergent behavior and surprise ! a response for every conjuring

    of the imagination ! game worlds in conversation with their players 18
  19. 19

  20. 20 Emergent Behavior

  21. 21 Simulationist Worlds e.g.: glass can break into shards rope

    is cuttable shards are sharp => glass can be broken to cut the rope
  22. 22 Simulationist Worlds

  23. 23 Inform 7

  24. Roadmap ! Imaginative Play Collaborative Play Generative Methods Tool Design

    24
  25. 25 Tabletop RPGs

  26. Surrealist games 26

  27. 27 Like programming languages, collaborative games are constrained affordances whose

    use results in a designed artifact.
  28. Chooser: decide among available rules Interpreter: what does the output

    mean? Interpreter: what do the rules mean? Co-creator: contribute rules 28 The Role of the Human
  29. Nomic [Peter Suber, 1982] 29 Game with self-modifying rules

  30. 30 Blurring the lines between design tool and designed artifact

  31. Roadmap ! Imaginative Play Collaborative Play Generative Methods Tool Design

    31
  32. 32 AKA Procedural Content Generation (PCG)

  33. Spatial level structure Character attributes NPC Dialogue Items Aesthetic components

    (visuals, music) Narrative* Game Rules* 33 What kinds of things can we generate?
  34. Level Structure: Spelunky 34

  35. Aesthetics: Secret Habitat 35

  36. Dialogue: Prom Week 36

  37. DESIGN FOR RECOMBINATION ! [Gillian Smith, “An Analogue History of

    PCG”] 37
  38. Oulipo 38

  39. 39

  40. 40

  41. Lego 41

  42. Compositionality 42

  43. Combining Hypotheticals 43

  44. Compositionality 44 Meaning Combination function

  45. Compositionality 45 With [[-]] typing, value, etc.

  46. production grammars & rewrite systems 46

  47. production grammars & rewrite systems 47

  48. Context Freeness is a form of compositionality 48

  49. 49 - Given a combined thing, its meaning can be

    determined by its parts ! - Given an atomic thing, its meaning can be understood independently of what it can be combined with Two Views of Compositionality
  50. for any new domain we want to generate, the question

    becomes: ! what are the Lego pieces? how do they compose? 50
  51. Narrative 51

  52. Vladimir Propp: Morhpology of the Folktale 52

  53. 53 Are stories compositional? + = ?

  54. 54

  55. 55 “18 Cadence” by Aaron Reed

  56. 56 A refinement of compositionality If A’s interface I(A) matches

    I(B), then I(A * B) is defined. e.g.: function composition
  57. 57 E.g. A hates B A has weapon A murders

    B B dead B hates A A insults B B hates A A hates B
  58. 58 E.g. A hates B A has weapon A murders

    B B dead B hates A A insults B B hates A A hates B
  59. B hates A 59 A hates B A has weapon

    B dead B hates A A hates B A murders B A insults B
  60. 60 symmetric monoidal categories

  61. 61

  62. 62 analogies for PCG

  63. 63 Can an automated system come up with coherent recipes?

    Or coherent programs in a given PL? (program synthesis)
  64. Mixed-initiative design: Sentient Sketchbook 64

  65. Roadmap ! Imaginative Play Collaborative Play Generative Methods Tool Design

    65
  66. Tools that lots of people use are more fun when

    they’re compositional 66
  67. Twine 67

  68. Tools that exist: Tracery 68 http://www.crystalcodepalace.com/traceryTut.html

  69. Tools that exist: Tracery 69

  70. 70 6 6¶ 6R6¶  U6R6¶    Q

     /RJLF3URJUDP LQLWLDOVWDWH Ceptre
  71. …and compositional tools are more fun when other people can

    use them 71
  72. programming a blank canvas 72

  73. compiler 73 structure Foo = struct ! fun fact 0

    = 1 | fact n = n * fact (n-1) ! end REPL
  74. compiler 74 REPL fun fact 0 = 1 | fact

    n = n * fact (n-1) fact : nat -> nat fun mapfact l = map fact l
  75. Agda emacs mode; interactive theorem provers 75 mixed-initiative compositional programming?

  76. 76 programming in conversation with a system

  77. CODA 77

  78. <3 OBT <3 78

  79. <3 OBT <3 2012 79

  80. <3 OBT <3 2012 2014 80

  81. Different Games : GDC :: OBT : POPL 81

  82. DIFFERENT GAMES are the FUTURE OF GAMES - Clara Fernandez-Vara,


    Different Games 2013 82
  83. OBT PL RESEARCH is the FUTURE OF PL RESEARCH 83

  84. Chris Martens context.adventure@gmail.com @chrisamaphone http://www.cs.cmu.edu/~cmartens 84 THANKS!

  85. Extra Slides 85

  86. 86 top-down approaches: evolutionary, constraint, planning (methods of search)

  87. 87 PCG with ASP

  88. Simulationist story generation: 88 Describe what characters are in the

    world & their relationships to one another ! Describe what story events can do to change those relationships ! Describe a termination condition ! Press play
  89. storyteller 89

  90. vi hart on structure: ! "we understand the world and

    each other through the patterns we know, but it's also important to realize the structure is there, realize how invented it all is. ! “that frees you to build new, more beautiful structures that communicate things there were no words for before, even if that new word might not be understood." 90
  91. magic circles? Pfenning & Davies 2000 91