Savant Tony Wu – Jay Ni – Deri Kusuma Automated music improvisation 1 Special Thanks to: Prof. Plummer and Cristina Pop and our testers: Tim Lambert, Adriana.

Slides:



Advertisements
Similar presentations
Orinthology Mill Creek Middle School Science Olympiad 2010.
Advertisements

TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
1 A B C
You have been given a mission and a code. Use the code to complete the mission and you will save the world from obliteration…
Fill in missing numbers or operations
Advanced Piloting Cruise Plot.
1 Copyright © 2010, Elsevier Inc. All rights Reserved Fig 2.1 Chapter 2.
By D. Fisher Geometric Transformations. Reflection, Rotation, or Translation 1.
Business Transaction Management Software for Application Coordination 1 Business Processes and Coordination.
Credit hours: 4 Contact hours: 50 (30 Theory, 20 Lab) Prerequisite: TB143 Introduction to Personal Computers.
Scalable Routing In Delay Tolerant Networks
Continuous Numerical Data
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
CALENDAR.
0 - 0.
ALGEBRAIC EXPRESSIONS
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
MULTIPLYING MONOMIALS TIMES POLYNOMIALS (DISTRIBUTIVE PROPERTY)
ADDING INTEGERS 1. POS. + POS. = POS. 2. NEG. + NEG. = NEG. 3. POS. + NEG. OR NEG. + POS. SUBTRACT TAKE SIGN OF BIGGER ABSOLUTE VALUE.
MULTIPLICATION EQUATIONS 1. SOLVE FOR X 3. WHAT EVER YOU DO TO ONE SIDE YOU HAVE TO DO TO THE OTHER 2. DIVIDE BY THE NUMBER IN FRONT OF THE VARIABLE.
SUBTRACTING INTEGERS 1. CHANGE THE SUBTRACTION SIGN TO ADDITION
MULT. INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
FACTORING Think Distributive property backwards Work down, Show all steps ax + ay = a(x + y)
Teacher Name Class / Subject Date A:B: Write an answer here #1 Write your question Here C:D: Write an answer here.
Addition Facts
1 9 Moving to Design Lecture Analysis Objectives to Design Objectives Figure 9-2.
ZMQS ZMQS
A Fractional Order (Proportional and Derivative) Motion Controller Design for A Class of Second-order Systems Center for Self-Organizing Intelligent.
Con Law Card Answers.
Turing Machines.
PP Test Review Sections 6-1 to 6-6
ABC Technology Project
TV Show Trivia Princeton Puzzle Hunt Do NOT flip over your answer sheet!
Hash Tables.
O X Click on Number next to person for a question.
© S Haughton more than 3?
Operating Systems Operating Systems - Winter 2010 Chapter 3 – Input/Output Vrije Universiteit Amsterdam.
Twenty Questions Subject: Twenty Questions
Success with ModelSmart3D Pre-Engineering Software Corporation Written by: Robert A. Wolf III, P.E. Copyright 2001, Pre-Engineering Software Corporation,
BSE-in-NX 2.0 Integrated Plug-in for NX Users BSE-in-NX 2.0 Feature Overview December 5, 2013.
Squares and Square Root WALK. Solve each problem REVIEW:
Adding Up In Chunks.
Lets play bingo!!. Calculate: MEAN Calculate: MEDIAN
Past Tense Probe. Past Tense Probe Past Tense Probe – Practice 1.
This, that, these, those Number your paper from 1-10.
Executional Architecture
1 IPSI 2003 © 2003 T. Abou-Assaleh, N. Cercone, & V. Keselj An Overview of the Theory of Relaxed Unification Tony Abou-Assaleh Nick Cercone & Vlado Keselj.
1 First EMRAS II Technical Meeting IAEA Headquarters, Vienna, 19–23 January 2009.
Before Between After.
“Overcome Evil With Good” Introduction  Romans 12:17-21  1 st Peter 3:8-9.
Addition 1’s to 20.
25 seconds left…...
Test B, 100 Subtraction Facts
Click Here to Begin. 1. I can ______ well. play soccer sing drive a truck clean a building.
Week 1.
We will resume in: 25 Minutes.
Funcitions of Functions Functions of Functions
Chopin: Prelude Number 15 in Db Major "Raindrop" Opus 28.
O X Click on Number next to person for a question.
1.step PMIT start + initial project data input Concept Concept.
Columbus State Community College
Rewriting a Song In a Different Key Why Transpose? 1.Accommodate a singer’s range 2.Find a more “guitar friendly” key 3.Return the song to its original.
What is music? Music is the deliberate organization of sounds by people for other people to hear.
Customizable Audio Kaleidoscope Agustya Mehta, Dennis Ramdass, Tony Hwang Final Project Spring 2007.
Final Presentation Simon McNeilly Supervisors Dr. Lloyd Allison Jon McCormack Melody Generation by Phrase.
Journal  Highland Cathedral – Mass band, Breman 2008 
Chapter 8 Diatonic Harmony
Introduction to Music Theory
Presentation transcript:

Savant Tony Wu – Jay Ni – Deri Kusuma Automated music improvisation 1 Special Thanks to: Prof. Plummer and Cristina Pop and our testers: Tim Lambert, Adriana Miu, Jon Lau, and You Li

Architecture 2

Algorithms 3

Music Representation 4 - Screenshot of Cakewalk Music Creator 3 Note Time Pitch

Note Representation 5 Struck time Pitch Release time Velocity = struck volume Time Volume (db)

Music Timing beats per minute 1 tick 125 ms 1 beat 0.5 sec 1 measure Tempo (beats per 4 ticks per beat

Logic Architecture 7 GUI Input buffer Libraries and intermediate data structures Output buffer MIDI controller MIDI input file Input manager Decision Engines Analyzers Improvisers Output manager Synthesizer MIDI output file Logic thread Input thread Output thread Visualization Audible sound GUI thread

Real-time Music Storage 8 Circular chunklist Press noteO(1) Release noteO(1) Range queryO(A + n) Time overheadO(n) per tick Memory usageO(NL) A: number of answers n: avg. number of notes per tick N: total number of notes stored L: avg. length of notes in tick

Chord analysis – basic chord types 9 These are like basic colors in painting Other chords are simply enrichment / inversion / transposition of these basic feels majorminordimaugdomhalf dimsus4C: EnrichmentInversionTransposition(of C major)

Chord analysis – note domains 10 Important for generation! C: Id: VIIbG: IV Affinity to A, B Distance from F, Ab Affinity to F, AbAffinity to F# These are all C major chords:

Chord Analysis – Note Desirability 11 C major: Only C,E,G will sound good down here F and F# only sound good with high octaves D,A,B sound good if not too low Higher pitch has less chord determining capability

Chord Analysis – Capturing Richness 12 G dominant 7 b9 b13 G F B Eb Ab Bass Strong notes Higher notes Storing the note distribution of input captures richness beyond basic types (e.g. major, minor) C, Db, D, E, F#, A, Bb Absent

Chord Analysis – Capturing Ambiguity 13 We compute a score for each possible chord interpretation, and then pick the highest score to determine chord. CDbDEbEFF#GAbABbB M.93………….50……………… m.47…………………….70…… dim-.44…………………….34…… aug-.76…………………………… dom.23…………………………… halfdim-.45…………………….48…… …………………………………

Decoupling Motif and Chord 14 C major G Bb minor 7 9 / F = = = The same motif

Offline Motif Fitting 15 C B Bb A Ab G F# F E Eb D Db C B Bb A Ab G F# F E Eb D Db C One-to-one pitch mapping algorithm with dynamic programming Maximize objective function: REWARD chordal fitness as a function of motif and destination chord PENALTY absolute displacement, relative displacement TIME BUDGET ms per motif

Real-time Motif Fitting 16 Pitch Time Maximize objective function per assignment, given assistance level REWARD chordal fitness as a function of destination chord, consistency to assignment history PENALTY absolute displacement, collision with assignment history for neighboring notes TIME BUDGET < 1 ms per note The present input mapped

Determining Key of Piece 17 HOW? The current key is determined by the discrete convolution of the input notes with each major / minor filter. Performing Key Changes Abrupt: Using dominant chord of new tonic Smooth: Leverage current chord progression C: I – V – vi – iii – F:I – V – vi - … (C:IV – I – ii - …)

Pleasant Chord Transitions 18 Chord State MachineChord type heuristic IM, M7, M9 IIm7 IIIm, D7 IVM, M7, m VD7 VIm, m7 VIIdim, dim7, halfdim7 (From music theory)

Chord Phrasing 19 Forcing a phrase to end in a chord (e.g. V7) produces clearer phrase boundaries. C: I – iii – vi – IV – ii – V7 – I – V7 If this isnt possible… C: I – iii – vi – IV – ii – I – iii – V7 Take 2 steps back! C: I – iii – vi – IV – ii – – – V7

Savant Modes 20 ModeDescription Co-opDuet with human on harmony, human on melody. Melody is fitted to match the harmonic progression. AI Co-opDuet with AI on harmony, human on melody. Melody is fitted to match the harmonic progression. RemixAnalyzes motif and chords of input, and generates a remixed version with motif and chord substitutes. User can play along and choose to influence direction of generation, or to have input fitted to chord progression. Call & ResponseUser plays a musical phrase, and computer will respond with an equal length phrase. EmptyNo logic, just like a real piano!