Optimization: Difference between revisions

m Oops
Dummy index (talk | contribs)
add interwiki
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
{{interwiki
| de =
| en = Optimization
| es =
| ja = 数理最適化
}}
In [[regular temperament theory]], '''optimization''' is the theory and practice to find low-error tunings of regular temperaments.  
In [[regular temperament theory]], '''optimization''' is the theory and practice to find low-error tunings of regular temperaments.  


Line 4: Line 10:


== 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: ''norm-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 the [[complexity]] of all intervals through a norm, and it minimizes the maximum [[damage]] (i.e. error divided by complexity) for all intervals.  
* A norm-based tuning is optimized for not only the [[formal prime]]s, but the set of all intervals, which the formal primes are representative for. In the [[vals and tuning space|tuning space]], it minimizes the average errors on the formal primes. In the [[monzos and interval space|interval space]], it rates the [[complexity]] of all intervals through a norm, and minimizes the maximum [[damage]] (i.e. error divided by complexity) for all intervals. The two perspectives are equivalent.  
* 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. The irrelevant intervals are typically but further out on the [[lattice]], and thus have implicit norm values. As such, these tunings effectively correspond to all-interval damage minimizations of some sorts, though analysing them in terms of norm-based tunings may be difficult.  


This article focuses on prime-based tunings. See the dedicated page (→ [[Target tunings]]) for target tunings.  
This article focuses on norm-based tunings. See the dedicated page (→ [[Target tunings]]) for target tunings.  


== Norm ==
== Norm ==
[[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 {{w|norm (mathematics)|norm}}. Technically, this is to {{w|embedding|embed}} the [[just intonation subgroup|just intonation group]] into a {{w|normed vector 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.  
To perform norm-based optimization, we must employ a {{w|norm (mathematics)|norm}} to rate the complexities of all intervals. Technically, this is to {{w|embedding|embed}} the [[just intonation subgroup|just intonation group]] into a {{w|normed vector space}}. There are a few aspects to consider as we do this: 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 ===
The weight, represented by a diagonal transformation matrix, determines the importance of each formal prime. Since the tuning space and the interval space are {{w|dual (mathematics)|dual}} to each other, rating of importance in the tuning space is equivalent to rating of complexity in the interval space. The Tenney weight is the most common weight:  
The weight, represented by a diagonal transformation matrix, determines the importance of each formal prime. Since the tuning space and the interval space are {{w|dual (mathematics)|dual}} to each other, rating of importance in the tuning space is equivalent to rating of complexity in the interval space. The Tenney weight is the most common weight:  


<math>\displaystyle W = \operatorname {diag} (1/\log_2 (Q)) </math>
$$ W = \operatorname {diag} (1/\log_2 (Q)) $$


which indicates that the prime harmonic ''q'' in ''Q'' = {{val| 2 3 5 … }} has the importance of 1/log<sub>2</sub>(''q''). Its dual states that ''q'' has the complexity of log<sub>2</sub>(''q'').  
which indicates that the prime harmonic ''q'' in ''Q'' = {{val| 2 3 5 … }} has the importance of 1/log<sub>2</sub>(''q''). Its dual states that ''q'' has the complexity of log<sub>2</sub>(''q'').  
Line 49: Line 55:


== 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 tuning map]] ''J'', we specify a weight–skew transformation, represented by transformation matrix ''X'', and a ''q''-norm. An optional unit eigenmonzo list ''M''<sub>''I''</sub> can be added. The goal is to find the generator list ''G'' by
In general, the temperament optimization problem (except for the destretch) can be defined as follows. Given a temperament mapping matrix ''V'' and the [[just tuning map]] ''J'', we specify a weight–skew transformation matrix ''X'', a ''q''-norm, and optionally a unit eigenmonzo list ''M''. Let ''G'' denote the generator tuning map, we want to


Minimize
$$
 
\begin{align}
<math>\displaystyle \lVert GV_X - J_X \rVert_q </math>
& \text{find} && G \\
 
& \text{that minimizes} && \lVert GV_X - J_X \rVert_q \\
subject to
& \text{subject to} && (GV - J)M = O
 
\end{align}
<math>\displaystyle (GV - J)M_I = O </math>
$$


where (·)<sub>''X''</sub> denotes the variable in the weight–skew transformed space, found by
where (·)<sub>''X''</sub> denotes the variable in the weight–skew transformed space, found by


<math>\displaystyle
$$
\begin{align}
\begin{align}
V_X &= VX \\
V_X &= VX \\
J_X &= JX
J_X &= JX
\end{align}
\end{align}
</math>
$$


== Common tunings ==
== Common tunings ==