On 3/28/18, parker friedland <
parkerf...@gmail.com> wrote:
> You're a mathematician, and I have an optimization problem that I need help
> with.
>
> Consider the following quality function:
>
> Q = Va × ln(A) + Vb × ln(B) + Vc × ln(C) + Vab × ln(A+B) + Vac × ln(A+C) +
> Vbc × ln(B+C)
>
> As well as the following conditions:
>
> A >= 0
> B >= 0
> C >= 0
> A + B + C = 1
>
> Is it possible to find relatively simple equations that define the most
> optimal combination of A, B, and C, (that produces the highest value of Q
> while still satisfying all of the conditions) in terms of Va, Vb, Vc, Vab,
> Vac, and Vc. And if it is possible, can you do it?
--
First of all, if VA, Vb, Vc, Vab, Vbc, Vac all are nonnegative,
then your Q(A,B,C) function will be concave-down and
the region A+B+C=1 with A,B,C>=0 is a convex region (equilateral
triangle in fact) and hence then THERE EXISTS A UNIQUE MAXIMUM
of Q within the region.
Second, to find it, we want the gradient(Q) vector
to be parallel to (1,1,1). Equivalently, at the optimum
we want the following three quantities all to be equal
dQ/dA, dQ/dB, and dQ/dC, with d denoting partial derivative,
which are:
Va/A + Vab/(A+B) + Vac/(A+C)
Vb/B + Vab/(A+B) + Vbc/(B+C)
and
Vc/C + Vac/(A+C) + Vbc/(B+C)
You need to solve for A,B,C so all those 3 things are equal and A+B+C=1.
That is 3 simultaneous nonlinear equations in 3 unknowns. They can all be made
polynomials by multiplying all by A*B*C*(A+B)*(A+C)*(B+C),
and then the polynomials have degrees 5 or less. This is not the sort
of thing we can expect to solve in close form. You cannot even solve
a univariate quintic in close form, much less a 3-variable quintic system.
You will need to solve it numerically.
If you solve them and the solution is INTERIOR to the equilateral triangle
(i.e. has A>0, B>0, C>0) it should be the unique answer. If
exterior or on its boundary, then you have to deal with more of a mess...
the optimum then will lie on one of the 3 edges of the triangle and
can be found by a 1-dimensional optimizer...
--
Warren D. Smith
http://RangeVoting.org <-- add your endorsement (by clicking
"endorse" as 1st step)