This rather unintuitive result is a result of the log objective, of maximizing the expected growth rate of wealth rather than wealth itself.
A different problem to build some intuition [Update 2019]
To build some intuition about working with changes in logs rather than changes in levels, let's imagine a world without uncertainty.
Imagine you save fraction $b$ of your wealth each period and earn interest rate $r$, hence wealth $w_t=[b(1+r)]^t$. Your growth rate is basically the change in log wealth. More precisely, your instantaneous growth rate $g$ is:
$$ \begin{align*} g &= \frac{\partial \log w_t}{\partial t} \\ &= \log b + \log (1+r) \end{align*}$$.
Observe that working in logs, the savings term $\log b$ and the interest rate term $\log(1+r)$ are linearly separable!
- $ \frac{\partial g}{\partial r} = \frac{1}{1+r} > 0$ : A higher interest rate indeed raises the growth rate of wealth.
- $ \frac{\partial g}{\partial b} = \frac{1}{b} > 0$ : Saving more also raises the growth rate of wealth. The effect of saving more is $\frac{\partial g}{\partial b}$.
- BUT $ \frac{\partial ^2}{ \partial b \partial r} = 0$! A higher interest rate doesn't change the effect of saving more!
This is what's behind the result in your linked problem. When working in logs instead of levels, the payoff on the horse is linearly separable from your bet on the horse. Both terms affect the growth rate, but there's no interaction between the two.
The relation between (1) your linked problem and (2) classic Kelly problem [Original answer]
In both problems, the objective is the same: maximize expected log wealth. What differs is the set of securities you can buy.
- The problem you linked to is a portfolio allocation problem between $m$ arrow securities for $m$ states of the world. E.g. in the case $m=2$, you have two securities with payoffs:
$$ \begin{bmatrix} o_1 \\ 0 \end{bmatrix} \quad \quad \quad \begin{bmatrix} 0 \\ o_2 \end{bmatrix} $$
- In the binary, classic Kelly betting problem the security payoffs are:
$$ \begin{bmatrix} o_1 \\ 0 \end{bmatrix} \quad \quad \quad \begin{bmatrix} 1 \\ 1 \end{bmatrix} $$
The second security is from holding cash (i.e. not betting). The solutions to these problems are entirely compatible. In both problems, the share of $t=0$ wealth you spend to buy $t=1$ payoffs in state $i$ is simply $p_i$. In neither problem does it depend on odds $o_i$. (It appears to depend on $o_i$ in the classic Kelly problem because of obfuscation due to the risk free security.)
Your problem: setup
- There are $m$ different horses (i.e. outcomes).
- You bet fraction $b_i$ of wealth on horse $i$.
- Horse $i$ pays $o_i$ if you win and has a $p_i$ chance of winning.
- You must bet all your wealth: $\sum_i b_i = 1$.
Hence, if horse $i$ wins, you will have $o_ib_i$ times your original wealth. Your expected log wealth is $\sum_{i=1}^m p_i (\log o_ib_i)$.
Maximize expectation of log wealth:
This is equivalent to maximizing your growth rate. The problem is:
$$\begin{equation}
\begin{array}{*2{>{\displaystyle}r}}
\mbox{maximize (over $b_i$)} & \sum_{i=1}^m p_i (\log o_i + \log b_i) \\
\mbox{subject to} & \sum_{i=1}^m b_i = 1
\end{array}
\end{equation}
$$
This is a convex optimization problem where Slater condition holds hence the first order conditions are necessary and sufficient. Lagrangian is $ \mathcal{L} = \sum_{i=1}^m p_i (\log o_i + \log b_i) - \lambda \left(\sum_i b_i - 1\right)$
First order conditions are:
$$ \frac{p_i}{b_i} = \lambda \text{ for all $i$} \quad \quad \quad \sum_i b_i = 1 $$
Hence $\lambda = 1$ and $b_i = p_i$.
Relation to classic Kelly criterion problem (case $m=2$)
You are deciding how much wealth to allocate to a risky bet that pays odds $o_1$ and a riskless bet that pays odds 1 (i.e. net odds 0). This is equivalent to a portfolio allocation to securities with payoffs $\begin{bmatrix} o_1\\0\end{bmatrix}$ and $\begin{bmatrix} 1 \\ 1 \end{bmatrix}$ (both of whose price is 1).
The classic Kelly criterion solution is that the agent allocates:
- $p_1 - \frac{p_2}{o_1 - 1}$ to the security with price 1 and payoff $\begin{bmatrix}o_1 \\ 0 \end{bmatrix}$
- $1 - p_1 + \frac{p_2}{o_1 - 1}$ to the security with price 1 and payoff $\begin{bmatrix} 1 \\ 1 \end{bmatrix}$
What is the agent's payoff in state 1?
\begin{align*}
\left( p_1 - \frac{p_2}{o_1 - 1}\right) \cdot o_1 + \left( 1 - p_1 + \frac{p_2}{o_1 - 1} \right) \cdot 1 &= p_1o_1
\end{align*}
What is the agent's payoff in state 2?
$$\left( 1 - p_1 + \frac{p_2}{o_1 - 1} \right) \cdot 1 = p_2 \left( \frac{o_1}{o_1 - 1} \right) $$
How much $t=0$ wealth does the agent spend at price $\frac{1}{o_1}$ to get the state 1 payoff?
\begin{align*}
b_1 = o_1p_1 \frac{1}{o_1} = p_1
\end{align*}
From the existing securities, you can construct an security with price $1$ and payoff $\begin{bmatrix}1\\o_2 \end{bmatrix}$ where $o_2 = \frac{o_1}{o_1 - 1}$.
How much wealth does the agent spend at price $\frac{1}{o_2} = \frac{o_1-1}{o_1}$ to get the state 2 payoff?
\begin{align*}
b_2 = \left( p_2 \left( \frac{o_1}{o_1 - 1} \right) \right) \frac{o_1-1}{o_1} = p_2
\end{align*}
So the solutions are entirely compatible, you choose $b_1 = p_1$ and $b_2 = p_2$ in the classic Kelly problem as well.