← Back to Patent Explorer
US5736666A Expired / Lapsed US ⏱️ 0.0 years remaining

Music composition

Assignee: California Institute of Technology
•
Filing: 1996-03-20
•
Granted: 1998-04-07
•
Expires: 2016-03-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A music composition system, comprising receiving a first harmony including a first melody, analyzing the first harmony to derive in real-time a rule relating the first melody to the first harmony, receiving a second melody, and applying the rule in real-time to the second melody to produce a second harmony relating to the second melody.

Inventors

  • 👤 Rodney M. Goodman
  • 👤 Randall R. Spangler

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 13:34
CPC Classifications
G; G10; G10H; G10H1/00; G10H1/0008; G10H1/0025; G10H1/0033; G10H1/0041; G10H1/0058; G10H1/0066; G10H1/36; G10H1/38; G10H2210/00; G10H2210/101; G10H2210/105; G10H2210/111; G10H2210/131; G10H2210/136; G10H2210/145; G10H2240/00; G10H2240/171; G10H2240/281; G10H2240/295; G10H2250/00; G10H2250/311; Y; Y10; Y10S; Y10S84/00; Y10S84/09

Claims Analysis

Total Claims: 54
Claim 1
Independent Claim 199 words
A method of composing music, comprising: receiving a first series of musical notes defining a first melody having a first harmony; analyzing the first harmony within the first melody, by forming examples from the first series of musical notes, and deriving, in real-time, at least first and second rules relating to the first melody, the second rule conflicting with the first rule, and each of said first and second rules including a weight associated therewith; receiving additional notes of said melody and forming additional examples from said additional notes; determining ones of said additional examples that agree with said first rule and increasing a weight of said first rule when an example agrees with said first rule, and determining ones of said additional examples that agree with said second rule and increasing a weight of said second rule when an example agrees with said second rule; receiving another melody to which a harmony is to be formed; evaluating said another melody using both of said first and second rules; and when both said first and second rules each apply to said another melody, applying the one of said rules which has the higher weight to said melody, in real-time.
Claim 2
Independent Claim 199 words
A method of composing music, comprising: receiving a first series of musical notes defining a first melody having a first harmony; analyzing the first harmony within the first melody, by forming examples from the first series of musical notes, and deriving, in real-time, at least first and second rules relating to the first melody, the second rule conflicting with the first rule, and each of said first and second rules including a weight associated therewith; receiving additional notes of said melody and forming additional examples from said additional notes; determining ones of said additional examples that agree with said first rule and increasing a weight of said first rule when an example agrees with said first rule, and determining ones of said additional examples that agree with said second rule and increasing a weight of said second rule when an example agrees with said second rule; receiving another melody to which a harmony is to be formed; evaluating said another melody using both of said first and second rules; and when both said first and second rules each apply to said another melody, applying the one of said rules which has the higher weight to said melody, in real-time.
Claim 3
Independent Claim 81 words
A method of analyzing musical information, comprising: converting the musical information from MIDI format to figured bass format; generating an example table from the figured bass musical information; determining a plurality of rules, each rule determined from two distinct examples within said example table, which are different than one another, one property of each rule relating to statistics of musical information in the examples; and applying filtering, segmentation, and subsumption pruning to the rule; and generating dependency data using the rule.
Claim 4
Independent Claim 81 words
A method of analyzing musical information, comprising: converting the musical information from MIDI format to figured bass format; generating an example table from the figured bass musical information; determining a plurality of rules, each rule determined from two distinct examples within said example table, which are different than one another, one property of each rule relating to statistics of musical information in the examples; and applying filtering, segmentation, and subsumption pruning to the rule; and generating dependency data using the rule.
Claim 5
Independent Claim 104 words
A method of analyzing musical information, comprising: converting the musical information from MIDI format to figured bass format; generating an example table from the figured bass musical information; determining a plurality of rules, each rule determined from two distinct examples within said example table, which are different than one another, one property of each rule relating to statistics of musical information in the examples; wherein said determining a rule using the example table comprises calculating a hash value for an example; forming a preliminary rule linking the hash value to an attribute to be inferenced; and subjecting the preliminary rule to a quality test.
Claim 6
Independent Claim 104 words
A method of analyzing musical information, comprising: converting the musical information from MIDI format to figured bass format; generating an example table from the figured bass musical information; determining a plurality of rules, each rule determined from two distinct examples within said example table, which are different than one another, one property of each rule relating to statistics of musical information in the examples; wherein said determining a rule using the example table comprises calculating a hash value for an example; forming a preliminary rule linking the hash value to an attribute to be inferenced; and subjecting the preliminary rule to a quality test.
Claim 7
Dependent Claim 37 words
The method of claim 3, further comprising: calculating hash values for a plurality of examples; and wherein the subjecting comprises rejecting the preliminary rule if an insufficient quantity of examples correspond to the preliminary rule's hash value.
Claim 8
Dependent Claim 47 words
The method of claim 3, further comprising: calculating hash values for a plurality of examples; and the quality test comprises rejecting the preliminary rule if the preliminary rule's hash value corresponds to an insufficient quantity of examples having a particular value of the attribute to be inferenced.
Claim 9
Dependent Claim 30 words
The method of claim 3 further comprising calculating a J-measure for the preliminary rule, wherein the quality test comprises rejecting the preliminary rule if the preliminary rule's J-measure is insufficient.
Claim 10
Dependent Claim 24 words
The method of claim 2 wherein the rule is filtered out if the rule disregards a current melody note in determining a chord function.
Claim 11
Dependent Claim 50 words
The method of claim 2 further comprising deriving a plurality of rules; organizing the rules in a rulebase; and segmenting the rulebase into a plurality of new rulebases; wherein a first new rulebase includes rules having a desired attribute; and a second new rulebase includes rules lacking the desired attribute.
Claim 12
Independent Claim 98 words
A method of producing a database of rules for producing musical sounds, comprising: using first musical sounds as examples to derive a plurality of rules; organizing the rules in a rulebase; and removing a first rule from the rulebase if: the first rule and a second rule predict a same value of a same attribute, the first rule has more attributes than the second rule, all of the attributes of the first rule are present with substantially the same values in the second rule, and the second rule is correct at least as often as the first rule.
Claim 13
Independent Claim 98 words
A method of producing a database of rules for producing musical sounds, comprising: using first musical sounds as examples to derive a plurality of rules; organizing the rules in a rulebase; and removing a first rule from the rulebase if: the first rule and a second rule predict a same value of a same attribute, the first rule has more attributes than the second rule, all of the attributes of the first rule are present with substantially the same values in the second rule, and the second rule is correct at least as often as the first rule.
Claim 14
Dependent Claim 36 words
The method of claim 9 further comprising determining that two rules are dependent if both rules are activated in at least half of the instances in which at least one of the two rules is activated.
Claim 15
Dependent Claim 133 words
A music composition system comprising an analyzer receiving a first harmony including a first melody and deriving in real-time a first rule relating the first melody to the first harmony and a weight for the first rule based on statistical information in the first melody and first harmony, wherein the analyzer derives a second rule in real-time relating the first melody to first harmony and a weight for the first rule based on statistical information, the second rule conflicting with the first rule; and a harmonizer receiving a second melody and applying the first rule in real-time to the second melody to produce a second harmony relating to the second melody, said harmonizer comparing the first rule to the second rule and determining which of said rules to use based on said weights.
Claim 16
Dependent Claim 133 words
A music composition system comprising an analyzer receiving a first harmony including a first melody and deriving in real-time a first rule relating the first melody to the first harmony and a weight for the first rule based on statistical information in the first melody and first harmony, wherein the analyzer derives a second rule in real-time relating the first melody to first harmony and a weight for the first rule based on statistical information, the second rule conflicting with the first rule; and a harmonizer receiving a second melody and applying the first rule in real-time to the second melody to produce a second harmony relating to the second melody, said harmonizer comparing the first rule to the second rule and determining which of said rules to use based on said weights.
Claim 17
Independent Claim 112 words
A method of converting musical information of a musical piece from MIDI format to figured bass format, comprising transposing the musical piece to a standard key; segmenting the transposed musical piece into chords by beginning a new chord whenever a voice changes pitch; attempting to match each chord with a known chord to produce identified chords each having a root and a type; determining a position for each voice of each identified chord by comparing each voice's pitch with pitches allowed in the voice's matching known chord; and attempting to match each identified chord with a known function by comparing each identified chord's root and type with a table of common functions.
Claim 18
Independent Claim 112 words
A method of converting musical information of a musical piece from MIDI format to figured bass format, comprising transposing the musical piece to a standard key; segmenting the transposed musical piece into chords by beginning a new chord whenever a voice changes pitch; attempting to match each chord with a known chord to produce identified chords each having a root and a type; determining a position for each voice of each identified chord by comparing each voice's pitch with pitches allowed in the voice's matching known chord; and attempting to match each identified chord with a known function by comparing each identified chord's root and type with a table of common functions.
Claim 19
Dependent Claim 104 words
A musical information analyzer, comprising a converter receiving musical information in MIDI format and producing musical information in figured bass format; a table generator deriving an example table from the figured bass musical information; and a rule generator, determining a plurality of rules, each rule determined from the two distinct examples which are different than one another, one property of each rule relating to statistics of musical information in the examples; a filter applying filtering to the rule; a rule segmenter applying segmentation to the rule; a pruner applying subsumption pruning to the rule; and a dependence analyzer generating dependence data using the rule.
Claim 20
Dependent Claim 104 words
A musical information analyzer, comprising a converter receiving musical information in MIDI format and producing musical information in figured bass format; a table generator deriving an example table from the figured bass musical information; and a rule generator, determining a plurality of rules, each rule determined from the two distinct examples which are different than one another, one property of each rule relating to statistics of musical information in the examples; a filter applying filtering to the rule; a rule segmenter applying segmentation to the rule; a pruner applying subsumption pruning to the rule; and a dependence analyzer generating dependence data using the rule.
Claim 21
Dependent Claim 115 words
A musical information analyzer, comprising a converter receiving musical information in MIDI format and producing musical information in figured bass format; a table generator deriving an example table from the figured bass musical information; and a rule generator, determining a plurality of rules, each rule determined from the two distinct examples which are different than one another, one property of each rule relating to statistics of musical information in the examples; wherein the rule generator comprises a hash calculator calculating a hash value for an example; a preliminary rule generator forming a preliminary rule linking the hash value to an attribute to be inferenced; and a tester subjecting the preliminary rule to a quality test.
Claim 22
Dependent Claim 115 words
A musical information analyzer, comprising a converter receiving musical information in MIDI format and producing musical information in figured bass format; a table generator deriving an example table from the figured bass musical information; and a rule generator, determining a plurality of rules, each rule determined from the two distinct examples which are different than one another, one property of each rule relating to statistics of musical information in the examples; wherein the rule generator comprises a hash calculator calculating a hash value for an example; a preliminary rule generator forming a preliminary rule linking the hash value to an attribute to be inferenced; and a tester subjecting the preliminary rule to a quality test.
Claim 23
Dependent Claim 39 words
The analyzer of claim 14, wherein the hash calculator calculates hash values for a plurality of examples; and the quality test comprises rejecting the preliminary rule if an insufficient quantity of examples correspond to the preliminary rule's hash value.
Claim 24
Dependent Claim 49 words
The analyzer of claim 14, wherein the hash calculator calculates hash values for a plurality of examples; and the quality test comprises rejecting the preliminary rule if the preliminary rule's hash value corresponds to an insufficient quantity of examples having a particular value of the attribute to be inferenced.
Claim 25
Dependent Claim 33 words
The analyzer of claim 14 further comprising a J-measure calculator calculating a J-measure for the preliminary rule, wherein the quality test comprises rejecting the preliminary rule if the preliminary rule's J-measure is insufficient.
Claim 26
Dependent Claim 24 words
The analyzer of claim 13 wherein the filter removes the rule if the rule disregards a current melody note in determining a chord function.
Claim 27
Dependent Claim 63 words
The analyzer of claim 13 wherein the rule generator derives a plurality of rules; a rule organizer organizes the rules in a rule base; and the rule segmenter segments the rule base into a plurality of new rule bases; wherein a first new rule base contains rules having a desired attribute; and a second new rule base contains rules lacking the desired attribute.
Claim 28
Dependent Claim 91 words
The analyzer of claim 13 wherein: the rule generator derives a plurality of rules; a rule organizer organizes the rules in a rulebase; and the pruner removes a first rule from the rulebase if: the first rule and a second rule predict a same value of a same attribute, the second rule has more attributes than the first rule, all of the attributes of the first rule are present with the same values in the second rule, and the second rule is correct at least as often as the first rule.
Claim 29
Dependent Claim 48 words
The analyzer of claim 13 wherein the rule generator derives a plurality of rules; and the dependence analyzer determines that two rules are dependent if said two rules are activated in at least half of the instances in which at least one of the two rules is activated.
Claim 30
Independent Claim 126 words
A system which converts musical information of a musical piece from MIDI format to figured bass format, comprising a key transposer transposing the musical piece to a standard key; a segmenter segmenting the transposed musical piece into chords by beginning a new chord whenever a voice changes pitch; a chord matcher attempting to match each chord with a known chord to produce identified chords each having a root and a type; a position determiner determining a position for each voice of each identified chord by comparing each voice's pitch with pitches allowed in the voice's matching known chord; and a function matcher attempting to match each identified chord with a known function by comparing each identified chord's root and type with a table of common functions.
Claim 31
Independent Claim 126 words
A system which converts musical information of a musical piece from MIDI format to figured bass format, comprising a key transposer transposing the musical piece to a standard key; a segmenter segmenting the transposed musical piece into chords by beginning a new chord whenever a voice changes pitch; a chord matcher attempting to match each chord with a known chord to produce identified chords each having a root and a type; a position determiner determining a position for each voice of each identified chord by comparing each voice's pitch with pitches allowed in the voice's matching known chord; and a function matcher attempting to match each identified chord with a known function by comparing each identified chord's root and type with a table of common functions.
Claim 32
Independent Claim 97 words
A method of composing music, comprising: obtaining a sample of music whose style is to be analyzed; producing a plurality of examples from said sample of music; generating a plurality of rules from the plurality of examples, said rules predicting certain examples which follow other examples, and each said rule including weights associated therewith, said weights defining a statistical likelihood that said rule will be followed, increasing a weight of a rule when a particular example agrees with the rule; and decreasing a weight of the rule when a particular example does not agree with the rule.
Claim 33
Independent Claim 97 words
A method of composing music, comprising: obtaining a sample of music whose style is to be analyzed; producing a plurality of examples from said sample of music; generating a plurality of rules from the plurality of examples, said rules predicting certain examples which follow other examples, and each said rule including weights associated therewith, said weights defining a statistical likelihood that said rule will be followed, increasing a weight of a rule when a particular example agrees with the rule; and decreasing a weight of the rule when a particular example does not agree with the rule.
Claim 34
Dependent Claim 82 words
A method as in claim 23 further comprising: storing all of said rules into a rulebase; obtaining a melody which is to be analyzed using said rules in said rulebase; and analyzing said melody using all of said rules in said rulebase, by using said melody to fire all rules in said rulebase which are applicable to said melody, evaluating a result of firing of said rules, and resolving conflicts between conflicting rules based on said weights associated with the conflicting rules.
Claim 35
Dependent Claim 77 words
A method as in claim 24 wherein said rules relate to harmonies that are derived from melodies, and further comprising: presenting a harmony produced by a particular rule to an operator who can determine if said harmony is desirable; accepting an input from said operator indicating if said harmony is desirable; increasing the weight for the particular rule if the harmony is desirable and decreasing the weight for the particular rule if the policy is not desirable.
Claim 36
Independent Claim 126 words
A method of generating rules from a musical piece, comprising: obtaining musical information; converting said musical information to examples; determining a minimum number parameter, indicating a minimum number of agreements before a rule can be formed; comparing said examples to generate a prediction of attributes that will follow one another; determining if each said prediction has occurred before within said set of examples by a number of times having a predetermined relationship with said minimum number parameter; establishing a rule of the form "If (a) Then (b)" if said prediction has occurred said number of times having said predetermined relationship with said minimum number parameter; and establishing a weight associated with said rule, said weight indicative of a number of times that (a) correctly predicts (b).
Claim 37
Independent Claim 126 words
A method of generating rules from a musical piece, comprising: obtaining musical information; converting said musical information to examples; determining a minimum number parameter, indicating a minimum number of agreements before a rule can be formed; comparing said examples to generate a prediction of attributes that will follow one another; determining if each said prediction has occurred before within said set of examples by a number of times having a predetermined relationship with said minimum number parameter; establishing a rule of the form "If (a) Then (b)" if said prediction has occurred said number of times having said predetermined relationship with said minimum number parameter; and establishing a weight associated with said rule, said weight indicative of a number of times that (a) correctly predicts (b).
Claim 38
Dependent Claim 43 words
A method as in claim 30 wherein said rule is of the form "if attribute (A1) and attribute (A2) Then attribute (B3)" correct X percent of the time, where x is the percentage of times that attributes (A1) and (A2) predict attribute (B3).
Claim 39
Dependent Claim 20 words
A method as in claim 27, further comprising ordering said database in a way that improves use of said rules.
Claim 40
Dependent Claim 39 words
A method as in claim 28, wherein said ordering comprises determining a certain attribute which is important for a current application; and filtering the plurality of rules to prevent rules from being used which do not use that attribute.
Claim 41
Dependent Claim 24 words
A method as in claim 29 wherein said attribute is a rule which disregards a current melody note in determining a current chord function.
Claim 42
Dependent Claim 58 words
A method as in claim 28, wherein said ordering comprises determining a desired attribute for a desired application; grouping the plurality of rules based on whether they include that desired attribute; placing rules which include the desired attribute in a first segmented rulebase, and placing rules which do not include the desired attribute into a second unsegmented rulebase.
Claim 43
Dependent Claim 61 words
A method as in claim 31 further comprising: obtaining a musical melody to be applied to said database; first checking said segmented rulebase to determine if rules in said segmented rulebase meet a predetermined criteria and if so, using only the rules in said segmented rulebase; and if no rules meet the predetermined criteria, using the rules in said unsegmented rulebase.
Claim 44
Dependent Claim 16 words
A method as in claim 32 wherein the predetermined criteria is whether a rule has fired.
Claim 45
Dependent Claim 29 words
A method as in claim 23, further comprising analyzing the rules to determine rules which are depending with other rules; and removing at least some of the dependent rules.
Claim 46
Dependent Claim 47 words
A method as in claim 34 wherein said analyzing comprises: finding at least two rules which produce a same result; determining a set of examples for which each rule fires; determining an overlap for which both rules fire; and determining a percentage of dependence between the rules.
Claim 47
Independent Claim 163 words
A method of composing music, comprising: obtaining a sample of music whose style is to be analyzed; producing a plurality of examples from said sample of music; generating a plurality of rules from the plurality of examples, said rules predicting certain examples which follow other examples, and each said rule including weights associated therewith, said weights defining a statistical likelihood that said rule will be followed; storing all of said rules into a rulebase; analyzing a melody which using said rules in said rulebase to form a harmony accompanying said melody to provide an accompaniment to said melody according to said rulebase; listening to said accompaniment; and either taking no action based on said accompaniment in which case a weight which produced the harmony is unchanged, taking an action to indicate dislike of the result in which case said weight which produced the harmony is decreased, or taking an action to indicate like of the result in which case said weight is increased.
Claim 48
Independent Claim 163 words
A method of composing music, comprising: obtaining a sample of music whose style is to be analyzed; producing a plurality of examples from said sample of music; generating a plurality of rules from the plurality of examples, said rules predicting certain examples which follow other examples, and each said rule including weights associated therewith, said weights defining a statistical likelihood that said rule will be followed; storing all of said rules into a rulebase; analyzing a melody which using said rules in said rulebase to form a harmony accompanying said melody to provide an accompaniment to said melody according to said rulebase; listening to said accompaniment; and either taking no action based on said accompaniment in which case a weight which produced the harmony is unchanged, taking an action to indicate dislike of the result in which case said weight which produced the harmony is decreased, or taking an action to indicate like of the result in which case said weight is increased.
Claim 49
Dependent Claim 14 words
A method as in claim 36 wherein said increase in weight is by 0.01.
Claim 50
Dependent Claim 21 words
A method as in claim 1, wherein said first and second rules are increased in weight each time an example agrees.
Claim 51
Dependent Claim 39 words
A method as in claim 1, wherein there are more than two rules formed by said analyzing, said more than two rules form a rulebase, and wherein all of said rules in said rulebase are evaluated during said evaluating.
Claim 52
Dependent Claim 39 words
A system as in claim 11, wherein there are more than two rules formed by said analyzer, said more than two rules form a rulebase, and wherein all of said rules in said rulebase are evaluated by said analyzer.
Claim 53
Independent Claim 107 words
A method of composing music, comprising: obtaining a sample of music whose style is to be analyzed; producing a plurality of examples from said sample of music; generating a plurality of rules from the plurality of examples, said rules predicting certain examples which follow other examples, and each said rule including weights associated therewith, said weights defining a statistical likelihood that said rule will be followed; storing all of said rules into a rulebase; using said rulebase to analyze another melody, by evaluating taking all of the plurality of rules in the rulebase in parallel and then resolves any conflicts between rules based on the rule weights.
Claim 54
Independent Claim 107 words
A method of composing music, comprising: obtaining a sample of music whose style is to be analyzed; producing a plurality of examples from said sample of music; generating a plurality of rules from the plurality of examples, said rules predicting certain examples which follow other examples, and each said rule including weights associated therewith, said weights defining a statistical likelihood that said rule will be followed; storing all of said rules into a rulebase; using said rulebase to analyze another melody, by evaluating taking all of the plurality of rules in the rulebase in parallel and then resolves any conflicts between rules based on the rule weights.

References Cited (Backward Citations)

US4982643A Cited
US4951544A Cited
US5396828A Cited
US5418323A Cited
US5218153A Cited
US5308915A Cited
US5302777A Cited
US5496962A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-04-06 2001-10-06 2002-04-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-04-06 2005-10-06 2006-04-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-04-06 2009-10-06 2010-04-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag