In the previous blog I referred to Robert Merton’s caution not to settle for what was technologically feasible 5 or 10 years ago. It is inferior to what we can do now. We have an objective to help retirees have a safe, secure, comfortable retirement. That involves managing risk which (in turn) has huge computational requirements. In addition, for immediacy and other reasons, the focus has moved to web delivered solutions.
In this blog I detail how NetActuary has researched a solution to deliver what seems impossible to do via the web. We are looking at responding to a web request with calculations that need hundreds of thousands (or millions!) of iterations. A single property report may need to calculate internal rate of returns for 20 different scenarios for exits from 1 to 25 years. If you hunt for the yield in 0.01 steps between 0 and 30% that is 1.5 million program loops!! When we start to run Monte Carlo simulations for managing retirement risk, the computational demands skyrocket higher.
The first possible solution is to put a bigger bloke on the job. NetActuary’s website runs on a virtual private server – a physical computer box somewhere in the United States. That box has other websites running on it. My colleague – Cliff Senkbeil – wrote a blog article recently on “Cloud Computing – what is it and how can I use it?” In that article you will see if we give up the comfort of a fixed charge per month and buy pure processing power on a usage basis “Platform as a Service” then we can easily control “how big a bloke” we use. Some months – like the end of the year – we might scale up to massive resources costing big dollars and then scale it down to contain costs in the more quiet months. The type of “bloke” can be controlled also with four, eight and sixteen core c.p.u.’s and ram memory allocations. The test bed we have chosen and have running is Windows Azure.
It gets more powerful than this. For illustration purposes, say we get a request on our web-server for a report that will have 10 minutes to run the Monte Carlo simulation. Rather than drag down the whole web response, we can pass it across to a “worker” machine i.e. put more blokes to work. We might have 5 or 10 of these boxes running to handle the load. When we don’t need them, the data centre will release them to do other work. That keeps the cost manageable for firms without the budget of the World Bank.
We are not just going to use brute force. Smarter code is important. The challenge we have set ourselves is to take the ideas of a Nobel laureate and turn them into tools you can run on your tablet sitting next to the pool. Turn on the coffee machine someone – we are going to need it!
The NetActuary Team