S.O.S. Mathematics CyberBoard

Your Resource for mathematics help on the web!
It is currently Fri, 24 May 2013 09:17:04 UTC

All times are UTC [ DST ]




Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: unconstrained optimisation - help!
PostPosted: Wed, 11 Mar 2009 06:56:16 UTC 
Offline
Math Cadet

Joined: Wed, 11 Mar 2009 06:48:32 UTC
Posts: 5
Hi there

I am an economics student (and matrix gumby) and have set up an optimisation problem. I have reduced the matrix form to:

A diag(b) c = diag(b) b

where A is a 2*2 matrix of constants, and b and c are 2*1 vectors containing the variables I am solving for. If I assume that the off diagonals of A are all zero, I can get:

undiag(A) = inverse(diag(c)) b

which I can solve. Is there any way I can isolate all matrices/vectors containing b and c on one side of the equation without assuming A is diagonal? Any help or suggestions would be greatly appreciated!


Top
 Profile  
 
 Post subject:
PostPosted: Wed, 11 Mar 2009 08:30:36 UTC 
Offline
Member of the 'S.O.S. Math' Hall of Fame

Joined: Tue, 20 Nov 2007 04:36:12 UTC
Posts: 826
Location: Las Cruces
I can't understand your notation. A is a 2 by 2 matrix. Does the notation "diag(b)" indicate some sort of matrix with the vector b down the diagonal. Or is "diag" supposed to describe A? Are b and c together supposed to form another 2x2 matrix?

If you haven't learned LaTex (see the forum section on "Posting Math Formulas with LaTex", to understand what that means) it is hard to write out the elements of a matrix since the typography used to dislay it is unpredictable. But you can write a 2x2 matrix in the manner of data for a computer program like:{ {a00,a01},{a10,a11}.
A 2 by 1 column vector would be { {b0},{b1} }.
A 1 by two row vector would be { {y0,y1} }.


Top
 Profile  
 
 Post subject:
PostPosted: Wed, 11 Mar 2009 21:32:27 UTC 
Offline
Math Cadet

Joined: Wed, 11 Mar 2009 06:48:32 UTC
Posts: 5
Apologies for the notation. By diag(b) I mean a 2x2 matrix with the 2x1 vector b down the diagonal (as you first suggest). When I stated:

A diag(b) c = diag(b) b

I actually meant:

{ {a00,a01},{a10,a11} } x { {b1,0},{0,b2} } x { {c1},{c2} } = { {b1,0},{0,b2} } x { {b1},{b2} }

a00, a01, a10, a11 are all numbers/coefficients. Vectors b and c contain the variable I am trying to solve for (prices). Vector b has price to the exponent of price elasticity and vector c is simply the price vector - which I am solving for. When on the same side of the equation, I have been able to solve the various vectors containing price for the optimal price.

My solution would look like: { {c1},{c2} } = { {x},{y} } but this will involve me simplifying the b and c vectors (probably by taking the log to isolate the price elasticities). In the meantime I would be ecstatic if there is a way to be able to get a statement like:

{ {a00,a01},{a10,a11} } =

Thanks again for any help or suggestions!


Top
 Profile  
 
 Post subject:
PostPosted: Thu, 12 Mar 2009 04:38:24 UTC 
Offline
Member of the 'S.O.S. Math' Hall of Fame

Joined: Tue, 20 Nov 2007 04:36:12 UTC
Posts: 826
Location: Las Cruces
I think I understand:
\begin{pmatrix}
a_{0,0}& a_{0,1} \\
a_{1,0} &a_{1,1} 
\end{pmatrix}
\begin{pmatrix}
b_1^&0\\
0&b_2
\end{pmatrix}
\begin{pmatrix}
c_1\\
c_2
\end{pmatrix} = 
\begin{pmatrix}
b_1&0\\
0&b_2
\end{pmatrix}
\begin{pmatrix}
b_1\\
b_2
\end{pmatrix}

But I'm not sure that I understand which variables contain prices and whether it is the prices that are the only unknows. If the prices are p_1, p_2 is it:

\begin{pmatrix}
a_{0,0}& a_{0,1} \\
a_{1,0} &a_{1,1} 
\end{pmatrix}
\begin{pmatrix}
p_1^{\epsilon1}&0\\
0&p_2^{\epsilon2}
\end{pmatrix}
\begin{pmatrix}
p_1\\
p_2
\end{pmatrix} = 
\begin{pmatrix}
p_1^{{\epsilon1}&0\\
0&p_2^{\epsilon2}
\end{pmatrix}
\begin{pmatrix}
p_1^{\epsilon1}\\
p_2^{\epsilon2}
\end{pmatrix}
(?)


Top
 Profile  
 
 Post subject:
PostPosted: Thu, 12 Mar 2009 05:06:03 UTC 
Offline
Math Cadet

Joined: Wed, 11 Mar 2009 06:48:32 UTC
Posts: 5
Hi there - lovely matrices!

Tashirosgt, your description of the first equation is perfect. Your description of the second is close to perfect, however I have not described in enough detail the contents of the matrices.

{b1} = (p1^e11)x(p2^e12)
{b2} = (p1^e21)x(p2^e22)

{c1} = p1
{c2} = p2

Vector b is made up of the prices, and own- and cross-price elasticities of demand. I have estimated the elasticities - the only unknowns are p1 and p2.

Again, thanks for your time and advice![/tex]


Top
 Profile  
 
 Post subject:
PostPosted: Thu, 12 Mar 2009 05:38:35 UTC 
Offline
Member of the 'S.O.S. Math' Hall of Fame

Joined: Tue, 20 Nov 2007 04:36:12 UTC
Posts: 826
Location: Las Cruces
OK, we will try this::

\begin{pmatrix}
a_{0,0}& a_{0,1} \\
a_{1,0} &a_{1,1} 
\end{pmatrix}
\begin{pmatrix}
p_1^{\epsilon11} p_2^{\epsilon12}}&0\\
0&p_1^{\epsilon21}p_2^{\epsilon22}
\end{pmatrix}
\begin{pmatrix}
p_1\\
p_2
\end{pmatrix} = 
\begin{pmatrix}
p_1^{\epsilon11} p_2^{\epsilon12}}&0\\
0&p_1^{\epsilon21}p_2^{\epsilon22}
\end{pmatrix}
\begin{pmatrix}
p_1^{\epsilon11} p_2^{\epsilon12}}\\
p_1^{\epsilon21}p_2^{\epsilon22}
\end{pmatrix}


Top
 Profile  
 
 Post subject:
PostPosted: Thu, 12 Mar 2009 06:17:12 UTC 
Offline
Math Cadet

Joined: Wed, 11 Mar 2009 06:48:32 UTC
Posts: 5
Perfect! Any solution (or isolation of the matrices that contain prices) would be excellent! As I said on my original post, if we assume {a01} and {a10} are both zero, it is easy to solve (by eliminating the diag(b) matrices). But then I am required to iterate to a solution (which is pretty tough with my dataset).

Thanks for your help!


Top
 Profile  
 
 Post subject:
PostPosted: Thu, 12 Mar 2009 20:41:52 UTC 
Offline
Member of the 'S.O.S. Math' Hall of Fame

Joined: Tue, 20 Nov 2007 04:36:12 UTC
Posts: 826
Location: Las Cruces
In reference to b,c formulation of this question. There is no way to operate on the a-matrix by simple matrix multiplication, inverses etc. to obtain two equations where the variables b1,c1 are alone in one and b2,c2 are lone in the other. When the equations are written in terms of the p's, the situation is less clear, but I don't think there is a way.

Given the speed of modern computers, I am optimistic that there is a numerical method for solving the system of equations in a practical amount of time. What is the size of your problem? For example, do you need to solve a thousand pairs of equations in two unknowns in 20 minutes on a modern PC? Is the problem really two equations or is the case of two unknowns merely an example?


Top
 Profile  
 
 Post subject:
PostPosted: Fri, 13 Mar 2009 01:01:14 UTC 
Offline
Math Cadet

Joined: Wed, 11 Mar 2009 06:48:32 UTC
Posts: 5
Hi tashirosgt

I am using 2x2 matrices as an example of what I am trying to do. In reality the price vector I am attempting to optimise has 96 elements (one for each 15 minute period of a day).

Thanks for the assistance. My current approach is to assume the non diagonal elements of matrix a are zero. As matrix contains elasticities (in a certain form) this is akin to assuming that the price at time 1 has no effect on consumption at times 2-96 (which is probably not true, but also probably not too far from the truth). I can then eliminate the matrix diag(b) and take the log of A=inverse(c)b and rearrange to find a basic solution.

I am about to program an iterative process to go from the basic solution (obtained by assuming cross-price elasticities of demand are all zero) to the actual profit-maximising solution. I'll get back to the forums on how this goes with my dataset!

Thanks for your considerations and time! If you have any further thoughts or suggestions I would be really happy to hear them!


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC [ DST ]


Who is online

Users browsing this forum: No registered users


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Contact Us | S.O.S. Mathematics Homepage
Privacy Statement | Search the "old" CyberBoard

users online during the last hour
Powered by phpBB © 2001, 2005-2011 phpBB Group.
Copyright © 1999-2013 MathMedics, LLC. All rights reserved.
Math Medics, LLC. - P.O. Box 12395 - El Paso TX 79913 - USA