Creative Machines

Embed Size (px)

Citation preview

  • 8/13/2019 Creative Machines

    1/69

    CreativeMachines

    Joseph Wilk

  • 8/13/2019 Creative Machines

    2/69

    Romance

  • 8/13/2019 Creative Machines

    3/69

    Creativity

  • 8/13/2019 Creative Machines

    4/69

    Historical

    Creativity

    Psychological

  • 8/13/2019 Creative Machines

    5/69

  • 8/13/2019 Creative Machines

    6/69

    Combination

  • 8/13/2019 Creative Machines

    7/69

    Combination

  • 8/13/2019 Creative Machines

    8/69

    Exploration

  • 8/13/2019 Creative Machines

    9/69

    Exploration

  • 8/13/2019 Creative Machines

    10/69

    Transformation

  • 8/13/2019 Creative Machines

    11/69

  • 8/13/2019 Creative Machines

    12/69

    Transformation

  • 8/13/2019 Creative Machines

    13/69

    CreativeMachines

  • 8/13/2019 Creative Machines

    14/69

    Entropy

    Death =

    Chaos

  • 8/13/2019 Creative Machines

    15/69

  • 8/13/2019 Creative Machines

    16/69

  • 8/13/2019 Creative Machines

    17/69

  • 8/13/2019 Creative Machines

    18/69

  • 8/13/2019 Creative Machines

    19/69

  • 8/13/2019 Creative Machines

    20/69

  • 8/13/2019 Creative Machines

    21/69

    Music

  • 8/13/2019 Creative Machines

    22/69

    Complexity

  • 8/13/2019 Creative Machines

    23/69

  • 8/13/2019 Creative Machines

    24/69

    Capture

    Humancreativity

  • 8/13/2019 Creative Machines

    25/69

  • 8/13/2019 Creative Machines

    26/69

    Delta

    Theta

    Alpha

    Beta

    Gamma

  • 8/13/2019 Creative Machines

    27/69

  • 8/13/2019 Creative Machines

    28/69

  • 8/13/2019 Creative Machines

    29/69

  • 8/13/2019 Creative Machines

    30/69

  • 8/13/2019 Creative Machines

    31/69

    AnIntegrated

    ModelofMusical

    Creativity

  • 8/13/2019 Creative Machines

    32/69

    AllusionCreativity

    relies

    in

    part

    on

    the

    juxtaposition

    of

    allusionstotheworkofothers

    David Cope

  • 8/13/2019 Creative Machines

    33/69

  • 8/13/2019 Creative Machines

    34/69

    https://github.com/josephwilk/musical-creativity/blob/master/src/musical_creativity/allusion/sorcerer.clj

    https://github.com/josephwilk/musical-creativity/blob/master/src/musical_creativity/allusion/sorcerer.cljhttps://github.com/josephwilk/musical-creativity/blob/master/src/musical_creativity/allusion/sorcerer.cljhttps://github.com/josephwilk/musical-creativity/blob/master/src/musical_creativity/allusion/sorcerer.clj
  • 8/13/2019 Creative Machines

    35/69

  • 8/13/2019 Creative Machines

    36/69

  • 8/13/2019 Creative Machines

    37/69

  • 8/13/2019 Creative Machines

    38/69

  • 8/13/2019 Creative Machines

    39/69

  • 8/13/2019 Creative Machines

    40/69

  • 8/13/2019 Creative Machines

    41/69

  • 8/13/2019 Creative Machines

    42/69

  • 8/13/2019 Creative Machines

    43/69

    RecombinanceCreativitydoesnotoriginatefromavacuum

    DavidCope

  • 8/13/2019 Creative Machines

    44/69

    beat beat beat beat beat beat beat beat beatComposition

  • 8/13/2019 Creative Machines

    45/69

  • 8/13/2019 Creative Machines

    46/69

  • 8/13/2019 Creative Machines

    47/69

    beat beat beat

    beat

    beat beat beat beat beat

  • 8/13/2019 Creative Machines

    48/69

    beat beat beat beat beat beat beat beat beat

  • 8/13/2019 Creative Machines

    49/69

    beat

    Leadingvoicebeat

    beat

    beat

    beat

    beat

    beat

    beat

    beat

    72

    72

    72

    72

    {:start-notes'(53 57 62 65):destination-notes'(45 57 64 72):events'((22000 53 500 4 96)

    (22000 57 1000 3 96)(22000 62 1500 2 96)(22000 65 1000 1 96)(22500 55 500 4 96)(23000 57 1000 4 96)(23000 57 1000 3 96)

    (23000 64 1000 1 96)(23500 61 500 2 96))

    :voice-leading'((4 -8 0 b43800b-14)(9 -8 2 b43800b-14)(12 -8 7 b43800b-14)(5 0 2 b43800b-14)(8 0 7 b43800b-14)(3 2 7 b43800b-14))}

    Beatstore

  • 8/13/2019 Creative Machines

    50/69

    {:start-notes'(53 57 62 65):destination-notes'(45 57 64 72):events'((22000 53 500 4 96)

    (22000 57 1000 3 96)(22000 62 1500 2 96)(22000 65 1000 1 96)(22500 55 500 4 96)(23000 57 1000 4 96)(23000 57 1000 3 96)

    (23000 64 1000 1 96)(23500 61 500 2 96))

    :voice-leading'((4 -8 0 b43800b-14)(9 -8 2 b43800b-14)(12 -8 7 b43800b-14)(5 0 2 b43800b-14)(8 0 7 b43800b-14)(3 2 7 b43800b-14))}

    beat

    beat

    beat

    beat

    beat

    beat

    beat

    beat

    beat

    72

    72

    72

    72

    (4 -8 0 b43800b-14)

    53 - 45

    57-53

    57-57

    LeadingvoiceBeatstore

  • 8/13/2019 Creative Machines

    51/69

    {:start-notes'(53 57 62 65):destination-notes'(45 57 64 72):events'((22000 53 500 4 96)

    (22000 57 1000 3 96)(22000 62 1500 2 96)(22000 65 1000 1 96)(22500 55 500 4 96)(23000 57 1000 4 96)(23000 57 1000 3 96)

    (23000 64 1000 1 96)(23500 61 500 2 96))

    :voice-leading'((4 -8 0 b43800b-14)(9 -8 2 b43800b-14)(12 -8 7 b43800b-14)(5 0 2 b43800b-14)(8 0 7 b43800b-14)(3 2 7 b43800b-14))}

    beat

    beat

    beat

    beat

    beat

    beat

    beat

    beat

    beat

    72

    72

    72

    72

    {"bach-45-57-64-72"{:beats ("b43800b-15"

    "b43600b-62""b43300b-10""b43100b-2")}}

    Lexicon

    Beatstore

    Leadingvoice

  • 8/13/2019 Creative Machines

    52/69

    Recombinance DEMO

  • 8/13/2019 Creative Machines

    53/69

    CHEAT!

  • 8/13/2019 Creative Machines

    54/69

    BADRecombinance DEMO

  • 8/13/2019 Creative Machines

    55/69

    InfluenceCreativitydevelopswithinenfoldingandinfluencingcontext,andnotinisolation

    DavidCope

  • 8/13/2019 Creative Machines

    56/69

  • 8/13/2019 Creative Machines

    57/69

    Creativityrequireslearningandknowledgeinordertoproduceusefulratherthanarbitraryresults

    David Cope

    Learning

    Inference

  • 8/13/2019 Creative Machines

    58/69

  • 8/13/2019 Creative Machines

    59/69

    Inference&Analogy

  • 8/13/2019 Creative Machines

    60/69

  • 8/13/2019 Creative Machines

    61/69

    David Cope EmilyHowell

  • 8/13/2019 Creative Machines

    62/69

    Creative

    Machines

    Joseph Wilk

  • 8/13/2019 Creative Machines

    63/69

    itcandowhateverweknowhowtoorderittoperform

    ithasnopretensionswhatevertooriginateanything

  • 8/13/2019 Creative Machines

    64/69

    NotConscious

    (ns^{:doc"The semi-sweet representation of provided forms."} midje.parsing.3-from-lexical-maps.from-fake-maps( se midje cloj re core

  • 8/13/2019 Creative Machines

    65/69

    (:usemidje.clojure.core midje.checking.core [midje.checkers :only[exactly]] [midje.checking.checkers.defining :only[checker?]] [midje.parsing.arrow-symbols]) (:require[midje.util.exceptions :asexceptions]))

    (defn-mkfn:arg-matcher "Based on an expected value, generates a function that returns

    true if the actual value matches it." [expected] (if(and(extended-fn?expected) (not(checker?expected))) (fn[actual] (extended-=actual (exactly expected))) (fn[actual] (extended-=actual expected))))

    (defnmkfn:arg-matchers-with-arity "Generates a function that returns true if all the matchers return true for the actual args its passed." [matchers] (fn[actual-args] (let[arg-matchers(mapmkfn:arg-matchermatchers)]

    (and(=(countactual-args) (countarg-matchers)) (extended-list-=actual-args arg-matchers)))))

    (defnmkfn:arg-matchers-without-arity "Generates a function that returns true if all the matchers return true but it ignores arity matching." [matchers] (fn[actual-args] (let[arg-matchers(mapmkfn:arg-matchermatchers)] (extended-list-=actual-args arg-matchers))))

    (defmultimkfn:result-supplier(fn[arrow&_] arrow))

    (defmethodmkfn:result-supplier=> [_arrow_result] (constantlyresult))

    (defmethodmkfn:result-supplier=streams=> [_arrow_result-stream] (let[the-stream(atomresult-stream)] (fn[] (when(empty?@the-stream) (throw(exceptions/user-error "Your =stream=> ran out of values."))) (let[current-result(first@the-stream)] (swap!the-streamrest) current-result))))

    (defmethodmkfn:result-supplier=throws=> [_arrow_throwable]

    (fn[] (when-not(instance?Throwablethrowable)

    " "

    Empty

    Program

  • 8/13/2019 Creative Machines

    66/69

    Nonhuman

  • 8/13/2019 Creative Machines

    67/69

    Creativity

  • 8/13/2019 Creative Machines

    68/69

    Subconscious

    Joseph Wilk

  • 8/13/2019 Creative Machines

    69/69