Flipping to Stochastic Programming
As a child, I cherished summer vacations. With no school for two months, my days were filled with hanging out, playing football, going to the beach or the pool, visiting friends, and more. However, as a father, summer has lost some of its charm. My kids are brimming with energy and have little to do, their friends drop by at all hours, and the house is constantly filled with noise.
This is exactly what happened a few days ago. My young son had invited two friends over. They started playing a coin-flipping game, but it soon escalated into a fight. One of the boys accused the other two of cheating, while they argued that the coin flip was beyond their control, making cheating impossible. As the responsible adult, I knew I couldn’t avoid stepping in. So, I asked them to explain the rules of the game.
The game was simple: each player would put in a token each round and use a coin to bet on which side it would land. Those who guessed correctly would share the tokens, while the loser got nothing. It turned out that my son and one of his friends had devised a strategy. In each round, they chose opposite sides and then shared the tokens they won. After several rounds, they had amassed most of the tokens. The third boy, realizing he was losing, became angry about their strategy.
They were right; there was no cheating. However, the game was not fair. To understand why, let’s examine the expected outcome of the strategy they used. Consider two scenarios: the first where the third boy guessed the correct coin side, and the second where he guessed incorrectly.
In the first scenario, he puts in one token and receives an equal share of the three tokens, meaning he wins half a token. Since it’s a zero-sum game, the two boys who shared the strategy lose half a token. In the second scenario, where he guessed wrong, he loses one token, and the other two boys win that token. Because the coin flip is fair, each scenario has a 50% probability.
This means that the expected gain for the two boys who shared the strategy is a quarter of a token each round. Since the variance is bounded, we can apply the law of large numbers. Over time, this implies that the boys who shared the strategy would end up with most of the tokens, despite having no control over the coin flip.
As you can guess I realized that there is no good way out of it, so I suggest that they would go play something else. Reluctantly they agreed and went to play a video game in one of the boys’ houses. Now, this is some other parent problem.
When the boys left, I started thinking. The fact that betting on opposite positions can have positive expectations explains why some heavy investors place bets on both the uptrend and the downtrend. This creates a scenario where the rich get richer while others lose their money.
In the world of finance and investing, it’s not uncommon to see sophisticated investors hedging their bets. By taking positions on both sides of a market trend, they mitigate risk and ensure that they profit regardless of which direction the market moves. This strategy, known as betting on both the uptrend and downtrend, is a common practice among those with significant capital to invest.
The boys were unaware, but they inadvertently selected a strategy that optimized the expected outcome under the aleatoric uncertainty associated with the coin flip. Aleatoric uncertainty refers to the inherent randomness in a process, such as the 50/50 chance of landing heads or tails in a coin toss. By choosing their strategy, they maximized their chances of achieving the best possible result given the random nature of the coin flip, even though they might not have understood the statistical principles behind their choice. Their intuitive decision-making led to the most favorable expected result within the unpredictable context of the coin flip.
Upon deeper reflection, it became clear that the core of this case study was an application of stochastic programming. This powerful mathematical technique is designed to optimize decision-making in uncertain environments. Unlike traditional deterministic models, which operate under the assumption of known, fixed parameters, stochastic programming embraces the complexities of real-world scenarios. It incorporates randomness and variability directly into the model parameters, allowing for a more nuanced and realistic approach to problem-solving. This method is particularly valuable in fields where unpredictability is the norm, as it provides a framework for making robust decisions in the face of uncertainty. By acknowledging and accounting for the inherent variability in complex systems, stochastic programming offers a more flexible and adaptive approach to optimization challenges.
Stochastic programming is a powerful tool used in financial hedging to manage and mitigate the risks associated with uncertain market conditions. By incorporating randomness and variability into the modeling process, stochastic programming allows financial analysts to create robust hedging strategies that can adapt to different future scenarios. This approach involves the use of mathematical models that simulate a wide range of possible outcomes for asset prices, interest rates, and other financial variables. By optimizing the hedging strategy across these scenarios, firms can minimize potential losses and enhance the stability of their investment portfolios. This is particularly valuable in volatile markets where traditional deterministic models may fall short. Stochastic programming provides a more comprehensive and resilient framework for decision-making, enabling firms to better protect their financial interests against the unpredictable nature of market fluctuations.
Specifically, one can formulate the Value at Risk (VaR) problem as a constraint in stochastic programming. Value at Risk (VaR) is a widely used risk management measure that estimates the potential loss in value of an investment or portfolio over a specified time period, given normal market conditions, and at a certain confidence level. For example, if one wants to ensure that at least eighty percent of the value of the portfolio would not be lost in ninety percent of scenarios.
Another application of stochastic programming is city planning. Consider a city that might suffer from an earthquake. What is the strength of the construction that needs to be built? The naive solution is taking the expectancy of the cost of construction versus the cost of damage. However, one might wish to include constraints in line with the value-at-risk (VaR) methodology, ensuring that, with high probability, at least a significant part of the city would not be damaged.
To apply stochastic programming, one only needs to assume a probability distribution. Therefore, it can be applied where the size of the data is limited but prior knowledge can infer the distribution. In these cases, using reinforcement learning might be challenging.
To sum it up, a simple summer game for the boys reminds me of the use of stochastic programming. This technique is very powerful and can be applied to many problems where we are dealing with uncertainty.