<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
     xmlns:admin="http://webns.net/mvcb/"
     xmlns:content="http://purl.org/rss/1.0/modules/content/"
     xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
	<channel> 

	<title>Comments on: Maximizing a function over orthogonal matrices</title>
	<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices/</link>
	<description>Comments on Ask MetaFilter post Maximizing a function over orthogonal matrices</description>
	<pubDate>Sun, 26 Oct 2008 10:59:37 -0800</pubDate>
	<lastBuildDate>Sun, 26 Oct 2008 10:59:37 -0800</lastBuildDate>
	<language>en-us</language>
	<docs>http://blogs.law.harvard.edu/tech/rss</docs>
	<ttl>60</ttl>

	<item>
		<title>Question: Maximizing a function over orthogonal matrices</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices</link>	
		<description>Maximizing a function over orthogonal matrices, or: solving polynomial order 2 systems.  Help me out or point me to a better forum / listhost. &lt;br /&gt;&lt;br /&gt; I have a function f(T) of a matrix that I want to maximize, which is order two in the elements of T.  Easy, partial derivatives gives you a linear system.  Here&apos;s the catch; I also want T to be orthonormal (the dot product of the rows to be zero or one -- the extension of orthogonal to non-square matrices).  &lt;br&gt;
&lt;br&gt;
The obvious way to maximize a function with constraints is to tack on Lagrange multipliers g(T) = f(T) + sum{lambda[ij](Ti . Tj - delta(i,j) ) }, but now g(T) is order three in parameters, and partial derivatives are order two and I don&apos;t know how to solve that system generally.&lt;br&gt;
&lt;br&gt;
The dimension of T can be huge, tens of thousands.  Let&apos;s not suggest numerics unless there&apos;s an amazing trick to deal with the dimensionality.&lt;br&gt;
&lt;br&gt;
Any ideas?  Maximization subject to orthogonality seems like something that should have come up a lot and someone have figured out.</description>
		<guid isPermaLink="false">post:ask.metafilter.com,2008:site.105198</guid>
		<pubDate>Sun, 26 Oct 2008 08:26:48 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
		
			<category>optimization</category>
		
			<category>lagrange</category>
		
			<category>polynomial</category>
		
			<category>system</category>
		
			<category>orthogonal</category>
		
			<category>orthonormal</category>
		
			<category>math</category>
		
			<category>mathematics</category>
		
			<category>statistics</category>
		
			<category>matrix</category>
		
			<category>algebra</category>
		
			<category>resolved</category>
		
	</item> <item>
		<title>By: vernondalhart</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1519997</link>	
		<description>Well, the point of Lagrange multipliers is that for each additional variable lambda&lt;sub&gt;ij&lt;/sub&gt;, you also add an additional equation. So the system should still be, in principle, solvable.&lt;br&gt;
&lt;br&gt;
When you say that the function is order two in the elements of T, do you mean that it is essentially a polynomial of degree 2 in n&lt;sup&gt;2&lt;/sup&gt; variables?&lt;br&gt;
&lt;br&gt;
Honestly, I&apos;m not sure that there is a better way to go about this. Setting each of your partials to zero results in the intersection of n&lt;sup&gt;2&lt;/sup&gt; hyperplanes in &lt;b&gt;R&lt;/b&gt;&lt;sup&gt;n&lt;sup&gt;2&lt;/sup&gt;&lt;/sup&gt;. In general position, these should all intersect in a single point.&lt;br&gt;
&lt;br&gt;
Of course, this doesn&apos;t answer your  question. I&apos;m largely brainstorming, but coming up with nothing helpful.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1519997</guid>
		<pubDate>Sun, 26 Oct 2008 10:59:37 -0800</pubDate>
		<dc:creator>vernondalhart</dc:creator>
	</item><item>
		<title>By: a robot made out of meat</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1520136</link>	
		<description>Yes, it contains terms like T[1,2]*T[9,3] and T[4,7]^2.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1520136</guid>
		<pubDate>Sun, 26 Oct 2008 13:27:30 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
	</item><item>
		<title>By: metastability</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1520149</link>	
		<description>1.  Are you looking for solutions over the complex numbers or real numbers?&lt;br&gt;
2.  O(n, R) is compact, so if your function is real-valued, and continuous, (which it is since it is polynomial), then it attains a maximum.  So that&apos;s good to know.&lt;br&gt;
3.  &lt;a href=&quot;http://www.singular.uni-kl.de/index.html&quot;&gt;Singular&lt;/a&gt; may be able to solve systems of polynomial equations over C.  I don&apos;t remember exactly what it can do, but it&apos;s worth checking out.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1520149</guid>
		<pubDate>Sun, 26 Oct 2008 13:53:28 -0800</pubDate>
		<dc:creator>metastability</dc:creator>
	</item><item>
		<title>By: a robot made out of meat</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1520248</link>	
		<description>Real values only.  Yeah, I know that it has a solution.  Finding it is the trick.&lt;br&gt;
&lt;br&gt;
Note: I&apos;m willing to accept an approximate answer.  I&apos;d have to think about exactly how much tolerance I&apos;m willing to accept from the peak or from my condition.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1520248</guid>
		<pubDate>Sun, 26 Oct 2008 15:51:22 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
	</item><item>
		<title>By: a robot made out of meat</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1520271</link>	
		<description>Ok, I&apos;m seeing the &quot;Grobner basis method&quot; come up in the documentation for Singular and Maple, so maybe this is The Way.  It&apos;s activating long dormant parts of my brain responsible for abstract algebra and algebraic geometry, which hurts.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1520271</guid>
		<pubDate>Sun, 26 Oct 2008 16:12:16 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
	</item><item>
		<title>By: metastability</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1520305</link>	
		<description>Real numbers are harder.  You should probably abandon all hope of getting an exact solution.  Numerical methods are a better bet.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1520305</guid>
		<pubDate>Sun, 26 Oct 2008 17:15:16 -0800</pubDate>
		<dc:creator>metastability</dc:creator>
	</item><item>
		<title>By: hAndrew</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1520524</link>	
		<description>You could directly parameterise the X set of all orthonormal matrices of size m x n. Then write f as a function of these parameters and minimise from there.&lt;br&gt;
&lt;br&gt;
To parameterise the set X, you could think by analogy with parameterising the set of all pairs (m=2) of orthogonal unit vectors in R^3 (n=3). I think you&apos;ll end up with a bunch of products of cos(parameter) and sin(parameter).&lt;br&gt;
&lt;br&gt;
I suppose the set X will have dimension (n-1) + (n - 2) + ... + (n - m + 1) = 1/2 (-2 - 3 m - m^2 + 2 n + 2 m n). You directly minimise over those parameters with no need for any constraints.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1520524</guid>
		<pubDate>Sun, 26 Oct 2008 22:25:09 -0800</pubDate>
		<dc:creator>hAndrew</dc:creator>
	</item><item>
		<title>By: hAndrew</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1520525</link>	
		<description>&lt;small&gt;&quot;You could directly parameterise the X set of ...&quot; should be &quot;You could directly parameterise &lt;b&gt;the set X of&lt;/b&gt; ...&quot;&lt;/small&gt;</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1520525</guid>
		<pubDate>Sun, 26 Oct 2008 22:26:43 -0800</pubDate>
		<dc:creator>hAndrew</dc:creator>
	</item><item>
		<title>By: a robot made out of meat</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1521917</link>	
		<description>Thanks everyone, I&apos;m pursuing these strategies in parallel after midterms.&lt;br&gt;
&lt;br&gt;
The Grobner or Janet basis method is appealing, but I have some apprehension since members on the forums claim trouble with MUCH smaller ideals than the ones I&apos;d be working with.&lt;br&gt;
&lt;br&gt;
It&apos;s true that I have an analytic gradient and hessian, so it&apos;s not inconceivable that straight numeric optimization over g(T) could work even in high dimension.  I&apos;m skeptical, but it&apos;s worth a shot.  Since I have definable tolerance for suboptimal solutions, I might have a hope.&lt;br&gt;
&lt;br&gt;
It&apos;s true that the rows of an orthonormal matrix are orthogonal elements of the hypersphere, which is defined by the right choice of orienting angles.  I&apos;ll look into rewriting my matrix in angular form.  This would give me advantages in numeric and statistical methods of optimization since I&apos;ve plugged into the reduced space rather than the larger space implied by the Lagrange method.  I&apos;ll have to see if the many frequency domain methods will give me anything analytic here.  The disadvantage is the loss of computational simplicity of the function, which will now be a sum of products of trig functions rather than monomials.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1521917</guid>
		<pubDate>Tue, 28 Oct 2008 05:51:47 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
	</item><item>
		<title>By: onalark</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1525842</link>	
		<description>Is your function concave?  Maximizing a non-concave function usually scales exponentially. &lt;br&gt;
&lt;br&gt;
 It depends on your function but it&apos;s possible that with a few assumptions/restrictions (symmetry, positive-definite-ness, concavity) you could solve this using a convex programming approach, which allows for the restriction that you are optimizing over the space of symmetric orthogonal matrices.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1525842</guid>
		<pubDate>Fri, 31 Oct 2008 07:54:12 -0800</pubDate>
		<dc:creator>onalark</dc:creator>
	</item><item>
		<title>By: a robot made out of meat</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1527781</link>	
		<description>So, it seems that defining orthogonal vectors on the hypersphere is less easy than I thought.  However, you can optimize over skew-symmetric matrices and use the Cayley transform to project into SO(n).  Tomorrow I&apos;ll see if there&apos;s an easy extension for non-square matrices.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1527781</guid>
		<pubDate>Sun, 02 Nov 2008 17:31:29 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
	</item><item>
		<title>By: a robot made out of meat</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1527786</link>	
		<description>Also, I am working to see if I can write my orthonormal matrix as the product of householder or givens matrices in an easy way.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1527786</guid>
		<pubDate>Sun, 02 Nov 2008 17:40:24 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
	</item><item>
		<title>By: hAndrew</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1527980</link>	
		<description>&lt;i&gt;So, it seems that defining orthogonal vectors on the hypersphere is less easy than I thought.&lt;/i&gt;&lt;br&gt;
&lt;br&gt;
Do you mean you couldn&apos;t find forms for them as a function of the 1/2 (-2 - 3 m - m^2 + 2 n + 2 m n) parameters, or that you could but something else proved difficult after that?</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1527980</guid>
		<pubDate>Sun, 02 Nov 2008 22:26:39 -0800</pubDate>
		<dc:creator>hAndrew</dc:creator>
	</item><item>
		<title>By: a robot made out of meat</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1528237</link>	
		<description>Yes, writing them as a clean function of the reduced parameter space wasn&apos;t clear.  That&apos;s what I&apos;m hoping to do with the Cayley transformation.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1528237</guid>
		<pubDate>Mon, 03 Nov 2008 07:16:17 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
	</item><item>
		<title>By: a robot made out of meat</title>
		<link>http://ask.metafilter.com/105198/Maximizing-a-function-over-orthogonal-matrices#1530241</link>	
		<description>For anyone following,&lt;br&gt;
I still don&apos;t have a great proof that k-row skew-symmetric matrices inject into the space of k-row special orthonormal matrices, but I have some appealing statistical results.  Namely, that out of many random 7x7 orthogonal matrices, if I trim the first k rows I seem to be able to (numerically) find k-row skew-symmetric matrices which Caley transform arbitrarily close to the target.&lt;br&gt;
&lt;br&gt;
I may do this for the Givens rotator method of generating orthogonal matrices also; ie can I just use fewer angles and inject into the desired space.</description>
		<guid isPermaLink="false">comment:ask.metafilter.com,2008:site.105198-1530241</guid>
		<pubDate>Wed, 05 Nov 2008 05:16:09 -0800</pubDate>
		<dc:creator>a robot made out of meat</dc:creator>
	</item>
	</channel>
</rss>
