back to list

representation, fuzzy logic, Manuel-tone, etc.

🔗Michael Saunders <michaelsaunders7@hotmail.com>

5/21/2001 9:40:16 AM

Recently, both Paul and Margo have asked how meantone and meantone-like
optimizations would be defined in Rusty terms. These are interesting
problems, and suggest good illustrations of Rusty. I think there are
two main ways of setting up the problem:

A. Specifying the criteria first and letting Rusty do the math.
B. Specifying only the generators and letting Rusty handle the tempers.

The second automates the traditional methods (faithfully, I hope)
while the first provides a more natural solution (to my way of thinking).
I'll outline them below using Paul's decatonic as an example:

A. Specifying the criteria first and letting Rusty do the math.

(from my thesis, section 5.5 "Pitch and Pitch Organization" p 70.)

1. Define your intervals fuzzily. E.g.,

>One generator approximates a 4/3.
>Two generators approximate a 7/4.
>Three generators approximate a 7/3.
>A half-octave approximates a 7/5.
>Two generators minus a half-octave approximate a 5/4.
>Three generators minus a half-octave approximate a 5/3.

for each named interval, create an interval object---a representation
of suitability vs. pitch distance. The problem here is to describe
how e.g., intervals other than 4/3 are suitable as 4/3. One could do
this objectively, using a dissonance curve generated by an algorithm
(like that of Plomp and Levelt or Kameoka and Kuriyakawa). It's
easier to visualize, however, if we imagine defining our personal
opinion of an interval simply as a Gaussian bell-shaped curve peaking
(=1) at 4/3, having a width (full width at half maximum) corresponing
to how much deviation from a pure interval is acceptable, and approaching
zero for intervals far from 4/3. I expect we would agree that more
complex intervals can bear less tempering than simpler ones, so that
4/3 would be a bit wider than 5/4, and so on.

2. Define a network of these intervals between the scalar degrees.
(Assuming you've defined the structure of the scale, its spelling,
that is, to suit yourself.)
c -4/3- f -4/3- b -4/3- e...
c -7/4- b...
c -7/5- gb...
c -5/4- e, etc., for every interval that's important to you.

3. Define how important each of these relationships is within
the context of the scale. E.g., the curve with which you represent
a 4/3 defines what you think about the nature of 4/3s in general,
but within the context of this tuning, the purity of the 4/3s
may be more or less important to you. This can be done based on
scale structure (i.e., spelling relationships), interval relationships
(e.g., all 4/3s), or between specific degrees (e.g., c-f is more
important than c#-f#). Note that this could be used to design
well temperaments. Internally, the Rusty algorithm sharpens or
softens the peaks according to their importance---there are also
other, global parameters which affect this, exaggerating or reversing
the effect.

4. Let the algorithm run. For each degree, it:

a. finds all pathways to any absolute pitch definitions.
b. adds up (by convolution) the fuzzy intervals along each pathway of
defined intervals. This yeilds a fuzzy interval for each pathway.
c. combines (by multiplication) the intervals of the pathways,
producing one fuzzy pitch (the fuzzy interval plus the absolute
pitch definition).
d. defuzzifies (by finding the median maximum) the fuzzy pitch,
yeilding a single, crisp pitch (but the fuzzy curve could
be very intersting to see---or to use compositionally).

I think that this way of defining the problem is the way we actually
think of it---by stating the criteria first and then trying to
achieve them in practice. The second way, of dictating the tempers
beforehand, is still interesting and useful. I've provided for it
in Rusty, and the description is in my thesis, at the end of the
long tuning section, in the subsection titled "Temperaments" on p 144.

B. Specifying only the generators and letting Rusty handle the tempers.

After performing steps 1--3 above, perhaps defining only the two
cycles of fourths and the half-octave relationship, it's possible to
apply tempers to the intervals in various ways, and of calculating
the values of the tempers in various ways. For example, I have
algorithms for finding all sequences and cycles involving a range
of intervals (e.g., anything close to a fourth) which would find the
two cycles of fourths in the definition (and deal with branching,
if there were any), find the discrepency (the "comma") and assign
tempers in whatever units (e.g., in terms of the comma) according
to pattern, accumulating errors into a wolf if necessary. There are
other, more exotic options than this, but that's a brief overview.
Having done this, one may run the optimization of the tuning as
usual, or simply take the assigned tempers (by setting all the
importances to zero with a global parameter), having used to facility
to find the cycles, commas, etc.

Margo also brings up the problem of optimally tuning a 14:18:21:24
chord. Rusty allows a number of methods for defining chords (section
6.4, p 184), including defining them as miniature tunings. So, one
could define this chord as above or use the pattern to define a
suitable tuning.

Margo, thank you for your kind regard; I've been admiring your posts
for a long time and hope to hear your music someday. If you liked
my Xenharmonikon paper, you might also enjoy another paper and the
thesis itself, available here:

http://members.fortunecity.com/odradek5/pp/rustyprogress.html

-m

_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com

🔗paul@stretch-music.com

5/21/2001 11:10:29 AM

--- In tuning@y..., "Michael Saunders" <michaelsaunders7@h...> wrote:

> I'll outline them below using Paul's decatonic as an example:
>
> A. Specifying the criteria first and letting Rusty do the math.
>
> (from my thesis, section 5.5 "Pitch and Pitch Organization" p 70.)
>
> 1. Define your intervals fuzzily. E.g.,
>
> >One generator approximates a 4/3.
> >Two generators approximate a 7/4.
> >Three generators approximate a 7/3.
> >A half-octave approximates a 7/5.
> >Two generators minus a half-octave approximate a 5/4.
> >Three generators minus a half-octave approximate a 5/3.

Well, that's not a complete list of intervals. The complete list of
intervals would be obtained by using the formula

a generators + b/2 octaves

where a and b run through all possible integers.
>
> It's
> easier to visualize, however, if we imagine defining our personal
> opinion of an interval simply as a Gaussian bell-shaped curve
peaking
> (=1) at 4/3, having a width (full width at half maximum)
corresponing
> to how much deviation from a pure interval is acceptable, and
approaching
> zero for intervals far from 4/3.

Yes, that's good enough, as long as you know which fuzzy interval is
approximating which ratio.

> I expect we would agree that more
> complex intervals can bear less tempering than simpler ones, so that
> 4/3 would be a bit wider than 5/4, and so on.

A bit wider, but a bit deeper, too.
>
> 2. Define a network of these intervals between the scalar degrees.
> (Assuming you've defined the structure of the scale, its spelling,
> that is, to suit yourself.)

This and the following can all be seen as "optional". What I've given
above is sufficient to calculate one sort of optimal temperament for
the paradigm in question. If you're interested, I can talk about the
decatonic scale itself, but that's a somewhat separate issue.

Anyway, I wonder if the topic of this thread wouldn't be more
appropriate for the tuning-math list?