SlideShare a Scribd company logo
1 of 15
An Algorithm for Piano Pedagogy through
 MIDI Protocol and Computer Software

                 Lee Cheng
         The University of Hong Kong
              leecheng@hku.hk




                                       CITE Research Symposium 2010
Introduction

What IT have we been using in Music Education?




                                           CITE Research Symposium 2010
Introduction

What IT have we been using in other subjects?




                                           CITE Research Symposium 2010
Introduction

How about Piano Pedagogy?

                            It tells you when to play the notes.
                            Students cannot learn rhythms!

                            What about
                            Dynamics?
                            Phrasing?
                            Tempo?




                                                   CITE Research Symposium 2010
How the Computer Interpret Music?

 Note - Number
 (C4 = 60, C#4 = 61, etc)

 Time - Timestamp
 (1st beat = 0s, 2nd beat = 3s, 3rd beat = 6s, etc)

 Dynamics - Velocity
 (f/forte = 90, mf/mezzo forte = 60)

 Duration - Timestamp from NoteOn to NoteOff
 (NoteOn at 3s, NoteOff at 7.5s, Duration = 4.5s)

                                                CITE Research Symposium 2010
The Problem
Pianist have different tempo (speed) with the score.

How can the computer know where the pianist is playing?




                                                CITE Research Symposium 2010
The Algorithm for Piano Pedagogy

 An integrated algorithm including:

   Longest Common Music Subsequence (LCMS) Algorithm
   (for music-to-score alignment)

   Note Correctness

   Tempo Change

   Phrasing

   Dynamic Change
                                           CITE Research Symposium 2010
LCMS Algorithm

Derived from Longest Common Subsequence (LCS) algorithm.
function LCS (X[1..m], Y[1..n])                    func%on	
  LCMS	
  (X[1..m],	
  Y[1..n])
   C = array[0..m,0..n]                               C = array[0..m,0..n]
   for i := 0..m                                      for i := 0..m
       C[i,0] = 0                                        C[i,0] = 0
   for j := 0..n                                      for j := 0..n
       C[0,j] = 0                                        C[0,j] = 0
   for i := 1..m                                      for i := 1..m
       for j := 1..n                                     for j := 1..n
           if X[i] = Y[j]                                       for k := 0..9
               C[i,j] := C[i-1,j-1] + 1                               if X[i].note[0] = Y[j]note[k]
           else                                                           C[i,j] := C[i-1,j-1] + 1
               C[i,j] := max(C[i,j-1], C[i-1,j])                          break
   return C[m,n]                                                C[i,j] := max(C[i,j-1], C[i-1,j])
                                                      return C[m,n]



                                                                                 CITE Research Symposium 2010
LCMS Algorithm
The function of LCS algorithm:
           Seq. 1: ABCFEGFDE
           Seq.2: ABCEAFDE
LCS(Seq.1, Seq2): ABCEFDE

What is more for LCMS algorithm:
 Handle chords
 i.e. more than one elements at the same time
          A     D           G
          FEDBCBGABE
          D     G           C
                                          CITE Research Symposium 2010
Note Correctness


Playing the right note?

Playing at the right time?

Playing for the right duration?




                                  CITE Research Symposium 2010
Tempo Change

Global Tempo Change

  Pianist’s self-assigned tempo
                vs.
     Tempo listed on score

Tempo Consistence

  Is the pianist playing at the same tempo throughout
  the piece?

  Check the timestamp of music against the score
                                           CITE Research Symposium 2010
Phrasing

  Is a note played within the acceptable time range?

  Is a note played harder/softer than the previous note?


             Dynamic Change

Is the piece played at the acceptable dynamic range?

Is a phrase played harder/softer than the previous phrase?
                                                CITE Research Symposium 2010
Trial Implementation




                   CITE Research Symposium 2010
Conclusion

It is possible to learn elementary piano playing through
computer means.

For advanced level of piano learning, more to consider:

  Style, interpretation of score, etc

Implementation in school music lesson?

  Venue change from music room to computer room

  Every computer to have MIDI keyboard equipped
                                               CITE Research Symposium 2010
End



      CITE Research Symposium 2010

More Related Content

More from CITE

The implementation of "Reading Battle" in Lam Tin Methodist Primary School
The implementation of "Reading Battle" in Lam Tin Methodist Primary SchoolThe implementation of "Reading Battle" in Lam Tin Methodist Primary School
The implementation of "Reading Battle" in Lam Tin Methodist Primary School
CITE
 
Strengthening students' reading comprehension ability (both Chinese and Engli...
Strengthening students' reading comprehension ability (both Chinese and Engli...Strengthening students' reading comprehension ability (both Chinese and Engli...
Strengthening students' reading comprehension ability (both Chinese and Engli...
CITE
 
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
CITE
 
Xiao Hu "Learning Analytics Initiatives"
Xiao Hu "Learning Analytics Initiatives"Xiao Hu "Learning Analytics Initiatives"
Xiao Hu "Learning Analytics Initiatives"
CITE
 
Tiffany Barnes "Making a meaningful difference: Leveraging data to improve le...
Tiffany Barnes "Making a meaningful difference: Leveraging data to improve le...Tiffany Barnes "Making a meaningful difference: Leveraging data to improve le...
Tiffany Barnes "Making a meaningful difference: Leveraging data to improve le...
CITE
 
Phil Winne "Learning Analytics for Learning Science When N = me"
Phil Winne "Learning Analytics for Learning Science When N = me"Phil Winne "Learning Analytics for Learning Science When N = me"
Phil Winne "Learning Analytics for Learning Science When N = me"
CITE
 
Xiao Hu "Overview of the Space of Learning Analytics and Educational Data Min...
Xiao Hu "Overview of the Space of Learning Analytics and Educational Data Min...Xiao Hu "Overview of the Space of Learning Analytics and Educational Data Min...
Xiao Hu "Overview of the Space of Learning Analytics and Educational Data Min...
CITE
 
Chi-Un Lei "Text Mining and Educational Discourse"
Chi-Un Lei "Text Mining and Educational Discourse"Chi-Un Lei "Text Mining and Educational Discourse"
Chi-Un Lei "Text Mining and Educational Discourse"
CITE
 
The Relative Importance of Paternal and Maternal Involvement as Predictors of...
The Relative Importance of Paternal and Maternal Involvement as Predictors of...The Relative Importance of Paternal and Maternal Involvement as Predictors of...
The Relative Importance of Paternal and Maternal Involvement as Predictors of...
CITE
 

More from CITE (20)

Keynote 2: Social Epistemic Cognition in Engineering Learning: Theory, Pedago...
Keynote 2: Social Epistemic Cognition in Engineering Learning: Theory, Pedago...Keynote 2: Social Epistemic Cognition in Engineering Learning: Theory, Pedago...
Keynote 2: Social Epistemic Cognition in Engineering Learning: Theory, Pedago...
 
Changing Technology Changing Practice: Empowering Staff and Building Capabili...
Changing Technology Changing Practice: Empowering Staff and Building Capabili...Changing Technology Changing Practice: Empowering Staff and Building Capabili...
Changing Technology Changing Practice: Empowering Staff and Building Capabili...
 
Traditional Large Scale Educational Assessment and the Incorporation of Digit...
Traditional Large Scale Educational Assessment and the Incorporation of Digit...Traditional Large Scale Educational Assessment and the Incorporation of Digit...
Traditional Large Scale Educational Assessment and the Incorporation of Digit...
 
Scaling up Assessment for Learning
Scaling up Assessment for LearningScaling up Assessment for Learning
Scaling up Assessment for Learning
 
Analogy, Causality, and Discovery in Science: The engines of human thought
Analogy, Causality, and Discovery in Science: The engines of human thoughtAnalogy, Causality, and Discovery in Science: The engines of human thought
Analogy, Causality, and Discovery in Science: The engines of human thought
 
Educating the Scientific Brain and Mind: Insights from The Science of Learnin...
Educating the Scientific Brain and Mind: Insights from The Science of Learnin...Educating the Scientific Brain and Mind: Insights from The Science of Learnin...
Educating the Scientific Brain and Mind: Insights from The Science of Learnin...
 
Science of Learning — Why it matters to schools and families?
Science of Learning — Why it matters to schools and families?Science of Learning — Why it matters to schools and families?
Science of Learning — Why it matters to schools and families?
 
Understanding the self through self bias
Understanding the self through self biasUnderstanding the self through self bias
Understanding the self through self bias
 
The implementation of "Reading Battle" in Lam Tin Methodist Primary School
The implementation of "Reading Battle" in Lam Tin Methodist Primary SchoolThe implementation of "Reading Battle" in Lam Tin Methodist Primary School
The implementation of "Reading Battle" in Lam Tin Methodist Primary School
 
Strengthening students' reading comprehension ability (both Chinese and Engli...
Strengthening students' reading comprehension ability (both Chinese and Engli...Strengthening students' reading comprehension ability (both Chinese and Engli...
Strengthening students' reading comprehension ability (both Chinese and Engli...
 
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
Gobert, Dede, Martin, Rose "Panel: Learning Analytics and Learning Sciences"
 
Xiao Hu "Learning Analytics Initiatives"
Xiao Hu "Learning Analytics Initiatives"Xiao Hu "Learning Analytics Initiatives"
Xiao Hu "Learning Analytics Initiatives"
 
Tiffany Barnes "Making a meaningful difference: Leveraging data to improve le...
Tiffany Barnes "Making a meaningful difference: Leveraging data to improve le...Tiffany Barnes "Making a meaningful difference: Leveraging data to improve le...
Tiffany Barnes "Making a meaningful difference: Leveraging data to improve le...
 
Phil Winne "Learning Analytics for Learning Science When N = me"
Phil Winne "Learning Analytics for Learning Science When N = me"Phil Winne "Learning Analytics for Learning Science When N = me"
Phil Winne "Learning Analytics for Learning Science When N = me"
 
Xiao Hu "Overview of the Space of Learning Analytics and Educational Data Min...
Xiao Hu "Overview of the Space of Learning Analytics and Educational Data Min...Xiao Hu "Overview of the Space of Learning Analytics and Educational Data Min...
Xiao Hu "Overview of the Space of Learning Analytics and Educational Data Min...
 
Chi-Un Lei "Text Mining and Educational Discourse"
Chi-Un Lei "Text Mining and Educational Discourse"Chi-Un Lei "Text Mining and Educational Discourse"
Chi-Un Lei "Text Mining and Educational Discourse"
 
Using Knowledge Forum (KF) for Scientific Inquiry: A Sharing of School Based ...
Using Knowledge Forum (KF) for Scientific Inquiry: A Sharing of School Based ...Using Knowledge Forum (KF) for Scientific Inquiry: A Sharing of School Based ...
Using Knowledge Forum (KF) for Scientific Inquiry: A Sharing of School Based ...
 
以學生為中心的電子學習
以學生為中心的電子學習以學生為中心的電子學習
以學生為中心的電子學習
 
透過維基平台優化特殊學校中家政科學與教
透過維基平台優化特殊學校中家政科學與教透過維基平台優化特殊學校中家政科學與教
透過維基平台優化特殊學校中家政科學與教
 
The Relative Importance of Paternal and Maternal Involvement as Predictors of...
The Relative Importance of Paternal and Maternal Involvement as Predictors of...The Relative Importance of Paternal and Maternal Involvement as Predictors of...
The Relative Importance of Paternal and Maternal Involvement as Predictors of...
 

Recently uploaded

Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Krashi Coaching
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 

Recently uploaded (20)

Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
General AI for Medical Educators April 2024
General AI for Medical Educators April 2024General AI for Medical Educators April 2024
General AI for Medical Educators April 2024
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 

An algorithm for piano pedagogy through MIDI protocol and computer software

  • 1. An Algorithm for Piano Pedagogy through MIDI Protocol and Computer Software Lee Cheng The University of Hong Kong leecheng@hku.hk CITE Research Symposium 2010
  • 2. Introduction What IT have we been using in Music Education? CITE Research Symposium 2010
  • 3. Introduction What IT have we been using in other subjects? CITE Research Symposium 2010
  • 4. Introduction How about Piano Pedagogy? It tells you when to play the notes. Students cannot learn rhythms! What about Dynamics? Phrasing? Tempo? CITE Research Symposium 2010
  • 5. How the Computer Interpret Music? Note - Number (C4 = 60, C#4 = 61, etc) Time - Timestamp (1st beat = 0s, 2nd beat = 3s, 3rd beat = 6s, etc) Dynamics - Velocity (f/forte = 90, mf/mezzo forte = 60) Duration - Timestamp from NoteOn to NoteOff (NoteOn at 3s, NoteOff at 7.5s, Duration = 4.5s) CITE Research Symposium 2010
  • 6. The Problem Pianist have different tempo (speed) with the score. How can the computer know where the pianist is playing? CITE Research Symposium 2010
  • 7. The Algorithm for Piano Pedagogy An integrated algorithm including: Longest Common Music Subsequence (LCMS) Algorithm (for music-to-score alignment) Note Correctness Tempo Change Phrasing Dynamic Change CITE Research Symposium 2010
  • 8. LCMS Algorithm Derived from Longest Common Subsequence (LCS) algorithm. function LCS (X[1..m], Y[1..n]) func%on  LCMS  (X[1..m],  Y[1..n]) C = array[0..m,0..n] C = array[0..m,0..n] for i := 0..m for i := 0..m C[i,0] = 0 C[i,0] = 0 for j := 0..n for j := 0..n C[0,j] = 0 C[0,j] = 0 for i := 1..m for i := 1..m for j := 1..n for j := 1..n if X[i] = Y[j] for k := 0..9 C[i,j] := C[i-1,j-1] + 1 if X[i].note[0] = Y[j]note[k] else C[i,j] := C[i-1,j-1] + 1 C[i,j] := max(C[i,j-1], C[i-1,j]) break return C[m,n] C[i,j] := max(C[i,j-1], C[i-1,j]) return C[m,n] CITE Research Symposium 2010
  • 9. LCMS Algorithm The function of LCS algorithm: Seq. 1: ABCFEGFDE Seq.2: ABCEAFDE LCS(Seq.1, Seq2): ABCEFDE What is more for LCMS algorithm: Handle chords i.e. more than one elements at the same time A D G FEDBCBGABE D G C CITE Research Symposium 2010
  • 10. Note Correctness Playing the right note? Playing at the right time? Playing for the right duration? CITE Research Symposium 2010
  • 11. Tempo Change Global Tempo Change Pianist’s self-assigned tempo vs. Tempo listed on score Tempo Consistence Is the pianist playing at the same tempo throughout the piece? Check the timestamp of music against the score CITE Research Symposium 2010
  • 12. Phrasing Is a note played within the acceptable time range? Is a note played harder/softer than the previous note? Dynamic Change Is the piece played at the acceptable dynamic range? Is a phrase played harder/softer than the previous phrase? CITE Research Symposium 2010
  • 13. Trial Implementation CITE Research Symposium 2010
  • 14. Conclusion It is possible to learn elementary piano playing through computer means. For advanced level of piano learning, more to consider: Style, interpretation of score, etc Implementation in school music lesson? Venue change from music room to computer room Every computer to have MIDI keyboard equipped CITE Research Symposium 2010
  • 15. End CITE Research Symposium 2010