Optimization: Difference between revisions
And EOP |
More clarifications; adopt "just tuning map" |
||
Line 5: | Line 5: | ||
== Taxonomy == | == Taxonomy == | ||
Roughly speaking, there are two types of tunings with diverging philosophies: ''prime-based tunings'' and ''target tunings''. | Roughly speaking, there are two types of tunings with diverging philosophies: ''prime-based tunings'' and ''target tunings''. | ||
* A prime-based tuning is optimized for the [[formal prime]]s, but they are representative for the set of all intervals. There are two equivalent perspectives. First, in the [[Vals and tuning space|tuning space]], it minimizes the errors of formal primes. Second, in the [[Monzos and interval space|interval space]], it rates all intervals through a norm | * A prime-based tuning is optimized for the [[formal prime]]s, but they are representative for the set of all intervals. There are two equivalent perspectives. First, in the [[Vals and tuning space|tuning space]], it minimizes the errors of formal primes. Second, in the [[Monzos and interval space|interval space]], it rates the [[complexity]] of all intervals through a norm, and it minimizes the maximum [[damage]] (i.e. error divided by complexity) for all intervals. | ||
* A target tuning is optimized for a particular set of intervals and considers the rest irrelevant. However, the interval does not get infinite complexity even if it is disregarded due to the normed nature of the interval space, so these tunings also correspond to all-interval damage minimizations of some sorts. | * A target tuning is optimized for a particular set of intervals and considers the rest irrelevant. However, the interval does not get infinite complexity even if it is disregarded due to the normed nature of the interval space, so these tunings also correspond to all-interval damage minimizations of some sorts. | ||
Line 13: | Line 13: | ||
[[File:Vector norms.svg|thumb|Comparison of norms on the space]] | [[File:Vector norms.svg|thumb|Comparison of norms on the space]] | ||
In order to perform prime-based optimization, all intervals must be rated by complexity, so it is critical to employ a [[Wikipedia:Norm (mathematics)|norm]] on the space. There are a few aspects to consider. The weight, which determines how important each formal prime is, and the skew, which determines how divisive ratios are more important than multiplicative ratios. They can be interpreted as transformations of either the | In order to perform prime-based optimization, all intervals must be rated by complexity, so it is critical to employ a [[Wikipedia:Norm (mathematics)|norm]] on the space. There are a few aspects to consider. The weight, which determines how important each formal prime is, and the skew, which determines how divisive ratios are more important than multiplicative ratios. They can be interpreted as transformations of either the norm or the coordinates of the space. The two views are equivalent. In addition, there is the order (or sometimes just dubbed the norm), which determines how the space can be traversed. | ||
=== Weight === | === Weight === | ||
Line 30: | Line 30: | ||
=== Order === | === Order === | ||
The order of the norm determines what is a unit step in the space. | The order of the norm determines what is a unit step in the interval space. | ||
The Euclidean norm aka ''L''<sup>2</sup> norm resembles real-world distances. | The Euclidean norm aka ''L''<sup>2</sup> norm resembles real-world distances. | ||
Line 36: | Line 36: | ||
The Manhattan norm or taxicab norm aka ''L''<sup>1</sup> norm resembles movement of taxicabs in Manhattan – it can only traverse horizontally or vertically. A diagonal movement counts as two steps. | The Manhattan norm or taxicab norm aka ''L''<sup>1</sup> norm resembles movement of taxicabs in Manhattan – it can only traverse horizontally or vertically. A diagonal movement counts as two steps. | ||
The Chebyshevian norm aka ''L''<sup> | The Chebyshevian norm aka ''L''<sup>inf</sup> norm is the opposite of the Manhattan norm – it is the maximum number of steps along any axis, so a diagonal movement is the same as a horizontal or vertical one. | ||
Note that the dual norm of ''L''<sup>1</sup> is ''L''<sup>inf</sup>, and vice versa. Thus, the Manhattan norm corresponds to the ''L''<sup>inf</sup> tuning space, and the Chebyshevian norm corresponds to the ''L''<sup>1</sup> tuning space. The dual of ''L''<sup>2</sup> norm is itself, so the Euclidean norm corresponds to Euclidean tuning as one may expect. | |||
== Enforcement == | == Enforcement == | ||
Line 44: | Line 44: | ||
=== Destretch === | === Destretch === | ||
Destretch is a postprocess to enforce a pure interval. The most common destretched tuning is [[POTE tuning]], which | Destretch is a postprocess to enforce a pure interval. The result is no longer optimal measured by the original norm, but it often works as a quick approximation to more sophisticated tunings. The most common destretched tuning is [[POTE tuning]], which approximates [[CTWE tuning]]. | ||
=== Constraint === | === Constraint === | ||
Constraint is a logical method to enforce one or more pure intervals. A pure interval added this way is known as an [[Eigenmonzo|eigenmonzo a.k.a. unchanged-interval]]. It defines a feasible region for optimization, and the result measured by the original norm | Constraint is a logical method to enforce one or more pure intervals. A pure interval added this way is known as an [[Eigenmonzo|eigenmonzo a.k.a. unchanged-interval]]. It defines a feasible region for optimization, and the result measured by the original norm is feasibly optimal. | ||
== General formulation == | == General formulation == | ||
In general, the temperament optimization problem (except for the destretch) can be defined as follows. Given a temperament mapping V and the [[just | In general, the temperament optimization problem (except for the destretch) can be defined as follows. Given a temperament mapping V and the [[just tuning map]] J, we specify a weight and a skew, represented by transformation matrices W and X, respectively, and a ''p''-norm. An optional eigenmonzo list M<sub>C</sub> can be added. The goal is to find the generator list G by | ||
Minimize | Minimize | ||
Line 70: | Line 70: | ||
== Common tunings == | == Common tunings == | ||
A good number of | A good number of common tuning schemes have been given names. The following table shows some of them by weight-skew against the order. | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 92: | Line 92: | ||
* [http://x31eq.com/temper/primerr.pdf|''Prime Based Error and Complexity Measures''] ("primerr.pdf") by [[Graham Breed]] | * [http://x31eq.com/temper/primerr.pdf|''Prime Based Error and Complexity Measures''] ("primerr.pdf") by [[Graham Breed]] | ||
[[Category:Math]] | |||
[[Category:Regular temperament tuning]] | [[Category:Regular temperament tuning]] |