WO2009049294A2 - Stochastic control system and method for multi-period consumption - Google Patents

Stochastic control system and method for multi-period consumption Download PDF

Info

Publication number
WO2009049294A2
WO2009049294A2 PCT/US2008/079734 US2008079734W WO2009049294A2 WO 2009049294 A2 WO2009049294 A2 WO 2009049294A2 US 2008079734 W US2008079734 W US 2008079734W WO 2009049294 A2 WO2009049294 A2 WO 2009049294A2
Authority
WO
WIPO (PCT)
Prior art keywords
risk
investment
goals
resources
utility
Prior art date
Application number
PCT/US2008/079734
Other languages
French (fr)
Other versions
WO2009049294A9 (en
WO2009049294A3 (en
WO2009049294A4 (en
Inventor
Nicolo G. Torre
Andrew T. Rudd
Original Assignee
Advisor Software, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advisor Software, Inc. filed Critical Advisor Software, Inc.
Publication of WO2009049294A2 publication Critical patent/WO2009049294A2/en
Publication of WO2009049294A3 publication Critical patent/WO2009049294A3/en
Publication of WO2009049294A4 publication Critical patent/WO2009049294A4/en
Publication of WO2009049294A9 publication Critical patent/WO2009049294A9/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/06Asset management; Financial planning or analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/08Insurance

Definitions

  • the present invention relates to dynamic optimization of system control over time.
  • the need for dynamic optimization arises in many settings, as diverse as space ship control, solar car power consumption during a multi-day race, and retirement portfolio management.
  • control actions at one time change the state of the system and optimum control actions at a later time.
  • Control theory has broad applications.
  • One of the classical papers in the early days of control theory was James Maxwell's paper "On governors" in the Proceedings of Royal Society, vol. 16 (1867-1868), which applied control theory to a machine governor, such as a centrifugal governor on a steam engine.
  • One patent applies control theory to optimization of spacecraft trajectories and a spacecraft design, simultaneously.
  • Wiffen "Static/Dynamic Control for Optimizing a Useful Objective", US Pat. No. 6,496,741 Bl.
  • Wiffen identifies in cols. 13-14 spacecraft trajectory, spacecraft design, groundwater or soil decontamination, stabilizing vibrations in structures, maximizing the value of a portfolio, electric circuit design, design and operation of chemical reactors and design and operation of a water reservoir system.
  • Success on a given day can be measured by time to complete the course leg and the charge level of car batteries when the sun sets. Because the car is racing, the desired final state is completion of all legs of the race in the least time possible with a minimum final battery charge level.
  • the primary control variable is power consumption. State variables include charge level, available solar power, distance traveled and road grade (which is a function of distance traveled, because the course is set). Speed follows from the selected power consumption and the road grade. This presents a non-trivial dynamic optimization problem, particularly in an area with intermittent cloud cover. It appears at first to be a simpler problem than retirement portfolio management, because choosing how far to run down the battery charge level, given the expected availability of recharging solar power, does not involve a trade-off between risk and reward, as does portfolio management. However, as a race day evolves, the a priori likelihood of cloud cover will be updated, which complicates the problem and favors a risk budget, margin of safety approach to charge level.
  • the first application presented is planning a race strategy for a solar car.
  • the second application is planning strategy over time for a retirement portfolio.
  • FIG. 1 depicts a solar car 10 in communication with a system that monitors battery level, position and speed.
  • FIG. 2 depicts a hypothetical curve for power consumption verses car speed.
  • FIG. 3 depicts a system that assembles goal, performance, and risk information to solve the multi-period control strategy problem.
  • FIG. 4 depicts modules of the planning server that combine to compile a set of control action recommendations.
  • FIG. 5 illustrates a simple search grid.
  • FIG. 6 depicts a high-level hardware architecture that can be used implement embodiments of the technology disclosed.
  • FIG. 7 depicts a system that assembles portfolio, goal, and market information to solve the multi-period control strategy problem.
  • FIG. 8 depicts modules of the planning server that combine to compile a set of control action recommendations.
  • FIG. 9 depicts aspects of the method of developing a control strategy.
  • FIG. 10 depicts risk and reward relationships for a personal investment opportunity and the general investment opportunity.
  • FIG. 11 gives some illustrative data regarding covariance ratios that go into exercising the Markovitz method or any similar analysis of risk and reward.
  • FIG. 12 illustrates a hypothetical change in the mix of investment and non- investment assets for a period beginning with retirement.
  • FIGS. 13A and B depict utility curves.
  • FIG. 14 depicts a lifetime resources and claims statement, adapted to retirement planning.
  • FIG. 15 illustrates a graph of claims and a cash flow summary that may be useful in balancing goals.
  • FIG. 16 depicts two major adjustments in asset allocation along a normal economic trajectory through the course of life.
  • FIGS. 17-18 graph a margin of safety analysis.
  • FIG. 19 labels the paths from fortunate to unfortunate, based on either a current progress or a projected outcome at the end of the planning horizon.
  • FIG. 20 normalizes the fortunate to unfortunate trajectories.
  • This application begins with applying control theory to a solar car race in multiple stages.
  • a five stage solar car race subject to the vagaries of weather. This is a simplification of the World Solar Car Challenge or the North American Solar Car Challenge, in which universities and private institutions compete. See www.americansolarchallenge.org.
  • the solar car is allowed a certain number of square feet of panels to convert sunlight into power. It also is permitted a certain battery capacity to help the car when the sun is obscured by clouds or low on the horizon.
  • the race is conducted during the day. Adequate time is allowed to complete each stage before dark, at least if there are no mechanical breakdowns. Starts are staggered but predetermined.
  • Electrical power generated by the cars' solar panels is a function of time of day and cloud cover.
  • the time of day determines the angle of the sun and the vagaries of weather create a stochastic probability that less than the sun's full power will be available to generate electrical power. Finishing early has two advantages: it improves the team's score, since the winner has the least elapsed time through the competition, and it allows the solar panel to be reoriented to catch the full power of the sun - that is, the solar panel is tilted to face the sun.
  • Completely draining the battery is considered disadvantageous, because the car requires more power to start motion than to continue it. Under maximum solar power with a full battery, the car can consume enough power to accelerate to and maintain the legal speed limit.
  • the solar car travels at less than the legal speed limit to conserve power, because the power consumed is proportional to air resistance, which is proportional to the square of the car's velocity.
  • the effect of power consumption on speed is further complicated by the road grade over the car's country course. The steepest parts of the road grade require either bright sunlight or battery assistance. In these parts of the course, having a charged battery has greater utility than when the car is going downhill. (Unlike most modern electrical cars, there is no reverse charging capability when the car goes downhill.) This is the nature of the multi-stage optimization problem.
  • Control theory and Bellman's algorithm provide a way to develop a control strategy in advance and refine it as better information becomes available about the weather conditions. An opportunity arises to develop a system and method that permit development of control strategies and real time refinement of control as the solar car progresses through the stages of the race and the short term weather forecast becomes more reliable. As in the Wiffen patent, the approach to control theory described in this paper has additional applications, such as portfolio management.
  • FIG. 1 depicts a solar car 10 in communication with a system that monitors battery level, position and speed.
  • the driver of the solar car receives real time updates on suggested control from a system in a van 11 that follows the solar car.
  • the system resides in the van to save weight, to draw on the van's power system, and to allow the analyst more opportunity to concentrate on monitoring and control recommendations than the car driver could.
  • FIG. 2 depicts a hypothetical curve for power consumption verses car speed. It does not include the power consumption for starting the car.
  • a family of curves as depicted in FIG. 2 can be used to take into account the impact of road grade on performance. When the car is going up hill, power will be required to overcome gravity. When going downhill, gravity will assist in powering the car.
  • FIG. 3 depicts a system that assembles goal, performance and risk information to solve the multi-period control strategy problem.
  • a terminal 31 is used to configure goal information, typically using a web server 32.
  • Performance and risk information is compiled in a performance and risk information server 33.
  • Performance information is keyed to at least battery power consumption, solar power consumption and road grade.
  • a family of curves as depicted in FIG. 2 can be used to capture these factors.
  • the road grade at least, will vary according the car's position along the course. With additional refinement, the performance curves could take into account factors such as wind encountered by the solar car, which overlap with risk information.
  • the risk information includes maximum available solar energy and probability of obscured solar energy.
  • the maximum solar energy varies with the time of day, as the sun's angle to the horizon rises and falls, because the incident angle of the sun changes, both relative to the thickness of the atmosphere through which the sun light passes and relative to the orientation of solar cells on the solar car.
  • the planning server 34 applies Bellman's algorithm or a variation on Bellman's algorithm to determine the expected utility of alternative control actions. It selects at least an immediate control action for the solar car driver to take. It can develop a control strategy to be followed at varying points along the course, consistent with the current state of the race.
  • the simulation and report server 35 varies the probabilistic factors, applies the control strategy and simulates elapsed time. By studying the simulations, a race team could determine how much battery charge to consume or accumulate, given the time of day, the position on the course, the current battery charge, the current weather (obscured solar power) and the risk of bad weather over the remainder of the course.
  • FIG. 4 depicts modules of the planning server that combine to compile a set of control action recommendations.
  • the performance contour module 41 provides a family of performance curves that present speed as a function of power consumption.
  • the family of curves could be indexed by road grade, which is a function of location along the course.
  • the family of curves could also take into account wind conditions that degrade or enhance car performance. Then, the curves would be indexed by road grade and wind conditions.
  • the problem initiation module 42 assigns a search grid spanning at least a time horizon, range of performance risks, range of current resources, and range of consumption. A simple grid is illustrated in FIG. 5. The illustration makes it clear that points along the grid need not be equally spaced.
  • the search may be conducted once with a coarse grid and then again with a finer grid and narrower ranges. Some values may be represented by continuous values while others are represented by discrete values.
  • the time horizon may best be expressed as location on the course, time of day and elapsed time. These three factors combine to express where the solar car is in the race.
  • the range of performance risks relates to weather.
  • the weather forecast during the car design phase will be very generic. During the race, it will be refined and may even be predictable with little variance for a few hours at a time. The distribution of expected weather will vary by location along the course. It also may vary by time of day, especially if the race is run in an area subject to afternoon thunderstorms.
  • the distribution of expected weather can be expressed as a probability that the solar power will be obscured, given a location and, optionally, given a time of day.
  • a family of distributions of expected weather could be constructed for use during the race, as opposed to use during the design phase.
  • the range of current resources will include available battery and solar power.
  • the solar power available can either be combined with battery power to speed the car along, or can be diverted to charge the battery.
  • One control strategy that the system could evaluate or simulate would be using battery power when the sun is low and recharging the battery when the sun is high.
  • Another control strategy to evaluate would be using battery power when climbing a grade and charging the batteries when coasting down hill.
  • the control action recommendation module 43 applies Bellman's algorithm, which is further explained in following sections. It begins at the end of the race and iterates backwards from various potential outcomes. Each potential outcome has an expected utility.
  • the utility function may be a linear function of total elapsed time. The faster the car finishes the race, the better. The final state of the car finds it at the finish line location with the battery nearly exhausted, because the car is free to consume more battery power as the risk of running low on power diminishes. The final state of the car also includes the total elapsed time, which is likely to range within reasonably predictable bounds. Iterating backwards through the search grid, for combinations of position on the time horizon and current resources, the algorithm determines the utility of particular control actions.
  • the utility of particular control actions depends on the likely weather during an increment of time (and progress along the course), the control action chosen and the expected utility of the resulting system state after the control action is taken.
  • the expected utility is determined by applying the weather probability distribution to the current state and control action. Depending on how obscured the sun is, more or less energy will be available to power the car or charge the battery. Iterating backwards through the search grid, the expected utility of control actions can be calculated, because the expected utility of later stages of the search grid has already been determined.
  • the output of the control action recommendation module is data that can be used to immediately recommend a control action, to devise an overall strategy for the race, or to simulate a range of control actions.
  • FIG. 6 depicts a high-level hardware architecture that can be used to implement embodiments of the technology disclosed.
  • the major groupings of this hardware architecture are applications and user interface 601, application controller 603, data integration 605, batch application services 607, real-time application services 609 and off-line data processes 611.
  • the legend indicates that a client system is linked in communication with a server system.
  • this hardware is arranged in an application service provider (ASP) configuration, which means that certain processes, such as computing intensive processes, security sensitive processes and processes that rely on subscription or proprietary data are hosted on servers.
  • ASP application service provider
  • the servers will be remotely hosted. Some customers will set up their own servers.
  • a shared server is useful for computing intensive processes, because the computing resources can be shared among many users.
  • a shared server also is useful for security sensitive processes, because fewer systems need to be secured than if all of the sensitive data were downloaded to all of the workstations used for data entry.
  • a shared server is further useful for processes that rely on subscription or proprietary data, because subscriptions often are priced based on the number of servers updated on a regular basis. It may be less expensive or more convenient to update a single server or server farm and perform calculations from the updated hardware than it would be to distribute the subscription data to numerous workstations.
  • some workstations are capable of running both the client and server side of an application. That is, they can run a server such as Apache and also run a browser such as Mozilla that accesses the server.
  • the application user interface 601 depicts alternative interface applications, complementary levels of service and complementary user and administrative interfaces.
  • the retirement income planning module 615 and the ultra high net worth module 620 represent complementary levels of service and interface structures adapted to different customers.
  • the retirement income planning module 615 potentially includes alternative Web App 616 and thick client 617 interfaces.
  • the retirement income planning Web App 616 is commonly known as a thin client. It can be implemented using JavaScript and a conventional browser such as Microsoft Internet Explorer, Netscape's browser, Opera, Safari, Mozilla's Foxfire or another browser. Other implementation software options such as PHP, Perl and Java also are available for thin clients.
  • the retirement planning Webtop 617 is commonly known as a thick client.
  • the retirement income planning application includes an enterprise control Webtop 618 (or Web App) that one or more analysts would use to store and manipulate data for a plurality of customers.
  • the ultra high net worth module 620 similarly includes a Web App thin client 621, a Webtop thick client 622 and an enterprise control Web App or Webtop 623.
  • the modules of the application or user interface 601 typically are operated on a laptop, desktop or workstation.
  • the application user interfaces are coupled in communication with an application controller module 603.
  • the application controller module 603 may include a money machine application controller 625, a client information database 626 and a financial plan database 627.
  • the application controller 603 manages updating of client-related input and invokes real-time application services 609.
  • the application controller process 625 accesses and updates a client information database 626 and a financial plan database 627, responsive to requests from the application and user interface 601.
  • a data integration module 605 can be invoked by the application controller to import information for the client database 626 from an external source such as a brokerage client application.
  • the data integration module 605 also can be invoked by the application controller to import information for the financial plan database 627, such as stock holdings from a client asset list.
  • More than one client asset list may be accessible to the data integration module 605, such as a first asset list for holdings managed by a particular analyst and additional asset lists for brokerage accounts managed elsewhere. Changes in client information or asset lists may be published for access by the data integration module 605 and automatically posted to the client information database 626 and/or the financial plan database 627, without invocation by the application controller module 603.
  • the application controller 625 can publish to the application and user interface 601 the availability of updated data and post updates to the databases 626, 627 under user control, mediated by the application controller module.
  • the financial plan database 627 further is subject to updating by the batch application services 607 and the off-line data process 611.
  • the batch application services 607 may include a monitoring process 640, a periodic reporting process 641, a data delivery process 643 and a configuration management process 642.
  • the monitoring process 640 repeatedly and periodically checks the status of client assets against the plan. It also may check liabilities.
  • This monitoring process 640 is more persistent and consistently available to watch for variations between the plan and the market than either a client or analyst would be, as the process 640 does not become distracted or take vacations.
  • the monitoring process can monitor for variations from the plan such as a need to rebalance the portfolio, a lack of stop loss orders, or a general deterioration in a segment of the client's asset base.
  • the monitoring process may detect deterioration in asset segments more readily and accurately than either a client or analyst would. It uses the data delivery process 643 to reach the client or analyst by predetermined means, consistent with the urgency of a particular alert.
  • a periodic reporting module 641 may generate reports on demand or at predetermined periods, such as weekly, monthly or quarterly.
  • the monitoring process 640 and periodic reporting process 641 can be connected to a data delivery process 643 that transmits alerts or periodic reports to the client and/or analyst.
  • the data delivery process in 643 may send e-mails, SMS messages, faxes, pages or other alerts.
  • the alerts may provide complete information or a link to a location at which complete information can be accessed.
  • the off-line data process may include data support 645 and raw vendor data.
  • the raw vendor data 646 is depicted as a database, but may be a Web service or other online source.
  • Raw vendor data may include asset pricing and asset characteristics, such as estimates of volatility and co variance or correlation of performance among asset classes.
  • Data support 645 may include data assembly, calculation and data collection.
  • the application controller 625 may invoke real-time application services 609.
  • application services include a report generator 631, a solver and simulator 630, 632 and an asset master 633.
  • these processes are connected to databases 634-637.
  • the asset master 633 and asset master database 637 may be accessed for templates used to assemble information about particular client assets and goals or concrete objectives. Reference to master templates simplifies the extension and updating of system designs.
  • the solver 630 and simulator 632 can be invoked. The solver is beyond the scope of this application.
  • One form of simulation uses Monte Carlo simulation.
  • the simulator 632 may access the Monte Carlo simulation database 636.
  • Simulation parameters such as number of simulation runs, time interval, probability distributions for model factors, probability distributions for particular assets given particular model factors, covariance factors and similar data may usefully be maintained in a simulation database.
  • the simulation parameters may reflect a random walk approach, a trending approach, or other approach to the relationship of model factors in successive periods.
  • Funds in various accounts may differ in terms of taxability (e.g., an IRA account versus a regular brokerage account), in terms of ownership (joint versus separate property) or in terms of purpose (general funds versus funds dedicated to a specific purpose.)
  • the investment structure problem includes picking strategic asset allocations and rebalancing policies for each account and setting policies for transferring funds between accounts so that the joint whole achieves the best possible performance.
  • the basic finding is that the investment structure choice determines 90% of the investment outcome and that asset selection accounts for 10%.
  • the investment structure is expected to be an even more critical decision.
  • the elements of proper tax management are locating asset classes within the investment structure in a tax conscious manner, selecting tax efficient assets for taxable accounts, diligently harvesting tax losses, being slow to realize capital gains, and adjusting portfolio exposures in tax efficient manner (e.g., purchase of a hedge rather than sale of a highly appreciated long.)
  • the third determinant of investment success is careful asset selection.
  • the performance of assets reflects a combination of market factors and asset specific factors.
  • the market wide factors are controlled by the strategic asset allocation, so asset selection focuses mainly on the specific factors.
  • the core finding is that markets have grown more efficient with time and that risks of asset specific events have increased.
  • These trends make asset selection an increasingly difficult means by which to add to investment performance.
  • the general conclusion is that diversification needs to be carefully controlled and that actual asset selection is best delegated to specialists (i.e., to fund managers).
  • Research shows, however, that few fund managers persistently add value and that the fees charged on many funds are so high that there is little probability of the managers adding value on an after fee basis.
  • These considerations lead to a fund selection methodology which emphasizes avoiding mistakes as a first order of business and pursuit of performance as a secondary objective. Mistakes to be avoided include funds with poor risk control, funds with high fees and funds which seek excessive active return in more efficient markets.
  • the Wealth Manager System assumes that the advisory client has several goals and models the priority of goals.
  • the Wealth Manager System represents priorities in terms of three "shopping carts.”
  • the first cart holds the essential goals which the client wishes to be nearly certain of accomplishing, such as paying the mortgage and basic living expenses.
  • the second cart holds the target goals which the client plans on accomplishing but on which he could accept some shortfall were untoward events to occur.
  • the third cart holds the more aspirational goals that one expects will only be funded in relatively favorable circumstances.
  • a specific goal might be split across the three carts. For instance, the essential educational goal for a child could be to pay 100% of the costs of a college education in the local state system, while the target priority might extend to the cost at a private institution and an aspirational priority could include financing graduate school, as well.
  • Goals define cash flows over time.
  • a living expense goal calls for annual expenditures, potentially for the rest of the client's life, escalating through time to deal with inflation.
  • a capital purchase goal calls for a lump sum cash flow at a point in time.
  • To price out accomplishment of goals we discount to current dollars the expected cash flow that needs to be funded to realize the goal. If the goal is classified as an essential goal then no shortfall can be tolerated. This can be emphasized by discounting the cost of essential goals at a discount rate equal to the rate of return on a portfolio with after tax cash flows that provide the required cash flow with low risk.
  • Life goals are not funded exclusively from investments. Clients rely on earnings, equity stored in home, non-financial investments such as rental property and prospective inheritances. The totality of the assets which the client can rely on we term his resources.
  • resources may be valued in one of several ways. Stocks and bonds may be valued using market prices. Real estate value can be estimated using market values. Earnings can be valued on a discounted cash flow basis using a government bond-based discount rate. Where the cash flow continues for life, as for instance with social security benefits, the valuation can be based on the actuarial present value. This measure values the cash flows basically at the cost of a life insurance policy which replicates the stream of cash flows.
  • FIG. 14 provides a more extensive sample of a statement of resources and claims.
  • Two of the most interesting performance measures are the funding ratio and margin of safety, depicted in FIGS. 17 and 18.
  • the funding ratio is what percentage of a goal priority class is funded by available resources, assuming all higher priority claims are funded first. It gives a measure of to what extent the client will be able to achieve the goals in the priority class, in a particular column of the table above.
  • the margin of safety shows what percentage reduction in resources could be absorbed while still leaving a priority class (and all higher priorities) fully funded. It shows the impact of potential losses on the client's life goals and it provides basic guidance on the client's financial capacity to bear risk. From the statement above we calculate:
  • the advisor's objective is to formulate an investment strategy for meeting those cash flows that achieve goals, keeping in mind the risks of investment and managing those risks consistent with the investor's goal structure.
  • From portfolio theory we know that one of the critical decisions to take is the level of risk to be borne in the portfolio. At a deeper level, we know that risk arises from economic exposures and so the question is truly which exposures to bear and in what degree.
  • the client's willingness to bear risk is a purely psychological factor which traditionally is evaluated through a questionnaire.
  • the advisor needs to assess the client's investment maturity. Until the client has been through a full market cycle, the client's self-reported willingness to bear risk should be treated with caution. Assessment of investment experience is typically included in a client questionnaire. Where the advisor has been able to establish a trusted relationship with the client, where the client has built up some investment experience and where the advisor has been able to educate the client about his capacity to bear risk and the reward structure for so doing, one would expect these psychological factors to be relatively unimportant. After psychological factors are tempered by experience and education, the risk that is suitable to the client should be close to that recommended by the objective assessment. Where the client has limited experience, has not yet built a trusted relationship with the advisor or just does not understand investing, the subjective factors are of greater importance and may control the decision as to what represents a suitable risk.
  • part of the portfolio may not be under the advisor's control, as for example funds held in a 401k plan with a limited range of investments.
  • large embedded capital gains may make it disadvantageous to adjust the exposure.
  • the fixed exposures will hedge off against one another, as for instance when CPI sensitive resources hedge CPI sensitive claims.
  • the first step is to evaluate near term liquidity needs.
  • One design objective of the system is to keep it focused on investment management and not get intimately involved in banking type activity. Accordingly, we assess the cash outflows required from the portfolio over the next quarter and move those funds to cash assets immediately.
  • To fund cash withdrawals over the next few quarters we move an optimal portion of the required funding to near cash assets (e.g., certificates of deposit or short term bond funds.)
  • near cash assets e.g., certificates of deposit or short term bond funds.
  • the remaining portion of the portfolio may be managed to a medium to long term investment horizon.
  • the next step is to build a strategic asset allocation and location plan for the portfolio. This analysis jointly solves for how much of each asset class to hold and in which accounts to locate the holdings.
  • the analytic method is a mean variance optimization in which the investment universe consists of asset classes. The result of this analysis is a strategic asset allocation for each account.
  • a selected asset be available for purchase. For instance, a mutual fund needs to be open for new investment. In addition, the fund should meet the advisors quality criteria or be grandfathered in by virtue of an existing holding in the client's portfolio. Finally, among the eligible funds, we select the cheapest share classes to own. Once an eligible list of investments has been built we use a mean- variance optimization to complete the portfolio construction. This optimization takes the strategic asset allocation for the account as its benchmark for risk measurement. The return assumption is the pre-tax return in accounts not subject to current taxation and the post-tax return in accounts taxed currently. In both cases, the cost of transacting is taken as a reduction in the utility. Several investment policies may be imposed.
  • policies may be set at the advisor level to enforce prudential good practices (e.g., limiting excessive asset class tilts.)
  • Other policies may reflect client requirements such as a trading restriction on an asset. For instance, a client who is a corporate insider will be subject to black out periods on trading around financial release dates. After the optimization completes, the calculated results are cleaned up to eliminate de minims asset holdings and to round trade sizes. This results in a trade list for each account showing the trades required to implement the overall strategy.
  • FIG. 9 depicts aspects of the method described in this section.
  • a computerized system collects client-defined goals (901). Each goal reduces to a sequence of cash flows "F( )" through time of form:
  • F(g,n,p) desired spending for goal g in year n at priority level p
  • a flow may be denominated in either dollars or dollars of constant purchasing power (902).
  • the client has three goals: First, to pay the mortgage. This requires $60,000/year for fifteen years and is denominated in dollars (as opposed to constant purchasing power (essential) dollars), so
  • a second goal is to have funds to pay living expenses. These expenses increase with inflation so the goal is expressed in constant purchasing power. Essential expenses are projected to be at least 60,000 dollars a year to cover and $80,000 is preferred. These funds should extend to my expected lifespan (say 45 years) so
  • a third goal is to purchase an annuity that will continue to pay living expenses should the client outlive their estimated life span.
  • the estimated cost of such an annuity is 80,000, in this example, denominated in dollars of constant purchasing power, so
  • the client will typically have investment and non-investment assets.
  • the client has 500,000 in securities, he has earned 20,000 in annual social security benefits that will be paid commencing in 10 years and he plans on selling his home in 15 years and moving to a condo, thus freeing up 300,000 of cash.
  • the social security benefits and house sales both generate cash flows whose amount increase in line with the CPI index. They can be proxied by positions in CPI-linked bonds which produce the same cash flows.
  • the client may be restricted in liquidation of some investment assets.
  • the client has 200,000 in an employer sponsored 401k fund. It can only invest in
  • the client has 50,000 in the stock of his employer which he cannot sell for 3 years.
  • the client has adopted a policy that when he invests in equities no more than 20% of the equity investment will be placed in small cap stocks.
  • FIG. 10 which was discussed in the prior application, depicts investment opportunities and personal investment opportunity as a trade-off between percent annual return and percent value-at-risk per annum.
  • FIG. 11 gives some illustrative data regarding covariance ratios that go into exercising the Markovitz method or any similar analysis of risk and reward.
  • E(t,r) expected return at time t for a given risk level r
  • D(t,r,i) fraction of portfolio wealth invested in asset i for the portfolio selected by the Markowitz method with risk r at time t
  • Constant purchasing power goals and resources at future dates are adjusted by one or more inflation indexes (904).
  • an educational cost index may rise more quickly than the consumer price index, so it may be useful to have more than one inflation index.
  • the inflation index at time t is I(t).
  • This utility function is intended to express the idea that S(t,X,0) is a minimum spending level that must be met and that spending above CS(t,X,l) brings limited rewards.
  • FIGS. 13 A and 13 B depict examples of logarithmic utility functions, not keyed to these examples, but generally making the utility of only barely achieving (or missing) an essential goal so negative as to be prohibitive, even in a multi-year summation of utility.
  • Other forms of utility function can be applied.
  • the chapters of Kenny that include the tabulation and illustration, chapters 4-5, are hereby incorporated by reference.
  • the form of utility function selected may influence the strategy selected.
  • FIG. 5 graphically depicts a two-dimensional grid, as might be applied to wealth 512 over time 511. Note that the grid need not be rectangular.
  • An initial search grid may be used initially and a refined search grid with more resolution and a narrower range may be used to refine the search.
  • n_l,n_2,n_3,n_4) corresponds to the (W,g,r,I) values as (1.2 nJ • 1000,n_2/10, n_3/100,(l+(n_4/100) t ) t • 1(0)) for n_l in 1...38, n_2 in 0...10, n_3 in 0...25 and n_4 in 0...10.
  • the probability of achieving this return is given by the normal probability P(ln(W(t+l),E(t,r_l),r_l) where P(x,m,s) is the probability of getting value x from the N(m,s ⁇ 2).
  • P(x,m,s) is the probability of getting value x from the N(m,s ⁇ 2).
  • the probability of a certain transition in the other coordinates is calculated similarly.
  • Data assembly Data from the case, economic database, advisor database and prior analysis is collected and transformed to required form. Some of the data is time varying. This data is summarized as a current value and a long term mean.
  • Investment opportunity We set up a portfolio construction problem and solve it for two risk aversions. These risk aversions determine two ends of the efficient frontier and thus define the investment opportunity set. The analysis is performed at least once for current conditions and once for the long term mean condition. As current creditors evolve, the immediate investment opportunity may be revised.
  • Strategy lookup We search a table of results from the offline dynamic optimizer to get the risk budget. This search is based on the two investment opportunities and the current ratio of wealth to goal cost.
  • Pool level investment structure We determine the investment structure at the pool level. This repeats the investment opportunity optimization with adjustment of the risk aversion to match the risk budget fixed by strategy lookup.
  • FIG. 15 illustrates a graph of claims and a cash flow summary that may be useful in balancing goals.
  • Various datacubes are prepared.
  • This datacube holds the cash flows projected by a cash flow manager module.
  • This table assigns an owner to a set of alpha forecasts.
  • An owner may be the software creator, an enterprise, business unit, advisor or case. Ownership determines edit privileges to this data. By default, the data can only be viewed by the owner and organizational subordinates of the owner.
  • f forecast_set id identifies the set of forecasts f date date data date f asset id asset id order int index assigned to asset exempt alpha per cent expected pre tax return in annual per cent low alpha per cent expected low tax rate return in annual per cent medium alpha per cent expected medium tax rate return in annual per cent high alpha per cent expected high tax rate return in annual per cent 2.2.2 Data Interface [00111]
  • the CaseDao should support the following methods.
  • alphas(rate) Returns a vector of expected returns for the case for supplied tax rate band. Defaults to the strategy set for the October 2007 release. Possible values of rate include EXEMPT, LOW, MEDIUM, HIGH.
  • risk_IimitationO returns true if risk questionnaire imposes a limitation
  • Typical values of band are EXEMPT, LOW, MEDIUM, HIGH.
  • This table holds the investment policies associated to a policy.
  • Field Type Nullabk Contents f strategy id strategy id f date date data date t type id policy type id string yes identifier field flag Boolean yes Boolean field value 1 float yes first value field value2 float yes second value field value3 float yes third value field
  • So-called asset styles associate friendly names with generic assets that have cryptic, analytical-sounding names. This table holds an association between style identifiers and generic assets.
  • This table holds properties of the generic assets referenced by the asset style association table, including user-established bounds on concentration of the portfolio in these assets.
  • This table holds asset by asset covariance values for the generic assets in the asset properties table.
  • This table maps integer 4-tuples representing two discrete points on a risk-return diagram to an integer code termed the opportunity value.
  • the points on the diagram are taken as extrema of an efficient frontier and the opportunity value identifies the frontier as a member of a set of frontiers.
  • the StrategyDao supports the following methods:
  • tax_band(income, marital_status) Return tax band for income level (in constant dollars to reflect indexing) and marital status based on tax band table.
  • policies Return list of investment policies from strategy policies table.
  • the strategy optimizer extends the portfolio optimizer by adding a generic capability. It then exercises that capability to implement shelter and cash constraints.
  • n is the number of assets in the investment universe.
  • the optimizer user may supply
  • Ah S [00128]
  • the value S is called the shelter ratio. It is in the interval [0,1].
  • N the planning horizon used in the cash flow manager.
  • n t the estimated value of investment accounts in the years n t under the plan.
  • the higher priority class values are incremental values, rather than total values of a claim across priority classes.
  • This data can be extracted from output of a cash flow manager module. If the output provides values at future points in time, then these values are used. This rule applies to investment accounts and houses. Otherwise, we are provided with the expected cash flows. Examples are human capital, social security and claims. Suppose the expected cash flow at time t for some item is e t . We calculate its balance sheet value at time s as
  • ADAT averaged deflated estimated taxable income
  • marital status to look up the mean tax band TB 2 .
  • V t (t) the estimated value of the account.
  • Account Level Lock Summary Datacube Summary of locks at the account level.
  • Account Level Style Summary of styles at the account level.
  • a funding pool p has attached to it a list A p of investment accounts, a list N p of non-investment resources and a list C p of claims.
  • C 1 X if the account is controlled and 0 otherwise.
  • B t (t) be the account basis. Define at the pool and account levels:
  • Each non-investment resource and claim i supplies a member function strategic_style ( strategy) which returns its style vector X 1 in the strategy calculated style.
  • strategy strategy
  • w y (t) be the value of the j' h priority class at point t .
  • r ⁇ be the funding ratio of class j and set
  • V 3 (PJ) Vo(PJ) + Vi(PJ)
  • the sheltered ratio is defined as
  • T(PJ) s(pj) ⁇ - V 3 (PJ) and the time averaged shelter ratio as
  • period 0 corresponds to the current partial year.
  • Pool Liquidity Demand Datacube Direct and full liquidity demand for each pool.
  • H n max(0, N 2 (H)- N 1 (N))
  • Pool Styles Datacube Style vectors attached to pools.
  • Mean Pool Style Datacube Time averaged pool styles.
  • Investment universe The universe is the set of generic assets corresponding to the styles appearing in the strategy style scheme. This set is provided by StrategyDao.investrnent_universe().
  • Asset price equal to 1 for all assets.
  • h( ⁇ ) be the optimal solution for some risk aversion ⁇ .
  • h (t) be the uncontrolled weight (i.e. the locked style X 3 (O .)
  • g p(h( ⁇ ) -h : (t)) where p is the full resource value divided by the controlled value (both at time t .)
  • Pool Opportunity Datacube Investment opportunity for each pool.
  • Pool Strategy Datacube Strategy for each pool.
  • Pool Properties Datacube Properties of optimal pool portfolios.
  • Folio Datacube Optimal portfolio at the pool level.
  • L(p,0) be the direct locked investment weight in pool p.
  • x be the ratio of direct unlocked value in p to direct value of p , i.e.
  • B is the benchmark for the account. B and B divide this benchmark into locked and unlocked parts.
  • V p be the value of pool p and define
  • Cost of Risk Policy Datacube Summarizes impact of risk questionnaire.
  • Field Type Contents T family id family id f entity id entity id full_risk float averaged full risk budget ⁇ ⁇ averaged constrained constrained_risk float risk budget ⁇ i full_return float averaged full return a, ⁇ Averaged constrained constrained return float return d 2 full_return minus return gap float constrained return ⁇ cost of return gap in dollars of cost ccuumrrency . v investment return per year ⁇ -
  • account_summary Datacube Basic account data.
  • E[ ] is the expectation operator.
  • the optimal stochastic control problem is to find c : S ⁇ K such that for all policies c in K.
  • control space C we have not said much about the control space C. At this point we will posit that at time t 2 the control space is a prism in some real vector space, i.e. for bounding vectors x and y possibly depending on time.
  • the inequality operators are taken component wise, so X 1 ⁇ c means X 1 J ⁇ c 0 for all j.
  • ControlProble ⁇ i public: virtual ⁇ ControlProblem( ) ⁇ float horizon (); // time horizon int space dim() ; // dimension of the state space int control dim ( ) ; // dimension of the control space int time_slices ( ) ; // returns the number of discrete time points int states (int i) ; // returns number of space states at time i
  • ControlSolution solution public: BellmanSolver (ControlProblem &p, ControlSubproblemSolver &s)
  • Wit s o (t)
  • 0 ⁇ w ⁇ t) 0 ⁇ B ⁇ t) ⁇ 1 and 0 ⁇ i(t) for all t.
  • W(t) and lit) are potentially unbounded and for fixed T it is easy to pick bounds W and I such that Wit) ⁇ W and lit) ⁇ I for all t e [0, T] with high probability.
  • the state space is effectively a rectangular prism in R 3 .
  • the control space will also be a subset of R 3 .
  • i 0, 1, 2 and X 1 it) ⁇ x 1+1 (t) for all t.
  • e(t) ⁇ o it)Wit) be the expenditure on liabilities at time t.
  • This utility function describes a spending policy which must exceed x o (t) but where there is ever decreasing utility to increased spending.
  • the choice of utility function is rather arbitrary and is motivated primarily by the solutions to which it gives rise.
  • the utility function of a policy is given by t
  • the present invention includes a system that interacts closely with hardware elements and a method executed by the system.
  • the system and method can be viewed from the perspective of an overall system, a server that generates strategy recommendations, or a user interacting with the system.
  • the invention may be embodied in an article of manufacture such as media impressed with programs or logic that generate strategy recommendations. Generation of strategy recommendations generally can be extended to simulation of outcomes resulting from following the strategy recommendations.
  • control action policy we mean an array of control actions to take when the solar car finds itself in a particular state, such as a combination of battery charge, position on the course and immediately available solar power (which depends on uncertain weather conditions and time of day.)
  • the position on the course may be subdivided into equal length segments or into segments with similar slopes.
  • the subdivision can further subdivide a segment based on a maximum distance or time of transit. With sufficient computing resources, the segments could be subdivided 100 meter increments or less.
  • the planning server has access to one or more repositories of electronic data that include (a) current resource information, (b) future goal information, (c) performance opportunity information and (d) resource replenishment risk information (712 and 713).
  • the current resource information includes at least battery charge level.
  • the future goal information includes at least course information and minimum battery charge levels.
  • Performance opportunity information includes how power consumption converts into distance travelled over time. The performance opportunity takes into account variations in slope and, optionally, may take into account head winds.
  • the resource replenishment risk information reflects the likely solar power, as impacted by time of day, weather and course (such as shaded areas.) The resource replenishment separately accounts for times when the solar car is on course and in its aerodynamically efficient configuration, and times when the solar car is parked with its solar array oriented directly toward the sun.
  • the planning server includes an alternative resource holding generating module, problem initiation module and control action recommendation module.
  • the alternative resource holding generating module accesses future goal information, performance opportunity information and resource replenishment risk information and determines risk and return metrics of alternative resource holdings over a predetermined planning horizon. Risk metrics may relate remaining battery charge to expected weather risks that impact resource replenishment (solar power) and performance (expected head winds) at various points along the course. The risk and reward metrics may be pre-computed to allow simulations to run more efficiently.
  • the planning server further includes a problem initiation module 822 that accesses at least some of the data compilations. This module establishes a search grid that spans and subdivides dimensions of the problem.
  • the search grid may be continuous.
  • the search grid dimensions may include the time horizon of analysis, a range of resource replenishment risk levels, potential resource levels and a range of consumption levels.
  • the potential resource levels include a resource cushion level at the end of the planning horizon or at until close to the finish line, when expected weather conditions are virtually certainty.
  • Information in the data compilations some of which may be hard coded into the system, can be used to generate the search grid, optionally subject to revision by a user.
  • the problem initiation module outputs the search grid. The output may be an object stored in memory or persisted to a nonvolatile memory. It may be a handful of parameters passed to another module.
  • the control action recommendation module 823 accesses the search grid generated by the problem initiation module, the risk and return metrics generated by alternative resource holding generating module and the data compilations.
  • the control action recommendation module performs an evaluation over the time horizon and recommends control actions that can be followed by advisers or automatically implemented by other modules. For particular times within the time horizon and for particular resource values, the control action recommendation module evaluates control actions that select a consumption level and a risk level. The risk level may be selected from a range of available risk levels.
  • Evaluation of the control actions at least combines an immediate utility resulting from consuming power (and going fast) and a long-term expected utility of results achieved by following a particular set of control actions.
  • the immediate utility relates to a particular segment of the search grid, typically a kilometer or less.
  • the long-term expected utility of a particular result expresses the utility from that point forward to the end of the time horizon. That is, the long-term expected utility is a summation from a particular segment to the end of the time horizon.
  • calculations proceed from the end of the time horizon backwards, so that long-term expected utility values of later periods are available when calculating expected utility values of control actions taken in earlier periods.
  • Long-term utility values are expressed as expected utility values that result from particular control actions. This involves applying a probability distribution function to determine likely future outcomes. In one embodiment, the utility of failing at any time through the time horizon of running out of power is prohibitive.
  • a logarithmic utility function can be scaled so that running out of power has an infinitely negative utility. Continuous functions that have very steep slopes near the point of barely being able to move the solar car also make it prohibitive to fail to satisfy the goals.
  • a rule that assigns an infinitely negative utility to missing an essential goal has the same effect, regardless of the shape of utility function elsewhere. By prohibitive, we mean that encountering more than a remote probability a of missing an essential goal at any time during the time horizon, where a ⁇ 0.05, or preferably ⁇ 0.01, or more preferably ⁇ 0.001, causes the utility over the time horizon to be lower or less favorable than the utility of courses of action that do not have the threshold probability of missing any essential goal.
  • the control action recommendation module outputs at least recommended control actions for the beginning period of the analysis. That is, control actions to be followed immediately may result from the analysis. These control actions may include at least a consumption level and a portfolio risk level. Optionally, the control actions may be linked to further modules that refine control actions in terms of particular assets. The control actions also may be linked to modules that automatically implement the control actions.
  • a further aspect of this invention is a control strategy evaluation system that includes the planning server.
  • the planning server control recommendation module outputs a control strategy data cube that includes control strategies for selection of consumption levels and selection of portfolio risks that span dimensions of the search grid.
  • the control strategy data cube would include recommended consumption and risk levels spanning at least the time horizon and resource values found in the search grid.
  • the control strategy evaluation system would further include a simulation server 715 that accesses the control strategy data cube and conducts at least 50 probabilistic simulation runs over the time horizon.
  • the simulation runs would apply the control strategies to the simulated intermediate economic events and report the distribution of simulated outcomes.
  • the simulation server might perform at least 100 probabilistic simulation runs, or preferably 500 probabilistic simulation runs, or more preferably 1000 probabilistic simulation runs in order to generate a statistically significant distribution of outcomes.
  • a planning server 714 for selecting at least immediate control actions in a multi-year planning setting.
  • the years in the planning setting may be treated as years or subdivided into months or weeks. With sufficient computing resources, the periods could be subdivided into weeks or days.
  • the planning server has access to one or more repositories of electronic data that include portfolio information, goal information and market information (712 and 713).
  • the portfolio information includes pluralities of investment and non- investment resources available over multiple time periods.
  • the goal information includes pluralities of one time and repeating expenditure goals and at least two levels of priority that span essential and nonessential expenditure goals.
  • the priority levels include essential, target and aspirational goals.
  • the planning server includes an alternative portfolio generating module, problem initiation module and control action recommendation module.
  • the alternative portfolio generating module accesses to the data compilations and calculates alternative diversified risk portfolios with a range of available risk levels for particular times within a time horizon.
  • the available risk levels may be expressed in terms of variability of returns (such as statistical variance) or value-at-risk.
  • the alternative portfolios may be selected applying a variation on Markowitz's classical method or some equivalent approach. Those portfolios that produce the greatest return for a given degree of risk can be described as being on the efficient frontier.
  • the alternative diversified portfolio calculation can take into account the covariance ratios between investment and non-investment resources. As the mix of investment and non- investment resources changes, preferences among alternative portfolios may change.
  • the calculation of alternative diversified portfolios may take into account both assets that can be liquidated and redeployed and assets that are locked in position.
  • the calculation also may take into account initial conditions of portfolio risk level and embedded gain.
  • the initial portfolio risk level indicates the extent of turnover required to reach an alternative risk level.
  • the embedded gain indicates the tax likely to be realized due to a particular extent of turnover.
  • the planning server alternative portfolio generating module does not extend to selecting assets to hold or liquidate. Additional modules that deal with particular assets may be combined with the portfolio generating module.
  • the alternative portfolio generating module 821 persists to storage a set of portfolios represented by risk and return curves that can be used in evaluation and selection of alternative control actions.
  • the starting conditions also may include standardized portfolio assets that correspond to non-investment or locked investment portions of a portfolio.
  • the planning server further includes a problem initiation module 822 that accesses at least some of the data compilations.
  • This module establishes a search grid that spans and subdivides dimensions of the problem. It effectively converts a continuous problem into a discrete problem that is amenable to numerical algorithms. Alternatively, some dimensions of the search grid may be continuous.
  • the search grid dimensions may include the time horizon of analysis, the range of available risk levels, potential resource levels and a range of consumption levels that meet at least the essential goals.
  • Information in the data compilations some of which may be hard coded into the system, can be used to generate the search grid, optionally subject to revision by a user.
  • the potential resource values optionally may include both investment and non-investment resources, especially when non-investment resources are available to satisfy goals. For instance, salaries and Social Security benefits may be included in the resources.
  • the consumption level optionally may be expressed as a ratio of resource or combined resource values.
  • the problem initiation module outputs the search grid. The output may be an object stored in memory or persisted to a nonvolatile memory. It may be a handful of parameters passed to another module.
  • the control action recommendation module 823 accesses the search grid generated by the problem initiation module, the risk and return functions generated by the alternative portfolio generating module and the data compilations.
  • the control action recommendation module performs an evaluation over the time horizon and recommends control actions that can be followed by advisers or automatically implemented by other modules. For particular times within the time horizon and for particular resource values or wealth, the control action recommendation module evaluates control actions that select a consumption level and a risk level.
  • the consumption level may be a ratio selected from a range of ratios.
  • the risk level may be selected from a range of available risk levels.
  • Evaluation of the control actions at least combines an immediate utility resulting from consumption and a long-term expected utility of results achieved by following a particular set of control actions.
  • the immediate utility relates to a particular time, typically the current period of analysis or the next period.
  • the long-term expected utility of a particular result expresses the utility from that point forward to the end of the time horizon. That is, the long-term expected utility is a summation from a particular period to the end of the time horizon. Discounting future utility is optional.
  • calculations proceed from the end of the time horizon backwards, so that long-term expected utility values of later periods are available when calculating expected utility values of control actions taken in earlier periods. Long-term utility values are expressed as expected utility values that result from particular control actions.
  • a level of risk and reward in a portfolio is expressed as an expected gain subject to variance.
  • the gain and variance parameters are typically applied to a normal distribution of likely outcomes.
  • a discrete variation on the normal distribution is applied, optionally ignoring tails of the distribution beyond a predetermined threshold.
  • the utility of failing at any time through the time horizon to satisfy the essential expenditure goals is prohibitive.
  • a logarithmic utility function can be scaled so that not meeting or barely meeting the funding level required for essential goals has an infinitely negative utility. Continuous functions that have very steep slopes near the point of barely funding essential goals also make it prohibitive to fail to satisfy the goals.
  • the control action recommendation module outputs at least recommended control actions for the beginning period of the analysis. That is, control actions to be followed immediately may result from the analysis. These control actions may include at least a consumption level and a portfolio risk level.
  • control actions may be linked to further modules that refine control actions in terms of particular assets.
  • the control actions also may be linked to modules that automatically implement the control actions.
  • a further aspect of this invention is a control strategy evaluation system that includes the planning server.
  • the planning server control recommendation module outputs a control strategy data cube that includes control strategies for selection of consumption levels and selection of portfolio risks that span dimensions of the search grid.
  • the control strategy data cube would include recommended consumption and risk levels spanning at least the time horizon and resource values found in the search grid.
  • the control strategy evaluation system would further include a simulation server 715 that accesses the control strategy data cube and conducts at least 50 probabilistic simulation runs over the time horizon.
  • the simulation runs would apply the control strategies to the simulated intermediate economic events and report the distribution of simulated outcomes.
  • the simulation server might perform at least 100 probabilistic simulation runs, or preferably 500 probabilistic simulation runs, or more preferably 1000 probabilistic simulation runs in order to generate a statistically significant distribution of outcomes.
  • Another embodiment disclosed is a computer implemented method for selecting at least immediate control actions in a multi-year planning setting.
  • the years in the planning setting may be treated as years subdivided into months or weeks. With sufficient computing resources, the periods could be subdivided into weeks or days.
  • the method includes accessing electronic data compilations of portfolio information, goal information and market information.
  • the portfolio information includes pluralities of investment and non-investment resources available over multiple time periods.
  • the goal information includes pluralities at one time and repeating expenditure goals, and at least two levels or classes of priority that span the essential and nonessential expenditure goals.
  • the priority levels include essential, target and aspirational goals. Additional goals or even selection of goals on a continuum can be used to express the goal information.
  • Market information includes estimates available, investment opportunities, risks, rewards and covariance ratios among assets.
  • the covariance ratios allow calculation of an overall statistical portfolio of assets with mixed characteristics.
  • the information on which the method operates should be treated as part of the environment in which the method has practical application.
  • aspects of compiling the data may become part of the method.
  • the method begins with accessing the data compilations and calculating alternative diversified risk portfolios with a range of available risk levels for particular times within a time horizon.
  • the available risk levels may be expressed in terms of variability of returns (such as statistical variance) or value-at-risk.
  • the value-at-risk approach is taken, the value-at-risk level may be expressed as a percentage of resources at risk, given either a predetermined probability or predetermined confidence level and a predetermined at-risk period.
  • the alternative portfolios may be selected using a variation on Markowitz's classical method or some equivalent approach. Those portfolios that produce the greatest return for a given degree of risk can be described as being on the efficient frontier.
  • the alternative diversified portfolio calculation can take into account the covariance ratios between investment and non- investment resources. As the mix of investment and non-investment resources changes, preferences among alternative portfolios may change.
  • the calculation of alternative diversified portfolios may take into account both assets that can be liquidated and redeployed and assets that are locked in position.
  • the calculation also may take into account initial conditions of portfolio risk level and embedded gain.
  • the initial portfolio risk level indicates the extent of turnover required to reach an alternative risk level.
  • the embedded gain indicates the tax liability to be realized due to a particular extent of turnover.
  • the method continues with assigning a search grid spanning on subdividing dimensions of the problem. It effectively converts a continuous problem into a discrete problem that is amenable to numerical algorithms.
  • the search demand grid dimensions may include the time horizon of analysis, the range of available risk levels, potential resource levels and a range of consumption levels that meet at least essential goals.
  • Information in the data compilations can be used to generate the search grid, optionally subject to revision by a user.
  • Potential resource values optionally may include both investment and non-investment resources, especially when non- investment resources are available to satisfy goals. For instance, salaries and Social Security benefits may be included in the resources.
  • the consumption level optionally may be expressed as a ratio of resource or combined resource values.
  • the search grid is output for use by the next computer implemented module.
  • the output may be an object stored in memory or persisted to a nonvolatile memory. It may be a handful of parameters passed to another module.
  • the method further continues with evaluating control actions for particular times within the time horizon and particular combined resource values.
  • the control actions evaluated include it least selection of a consumption level and selection of a risk level.
  • the consumption level may be a ratio selected from a range of ratios. Selected control actions can be followed by advisers or automatically implemented by other modules.
  • Evaluating the control actions at least combines an immediate utility of consumption resulting from chosen control actions and long-term expected utility of results probabilistically expected to be achieved as a consequence of the chosen control actions.
  • the immediate utility relates to a particular time, typically the current period of analysis or the next period.
  • the long-term expected utility of a particular result expresses utility from that point forward to the end of the time horizon. That is, long-term expected utility is a summation from a particular period to the end of the time horizon. Discounting future utility is optional.
  • calculations proceed from the end of the time horizon backwards, so that long-term expected utility values of later periods are available when calculating expected utility values of control actions taken in earlier periods.
  • Long-term utility values are expressed as expected utility values that result from particular control actions. This involves applying a probability distribution function to determine likely future outcomes.
  • the level of risk and reward in a diversified risk portfolio can be expressed as the expected gain subject to a variance.
  • the gain and variance parameters are typically applied to a normal distribution of likely outcomes. In the discrete case, a discrete variation on the normal distribution or another selected distribution is applied.
  • the utility of failing, with more than a remote probability, at any time through the time horizon to satisfy the essential expenditure goals is prohibitive.
  • a logarithmic utility function can be scaled so that not meeting or barely meeting the funding level required for essential goals has been infinitely negative utility. Continuous functions that have very steep slopes near the point of barely funding essential goals also make it prohibitive to miss the goals.
  • a rule that assigns an infinitely negative utility to missing an essential goal has the same effect, regardless of the shape of utility function.
  • a ⁇ 0.05, or preferably ⁇ 0.01 or more preferably ⁇ 0.001 causes the utility over the time horizon to be lower or less favorable than the utility of courses of action that do not have the threshold risk of missing any essential goal.
  • the method also includes outputting at least beginning period control actions that select a consumption level and a portfolio risk level corresponding to results of the evaluating.
  • control actions may include at least a consumption level and a portfolio risk level.
  • the control actions may be linked to further modules that refine control actions in terms of particular assets.
  • the call control actions also may be linked to modules that automatically implement the control actions.
  • resources and expenditure goals may be characterized in current dollars or in constant purchasing power.
  • resources and claims are characterized in this way, a range of inflation factors may be included in the search grid.
  • a probability distribution function may be established for changes in inflation rates. Or, sensitivity analysis may be provided regarding how various inflation rates impact the outcome.
  • the consumption level stated as a percentage of resources may be a percentage of investment resources, unlocked investment resources, or combined investment and non-investment resources.
  • the non-investment resources may include at least a home, and employment income (in some time period) and a Social Security entitlement.
  • a further aspect of the method addresses taxable events.
  • the portfolio information includes embedded gain information.
  • non-investment resources can be sold to generate consumable resources.
  • the method may be extended by setting a time span in which a particular non-investment resource can be sold and taking into account tax consequences of selling the non-investment resource.
  • sale of the non-investment resource may be coupled to the purchase of a replacement non-investment resource. For instance, a time for selling the family home may be paired with the purchase of a replacement home.
  • One utility function that may be used is a logarithmic utility function scaled to set a negatively infinite utility of exactly satisfying or of failing to satisfy the essential goals in a particular time period. Other potential utility functions are mentioned above.
  • An alternative utility function applies a rule whereby control action that produces a probability above a predetermined threshold of failing to satisfy the essential goals eliminated from consideration. This rule can be combined with a variety of utility functions in consumption ranges that satisfy the essential goals.
  • the method may be further extended by outputting a control strategy data cube including control strategies for selection of consumption and portfolio risk levels.
  • the control strategy data cube spans the time horizon and the resource or combined resource values of the search grid.
  • a control strategy data cube may be consumed by a simulation engine that follows the control strategies in the data cube and conducts at least 50 simulation runs over the time horizon to distribute to generate a distribution of outcomes.
  • the simulation engine reports the distribution of outcomes.
  • Another embodiment is a method for generating a recommended control action policy in a multi-year planning setting, which control policy cannot realistically be determined by a series of mental steps, beginning with electronic data compilations of current resource information, future goal information and market information.
  • This method embodiment can be combined with the features and aspects of methods and servers described above, which we do not repeat here, but incoroporate by reference.
  • the current resource information is for an investor and includes inputs describing investments, human capital and housing resources.
  • the future goal information for the investor includes at least goals for repeating and one-time expenses, for date of retirement and whether to hold or sell housing resources. This goal information categorizes the goals at least is essential or nonessential.
  • the market information includes estimates of available investment opportunities, risks, rewards and covariance ratios.
  • the method begins with electronically calculating returns from alternative diversified portfolios that include investment resources, human capital and housing resources. Calculating these returns identifies preferred portfolio mixes and returns an a range of risk-taking levels.
  • the returns on human capital and housing resources in these alternative diversified portfolios accommodate and satisfy goals for retirement age and for holding are selling housing resources, set by the investor.
  • the method further includes setting up a computer-solvable problem, including assigning a search grid spanning and subdividing several dimensions. The dimensions include time horizon, potential resource values for the investor's portfolio, a range of spending levels and a range of risk-taking levels. The range of spending levels at least satisfies essential goals and may then be applied to satisfy investor's nonessential goals.
  • the method proceeds by working backwards through the time horizon to generate a control action policy. It uses a computer to evaluate potential control actions for particular times and resource values within the search grid. It selects recommended control actions for the particular times and resource values. These control actions set spending and risk-taking levels for the particular times. The spending and risk-taking levels at particular times and resource values are combined into a control action policy. Evaluating potential control actions includes calculating a utility of spending and risk- taking levels. A utility at a specific time and resource value for control actions of spending and risk-taking levels combines at least the utility in the specific time of the spending and an expected future utility through the end of the time horizon of future spending and risk-taking levels. The utility calculation recognizes a greater utility of satisfying the essential goals than satisfying the nonessential goals.
  • the method outputs at least part of the control action policy for the time horizon and the potential resource values, including recommendations for the spending in risk-taking levels.
  • a further aspect of this method may be that the utility in the specific time of spending less than needed to satisfy essential goals is essentially prohibitive.
  • a planning server 714 for selecting at least immediate control actions in a multiyear planning and setting. This server embodiment can be combined with the features and aspects of servers described above, which we do not repeat here, but incoroporate by reference.
  • the planning server has access to one or more repositories of electronic data include current resource information, future goal information and market information. These types of information are generally as described in the preceding method embodiment.
  • the planning server includes an alternative portfolio generating module, a problem initiation module, and a control action recommendation module.
  • the alternative portfolio generating module accesses the data and calculates returns from alternative diversified portfolios that include investment resources, human capital and housing levels.
  • the alternative portfolio generating module identifies preferred portfolio mixes and returns across a range of risk-taking levels.
  • the returns, if any, on the human capital and housing resources in the alternative portfolios can be applied to satisfy goals set for retirement age and for holding are selling housing resources, as dictated by the investor.
  • the problem initiation module accesses the data and establishes a search grid spanning and subdividing several parameters. The parameters include a time horizon, potential resource values for the investor's portfolio, a range of spending levels as described above, and the range of risk-taking levels.
  • the control action recommendation module accesses the search grid, the risks and returns for alternative diversified portfolios and the utility functions. It evaluates potential control actions and selects a control action policy for setting the consumption and the risk levels based on utility of the series of potential control actions.
  • the control action recommendation module works backwards through the time horizon. It uses a computer to evaluate potential control actions for particular times and resource values within the search grid. It selects recommended control actions for the particular times and resource values.
  • the control actions include recommendations for setting spending and risk-taking levels for particular combinations of time and resource level.
  • the control action recommendation module compliance recommended control actions into a control action policy.
  • the control action recommendation module When evaluating utility at a specific time and resource value, the control action recommendation module combines at least the utility in the specific time of the spending and a future expected utility to the end of the time horizon of future spending in risk-taking levels.
  • the utility calculation recognizes a greater utility for satisfying the essential goals than for satisfying the nonessential goals.
  • the control action recommendation module outputs at least part of the control action policy for the time horizon and the potential resource values, including recommendations for the spending and the risk-taking levels.
  • a further aspect of the method includes, prior to evaluating the control actions, constructing a resources and claims analysis and qualifying the goals or at least the essential goals is likely to be satisfied by the resources available. In addition to balancing total resources and claims, the problem to be solved may be qualified as feasible by constructing a cash flow analysis and comparing the timing of the claims to the timing of resources available.

Abstract

The present invention relates to dynamic optimization of system control over time. The need for dynamic optimization arises in many settings, as diverse as solar car power consumption during a multi-day race and retirement portfolio management. We disclose a reformulation of the control problem that overcomes the so-called 'curse of dimensionality' and allows formulation of optimal control policies multiple period planning horizons. One optimal control policy is for power consumption by a solar car during a race, which involves many course segments, as course conditions vary through a day. Another is for risk in and consumption from a portfolio intended to support retirement. Both multi-period control policies take into account future uncertainty. Particular aspects of the present invention are described in the claims, specification and drawings.

Description

STOCHASTIC CONTROL SYSTEM AND METHOD FOR MULTI-PERIOD CONSUMPTION
BACKGROUND OF THE INVENTION
[0001] The present invention relates to dynamic optimization of system control over time. The need for dynamic optimization arises in many settings, as diverse as space ship control, solar car power consumption during a multi-day race, and retirement portfolio management. Generally, control actions at one time change the state of the system and optimum control actions at a later time. Control theory has broad applications. One of the classical papers in the early days of control theory was James Maxwell's paper "On governors" in the Proceedings of Royal Society, vol. 16 (1867-1868), which applied control theory to a machine governor, such as a centrifugal governor on a steam engine. One patent applies control theory to optimization of spacecraft trajectories and a spacecraft design, simultaneously. Wiffen, "Static/Dynamic Control for Optimizing a Useful Objective", US Pat. No. 6,496,741 Bl. As practical applications of his particular control theory, Wiffen identifies in cols. 13-14 spacecraft trajectory, spacecraft design, groundwater or soil decontamination, stabilizing vibrations in structures, maximizing the value of a portfolio, electric circuit design, design and operation of chemical reactors and design and operation of a water reservoir system. [0002] Consider the problem of a solar car in a multi-day race with legs that must be completed between 9 am and 5 pm each day. The course is set and the topography known. The available solar power varies with the time of day (deterministic) and cloud cover (probabilistic). Success on a given day can be measured by time to complete the course leg and the charge level of car batteries when the sun sets. Because the car is racing, the desired final state is completion of all legs of the race in the least time possible with a minimum final battery charge level. The primary control variable is power consumption. State variables include charge level, available solar power, distance traveled and road grade (which is a function of distance traveled, because the course is set). Speed follows from the selected power consumption and the road grade. This presents a non-trivial dynamic optimization problem, particularly in an area with intermittent cloud cover. It appears at first to be a simpler problem than retirement portfolio management, because choosing how far to run down the battery charge level, given the expected availability of recharging solar power, does not involve a trade-off between risk and reward, as does portfolio management. However, as a race day evolves, the a priori likelihood of cloud cover will be updated, which complicates the problem and favors a risk budget, margin of safety approach to charge level.
[0003] An opportunity arises to devise an approach to dynamic optimization that allows practical application to problems involving consumption over time and uncertain replenishment of resources. Improved strategy design, control decisions and system operation will follow.
SUMMARY OF THE INVENTION
[0004] We disclose an approach to control optimization that makes multi-period optimization tractable. The first application presented is planning a race strategy for a solar car. The second application is planning strategy over time for a retirement portfolio.
BRIEF DESCRIPTION OF THE DRAWINGS
[0005] FIG. 1 depicts a solar car 10 in communication with a system that monitors battery level, position and speed.
[0006] FIG. 2 depicts a hypothetical curve for power consumption verses car speed.
[0007] FIG. 3 depicts a system that assembles goal, performance, and risk information to solve the multi-period control strategy problem.
[0008] FIG. 4 depicts modules of the planning server that combine to compile a set of control action recommendations. [0009] FIG. 5 illustrates a simple search grid.
[0010] FIG. 6 depicts a high-level hardware architecture that can be used implement embodiments of the technology disclosed.
[0011] FIG. 7 depicts a system that assembles portfolio, goal, and market information to solve the multi-period control strategy problem.
[0012] FIG. 8 depicts modules of the planning server that combine to compile a set of control action recommendations.
[0013] FIG. 9 depicts aspects of the method of developing a control strategy.
[0014] FIG. 10 depicts risk and reward relationships for a personal investment opportunity and the general investment opportunity.
[0015] FIG. 11 gives some illustrative data regarding covariance ratios that go into exercising the Markovitz method or any similar analysis of risk and reward. [0016] FIG. 12 illustrates a hypothetical change in the mix of investment and non- investment assets for a period beginning with retirement. [0017] FIGS. 13A and B depict utility curves. [0018] FIG. 14 depicts a lifetime resources and claims statement, adapted to retirement planning.
[0019] FIG. 15 illustrates a graph of claims and a cash flow summary that may be useful in balancing goals.
[0020] FIG. 16 depicts two major adjustments in asset allocation along a normal economic trajectory through the course of life.
[0021] FIGS. 17-18 graph a margin of safety analysis.
[0022] FIG. 19 labels the paths from fortunate to unfortunate, based on either a current progress or a projected outcome at the end of the planning horizon.
[0023] FIG. 20 normalizes the fortunate to unfortunate trajectories.
DETAILED DESCRIPTION
[0024] The following detailed description is made with reference to the figures.
Preferred embodiments are described to illustrate the present invention, not to limit its scope, which is defined by the claims. Those of ordinary skill in the art will recognize a variety of equivalent variations on the description that follows.
Solar Car Consumption Control
[0025] This application begins with applying control theory to a solar car race in multiple stages. To state the problem clearly, consider a five stage solar car race subject to the vagaries of weather. This is a simplification of the World Solar Car Challenge or the North American Solar Car Challenge, in which universities and private institutions compete. See www.americansolarchallenge.org. The solar car is allowed a certain number of square feet of panels to convert sunlight into power. It also is permitted a certain battery capacity to help the car when the sun is obscured by clouds or low on the horizon. The race is conducted during the day. Adequate time is allowed to complete each stage before dark, at least if there are no mechanical breakdowns. Starts are staggered but predetermined. Electrical power generated by the cars' solar panels is a function of time of day and cloud cover. The time of day determines the angle of the sun and the vagaries of weather create a stochastic probability that less than the sun's full power will be available to generate electrical power. Finishing early has two advantages: it improves the team's score, since the winner has the least elapsed time through the competition, and it allows the solar panel to be reoriented to catch the full power of the sun - that is, the solar panel is tilted to face the sun. Completely draining the battery is considered disadvantageous, because the car requires more power to start motion than to continue it. Under maximum solar power with a full battery, the car can consume enough power to accelerate to and maintain the legal speed limit. Most of the time, the solar car travels at less than the legal speed limit to conserve power, because the power consumed is proportional to air resistance, which is proportional to the square of the car's velocity. The effect of power consumption on speed is further complicated by the road grade over the car's country course. The steepest parts of the road grade require either bright sunlight or battery assistance. In these parts of the course, having a charged battery has greater utility than when the car is going downhill. (Unlike most modern electrical cars, there is no reverse charging capability when the car goes downhill.) This is the nature of the multi-stage optimization problem.
[0026] Control theory and Bellman's algorithm provide a way to develop a control strategy in advance and refine it as better information becomes available about the weather conditions. An opportunity arises to develop a system and method that permit development of control strategies and real time refinement of control as the solar car progresses through the stages of the race and the short term weather forecast becomes more reliable. As in the Wiffen patent, the approach to control theory described in this paper has additional applications, such as portfolio management.
[0027] FIG. 1 depicts a solar car 10 in communication with a system that monitors battery level, position and speed. Typically, the driver of the solar car receives real time updates on suggested control from a system in a van 11 that follows the solar car. The system resides in the van to save weight, to draw on the van's power system, and to allow the analyst more opportunity to concentrate on monitoring and control recommendations than the car driver could. [0028] FIG. 2 depicts a hypothetical curve for power consumption verses car speed. It does not include the power consumption for starting the car. A family of curves as depicted in FIG. 2 can be used to take into account the impact of road grade on performance. When the car is going up hill, power will be required to overcome gravity. When going downhill, gravity will assist in powering the car.
[0029] FIG. 3 depicts a system that assembles goal, performance and risk information to solve the multi-period control strategy problem. A terminal 31 is used to configure goal information, typically using a web server 32. Performance and risk information is compiled in a performance and risk information server 33. Performance information is keyed to at least battery power consumption, solar power consumption and road grade. A family of curves as depicted in FIG. 2 can be used to capture these factors. The road grade, at least, will vary according the car's position along the course. With additional refinement, the performance curves could take into account factors such as wind encountered by the solar car, which overlap with risk information. The risk information includes maximum available solar energy and probability of obscured solar energy. The maximum solar energy varies with the time of day, as the sun's angle to the horizon rises and falls, because the incident angle of the sun changes, both relative to the thickness of the atmosphere through which the sun light passes and relative to the orientation of solar cells on the solar car. When the solar car is at rest, the maximum solar energy still varies with the incident angle of the sun, but the solar panels can be reoriented toward the sun by lifting panels from the surface of the car. The planning server 34 applies Bellman's algorithm or a variation on Bellman's algorithm to determine the expected utility of alternative control actions. It selects at least an immediate control action for the solar car driver to take. It can develop a control strategy to be followed at varying points along the course, consistent with the current state of the race. The simulation and report server 35 varies the probabilistic factors, applies the control strategy and simulates elapsed time. By studying the simulations, a race team could determine how much battery charge to consume or accumulate, given the time of day, the position on the course, the current battery charge, the current weather (obscured solar power) and the risk of bad weather over the remainder of the course.
[0030] FIG. 4 depicts modules of the planning server that combine to compile a set of control action recommendations. The performance contour module 41 provides a family of performance curves that present speed as a function of power consumption. The family of curves could be indexed by road grade, which is a function of location along the course. Optionally, the family of curves could also take into account wind conditions that degrade or enhance car performance. Then, the curves would be indexed by road grade and wind conditions. [0031] The problem initiation module 42 assigns a search grid spanning at least a time horizon, range of performance risks, range of current resources, and range of consumption. A simple grid is illustrated in FIG. 5. The illustration makes it clear that points along the grid need not be equally spaced. For search efficiency, unequally spaced points may be best. For search efficiency, the search may be conducted once with a coarse grid and then again with a finer grid and narrower ranges. Some values may be represented by continuous values while others are represented by discrete values. The time horizon may best be expressed as location on the course, time of day and elapsed time. These three factors combine to express where the solar car is in the race. The range of performance risks relates to weather. The weather forecast during the car design phase will be very generic. During the race, it will be refined and may even be predictable with little variance for a few hours at a time. The distribution of expected weather will vary by location along the course. It also may vary by time of day, especially if the race is run in an area subject to afternoon thunderstorms. The distribution of expected weather can be expressed as a probability that the solar power will be obscured, given a location and, optionally, given a time of day. A family of distributions of expected weather could be constructed for use during the race, as opposed to use during the design phase. The range of current resources will include available battery and solar power. The solar power available can either be combined with battery power to speed the car along, or can be diverted to charge the battery. One control strategy that the system could evaluate or simulate would be using battery power when the sun is low and recharging the battery when the sun is high. Another control strategy to evaluate would be using battery power when climbing a grade and charging the batteries when coasting down hill.
[0032] The control action recommendation module 43 applies Bellman's algorithm, which is further explained in following sections. It begins at the end of the race and iterates backwards from various potential outcomes. Each potential outcome has an expected utility. In a race setting, the utility function may be a linear function of total elapsed time. The faster the car finishes the race, the better. The final state of the car finds it at the finish line location with the battery nearly exhausted, because the car is free to consume more battery power as the risk of running low on power diminishes. The final state of the car also includes the total elapsed time, which is likely to range within reasonably predictable bounds. Iterating backwards through the search grid, for combinations of position on the time horizon and current resources, the algorithm determines the utility of particular control actions. The utility of particular control actions depends on the likely weather during an increment of time (and progress along the course), the control action chosen and the expected utility of the resulting system state after the control action is taken. The expected utility is determined by applying the weather probability distribution to the current state and control action. Depending on how obscured the sun is, more or less energy will be available to power the car or charge the battery. Iterating backwards through the search grid, the expected utility of control actions can be calculated, because the expected utility of later stages of the search grid has already been determined. [0033] The output of the control action recommendation module is data that can be used to immediately recommend a control action, to devise an overall strategy for the race, or to simulate a range of control actions.
Portfolio Management
[0034] Seminal work in portfolio management has been done by Harry Markowitz and
Robert C. Merton, both honored with Nobel Prizes in Economics. Merton's book, "Continuous- Time Finance" (Blackwell 1990) is a modern classic, which presents an analytical approach to selecting assets to hold in a portfolio, assuming non-negative consumption. The book carries the analytical approach only so far, to a portfolio that includes just two assets: a growth-optimum portfolio and a riskless security. (Ch. 6.3, p. 184) Applying Bellman's algorithm, a closed form solution to the optimum mix is illustrated for two assets. However, the mathematical approach quickly becomes intractable as complicating factors are taken into account. In the literature, one can find discussion of a portfolio with three assets, one riskless and two risky securities, but not a generalization to ten or twenty assets. See, e.g., Akian, M, A. Sulem and M. Taksar (2001). Dynamic optimization of long term growth rate for a portfolio with transaction costs and logarithmic utility. Mathematical Finance 11(2), 153-188. Accessed at http://citeseer.ist.psu.edu/ akianOOdynamic.html, on Sept. 29, 2007. Applying Merton's insight to practical problems has been treated as one of "Tomorrow's Hardest Problems." Martin B. Haugh, Andrew W. Lo, "Computational Challenges in Portfolio Management," Computing in Science and Engineering, vol. 03, no. 3, pp. 54-59, May/Jun, 2001. Accessed at http://csdl2.computer.org/persagen/DLAbsToc.jsp?resourcePath=/dl/mags/cs/&toc=comp/ mags/cs/2001/03/c3toc.xml&DOI=10.1109/5992.919267#additionalInfo, on Sept. 29, 2007.
Hardware and Software Architectures
[0035] FIG. 6 depicts a high-level hardware architecture that can be used to implement embodiments of the technology disclosed. The major groupings of this hardware architecture are applications and user interface 601, application controller 603, data integration 605, batch application services 607, real-time application services 609 and off-line data processes 611. The legend indicates that a client system is linked in communication with a server system. As depicted, this hardware is arranged in an application service provider (ASP) configuration, which means that certain processes, such as computing intensive processes, security sensitive processes and processes that rely on subscription or proprietary data are hosted on servers. In some implementations, the servers will be remotely hosted. Some customers will set up their own servers. A shared server is useful for computing intensive processes, because the computing resources can be shared among many users. In the disclosure that follows, it will be apparent that a few analysis steps involve many times more computing resources than all the data entry steps that precede analysis. A shared server also is useful for security sensitive processes, because fewer systems need to be secured than if all of the sensitive data were downloaded to all of the workstations used for data entry. A shared server is further useful for processes that rely on subscription or proprietary data, because subscriptions often are priced based on the number of servers updated on a regular basis. It may be less expensive or more convenient to update a single server or server farm and perform calculations from the updated hardware than it would be to distribute the subscription data to numerous workstations. Of course, while an ASP model has advantages, some workstations are capable of running both the client and server side of an application. That is, they can run a server such as Apache and also run a browser such as Mozilla that accesses the server.
[0036] The application user interface 601 depicts alternative interface applications, complementary levels of service and complementary user and administrative interfaces. The retirement income planning module 615 and the ultra high net worth module 620 represent complementary levels of service and interface structures adapted to different customers. The retirement income planning module 615 potentially includes alternative Web App 616 and thick client 617 interfaces. The retirement income planning Web App 616 is commonly known as a thin client. It can be implemented using JavaScript and a conventional browser such as Microsoft Internet Explorer, Netscape's browser, Opera, Safari, Mozilla's Foxfire or another browser. Other implementation software options such as PHP, Perl and Java also are available for thin clients. The retirement planning Webtop 617 is commonly known as a thick client. Some of the programming languages for preparing a thick client include Java and the visual languages, such as Visual Basic and Visual C++. In addition to thick and thin client interfaces, the retirement income planning application includes an enterprise control Webtop 618 (or Web App) that one or more analysts would use to store and manipulate data for a plurality of customers. The ultra high net worth module 620 similarly includes a Web App thin client 621, a Webtop thick client 622 and an enterprise control Web App or Webtop 623. The modules of the application or user interface 601 typically are operated on a laptop, desktop or workstation. The application user interfaces are coupled in communication with an application controller module 603.
[0037] The application controller module 603 may include a money machine application controller 625, a client information database 626 and a financial plan database 627. The application controller 603 manages updating of client-related input and invokes real-time application services 609. The application controller process 625 accesses and updates a client information database 626 and a financial plan database 627, responsive to requests from the application and user interface 601. A data integration module 605 can be invoked by the application controller to import information for the client database 626 from an external source such as a brokerage client application. The data integration module 605 also can be invoked by the application controller to import information for the financial plan database 627, such as stock holdings from a client asset list. More than one client asset list may be accessible to the data integration module 605, such as a first asset list for holdings managed by a particular analyst and additional asset lists for brokerage accounts managed elsewhere. Changes in client information or asset lists may be published for access by the data integration module 605 and automatically posted to the client information database 626 and/or the financial plan database 627, without invocation by the application controller module 603. Alternatively, the application controller 625 can publish to the application and user interface 601 the availability of updated data and post updates to the databases 626, 627 under user control, mediated by the application controller module.
[0038] The financial plan database 627 further is subject to updating by the batch application services 607 and the off-line data process 611. The batch application services 607 may include a monitoring process 640, a periodic reporting process 641, a data delivery process 643 and a configuration management process 642. The monitoring process 640 repeatedly and periodically checks the status of client assets against the plan. It also may check liabilities. This monitoring process 640 is more persistent and consistently available to watch for variations between the plan and the market than either a client or analyst would be, as the process 640 does not become distracted or take vacations. The monitoring process can monitor for variations from the plan such as a need to rebalance the portfolio, a lack of stop loss orders, or a general deterioration in a segment of the client's asset base. The monitoring process may detect deterioration in asset segments more readily and accurately than either a client or analyst would. It uses the data delivery process 643 to reach the client or analyst by predetermined means, consistent with the urgency of a particular alert.
[0039] A periodic reporting module 641 may generate reports on demand or at predetermined periods, such as weekly, monthly or quarterly. The monitoring process 640 and periodic reporting process 641 can be connected to a data delivery process 643 that transmits alerts or periodic reports to the client and/or analyst. The data delivery process in 643 may send e-mails, SMS messages, faxes, pages or other alerts. The alerts may provide complete information or a link to a location at which complete information can be accessed. [0040] The off-line data process may include data support 645 and raw vendor data. The raw vendor data 646 is depicted as a database, but may be a Web service or other online source. Raw vendor data may include asset pricing and asset characteristics, such as estimates of volatility and co variance or correlation of performance among asset classes. Data support 645 may include data assembly, calculation and data collection.
[0041] The application controller 625 may invoke real-time application services 609. In one embodiment, application services include a report generator 631, a solver and simulator 630, 632 and an asset master 633. In turn, these processes are connected to databases 634-637. As client information is entered, the asset master 633 and asset master database 637 may be accessed for templates used to assemble information about particular client assets and goals or concrete objectives. Reference to master templates simplifies the extension and updating of system designs. Once assets and goals have been entered, the solver 630 and simulator 632 can be invoked. The solver is beyond the scope of this application. One form of simulation uses Monte Carlo simulation. The simulator 632 may access the Monte Carlo simulation database 636. Simulation parameters such as number of simulation runs, time interval, probability distributions for model factors, probability distributions for particular assets given particular model factors, covariance factors and similar data may usefully be maintained in a simulation database. The simulation parameters may reflect a random walk approach, a trending approach, or other approach to the relationship of model factors in successive periods.
Introduction to Our Control Strategy
[0042] In this patent, we disclose an investment philosophy embedded in a system and methods. This philosophy is firmly rooted in the considerable body of financial research which has been conducted in recent decades. An important part of that research is often known as Modern Portfolio Theory. We go beyond prior research to also consider the insights developed by Behavioral Finance and the discipline of Wealth Management generally. [0043] A key finding is that the most important determinant of investment results is the investment structure. In the simplest case, all funds are held in a single account. In this case the investment structure is fixed once we pick a strategic asset allocation for the account and establish a rebalancing policy. For instance, a possible investment structure would be 60% equities and 40% bonds, rebalanced quarterly. In more complex cases, funds are spread among multiple accounts. Funds in various accounts may differ in terms of taxability (e.g., an IRA account versus a regular brokerage account), in terms of ownership (joint versus separate property) or in terms of purpose (general funds versus funds dedicated to a specific purpose.) Considering multiple accounts, the investment structure problem includes picking strategic asset allocations and rebalancing policies for each account and setting policies for transferring funds between accounts so that the joint whole achieves the best possible performance. [0044] In the case of the single account portfolio where the investment structure question is simply an asset allocation decision, the basic finding is that the investment structure choice determines 90% of the investment outcome and that asset selection accounts for 10%. In the complex case of multiple accounts, the investment structure is expected to be an even more critical decision.
[0045] Once the investment structure is fixed, the next most important determinant of success is proper tax management. The elements of proper tax management are locating asset classes within the investment structure in a tax conscious manner, selecting tax efficient assets for taxable accounts, diligently harvesting tax losses, being slow to realize capital gains, and adjusting portfolio exposures in tax efficient manner (e.g., purchase of a hedge rather than sale of a highly appreciated long.)
[0046] The third determinant of investment success is careful asset selection. In general, the performance of assets reflects a combination of market factors and asset specific factors. The market wide factors are controlled by the strategic asset allocation, so asset selection focuses mainly on the specific factors. Here the core finding is that markets have grown more efficient with time and that risks of asset specific events have increased. These trends make asset selection an increasingly difficult means by which to add to investment performance. The general conclusion is that diversification needs to be carefully controlled and that actual asset selection is best delegated to specialists (i.e., to fund managers). Research shows, however, that few fund managers persistently add value and that the fees charged on many funds are so high that there is little probability of the managers adding value on an after fee basis. These considerations lead to a fund selection methodology which emphasizes avoiding mistakes as a first order of business and pursuit of performance as a secondary objective. Mistakes to be avoided include funds with poor risk control, funds with high fees and funds which seek excessive active return in more efficient markets.
[0047] Despite the significant insight into investment performance uncovered by financial researchers, another line of research - namely behavioral finance - has revealed that the actual practice of retail investors is far from ideal. As a group, retail investors tend to try to reduce risk by sticking to familiar investments. Ironically this leads to an excessive concentration of funds in large firms, heavily promoted investment funds and the stock of one's employer. While time retail investors understand the importance of diversification, they don't know how to evaluate portfolio diversification. As a result, they tend to spread funds among multiple investment vehicles without consideration for whether the vehicles are closely correlated with one another or actually diversified. Retail investors tend also to not understand the implications of taxes for their investments, hi general they cull gains too quickly and hold losses too long. Thus they behave as if they believed prices were mean reverting, which is a poor model of reality. Finally, retail investors have difficulty maintaining a consistent investment policy. One common pattern is to begin by taking excessive risk, eventually suffering painful losses and then switching to excessive conservatism. Another pattern is to begin by seeking the advice of an older person whose advice tends to be colored by what is appropriate for that person's circumstances and is thus unsuitable for the advisee's circumstances. [0048] The clear implication of the behavioral finance research is that most retail investors are unable on their own to implement the best practices identified by modern portfolio theory. Hence the need arises for a professional advisor who can implement a well structured investment program on behalf of the advisee. The advisor's effectiveness is enhanced by establishing a trusted relationship with the advisee. This relationship rests on the advisee understanding what the advisor can do for him, finding that service of value and being able to verify that the service was rendered. The advisor must be able to economically deliver the service he has promised to the advisee. In practice, this means that the investment process should be implemented by a well integrated system that is aligned with the advisory service offering. The so-called Wealth Manager System disclosed herein has been specifically designed to support the advisor in building a trusted client relationship through delivery of a best practices investment process.
Understanding the Client's Goals
[0049] Fundamental to establishing a trusted relationship is understanding the client's goals. The basic motivation for investing is to generate the funds required to realize future goals. Examples of the goals investors might seek include funding living expenses, educating a child, making a down payment on a house purchase or making some other capital purchase. These are concrete spending goals, as discussed more fully in the prior patent application. Investors may have more general goals. For instance, they may wish to grow wealth so as to better be able to deal with future needs that are not yet specifically determined. Alternately, they may be viewing some of their home equity as a financial reserve that is available to meet future emergencies but which they prefer not to tap.
[0050] The Wealth Manager System assumes that the advisory client has several goals and models the priority of goals. The Wealth Manager System represents priorities in terms of three "shopping carts." The first cart holds the essential goals which the client wishes to be nearly certain of accomplishing, such as paying the mortgage and basic living expenses. The second cart holds the target goals which the client plans on accomplishing but on which he could accept some shortfall were untoward events to occur. The third cart holds the more aspirational goals that one expects will only be funded in relatively favorable circumstances. A specific goal might be split across the three carts. For instance, the essential educational goal for a child could be to pay 100% of the costs of a college education in the local state system, while the target priority might extend to the cost at a private institution and an aspirational priority could include financing graduate school, as well.
[0051] The basic structure of goals and priorities may thus be captured by a cross- tabulation of the two concepts:
Goal Category Essential Goal Target Aspirational
Living Expenses $80,000 per year $100,000 per year $125,000 per year
100% college costs starting
50% college costs 100% college costs starting 2018 and 2 years graduate
Education starting 2018 2018 study starting 2022
purchase $750,000 purchase $1 ,000,000 home in purchase $1 ,250,000 home
House home in 2010 2010 in 2010
purchase $500,000 vacation purchase $750,000 vacation
House #2 none home in 2020 home in 2015
provide $50,000 towards wedding in provide $100,000 towards provide $100,000 towards
Capital Purchase about 2020 wedding in about 2020 wedding in about 2020
[0052] To place goal categories at different times on comparable footing, we would like to value each item on the basis of how much money should be set aside today to fund the goal. In general, goals define cash flows over time. A living expense goal calls for annual expenditures, potentially for the rest of the client's life, escalating through time to deal with inflation. A capital purchase goal, in contrast, calls for a lump sum cash flow at a point in time. To price out accomplishment of goals, we discount to current dollars the expected cash flow that needs to be funded to realize the goal. If the goal is classified as an essential goal then no shortfall can be tolerated. This can be emphasized by discounting the cost of essential goals at a discount rate equal to the rate of return on a portfolio with after tax cash flows that provide the required cash flow with low risk. For target goals, from which some shortfall is permissible, we use as a discount rate the expected return typically of a moderately risky portfolio. For an aspirational goal, where considerable shortfall is permissible, we use the expected return of a fairly aggressive portfolio as the discount rate. With the goals valued in this way the cross-tabulation can now be presented in cost terms: Goal\Pπoπty Basic Target Additional
Living Expenses 2,000,000 2,400,000 2,760,000
Education 100,000 180,000 225,000
House 675,000 875,000 1 ,075,000
House #2 0 250,000 550,000
Capital Purchase 32,000 57,000 57,000
Total 2,807,000 3,762,000 4,667,000
[0053] This presentation allows the client to immediately see the investment cost of the different goals. The client can review this summary information and decide whether that resource use aligns with his inner sense of values and whether it accurately articulates the goals of his financial life.
[0054] Life goals are not funded exclusively from investments. Clients rely on earnings, equity stored in home, non-financial investments such as rental property and prospective inheritances. The totality of the assets which the client can rely on we term his resources. In general, resources may be valued in one of several ways. Stocks and bonds may be valued using market prices. Real estate value can be estimated using market values. Earnings can be valued on a discounted cash flow basis using a government bond-based discount rate. Where the cash flow continues for life, as for instance with social security benefits, the valuation can be based on the actuarial present value. This measure values the cash flows basically at the cost of a life insurance policy which replicates the stream of cash flows. Whatever the valuation base, only a portion of the full value of the asset is likely to be available to fund goals. For instance, the value of stocks may need to be reduced by the tax on embedded capital gain. The value of earnings should be reduced by the income taxes that will be levied against them and, in certain circumstances, by a reserve for potential reduction in earning capacity. After adjustment, we have the total net value of resources available to the client. These resources will be applied first to paying off any debts the client has and then to funding his goals. We refer to the combination of debts and goals as the claims against the resources. Just as a business 's assets and liabilities are gathered together in a balance sheet, so may an individual's resources and claims be pulled together into a statement of resources and claims.
Resources Claims Additional
Investments 545,000 Mortgage 324,000
House 423,000 Essential Goals 3,299,000
Human Capital 2,302,000 Supplemental Goals 1 ,136,000
Social Security Benefits 218,000 Aspirational Goals 831 ,000
Total 3,493,000 5,590,000 [0055] The prior "Simulation of Portfolio" application discusses the statement of resources and claims at length.
[0056] Considerable insight into the individual's financial life can be gleaned from the statement of resources and claims. FIG. 14 provides a more extensive sample of a statement of resources and claims. Two of the most interesting performance measures are the funding ratio and margin of safety, depicted in FIGS. 17 and 18. The funding ratio is what percentage of a goal priority class is funded by available resources, assuming all higher priority claims are funded first. It gives a measure of to what extent the client will be able to achieve the goals in the priority class, in a particular column of the table above. The margin of safety shows what percentage reduction in resources could be absorbed while still leaving a priority class (and all higher priorities) fully funded. It shows the impact of potential losses on the client's life goals and it provides basic guidance on the client's financial capacity to bear risk. From the statement above we calculate:
Priority Class Funding Ratio Margin of Safety
Liabilities 100% 90%
Basic Goals 66% 0%
Target Goals 31% 0%
Additional Goals 0% 0%
[0057] The statement of resources and claims shows the client's sources of wealth and how he intends to apply that wealth. It gives a basic measure of what he can afford. However, it does not show what he can finance. Accordingly, we have developed a lifetime projection of cash flows to better understand the client's circumstances. This projection is made using an optimization algorithm that plans the sequence of saving and expenditure actions to maximize lifetime goal achievement. The strategy that it develops shows us the extent to which the current resources will generate the cash required to fund planned expenditures. When a client has adequate wealth to fund a goal but the timing of cash flows is such that he cannot finance it, one possible action is to borrow the necessary funds. Another possible action is to trim or postpone the goal. Since the system has no information regarding the availability of borrowing, it focuses on trimming and postponing goal satisfaction as a means to balance resources and claims.
Developing a Strategy
[0058] The advisor's objective is to formulate an investment strategy for meeting those cash flows that achieve goals, keeping in mind the risks of investment and managing those risks consistent with the investor's goal structure. [0059] From portfolio theory we know that one of the critical decisions to take is the level of risk to be borne in the portfolio. At a deeper level, we know that risk arises from economic exposures and so the question is truly which exposures to bear and in what degree. [0060] Several considerations bear on the level of risk. These include:
1. The client's financial capacity to bear risk
2. The reward to bearing risk
3. The client's willingness to bear risk
4. The advisor's assessment of the client's investment maturity
[0061] Clearly one would never want to expose a client to more risk than they have the capacity to carry. The margin of safety tells us what the impact of losses on the client's life goals will be and thus gives us a strongly grounded assessment of the client's capacity to bear risk. The rewards to bearing risk are primarily a function of the returns available in the capital market. Clearly it doesn't make sense to bear incremental risks which do not generate a meaningful increment in return. The assessment of capacity to bear risk and the available risk return tradeoff lead to an objective assessment of what risk is suitable for the client. This objective assessment is then colored by two more subjective factors.
[0062] The client's willingness to bear risk is a purely psychological factor which traditionally is evaluated through a questionnaire. In addition, the advisor needs to assess the client's investment maturity. Until the client has been through a full market cycle, the client's self-reported willingness to bear risk should be treated with caution. Assessment of investment experience is typically included in a client questionnaire. Where the advisor has been able to establish a trusted relationship with the client, where the client has built up some investment experience and where the advisor has been able to educate the client about his capacity to bear risk and the reward structure for so doing, one would expect these psychological factors to be relatively unimportant. After psychological factors are tempered by experience and education, the risk that is suitable to the client should be close to that recommended by the objective assessment. Where the client has limited experience, has not yet built a trusted relationship with the advisor or just does not understand investing, the subjective factors are of greater importance and may control the decision as to what represents a suitable risk.
[0063] Risk arises from exposures and so it is important to understand the exposures in the client's non-investment portfolio, so that the exposures in the investment part can be chosen in a diversifying manner. On the claim side of the statement of resources and claims, some claims will be fixed in dollar terms whereas other claims are fixed in purchasing power terms. Explicit debts, such as home mortgages, are fixed in dollar terms. A goal to maintain a certain level of living expenses, however, is better seen as fixed in purchasing power terms. On the resource side of the statement, some assets track inflation well whereas others do not. Earning power and house prices tend to increase with the general price level. Social security benefits and CPI-linked bonds are explicitly linked to the general price level. Most insurance benefits and bonds, however, are fixed in dollar terms rather than purchasing power terms. There is also exposure to the business cycle. Most obviously, this exposure comes through the stock portion of the portfolio, but earnings also may carry business cycle exposure. This is particularly the case in jobs where bonus or commissions are a significant part of compensation or where layoffs are a real possibility. Business cycle exposure is much less in stable jobs that have little variable component of compensation, such as in government service, teaching, and clerical jobs. [0064] Many of the risk exposures in the client's life are fixed. The exposures that are inherent in his goals are changed only if the goals themselves change. In most cases, non- financial resources also are fixed. Within the investment category, some of the exposures may actively or practically be fixed. For instance, part of the portfolio may not be under the advisor's control, as for example funds held in a 401k plan with a limited range of investments. In other cases, large embedded capital gains may make it disadvantageous to adjust the exposure. To a degree, the fixed exposures will hedge off against one another, as for instance when CPI sensitive resources hedge CPI sensitive claims.
[0065] To analyze these effects, we represent the exposures of the client's resources and claims in terms of a factor model. The claims are taken as a benchmark and the fixed resources as locked positions in the portfolio. The efficient frontier (in a Markovitz sense) is then developed by varying the remaining positions in the portfolio. This analysis shows the investment opportunity accessible to the particular client at that point in life. In general, the non- investment portions of the portfolio will evolve over the life span. For instance, the value of earnings decreases as retirement approaches. Accordingly, the investment opportunity also evolves and with it the appropriate portfolio for the client. Because the particular client's non- investment assets are relatively unique, our approach can include development of efficient frontiers for the particular client instead of a generic efficient frontier. [0066] We analyze this situation using a dynamic optimization methodology and a unique problem formulation. We characterize the client's portfolio by its size and risk level. Choice of these parameters to summarize the overall portfolio reduces the optimization problem to a manageable complexity. The client's utility is derived from the three priority classes of claims. The economic environment is characterized by the time varying investment opportunity set. We maximize client utility to arrive at an optimal strategy. The selected strategy gives the risk level to be borne as a function of year, wealth level, and ratios of claims to wealth. Only the risk level for the current period is needed in the subsequent stage of analysis. By choosing the risk level dynamically, we ensure a consistent trade-off between consumption and investment risk-taking bearing in mind the inter-temporal tradeoffs in utility.
[0067] Having derived the recommended risk level for the current period, we compare it to the results of the risk questionnaire and optionally select the lesser of the two recommendations. When the questionnaire governs, this reflects a judgment that subjective factors are controlling for this client, even if the self-selected strategy risk level selected by the objective analysis is riskier.
Building Portfolios
[0068] With the strategic picture in focus, we move to tactical implementation. Here the first step is to evaluate near term liquidity needs. One design objective of the system is to keep it focused on investment management and not get intimately involved in banking type activity. Accordingly, we assess the cash outflows required from the portfolio over the next quarter and move those funds to cash assets immediately. To fund cash withdrawals over the next few quarters, we move an optimal portion of the required funding to near cash assets (e.g., certificates of deposit or short term bond funds.) In this way, we setup a ladder of assets for providing the near term liquidity required from the portfolio. By implication, the remaining portion of the portfolio may be managed to a medium to long term investment horizon. [0069] The next step is to build a strategic asset allocation and location plan for the portfolio. This analysis jointly solves for how much of each asset class to hold and in which accounts to locate the holdings. The analytic method is a mean variance optimization in which the investment universe consists of asset classes. The result of this analysis is a strategic asset allocation for each account.
[0070] In the third step we consider each account in turn. Our first action is to select a set of potential asset holdings for that account. This selection may take into account a number of factors.
[0071] One requirement is that a selected asset be available for purchase. For instance, a mutual fund needs to be open for new investment. In addition, the fund should meet the advisors quality criteria or be grandfathered in by virtue of an existing holding in the client's portfolio. Finally, among the eligible funds, we select the cheapest share classes to own. Once an eligible list of investments has been built we use a mean- variance optimization to complete the portfolio construction. This optimization takes the strategic asset allocation for the account as its benchmark for risk measurement. The return assumption is the pre-tax return in accounts not subject to current taxation and the post-tax return in accounts taxed currently. In both cases, the cost of transacting is taken as a reduction in the utility. Several investment policies may be imposed. Some policies may be set at the advisor level to enforce prudential good practices (e.g., limiting excessive asset class tilts.) Other policies may reflect client requirements such as a trading restriction on an asset. For instance, a client who is a corporate insider will be subject to black out periods on trading around financial release dates. After the optimization completes, the calculated results are cleaned up to eliminate de minims asset holdings and to round trade sizes. This results in a trade list for each account showing the trades required to implement the overall strategy.
Our Method of Developing a Control Strategy
[0072] FIG. 9 depicts aspects of the method described in this section. First, a computerized system collects client-defined goals (901). Each goal reduces to a sequence of cash flows "F( )" through time of form:
F(g,n,p)=desired spending for goal g in year n at priority level p
[0073] A flow may be denominated in either dollars or dollars of constant purchasing power (902). By convention goals are labeled 0, 1 or 2, with p=0 for priorities which are considered essential to fund, p=l for priorities we strongly wish to accomplish and p=2 for less important priorities.
Example:
[0074] The client has three goals: First, to pay the mortgage. This requires $60,000/year for fifteen years and is denominated in dollars (as opposed to constant purchasing power (essential) dollars), so
F(l,n,p) = 60,000 for n=1..15 and p=0 = 0 for n>15 or p>0
[0075] A second goal is to have funds to pay living expenses. These expenses increase with inflation so the goal is expressed in constant purchasing power. Essential expenses are projected to be at least 60,000 dollars a year to cover and $80,000 is preferred. These funds should extend to my expected lifespan (say 45 years) so
F(2,n,0) = 60,000 for n<45 F(2,n,l) = 20,000 for n<45
[0076] Note that in this example the living expenses are fixed, but they could just as well fluctuate through time.
[0077] A third goal is to purchase an annuity that will continue to pay living expenses should the client outlive their estimated life span. The estimated cost of such an annuity is 80,000, in this example, denominated in dollars of constant purchasing power, so
F(3,45,0) = 80,000
[0078] Preferably, we determine a portfolio of bonds that would produce cash flows that satisfy the goals (903). It is not necessary that the portfolio include actual bonds that can be purchased in the market. Standardized bonds can be used. This allows us to construct an economic model that estimates both expected returns and co variance of the bond-covered expenses with assets, hi general, this is done by basing an estimate on similar bonds which are present in the market place and making the necessary adjustments to move from the observed bonds to the standardized bonds.
Example:
[0079] The cash flows from F(I ,n,0) for the fifteen year mortgage liability can be modeled by a portfolio of zero coupon government bonds with face amounts of 60,000 maturing in years 1 through 15.
[0080] In addition to liabilities and goals, the client will typically have investment and non-investment assets. We collect the data on both types of assets. Preferably, we proxy non- investment assets to investment assets with similar properties (512).
Example:
[0081] The client has 500,000 in securities, he has earned 20,000 in annual social security benefits that will be paid commencing in 10 years and he plans on selling his home in 15 years and moving to a condo, thus freeing up 300,000 of cash. [0082] The social security benefits and house sales both generate cash flows whose amount increase in line with the CPI index. They can be proxied by positions in CPI-linked bonds which produce the same cash flows. [0083] The client may be restricted in liquidation of some investment assets.
Example:
[0084] The client has 200,000 in an employer sponsored 401k fund. It can only invest in
5 specific mutual funds. The client has 50,000 in the stock of his employer which he cannot sell for 3 years. The client has adopted a policy that when he invests in equities no more than 20% of the equity investment will be placed in small cap stocks.
[0085] Preferably, we analyze the scenario as the client holding a portfolio which has a short position in the bonds that represent his goals and a long position in his assets. The data on this portfolio is assembled into the form required by the Markowitz or an equivalent method. The Markowitz method is applied to determine the efficient frontier, taking into account properties of assets and claims including non-investment assets. FIG. 10, which was discussed in the prior application, depicts investment opportunities and personal investment opportunity as a trade-off between percent annual return and percent value-at-risk per annum. FIG. 11 gives some illustrative data regarding covariance ratios that go into exercising the Markovitz method or any similar analysis of risk and reward. FIG. 12, for a period beginning with retirement, illustrates a hypothetical change in the mix of investment and non-investment assets. As illustrated, the changes can be dramatic, especially at the transition into retirement. If some of the data entering the problem changes through time, such as employment income, then the Markowitz method is applied to determine efficient frontiers for each time point. Efficient portfolio data could be tabulated as
E(t,r) = expected return at time t for a given risk level r D(t,r,i) = fraction of portfolio wealth invested in asset i for the portfolio selected by the Markowitz method with risk r at time t
[0086] By comparing D(t,r_l, i) and D(t+l,r_2,i), we can see the portfolio changes required to go from risk level r_l at time t to risk level r_2 at time t+1. These changes will involve costs in the form of brokerage commissions and taxes on realized capital gains. We can calculate these costs as K(g,t,r_l,r_2) = cost of going from risk level r_l at time t to risk level r__2 at time t+1
given unrealized capital gains g in the portfolio at time t+1 just prior to making the portfolio adjustment.
[0087] Constant purchasing power goals and resources at future dates are adjusted by one or more inflation indexes (904). (As we explained in the prior application, an educational cost index may rise more quickly than the consumer price index, so it may be useful to have more than one inflation index.) Suppose the inflation index at time t is I(t). We can convert goals denominated in dollars of constant purchasing power to actual dollars by multiplying by I(t)/I(0). Then for each priority class we can sum over the goals to find the total desired spending at that time. Let
S(t,X,p) = total desired spending at time t in dollars given I(t)/I(0)=X, for priority level p
Let
CS(UCp) = S(t,X,O)+S(t,X,l)+...+S(t,X,p)
be the cumulative spending required by priority class p and all higher priority classes.
Example:
[0088] For the combined mortgage plus essential and preferred living expenses example given above, with inflation-adjusted "X" applied to constant purchasing living expense amounts,
S(t,X,0) = 60,000 + 60,000 X for t < 15 S(UCO) = 60,000 X for 15 < = t < 45
S(45,X,0) = 80,000 X at t = 45
S(UU) = 20,000 X for t < 45
CS(t,X,0) = S(t,X,0) definition of cumulative spending by priority
CS(UU) = 60,000 + 80,000 X for t < 15
= 80,000 X for l5 < = t < = 45
[0089] Let U(UCY) denote the utility of spending Y dollars to satisfy goals in time t, given I(t)/I(0)=X. We may define U( ) in any reasonable way (905). For two utility classes, a reasonable choice may be
Figure imgf000024_0001
This utility function is intended to express the idea that S(t,X,0) is a minimum spending level that must be met and that spending above CS(t,X,l) brings limited rewards. Example 1 : Suppose X(t) = 2 and CS (t,X,0) = 20,00OX = 40,000. Also let CS (t,X,l) = 80000X = 160000. Then
Example 2: Suppose instead X(t) = 2 and CS(t,X(t),0) = CS(t,X(t),l) = 0. Then
Figure imgf000024_0002
Here we observe that if U( ) is a utility function, a > 0 is a constant and b is a constant then U' = αU + b is a utility function also and both U and U' lead to the same investment decision.
[0090] FIGS. 13 A and 13 B depict examples of logarithmic utility functions, not keyed to these examples, but generally making the utility of only barely achieving (or missing) an essential goal so negative as to be prohibitive, even in a multi-year summation of utility. Of course, other forms of utility function can be applied. A range of utility functions discussed in Kenny, R. and H. Raiffa, Decisions with Multiple Objectives (Wiley, New York: 1976), some of which are tabulated on p. 173 and others of which are illustrated on page 254. The chapters of Kenny that include the tabulation and illustration, chapters 4-5, are hereby incorporated by reference. The form of utility function selected may influence the strategy selected. [0091] When addressing retirement planning, it may be prudent to evaluate utility over time without discounting. Even a low discounting rate may sacrifice financial security in old age in favor of immediate consumption. Of course, discounting factors may be applied to utility over time, but we urge caution especially over a 30-50 year planning horizon. [0092] Suppose W(t) is our wealth at time t and we choose to spend a fraction f(t) of it
(906). Then the utility of the sequence of decisions {f(l), f(2)...} given inflation indexes (1(1), 1(2),....} is U({f},{I},{W})=sumj U(t,I(t)/I(O),f(t)W(t)) [0093] At a given point in time t we are interested in the following variables (907)
W(t) = our wealth at time t G(t)=the embedded unrealized capital gain R(t)=the risk we have chosen to bear at time t I(t)=the inflation index at time t
[0094] We consider these variables as defining the state of our world. We grid each dimension of the world (908) in a reasonable way so that we reduce to considering a finite number of possible states. FIG. 5 graphically depicts a two-dimensional grid, as might be applied to wealth 512 over time 511. Note that the grid need not be rectangular. An initial search grid may be used initially and a refined search grid with more resolution and a narrower range may be used to refine the search.
Example:
[0095] Our wealth is somewhere between 0 and 1,000,000 so we grid W as at the points
1.2" • 1000 for n= 1...38. The unrealized gain is somewhere between 0 and 100% so grid points at 0, 10%, 20%...100% are reasonable. The risk is somewhere between 0 and 25%, so grid points at 0%, 1 %, ... ,25% are reasonable. The inflation index at time t is somewhere between 1(0) and 1.1" • 1(0) so we set grid points at (1+x)' • 1(0) for x=0, 0.01 , 0.02..., 0.1. Thus the point (n_l,n_2,n_3,n_4) corresponds to the (W,g,r,I) values as (1.2nJ • 1000,n_2/10, n_3/100,(l+(n_4/100)t)t • 1(0)) for n_l in 1...38, n_2 in 0...10, n_3 in 0...25 and n_4 in 0...10. The grid results in a world with 95,000 (=38 x 25 x 10 x 10) possible states. [0096] This particular illustration of gridding is not especially efficient. A more efficient gridding would reduce the number of points without reducing the accuracy of the calculation and thus reduce the total computation time required to reach a given level of accuracy. [0097] Our planning server 714 and the control action recommendation module 823 utilize the portfolio, goal and market information to develop a recommended strategy (909). Dynamic optimization problems are often solved using Bellman's algorithm, which is further discussed below. To apply Bellman's algorithm, let p i and p_2 be two points in our girded state space. Using our asset return model we may calculate P(p_l,p_2,t,s) = probability we are in state p_2 at time t+1 given that we were in state p_l at time t and spent fraction s of wealth at time t. Example:
[0098] Suppose we are at p_l . This implies we took risk r_l . Let r_2 be the risk at time t+1 implied by p_2. Let g be the embedded gain implied by p_2. We spend s*W(t) and incur costs K(t,r_l,r_2,g) W(t). Thus we have a net amount x=[l-s-K(t,r_ l,r_2,g)] W(t) to invest. Hence the investment return required to reach W(t+1) is ln(W(t+l)/x). The probability of achieving this return is given by the normal probability P(ln(W(t+l),E(t,r_l),r_l) where P(x,m,s) is the probability of getting value x from the N(m,sΛ2). The probability of a certain transition in the other coordinates is calculated similarly.
[0099] We define a function J(t,p,s) as the value or utility of being in state p at time t and choosing to spend fraction s. Let s(p,t) be the best amount to spend at time t given we are in state p. These functions are defined by a backwards recursion: Let J(T,p,s)=U(T,I(p),sW(p)) and s(p,T)=l.. Suppose J(t,p,s) and s(p,t) are defined then define J(t-l,p,s) and s(p,t-l) as follows:
find s to maximize sum_p2 P(p,p_2,t-l,s) J(t,p_2,s(p_2,t)) then s(p,t-l) is the value of s found and J(t-l,p,s) is the maximized value.
[00100] After gridding the state space and evaluating alternative strategies, we have for all t and p,
C* (t,p)=optimal fraction to consume at time t given P(t)=p R* (t,p)=optimal investment risk to take at time t given P(t)=p
[00101] In particular, taking t=now and p=current state we have the recommended consumption and risk in the current period (910). Subtract cash consumed from non-investment cash inflows in the current period. The result, if positive, is cash contribution to the portfolio (i.e. saving). The result, if negative, is cash withdrawal from the portfolio. Next perform the Markowitz portfolio construction to match the recommended risk budget, the planned cash contribution or withdrawal and the limit on transaction costs. The result is the optimal portfolio consistent with the long term strategy.
[00102] If desired, we may simulate forward in time applying the optimal strategy defined above. The result is the range of outcomes from following the strategy (911). Our System for Determining a Control Strategy 1.0 Introduction
[00103] In this section, we describe a strategy creation module operating on a planning server (714). This module may be invoked after cash flow planning and before portfolio construction. Our approach builds on asset liability management. In one embodiment, the analysis is performed at the asset class level. The claims define an investment benchmark. Locked resources (which include all non-investment resources) constitute a fixed part of the resource allocation. The unlocked resources are varied among investible assets to determine an efficient frontier, which we term the "investment opportunity". Based on the investment opportunity and ratio of wealth to goals, we pick a risk budget. Then we select from the investment frontier the portfolio with that risk budget. The portfolio expressed by the efficient frontier is defined over all resources. We select the sub portfolio of investment resources and map that into the account structure to determine asset class allocations for each account. [00104] When multiple funding pools are present, we adjust the various components of the analysis to reflect the overall pool structure. Any residual value in segregated pools may be flowed to personal pools. The personal pools and household pools are managed on an aggregated basis reflecting the current funding of claims by the different pools. We assume that a wealth building goal has been adjoined to the problem if necessary so that resources never exceed funded claims, and some utility results from wealth accumulation. [00105] Our method includes:
• Data assembly: Data from the case, economic database, advisor database and prior analysis is collected and transformed to required form. Some of the data is time varying. This data is summarized as a current value and a long term mean.
• Investment opportunity: We set up a portfolio construction problem and solve it for two risk aversions. These risk aversions determine two ends of the efficient frontier and thus define the investment opportunity set. The analysis is performed at least once for current conditions and once for the long term mean condition. As current creditors evolve, the immediate investment opportunity may be revised.
• Strategy lookup: We search a table of results from the offline dynamic optimizer to get the risk budget. This search is based on the two investment opportunities and the current ratio of wealth to goal cost. β Pool level investment structure: We determine the investment structure at the pool level. This repeats the investment opportunity optimization with adjustment of the risk aversion to match the risk budget fixed by strategy lookup.
• Account level investment structure: Results are translated to the account level and the datacubes required by the next stage of advice creation (i.e., portfolio construction) are created.
2.0 Data Inputs
[00106] We begin by describing data which supports our method.
2.1 Prior Analysis
[00107] Clients describe their resources and claims, typically in response to a structured interview. The asset descriptions were described at length in the prior application. The resources and claims are balanced, sometimes iteratively, to present a feasible problem, in which resources are sufficient to meet at least essential needs. FIG. 15 illustrates a graph of claims and a cash flow summary that may be useful in balancing goals. Various datacubes are prepared.
2.1.1 Cash Flow Projections Datacube
[00108] This datacube holds the cash flows projected by a cash flow manager module.
Figure imgf000028_0001
2.2 Advisor Database
2.2.1 Data Tables
Alpha Forecast Sets Table
[00109] This table assigns an owner to a set of alpha forecasts. An owner may be the software creator, an enterprise, business unit, advisor or case. Ownership determines edit privileges to this data. By default, the data can only be viewed by the owner and organizational subordinates of the owner.
Field Type Contents f forecast set id identifies the set of forecasts owner id who can edit the data
Alpha Forecasts Table
[00110] This table holds expected returns for several tax bands.
Field Type Contents f forecast_set id identifies the set of forecasts f date date data date f asset id asset id order int index assigned to asset exempt alpha per cent expected pre tax return in annual per cent low alpha per cent expected low tax rate return in annual per cent medium alpha per cent expected medium tax rate return in annual per cent high alpha per cent expected high tax rate return in annual per cent 2.2.2 Data Interface [00111] The CaseDao (data access object) should support the following methods.
• strategyO Returns the strategy id applicable to this case. Defaults to cf IsI for October 2007 release.
• alphas(rate) Returns a vector of expected returns for the case for supplied tax rate band. Defaults to the strategy set for the October 2007 release. Possible values of rate include EXEMPT, LOW, MEDIUM, HIGH.
• has_risk_questionaireO returns true if there is a risk questionnaire.
• risk_IimitationO returns true if risk questionnaire imposes a limitation
• questionnaire limit lossO returns true if questionnaire limits loss and false if it limits volatility
• questionnaire_limit() limit supplied by the questionnaire
2.3 Economic Database
2.3.1. Data Feed
Tax Band Table
[00112] This table maps income level and marital status to a tax band.
Field Type Contents f strategy id strategy id f date date data date f status code marital status f income currency maximum income for band band code tax band
[00113] Typical values of band are EXEMPT, LOW, MEDIUM, HIGH.
Strategy Parameters Table
[00114] The system is built to be adaptable as systems and computational precision evolve. This table holds miscellaneous parameters required to implement a strategy.
Field Tvpe Contents
' strategy id strategy id
' date date data date risk infinity float risk aversion considered infinite risk risk scaling float
Risk scaling factor λ return scaling float return scaling factor 2 wealth ratio float wealth ratio scaling factor 3 maximum iterations int maximum number of iterations in the QP solver stop criterion float convergence test in QP solver ops infinity float value representing infinity
. . oo in optimizer ops
Strategy Policies Table
[00115] This table holds the investment policies associated to a policy.
Field Type Nullabk : Contents f strategy id strategy id f date date data date t type id policy type id string yes identifier field flag Boolean yes Boolean field value 1 float yes first value field value2 float yes second value field value3 float yes third value field
Asset Style Associations Table
[00116] So-called asset styles associate friendly names with generic assets that have cryptic, analytical-sounding names. This table holds an association between style identifiers and generic assets.
Field Type Contents f strategy id strategy id f date date data date f style id style id asset id asset id
Asset Properties Table
[00117] This table holds properties of the generic assets referenced by the asset style association table, including user-established bounds on concentration of the portfolio in these assets.
Field T\ Nullable Contents f strategy id Strategy id t date date data date f asset id asset id order int index assigned to asset sheltered Boolean true if tax sheltered else false investment Boolean true if investment asset else false liquidity horizon int yes the asset is considered a liquid asset at this horizon (in years), null if not a liquid asset at any horizon lower per cent yes lower limit on holding upper per cent yes upper limit on holding
Asset Covariance Table
[00118] This table holds asset by asset covariance values for the generic assets in the asset properties table.
Field Type Contents f strategy id strategy id f date date data date f asset 1 id row asset f asset2 id column asset row int row index column int column index exempt float covariance in tax exempt case
(monthly decimal) low float covariance in low tax rate case
(monthly decimal) medium float covariance in medium tax rate case (monthly decimal) high float covariance in high tax rate case (monthly decimal)
Strategic Opportunity Table
[00119] This table maps integer 4-tuples representing two discrete points on a risk-return diagram to an integer code termed the opportunity value. The points on the diagram are taken as extrema of an efficient frontier and the opportunity value identifies the frontier as a member of a set of frontiers. Field Contents f strategy id strategy id f date date data date f low risk int sk coordinate f lowjreturn int low return coordinate f high risk int high risk coordinate f high return int high return coordinate opportunity int opportunity value
Strategic Opportunity Table
[00120] This table holds the dynamic strategy.
Field Type Contents f strategy id strategy id f date date data date f horizon int investment horizon f initial_opportunity int initial opportunity f mean opportunity int mean long run opportunity f primary_ratio int primary wealth ratio px f secondary ratio int primary wealth ratio p2 f additional ratio int primary wealth ratio p3 risk budget per cent risk budget in annual per cent nsumption budget per cent consumption budget in annual per cent
2.3.2 Data Interface
[00121] The StrategyDao supports the following methods:
• constructor(strategy) Constructed with the strategy id. Thereafter returns values pertinent to that strategy.
• aversion infϊnity Return risk_infinity value from strategy parameter table.
• ops_infϊnity Return optimimizer_infmity value from strategy parameter table.
• risk_scaling Return risk_scaling from strategy parameter table.
• return_scaling Return return_scaling from strategy parameter table
• wealth_scaling Return wealth ratio from strategy parameter table
• tax_band(income, marital_status) Return tax band for income level (in constant dollars to reflect indexing) and marital status based on tax band table. • policies Return list of investment policies from strategy policies table.
• universe Return ordered list of assets in strategic investment universe from asset properties table.
• sheltered Return vector of zeros and ones where sheltered assets have a one and unsheltered assets have a zero. Values are set based on asset properties table.
• investment Return vector of zeros and ones where investment assets have a one and non-investment assets have a zero. Values are set based on asset properties table.
• lower Return vector of lower bound on asset holdings. Values based on asset properties table with null values represent by -∞ops from strategy parameter table.
• upper Return vector of upper bound on asset holdings. Values based on asset properties table with null values represent by ∞ops from strategy parameter table.
• covariance(rate) Returns monthly decimal covariance matrix for indicated tax rate
• opportunity(riskl,alphal,risk2,alpha2) For integers 0 < riskl < risk2 and alphal < alpha2. Return the opportunity value in the strategy opportunity table. Return exact value if found. Otherwise pull supplied coordinates to boundary of pre-calculation grid and supply corresponding value.
• strategy(horizon,initial_opportunity,final_opportunity,primary_ratio,secondary_rat io,additional_ratio) Return the tuple (risk budget, consumption budget) based on inputs and values in strategy table. Supply exact match if found; otherwise pull to boundary.
3.0 Strategy Optimizer
[00122] The strategy optimizer extends the portfolio optimizer by adding a generic capability. It then exercises that capability to implement shelter and cash constraints.
3.1 General Purpose Facility
[00123] Suppose n is the number of assets in the investment universe. The optimizer user may supply
• lower A vector L of size m
• upper A vector U of size m
• policy A matrix A of size m x n
• penalty A matrix K of size m x 2 Here we assume L1 < U1 and KtJ > 0.
[00124] Let h represent the holding weights of the optimal portfolio. Let p and p+ be auxiliary decision variables of dimension m . Define
and
Figure imgf000035_0002
[00125] The effect of the supplied data is to add the constraints
and
to the problem and the term
Figure imgf000035_0001
to the objective. Note that when Ky = 0 the corresponding auxiliary variable is effectively eliminated from the problem. An efficient implementation will avoid introducing these phony variables.
3.2 Applications
[00126] We make two applications of the general purpose facility.
3.2.1 Shelter Constraint
[00127] One use of this functionality is to add a single equality constraint with no penalties. In other words m = \ and ^ = O and L0 = U0 = S . Thus the supplied data is a vector A of dimension n and a scalar S . We impose the constraint
Ah = S [00128] We refer to this as the shelter constraint. Here A1 = I if asset / is a sheltered asset and A1 = O otherwise. The value S is called the shelter ratio. It is in the interval [0,1].
3.2.2 Cash Constraints
[00129] Here the user provides m ≥ 0 lower bound constraints. Thus the supplied data is
L and A . We infer U to have all of its elements equal to ∞ There are no penalty variables and the constraint is
Figure imgf000036_0001
4.0 Data Assembly
4.1 Configuration
[00130] From the case data, return the strategy name. We will represent this value by strategy .
4.2. Locked Positions
[00131] If an account is managed or advised, determine its locked (non-tradable) positions as follows:
1. Merge the list of global asset locks with the list of account level asset locks. If the locks conflict, take the more restrictive.
2. Scan the merged list. If an asset appears on the list apply that lock to every position in that asset in the account.
3. Finally scan the list of position level locks for the account and apply them, hi case of conflict take the more restrictive lock.
The determination of which of two trading restrictions is more restrictive can be made by referencing a look-up in the following table:
Field Type Contents f restriction 1 code first trading restriction f restriction2 code second trading restriction final_restriction code final trading restriction
[00132] Output the following datacube Lot Level Lock Detail Datacube The locking status of each lot
Field Type Contents f family id family id f entity id entity id f account id account id i f asset id asset id j f lot id lot id k global lock code global lock account_lock code account level lock position_lock code position level lock conflict Boolean true if there were conflicts in lock setting final_lock code final lock value 4.3 Balance Sheet Projections
[00133] Let N be the planning horizon used in the cash flow manager. Let ni = floor(/iV75) for i = 0,...,4 and n5 = N. We tally the estimated value of investment accounts in the years nt under the plan.
Field Type Contents ■f family id family id f entity id entity id f account id account id i f point int i year int the value nt value currency planned value of account basis currency estimated basis value of the account
[00134] We also tally the estimated balance value in those years of non-investment resources.
Field Type Contents f family id family id f entity id entity id f resource id resource id i t point int i year int the value nt value currency estimated value of the resource
[00135] Finally, we need the estimated balance sheet value (claim, priority class) combination.
Field Type Contents f family id family id f entity id entity id f claim id claim id i f priority id priority class id f point int sequence number j year int the value nt value currency estimated value of the claim
[00136] The higher priority class values are incremental values, rather than total values of a claim across priority classes.
[00137] This data can be extracted from output of a cash flow manager module. If the output provides values at future points in time, then these values are used. This rule applies to investment accounts and houses. Otherwise, we are provided with the expected cash flows. Examples are human capital, social security and claims. Suppose the expected cash flow at time t for some item is et. We calculate its balance sheet value at time s as
Figure imgf000039_0001
where p is the appropriate discount factor, i.e.
Figure imgf000039_0002
where r is the discount rate used for valuing this type of flow.
4.4 Tax Bands
[00138] Here we describe a streamlined tax treatment that can readily be upgraded. From the cash flow manager, we have the expected human capital contribution in each year HC (t) and the value of each account Vt(t). Sum the values of the individual accounts to get a total V(t).
Take into consideration interest flowing from the accounts by setting the estimated taxable income ET (y) equal to
Figure imgf000039_0003
[00139] Define a deflator D(t) = 1.03'. to roughly compensate for tax model indexing.
Let
Figure imgf000039_0004
[00140] Compare DET(O) and marital status against the tax band table to get the current tax band TB0. Take the average
Figure imgf000039_0005
and use the averaged deflated estimated taxable income (ADET) and marital status to look up the mean tax band TB2.
4.5 Style Calculation
[00141] Here we calculate current styles for resources, claims and locked resources over the different funding pools. In addition, we collect information on taxability and tax basis. This description is calculated at the funding pool level. It can be built up in stages. First, we summarize individual investment accounts. Then, we summarize individual funding pools. Next, we calculate the implicit wealth and claim transfers between pools. Finally, we summarize the pools after taking these transfers into account. We use the following decomposition of balance sheet items:
resources investment assets controlled investments locked controlled investments unlocked controlled investments uncontrolled investments non-investment resources claims
[00142] An interesting aggregate is locked resources, which consists of resources subject to an advisor's control, uncontrolled investments and non-investment resources. For investments, we distinguish between tax-sheltered and regular (taxable) assets. We are interested in the aggregate of all taxable and all sheltered investments, regardless of control and locking status. At a pool level, we distinguish between direct resources and claims (due to items in the pool) and indirect resources and claims (due to inter-pool transfers). The aggregate of direct and indirect items is known as full items. We capture these concepts with the following notation:
Figure imgf000040_0001
4.5.1. Investment Accounts
[00143] Consider account / at time t = 0. For asset j let Sj be its style weights in the strategy calculated style and let v, be its value. Let V1(O) be the portfolio base for account i . If account i is either managed or advised and position k is not locked, then set χk = 0. Note that there may be multiple positions k for an asset/ Otherwise, set Xk = \. Let T1 = O if the account is sheltered from current taxation and T1 = I otherwise. Let bk be the basis of position k. Define
locked
Figure imgf000041_0001
unlocked k jk=the asset j of which lot A; is a position investment
locked
unlocked taxable basis
Figure imgf000041_0002
[00144] For times t > 0 let Vt(t) be the estimated value of the account. Set V1 (t) = 0 and
V = Vt(t). If the account is taxable, let Bt(t) be the estimated basis of the account from the balance sheet projections. If the account is not taxable let B1 (t) = 0. [00145] Output the following datacubes:
Account Level Lock Summary Datacube: Summary of locks at the account level.
Field Type Contents f family id family id f entity id entity id f account id account id i f time id sequence time t controlled Boolean true if account is managed or advised sheltered Boolean true if sheltered from current taxation value currency portfolio base Vt(t) locked_yalue currency part of base locked V1 (t) unlockedjvalue currency part of value not locked V1 (t) basis currency basis of unlocked taxable positions B1(J)
Account Level Style: Summary of styles at the account level.
Field Type Contents f family id family id f entity id entity id f account id account id i f strategy id strategy id f style id style id k full weight float weight on style in strategy 1 scheme Xk locked weight currency locked weight on style in strategy 1 scheme Xk ' unlocked weight currency unlocked weight on style in strategy 1 scheme X,
4.5.2 Preliminary Pool Analysis
[00146] Next we iterate over the list of funding pools. A funding pool p has attached to it a list Ap of investment accounts, a list Np of non-investment resources and a list Cp of claims. [00147] For account / let T1 = O if the account is sheltered and T1 = I otherwise. Let C1 = X if the account is controlled and 0 otherwise. For times t let Bt(t) be the account basis. Define at the pool and account levels:
investment value
locked value
unlocked value
controlled value
taxable status
taxable basis
Figure imgf000042_0001
Also for time t = 0 only let
Figure imgf000043_0001
[00148] Each non-investment resource and claim i supplies a member function strategic_style ( strategy) which returns its style vector X1 in the strategy calculated style. For non-investment resource i we also get its fractional membership ft in the pool and estimated balance sheet value v, (t) at point /. For a claim i let wy (t) be the value of the j'h priority class at point t . Let r} be the funding ratio of class j and set
Figure imgf000043_0003
[00149] Define
Figure imgf000043_0002
[00150] For pool p let the total locked resource be
Figure imgf000043_0004
[00151] Let the total resource be
and let
be the claims.
Figure imgf000043_0005
4.5.3 Inter-pool Transfers
[00152] Number the funding pools as follows:
Number Pool
0 household
1 principal one
2 principal two n segregated pool w- 2
[00153] Let x} denote the parent of pool j. Thus x0 is undefined, X1 = X2 = O and xn = 1 if segregated pool n - 2 is linked to principal one and Xn = 2 otherwise. For / > 2 let En it) = max(0, JFn it) - Cn it)) be the excess value in pool n. For i = 1, 2 the residual value of segregated pools available to principal pools is
Figure imgf000044_0002
[00154] Then the adjusted principal pool value is
and its excess value is
Figure imgf000044_0003
Figure imgf000044_0001
[00155] Finally the adjusted value of the household pool is
Set
for n > 2. Then for n > 0 let
Figure imgf000044_0004
[00156] Define resource transfer coefficients Tn (t) as
Figure imgf000045_0001
[00157] Similarly for n > 0 let
Figure imgf000045_0003
and define claim transfer coefficients Tβ (t) as
0
Figure imgf000045_0002
[00158] These transfer coefficients describe a flow of resource from child to parent and of claim from parent to child. Output the following datacube:
Pool Transfer Weights Datacube: Basic data on inter-pool transfers.
Field Type Contents t family id family id f entity id entity id f strategy id strategy id f pool id pool id p f time int sequence time / parent id id of parent pool
(n/a for household) wealth currency pool wealth Wp(t) transfer currency wealth transfer Ep{t) resource_weight float resource transfer weight ψp(t) claim weight float claim transfer weight
Pool Transfer Matrix Datacube: Full transfer matrices.
Field Type Contents f family id family id t entity id entity id 45
f strategy id strategy id f parent id id of parent pool s f child id id of child pool s f time int sequence time t resource_weight float resource transfer weight
TJt) claim weight float claim transfer
Figure imgf000046_0001
weight f Jt)
4.5.4 Pool Summary
[00159] Now we consolidate over funding pools. For each pool p and time t define
F0(A 0 : ■ ∑TJt)vo(sJ) s≥p
V0(P J) - ∑ Tsp(t)vo(s,t) s≥p Vo(PJ) ∑ Tψ(t)v"o(sJ) s≥p Vi(PJ) ^ TJt)V1(SJ) s≥p V2(PJ) - ∑T J' t)V2(SJ) s≤p
V3(PJ) : Vo(PJ) + Vi(PJ)
L(PJ) Vo(PJ) + Vi(PJ)
W(pJ) - ∑T Jt)W (SJ) s≥p
T(PJ) ∑T Jt)T(S J) s≥p B(PJ) ∑T Jt)B(S J) s≥p
[00160] Output the following datacube:
Pool Summary Datacube: Basic data on pools.
Field Type Contents f family id family id f entity id entity id f pool id pool id p f time int sequence time t
Figure imgf000046_0002
all_resource float resource value f^(PJ) all_locked float locked resource value
Figure imgf000047_0003
alljunlocked float unlocked resource value
Figure imgf000047_0004
all taxable float controlled taxable resource value
Figure imgf000047_0005
all_basis float basis of controlled taxable resource
Figure imgf000047_0006
all_claim float claim value
Figure imgf000047_0007
all net float All_resource minus all claim direct resource float pool direct resource value Wp(t) direct locked float pool direct locked resource value L(p,t) direct_unlocked float pool direct unlocked resource value Vo(P>O direct taxable float pool direct controlled taxable resource value T(p,t) direct_basis float pool direct basis of controlled taxable resource B(p,t) direct claim float pool direct claim value Cp(t) direct net float direct resource minus direct claim
4.5.5 Time Averaged Pool Summary
[00161] We will define time averaged pool value as
Figure imgf000047_0001
[00162] Define the basis ratio as
Figure imgf000047_0002
if the denominator is non-zero and p(p,t) = 0 otherwise. The time averaged basis ratio p is defined by
Figure imgf000048_0001
and again p(p) = 0 if T(p) = 0.
[00163] The sheltered ratio is defined as
T(PJ) s(pj) = \ - V3(PJ) and the time averaged shelter ratio as
1 5
S (P) = -IjTT 2, V& t)s(p, ϊ) V(P) ι=l
[00164] Output the datacube:
Mean Pool Summary: Time averaged pool parameters.
Field Type Contents f family id family id f entity id entity id f strategy id strategy id f pool id pool id value currency current value γ3(p,0) meanjvalue currency mean value
Figure imgf000048_0002
taxed value currency current taxed value T(p, 0) mean taxed value currency mean taxed value
Figure imgf000048_0003
basis ratio float current basis ratio p(p, 0) mean basis ratio float mean basis ratio p(p) shelter_ratio float current shelter ratio s(p,t) mean shelter ratio float mean shelter ratio J(pJ)
4.6 Liquidity Requirement and Characteristics
[00165] Define a weight wt for year t as follows:
year t weight wt
0 1
1 0.75 2 0.5 3 0.25
[00166] Here period 0 corresponds to the current partial year.
[00167] For controlled account n let xn(t) be the planned cash flow for the account in year t (in dollars) from the cash flow plan. The signs are such that negative values correspond to outflows. For pool p let
Figure imgf000049_0001
be the planned flow summed over all controlled accounts in the pool which are not sheltered. And let
Figure imgf000049_0002
n be the planned flow summed over all controlled sheltered accounts in the pool. Define the direct liquidity demand schedule as
Figure imgf000049_0003
for / = 1,2 Define the full liquidity demand schedule as
F
Figure imgf000049_0004
[00168] Output the datacube:
Pool Liquidity Demand Datacube: Direct and full liquidity demand for each pool.
Field Ty-E-? Contents f family id family id f entity id entity id f strategy id strategy id f pool id pool id p f year int time in years from now t direct liquidity demand for direct_unsheltered currency unsheltered accounts LDx(p,t) direct liquidity demand for direct_sheltered currency sheltered accounts LD2(p,t) direct liquidity demand for full unsheltered currency unsheltered accounts FLDx(p,t) direct liquidity demand for full sheltered currency sheltered accounts FLD2(p,t) [00169] We also set up a liquidity vector
Figure imgf000050_0001
[00170] Let n be the number of asset classes. From the asset characteristic table we get a liquidity horizon T1 for asset /.We set up a 8χrø liquidity matrix A. For y = 0,...,3 we have
if T1 ≤ j and / is not sheltered
Figure imgf000050_0002
otherwise and for j = 4,...,7 we have if T1 ≤ j - 4 and i is sheltered otherwise
Figure imgf000050_0003
4.7 Investment Horizon 4.7.1. Account Level
[00171] Let xn(0 be the cash flow for investment account n in year t . Let In be the starting value for account n. Define
Figure imgf000050_0004
[ and
F2 («,0 = max(0, -xn(0)
[00172] Set
Figure imgf000050_0005
and find p to solve the equation
Figure imgf000050_0006
[00173] We remark that 10Ox (ZC"1 -1) is the internal rate of return on the flows. The discounted present value of the flows is
Figure imgf000050_0007
and the present value weighted average timing of the flows is
Figure imgf000051_0008
Thus the average investment horizon for account n is
Hn = max(0, N2(H)- N1(N))
4.7.2 Pool Level
[00174] For pool p let
Figure imgf000051_0004
for i = i,2 and the sum taken over controlled investment accounts in the pool. As before let
Figure imgf000051_0005
t and find p to solve the equation
Figure imgf000051_0006
[00175] The discounted present value of the flows is
Figure imgf000051_0001
and the present value weighted average timing of the flows is
Figure imgf000051_0002
[00176] Thus the average investment horizon for pool p is
Figure imgf000051_0003
4.8 Wealth Ratios
[00177] For pool p let Wp be the direct resources in the pool and Wp ' the sum of direct and indirect resources. Let Co(/>) be the value of liabilities and primary goals in the pool. Let Cx(p) be the incremental value of secondary goals and let C3(p) be the incremental value of additional goals. Here the quantities C (i) refer to funded amounts. For pools p = 1,2 let
Figure imgf000051_0007
[00178] For pools i > 2 let
Figure imgf000052_0003
[00179] For / = 0 let
Figure imgf000052_0004
[00180] Let C3 be the wealth ratio scaling coefficient. Define
Figure imgf000052_0001
[00181] We term these quantities the wealth ratios.
5.0 Analysis
[00182] First we determine an investment structure at the pool level of detail. Later we translate those results to an account level of detail.
5.1 Pool Level Investment Structure
[00183] Our analysis at the pool level proceeds as an iteration over pools in descending order. Thus we first process all segregated pools, then personal pools, and finally the household pool. Thus all child pools are processed before the parent pool is processed. The recommended structure of the child pools is thus determined and the portion of this transferred to the parent becomes a locked component of the parent's allocation.
5.1.1 Final Style Calculations
[00184] To anticipate our ultimate result, for each pool s previously calculated we get a constrained optimal weight vector H2(S). Let Z(s) be the style vector associated to Jt2(S). Let
if i is an investment asset . otherwise
Figure imgf000052_0002
[00185] For pool p the current pool and for time t = 0 only let
Figure imgf000053_0001
[00186] Similarly define
Figure imgf000053_0002
[00187] For all t define
Figure imgf000053_0003
[00188] Output the following datacube:
Pool Styles Datacube: Style vectors attached to pools.
Field Type Contents ■f family id family id f entity id entity id f pool id pool id f strategy id strategy id f time int sequence time t f style id style id k all_resource float resource style weight χ3k(p,t) all_locked_resource float locked resource style weight χu(p,t) all unlocked resource float unlocked resource style weight χ3k(p,t) all claim float claim style weight χlk (p,t) direct_resource float direct resource style weight χ3k(p,t) direct locked resource float direct locked resource style weight X3k(p,t) direct_unlocked_resource float direct unlocked resource style weight χ3k(p,t) direct claim float direct claim style weight χ2k (p,t)
[00189] We will define time averaged style weights as
Figure imgf000054_0001
and output them as: Mean Pool Style Datacube: Time averaged pool styles.
Field Type Contents
j" family id family id f entity id entity id f pool id pool id f strategy id strategy id f style id style id k locked resource float mean locked resource style weight χλk claim float mean claim style weight χ2k
5.1.2 Investment Opportunity
[00190] If the unlocked value of the pool p is zero, then skip this pool. Otherwise, we perform two portfolio constructions, one based on current values and the other on time averaged value. We set up the portfolio construction optimization as follows:
• Investment universe: The universe is the set of generic assets corresponding to the styles appearing in the strategy style scheme. This set is provided by StrategyDao.investrnent_universe().
• Initial holdings: For the current time optimization use current resource style weights for pool. For the long term optimization use the optimal weights from the current optimization. • Benchmark: claim style weights for pool at time t
• Alpha: a from CaseDao based on tax band TB1 for current and TB2 for long term mean.
• Asset bounds: Let Bk(t) be the locked weight of style k at time t. Let lk and uk be the lower and upper bounds on style k from the StrategyDao. Define effective lower and upper bounds as
Figure imgf000055_0002
• Covariance matrix: Ω from StrategyDao based on tax band TB1 for current and TB2 for long term mean.
• Asset style, sector, region exposures: from economic database through SecurityDao.
• Asset price: equal to 1 for all assets.
• Lot and wash sale: not used.
• Trading restrictions: none apply.
• Asset classification: not used.
• Sheltered: The vector S is provided by StrategyDao. sheltered(). The sheltered ratio is in the mean pool summary datacube.
• Liquidity requirement: The liquidity vector FLD(p) and liquidity matrix A define this constraint.
[00191] Let h(λ) be the optimal solution for some risk aversion λ. Let h (t) be the uncontrolled weight (i.e. the locked style X3(O .) Let g = p(h(λ) -h : (t)) where p is the full resource value divided by the controlled value (both at time t .) Define
Figure imgf000055_0001
[00192] Then define
Figure imgf000056_0002
[00193] Here ∞nsk is a value from the advisor database. If the risk questionnaire supplies a limit L let τ(λ) = ψ(λ) if is_loss_limit is true and τ(λ) = σc(λ) otherwise. Define
Figure imgf000056_0004
and set z = 0. If the set is empty then pick λc to minimize
and set z = 1. Define
Figure imgf000056_0003
[00194] Get the strategy scaling factors C1 and c2 from the advisor database. Define
Figure imgf000056_0001
[00195] Look up the coordinate tuple (x0 ,yo,xvyl) in the strategic opportunity table
(from the advisor database) and let W1 denote the resulting opportunity value. If there is a risk questionnaire and z = 0 look up the tuple (x0,y0,x2,y2) and denote the result as W1. If instead z = l let w2 be the value associated to the tuple (x2,y2,x2,y2). If there is no risk questionnaire let W2 = W1. [00196] Generate the following datacube:
Pool Opportunity Datacube: Investment opportunity for each pool.
Field Type Contents f family id family id f entity id entity id f pool id pool id f time int sequence time t current_full_opportunity int opportunity W1 for current data current constraint satisfied Boolean true if no risk questionnaire or z = l for current data current constrained opportunity int opportunity W1 for current data long_term_full_opportunity int opportunity W1 for mean data true if no risk questionnaire long_term_constraint_satisfied Boolean or z = 1 for mean data long_term_constrained_opportunity int opportunity W2 for mean data
5.1.3 Strategy Lookup
[00197] Collect the following data for the full opportunity and the constrained opportunity.
1. adjusted investment horizon // (p)
2. initial opportunity W1
3. mean opportunity W2
4. wealth ratio px(p)
5. wealth ratio p2(p)
6. wealth ratio pΛp)
[00198] Use data as a key to retrieve the risk budget σb and consumption budget φb for the current year from the StrategyDao. For pool p , denote the risk budget for the full opportunity as <τλ(p) and for the constrained opportunity as <J2(p) . Use a similar indexing for the consumption budget φ . Output the following datacube:
Pool Strategy Datacube: Strategy for each pool.
Field Type Contents f family id family id f entity id entity id f pool id pool id i horizon float pool level investment horizon H(p) primary_jatio int wealth ratio pλ(p) secondary ratio int wealth ratio p2 (p) tertiary_ratio int wealth ratio p3(p) full risk budget full_risk_budget float for current year σ, (p) full consumption budget full_consumption_budget float for current year φλ{p) constrained risk budget constrained_risk_budget float for current year σ2(p) constrained consumption budget constrained_consumption_budget float for current year φ2(p)
5.1.4 Pool Level Asset Allocation
[00199] Now for these pools p repeat the investment opportunity optimization, but adjust the risk aversion to match the supplied full risk budget. Denote the optimal return by ccx(p) and the optimal holdings by Ji1(P). If the constrained budget is different, then perform the optimization in that case also and denote the return and holdings by a2(p) and H1(P). If they are not different just set a2(p) = ax(p) and It1(P) = H1(P). Let A(p) = aλ(p) - a2(p). [00200] Output the following datacubes:
Pool Properties Datacube: Properties of optimal pool portfolios.
Field Type Contents f family id family id f entity id entity id
f strategy id strategy id f pool id pool id p full_risk float full risk budget <Jx(p) constrained risk budget constrained risk float full return float full return ocx(p) constrained return constrained return float CC2 (P) full return minus return gap float constrained return A(p)
Folio Datacube: Optimal portfolio at the pool level.
Field Type Contents f family id family id f entity id entity id f strategy id strategy id f pool id pool id p f asset id asset id k optimal weight float weight in optimal portfolio \k (p) constrained weight float weight in constrained portfolio
K(P) [00201] Now proceed with the next pool in the iteration over pools.
5.2 Account Level Investment Structure
[00202] Next we determine the investment structure at the account level. For each pool p we have the constrained weights H2(P). We are only concerned with investment assets, so drop the components of the vector corresponding to non-investment assets as determined by
StrategyDao . investment_asset ( ) and denote the result by h(p).
[00203] Recall the claim transfer coefficient Tψ (0) giving the value transferred from s to p as a percentage of the ending value of p. Let
Figure imgf000059_0001
be the contribution from children. Let
Figure imgf000059_0002
be the weight of the direct assets. If this quantity is nonzero then the direct assets should be allocated as
Figure imgf000059_0003
and if xp = 0 then we may stop processing pool p.
[00204] Let L(p,0) be the direct locked investment weight in pool p. Let x be the ratio of direct unlocked value in p to direct value of p , i.e.
Figure imgf000059_0004
[00205] If x = 0 then the allocation vector a(p) for unlocked assets is a(p) = 0.
Otherwise let
Figure imgf000059_0005
Define if i is a sheltered asset ., .
Figure imgf000059_0006
otherwise and set
Figure imgf000060_0004
[00206] Use StrategyDao . sheltered ( ) to determine which assets are sheltered.
[00207] Iterate over the investment accounts i attached to pool p. Let V1 "(0) be the direct unlocked value in the account and let Xk(i) be the locked value of style k in the account. If the account is sheltered let y(i) = d(p) and otherwise let y(ϊ) = a"(p) Set the total value in asset k for account i to
Figure imgf000060_0003
[00208] Let the account value be V1 (0). Define
Figure imgf000060_0002
[00209] Then B is the benchmark for the account. B and B divide this benchmark into locked and unlocked parts.
[00210] Let Vp be the value of pool p and define
for 7 = 1,2
Figure imgf000060_0001
[00211] Output the following datacubes:
Cost of Risk Policy Datacube: Summarizes impact of risk questionnaire. Field Type Contents T family id family id f entity id entity id full_risk float averaged full risk budget σ\ averaged constrained constrained_risk float risk budget σi full_return float averaged full return a,\ Averaged constrained constrained return float return d2 full_return minus return gap float constrained return Δ cost of return gap in dollars of cost ccuumrrency . v investment return per year Λ-
account_summary Datacube: Basic account data.
Field Iy-Ee Contents
"f account id account id n advised Boolean true if advised taxed Boolean true if taxable value currency current portfolio value horizon float investment horizon in years H
current allocation Datacube: Current allocation of accounts.
Field Type Contents ■j" account id account id f asset id asset class id weight per cent Weight in asset class recommended allocation Datacube: Recommended allocation for advised accounts.
Field Type Contents f account id account id i f asset id asset class id k total weight per cent total weight in asset class Bk(i) weight in asset class due to locked weight per cent locked positions Bk(i) total_weight minus free weight per cent locked weight Bk "(j)
[00212] These are the datacubes which pass to portfolio construction. The parameters contained in these datacubes allow construction of efficient portfolios that apply Markowitz or similar approaches. In particular, the risk parameter can be used to select a portfolio along an efficient frontier. Our Dynamic Optimization and Life Planning
[00213] To explain more completely our selection of strategy of construction and risk levels to apply at particular times under particular conditions, we revisit Merton's continuous time stochastic control problem and then specify a discrete version of the problem. The discrete problem leads to an elegant solution.
1. The Continuous Time Stochastic Control Problem
[00214] Here we articulate the general finite horizon continuous time stochastic control problem. We suppose we have a finite time interval I = [0, T] where 0 corresponds to "now" and T represents the terminal time. We suppose there is a state space S which in most cases is a subset of some real vector space and a control space C which is also a subset of some real vector space. There is a "particle" taking positions in S . We denote by x(t) the position of this particle a time t. At each moment t we are allowed to choose a control action c{t) in C. This choice will influence but not entirely determine the movement of the particle over the next instant. Li general, there is a probability distribution P(y, t, x0, C0) which gives the probability that x(t + dt) = y given that x(t) = X0 and that control action c{t) = C0 was taken. Thus P : S x I x S x C —> [0, 1]. We refer to P as the dynamic law governing the particle. In general, we seek functions specifying the control action to be taken. We allow the decision on the control action to depend only on information known up to time t. For the dynamic laws of interest to us, in general the past history of the particle relevant to the control action may be summarized in its current state. Hence we are interested in functions c : I x S — > C where c{t, x0) denotes the control action to be taken at time t given that x(t) = x0. We refer to such a function as a control policy and denote the set of such policies by K. We denote by xc(t, x0) the position at time t of the particle controlled by policy c e K given that the particle started from position x0 at time 0. Then xc(t, X0) is a random variable whose distribution is controlled by the dynamic law.
[00215] We suppose that there is a utility function u : I x S x C → R where u{t, x0, c0) gives the utility of x(t) = x0 given that c(t) = c0. We suppose there is a weight function p : I -» [0, 1] which weights the importance of different time moments. The we define a utility function U : S x K -> R by
Figure imgf000063_0001
where E[ ] is the expectation operator. The optimal stochastic control problem is to find c : S → K such that
Figure imgf000063_0002
for all policies c in K. In other words, given our starting state we seek the control policy which leads to a trajectory on the particle for time [0, T] with the highest expected utility. We define J : S -> R to be given by JXx0) = C7(x0, ec(x0) ). In other words J is the maximum expected utility available starting from x(0) = x0.
[00216] Pick a time t0 in I. A key aspect of the stochastic control problem is that the best policy to follow over I contains the best policy to follow over [t0, T] for the particle that commences motion at x(t0). Accordingly we may define φ : IesS — » C to be the action φ(t0, x0) taken under the optimal policy at -0,time to given that x(t0) = x0. We refer to phi as the optimal policy. Similarly we may define
Figure imgf000063_0003
to be the expected utility over [t0, T] for the particle governed by the optimal policy and commencing motion from x(t0) = x0. In general the functions φ(t, x) and J(t, x) are the key items we seek to solve for.
[00217] By applying suitable regularity conditions we may state the definitions for the optimal policy and expected utility as partial differential equations. For simple but still interesting problems these PDEs are analytically tractable. In general, however, one must resort to numerical techniques for solution. There are two routes to a numerical solution. One is to apply standard numerical techniques to solution of the PDEs. The other is to approximate the continuous time problem by a discrete time problem. Both methods ultimately reduce to solving a family of difference equations on a grid. Under reasonable regularity conditions the solution of the grid problem will converge under grid refinement to the continuous time problem. However convergence tends to be a rather delicate affair numerically. Taking the approach of discretizing the problem better preserves insight about the problem's solution and thus helps one solve the problems of numerical convergence. Accordingly, we shall take that route. 2. The Discrete Time Stochastic Control Problem
[00218] For the discrete time problem we divide the interval I into points t0, t15 ... , tn where t0 = 0 and tn = T. In the simplest case of equal time division we have Del tat = Tin and t± = iAt. More generally we write Del ta t± = t± - U2-1. Similarly, we need to discretize the state space S. Here the usual process is to first pick a bounded subset S2 of S such that the particle is almost surely in this bounded subset at time t± . One then dissects the bounded subset into a finite collection of cells bJ 2 for j in {1, 2, ... , mj One represents each cell by its midpoint s3 x. One considers a particle which is restricted to occupying these points. Its dynamical law takes the form P(tx, s3 2, sk ^1, c) which gives the probability that the particle at time t± was at point s given that at the previous moment ^-1 it was at sk i_1 and control action c was taken. For this to be a dynamical law one has the requirements
and
Figure imgf000064_0001
[00219] For the solution of the discrete problem to converge to the solution of the continuous problem the dynamical law should converge. As long as the discrete dynamical law is a good approximation of the continuous law, however, this convergence will occur. For instance the discrete law might approximate to the cell transition frequencies calculated from the continuous law. Freedom in arranging this approximation is an important route to tractability. At any point in time for the continuous process there is some probability that the particle will escape from the bounding box. However, for the discrete process this cannot be allowed. Thus a final point of specifying the discrete process is a choice of behavior at the boundaries. Popular choices of behavior at the boundary include "sticking" (the article which would have escaped is returned to the boundary), "reflection" (the particle bounces off the boundary) and halting the process. Physical intuition will suggest the proper treatment. For instance conservation of energy might suggest stickiness, while conservation of momentum suggests reflection and breakdown of the model corresponds to halting. As long as the bounding box in state space is chosen sufficiently large, arriving at the boundary will be a low probability event and the choice of boundary behavior will not be critical to convergence. Choosing a boundary behavior consistent with the underlying continuous time model, however, will minimize the injection of numerical noise into the discrete solution and thus lead to better behaved solutions. Again this is a point where physical insight may be brought to bear. [00220] To summarize the data of the discrete problem, we have
1. n + 1 time points {t0, tλ, ... , tn}
2. A grid of space points {sJ k | 0 < j ≤ mk, 0 ≤ k ≤ n}
3. A control space C
4. A probability law P{i, S3 1, S^-1, c) for 0 ≤ i ≤ n , 0 ≤ j ≤ Ri1 , 0 ≤ k ≤ Ta1-1 and c in C.
5. A utility function u{i, sJ 2, c) for 0 < i < n and 0 ≤ j ≤ m±
6. An expected utility function
Figure imgf000065_0001
[00221] We have not said much about the control space C. At this point we will posit that at time t2 the control space is a prism in some real vector space, i.e.
Figure imgf000065_0002
for bounding vectors x and y possibly depending on time. Here the inequality operators are taken component wise, so X1 < c means X1 J ≤ c0 for all j. We will also slightly generalize the time weighting function p by allowing it to depend on the initial time as well as the actual time.
[00222] We will represent the data of the problem by the data structure
class ControlProbleπi { public: virtual ~ControlProblem( ) {} float horizon (); // time horizon int space dim() ; // dimension of the state space int control dim ( ) ; // dimension of the control space int time_slices ( ) ; // returns the number of discrete time points int states (int i) ; // returns number of space states at time i
Vector<float> lower^control (int i) ; // lower bound on control at time i Vector<float> upper_control (int i) ; // upper bound on control at time i Vector<float> point (i,j); // returns co-ordinates of point in state space float transition (int i, int j, int k, Vector<float> c) ;
// return probability given control c float utility (i, j , Vector<float> c) ;
// utility of being in state j at time float weight (i, j );
// weight function at time j given problem };
[00223] This is an abstract base class from which specific problems will be derived.
[00224] The solution of the problem consists of the optimal policy and the expected utility. We represent it by the data structure
class ControlSolution { private: int _time; // number of time points Vector<int> _state; // number of states at each time Matrix<Vector<float> > _control; // the controls indexed by (time, state)
Matrix<float> _utility; // utility indexed by (time, state) assert_valid (int time, int state); // checks that the (time, state) combination is public:
ControlProblem (int no_times, Vector<int> no_states) {_Jzime=no times; state=virtual -ControlProblem ( ) {} void store (int time, int state, Vector<float> control, float utility); //
Vector<float> control (int i, int j); // optimal control action at time i given occupancy float utility (int i, int j);
// expected utility given being in state j at };
// The following class is used to report index violations class InvalidStateException : public Exception
{ private: int _time, _state; public:
InvalidStateException (int time, int state);
-InvalidStateException ( ) ; std: : string message () const; };
3. The Bellman Algorithm
[00225] Despite its apparent complexity, the optimal control problem is amenable to a solution technique known as the Bellman algorithm. This algorithm remarks that the optimal solution over the interval [t - 1, T] when restricted to the interval [t, T] is identical to the solution of the control problem over [t, T]. Hence we may start with t=T and then move progressively through T - I, T - 2, ..., 0 to build up a solution to the problem starting at time 0. What is required to implement this algorithm is a method of solving the single time period problem of finding the optimal control at time t supposing the problem already solved for all subsequent times. We refer to this as the sub problem. To be specific, we suppose the following has already been found:
1. the optimal control φ(i, j) to be applied at time i and state j for all times i > t and states valid at such times
2. the expected utility J{i, j) resulting from following the optimal policy given that we started at time i and in state j
3. The sub problem at time t is for each state k to find that control c{k) such that xt ≤ c(k) ≤ yt
4. We maximize
Figure imgf000067_0001
5. where the sum is over all states defined at time t + 1. In this case we have
Figure imgf000067_0002
[00226] In computer terms, a sub problem solver will be supposed to derive from the following abstract base class:
class ControlSubproblemSolver
{ public: virtual -ControlSubproblemSolver ( ) { } void set problem (ControlProblem p) ;
// supply problem void set___known (int n, const ControlSolution &known);
// supply known void calculate (int k, Vector<float> &control, float &utility)
// for time };
[00227] The Bellman algorithm is then encapsulated in the class:
class BellmanSolver { private:
ControlProblem &_p;
ControlSubproblemSolver &_solver;
ControlSolution solution; public: BellmanSolver (ControlProblem &p, ControlSubproblemSolver &s)
-BellmanSolver () {} void calculate ( ) ; ControlSoution solution () { return solution; }
} ;
4. The Asset-Liability Management Problem
[00228] We now specialize to a specific control problem and provide the metric formulation that makes the problem solvable with reasonable computation. We consider an investor managing a fund so as to meet a schedule of liability payments. His controls include the investment risk borne, the investment costs incurred and the allocation of funds to liability payment. The utility of a policy is measured by its success in funding the liabilities. [00229] The state space for this problem will be contained in R3. In the state vector s(t) we take so(t) to denote the investor's wealth at time t. We take S1It) to represent the investor's basis as a fraction of wealth. We take s2(t) to represent the CPI index at t normalized so S2(O) = 1. Often we use the more intuitive notation of Wit) = so(t), B(t) = S1(U) and lit) = s2(t) for the wealth, basis fraction and inflation index respectively. Note that 0 < w{t) , 0 < B{t) < 1 and 0 < i(t) for all t. Only W(t) and lit) are potentially unbounded and for fixed T it is easy to pick bounds W and I such that Wit) ≤ W and lit) ≤ I for all t e [0, T] with high probability. Thus the state space is effectively a rectangular prism in R3. [00230] The control space will also be a subset of R3. In the control vector φ{t) we take φoit) to denote the investor's funding of liabilities at time t . We take φx (t) to denote the fraction ofturnover at time t and we take φ3it) to be the investor's investment risk at time t. Both φoit) and φλit) will be denoted as fractions of W(t) and thus they lie in [0, 1] for all t. In fact one has 0 < φ0 it) + φλit) < 1. In general φ3it) e [ait), bit) ] for suitable functions ait) and bit) which describe the investment opportunity available at time t.
[00231] Next we consider the liabilities. We suppose a liability schedule X1 it) of the form
Figure imgf000068_0001
where i = 0, 1, 2 and X1 it) ≤ x1+1(t) for all t. The levels of i correspond to priority classes on spending with i = 0 corresponding to essential spending, i = 1 representing less essential and i = 2 representing least essential spending. Let e(t) = φoit)Wit) be the expenditure on liabilities at time t. Suppose xo(t) < X1 it) set
Figure imgf000069_0004
[00232] If xo(t) = X1 (t) < x2 (t)0 then let
Figure imgf000069_0001
[00233] If x0 (t) = X1(U) = x2 (t) > 0 then let
Figure imgf000069_0002
[00234] If xo(t) = X1 (t) = x2 (t) = O then let tilde e = 1. We define the utility of this spending as
Figure imgf000069_0005
[00235] This utility function describes a spending policy which must exceed xo(t) but where there is ever decreasing utility to increased spending. The choice of utility function is rather arbitrary and is motivated primarily by the solutions to which it gives rise. The utility function of a policy is given by
Figure imgf000069_0006
t
[00236] In other words we take the time weighting function to be identically one. This implies there is no benefit to shifting spending between periods.
[00237] Next we derive the dynamics. Let B{t) = min (B(t), 1) ) and let g denote the capital gain tax rate. At time t turnover φλ(t) occurs. This results in trade volume fa[t)W(t) and a gain tax of g(l - B{t) )φ1{t)W{t). In addition basis is reduced to (1 - φt (t) )B{t)W{t) and a payout of φow{t) occurs. After tax and payout are complete the remaining wealth is
Figure imgf000069_0003
[00238] In addition we are left with net proceeds of
Figure imgf000070_0003
to reinvest and thus the new basis is
Figure imgf000070_0004
[00239] Suppose we earn a return rit) over the next period. Then
Figure imgf000070_0001
and
Figure imgf000070_0005
[00240] Note the requirement that
Figure imgf000070_0006
. This observation motivates the introduction of
Figure imgf000070_0002
and then the constraint takes the form φ0 e [0, 1] which is a simpler form to work with.
Some Particular Embodiments
[00241] The present invention includes a system that interacts closely with hardware elements and a method executed by the system. The system and method can be viewed from the perspective of an overall system, a server that generates strategy recommendations, or a user interacting with the system. The invention may be embodied in an article of manufacture such as media impressed with programs or logic that generate strategy recommendations. Generation of strategy recommendations generally can be extended to simulation of outcomes resulting from following the strategy recommendations.
SOLAR CAR
[00242] One embodiment disclosed is a planning server 714 for selecting at least immediate control actions during a solar car race and preferably establishing a control action policy. By control action policy, we mean an array of control actions to take when the solar car finds itself in a particular state, such as a combination of battery charge, position on the course and immediately available solar power (which depends on uncertain weather conditions and time of day.) The position on the course may be subdivided into equal length segments or into segments with similar slopes. The subdivision can further subdivide a segment based on a maximum distance or time of transit. With sufficient computing resources, the segments could be subdivided 100 meter increments or less. The planning server has access to one or more repositories of electronic data that include (a) current resource information, (b) future goal information, (c) performance opportunity information and (d) resource replenishment risk information (712 and 713). The current resource information includes at least battery charge level. The future goal information includes at least course information and minimum battery charge levels. Performance opportunity information includes how power consumption converts into distance travelled over time. The performance opportunity takes into account variations in slope and, optionally, may take into account head winds. The resource replenishment risk information reflects the likely solar power, as impacted by time of day, weather and course (such as shaded areas.) The resource replenishment separately accounts for times when the solar car is on course and in its aerodynamically efficient configuration, and times when the solar car is parked with its solar array oriented directly toward the sun.
[00243] The planning server includes an alternative resource holding generating module, problem initiation module and control action recommendation module. The alternative resource holding generating module accesses future goal information, performance opportunity information and resource replenishment risk information and determines risk and return metrics of alternative resource holdings over a predetermined planning horizon. Risk metrics may relate remaining battery charge to expected weather risks that impact resource replenishment (solar power) and performance (expected head winds) at various points along the course. The risk and reward metrics may be pre-computed to allow simulations to run more efficiently. [00244] The planning server further includes a problem initiation module 822 that accesses at least some of the data compilations. This module establishes a search grid that spans and subdivides dimensions of the problem. It effectively converts a continuous problem into a discrete problem that is amenable to numerical algorithms. Alternatively, some dimensions of the search grid may be continuous. The search grid dimensions may include the time horizon of analysis, a range of resource replenishment risk levels, potential resource levels and a range of consumption levels. Preferably, the potential resource levels include a resource cushion level at the end of the planning horizon or at until close to the finish line, when expected weather conditions are virtually certainty. Information in the data compilations, some of which may be hard coded into the system, can be used to generate the search grid, optionally subject to revision by a user. The problem initiation module outputs the search grid. The output may be an object stored in memory or persisted to a nonvolatile memory. It may be a handful of parameters passed to another module.
[00245] The control action recommendation module 823 accesses the search grid generated by the problem initiation module, the risk and return metrics generated by alternative resource holding generating module and the data compilations. The control action recommendation module performs an evaluation over the time horizon and recommends control actions that can be followed by advisers or automatically implemented by other modules. For particular times within the time horizon and for particular resource values, the control action recommendation module evaluates control actions that select a consumption level and a risk level. The risk level may be selected from a range of available risk levels. [00246] Evaluation of the control actions at least combines an immediate utility resulting from consuming power (and going fast) and a long-term expected utility of results achieved by following a particular set of control actions. The immediate utility relates to a particular segment of the search grid, typically a kilometer or less. The long-term expected utility of a particular result expresses the utility from that point forward to the end of the time horizon. That is, the long-term expected utility is a summation from a particular segment to the end of the time horizon. Preferably, calculations proceed from the end of the time horizon backwards, so that long-term expected utility values of later periods are available when calculating expected utility values of control actions taken in earlier periods. Long-term utility values are expressed as expected utility values that result from particular control actions. This involves applying a probability distribution function to determine likely future outcomes. In one embodiment, the utility of failing at any time through the time horizon of running out of power is prohibitive. A logarithmic utility function can be scaled so that running out of power has an infinitely negative utility. Continuous functions that have very steep slopes near the point of barely being able to move the solar car also make it prohibitive to fail to satisfy the goals. A rule that assigns an infinitely negative utility to missing an essential goal has the same effect, regardless of the shape of utility function elsewhere. By prohibitive, we mean that encountering more than a remote probability a of missing an essential goal at any time during the time horizon, where a ≤ 0.05, or preferably < 0.01, or more preferably < 0.001, causes the utility over the time horizon to be lower or less favorable than the utility of courses of action that do not have the threshold probability of missing any essential goal. [00247] The control action recommendation module outputs at least recommended control actions for the beginning period of the analysis. That is, control actions to be followed immediately may result from the analysis. These control actions may include at least a consumption level and a portfolio risk level. Optionally, the control actions may be linked to further modules that refine control actions in terms of particular assets. The control actions also may be linked to modules that automatically implement the control actions. [00248] A further aspect of this invention is a control strategy evaluation system that includes the planning server. In this embodiment, the planning server control recommendation module outputs a control strategy data cube that includes control strategies for selection of consumption levels and selection of portfolio risks that span dimensions of the search grid. The control strategy data cube would include recommended consumption and risk levels spanning at least the time horizon and resource values found in the search grid. The control strategy evaluation system would further include a simulation server 715 that accesses the control strategy data cube and conducts at least 50 probabilistic simulation runs over the time horizon. The simulation runs would apply the control strategies to the simulated intermediate economic events and report the distribution of simulated outcomes. The simulation server might perform at least 100 probabilistic simulation runs, or preferably 500 probabilistic simulation runs, or more preferably 1000 probabilistic simulation runs in order to generate a statistically significant distribution of outcomes.
PORTFOLIO PLANNING
[00249] One embodiment disclosed is a planning server 714 for selecting at least immediate control actions in a multi-year planning setting. The years in the planning setting may be treated as years or subdivided into months or weeks. With sufficient computing resources, the periods could be subdivided into weeks or days. The planning server has access to one or more repositories of electronic data that include portfolio information, goal information and market information (712 and 713). The portfolio information includes pluralities of investment and non- investment resources available over multiple time periods. The goal information includes pluralities of one time and repeating expenditure goals and at least two levels of priority that span essential and nonessential expenditure goals. Preferably, the priority levels include essential, target and aspirational goals. Additional levels of goals or even selection of goals on a continuum can be used to express the goal information. Individual goals, such as payment of living expenses, may be broken into parts and represented partially as an essential goal and partially in another priority level. Market information includes estimates of available investment opportunities, risks, rewards and covariance ratios among assets. The covariance ratios allow calculation of an overall statistical portfolio of assets with mixed characteristics. The information to which the planning server has access can be treated as part of the environment in which the technology disclosed has practical application. Alternatively, the servers that host portfolio, goal and market information may be combined with the planning server to describe an overall system. [00250] The planning server includes an alternative portfolio generating module, problem initiation module and control action recommendation module. The alternative portfolio generating module accesses to the data compilations and calculates alternative diversified risk portfolios with a range of available risk levels for particular times within a time horizon. The available risk levels may be expressed in terms of variability of returns (such as statistical variance) or value-at-risk. The alternative portfolios may be selected applying a variation on Markowitz's classical method or some equivalent approach. Those portfolios that produce the greatest return for a given degree of risk can be described as being on the efficient frontier. Optionally, the alternative diversified portfolio calculation can take into account the covariance ratios between investment and non-investment resources. As the mix of investment and non- investment resources changes, preferences among alternative portfolios may change. The calculation of alternative diversified portfolios may take into account both assets that can be liquidated and redeployed and assets that are locked in position. The calculation also may take into account initial conditions of portfolio risk level and embedded gain. The initial portfolio risk level indicates the extent of turnover required to reach an alternative risk level. The embedded gain indicates the tax likely to be realized due to a particular extent of turnover. [00251] The planning server alternative portfolio generating module does not extend to selecting assets to hold or liquidate. Additional modules that deal with particular assets may be combined with the portfolio generating module.
[00252] By interacting with the data compilations and considering alternative starting conditions of risk level and embedded gain, the alternative portfolio generating module 821 persists to storage a set of portfolios represented by risk and return curves that can be used in evaluation and selection of alternative control actions. Optionally, the starting conditions also may include standardized portfolio assets that correspond to non-investment or locked investment portions of a portfolio.
[00253] The planning server further includes a problem initiation module 822 that accesses at least some of the data compilations. This module establishes a search grid that spans and subdivides dimensions of the problem. It effectively converts a continuous problem into a discrete problem that is amenable to numerical algorithms. Alternatively, some dimensions of the search grid may be continuous. The search grid dimensions may include the time horizon of analysis, the range of available risk levels, potential resource levels and a range of consumption levels that meet at least the essential goals. Information in the data compilations, some of which may be hard coded into the system, can be used to generate the search grid, optionally subject to revision by a user. The potential resource values optionally may include both investment and non-investment resources, especially when non-investment resources are available to satisfy goals. For instance, salaries and Social Security benefits may be included in the resources. The consumption level optionally may be expressed as a ratio of resource or combined resource values. The problem initiation module outputs the search grid. The output may be an object stored in memory or persisted to a nonvolatile memory. It may be a handful of parameters passed to another module.
[00254] The control action recommendation module 823 accesses the search grid generated by the problem initiation module, the risk and return functions generated by the alternative portfolio generating module and the data compilations. The control action recommendation module performs an evaluation over the time horizon and recommends control actions that can be followed by advisers or automatically implemented by other modules. For particular times within the time horizon and for particular resource values or wealth, the control action recommendation module evaluates control actions that select a consumption level and a risk level. The consumption level may be a ratio selected from a range of ratios. The risk level may be selected from a range of available risk levels.
[00255] Evaluation of the control actions at least combines an immediate utility resulting from consumption and a long-term expected utility of results achieved by following a particular set of control actions. The immediate utility relates to a particular time, typically the current period of analysis or the next period. The long-term expected utility of a particular result expresses the utility from that point forward to the end of the time horizon. That is, the long-term expected utility is a summation from a particular period to the end of the time horizon. Discounting future utility is optional. Preferably, calculations proceed from the end of the time horizon backwards, so that long-term expected utility values of later periods are available when calculating expected utility values of control actions taken in earlier periods. Long-term utility values are expressed as expected utility values that result from particular control actions. This involves applying a probability distribution function to determine likely future outcomes. A level of risk and reward in a portfolio is expressed as an expected gain subject to variance. The gain and variance parameters are typically applied to a normal distribution of likely outcomes. In the discrete case, a discrete variation on the normal distribution is applied, optionally ignoring tails of the distribution beyond a predetermined threshold. In one embodiment, the utility of failing at any time through the time horizon to satisfy the essential expenditure goals is prohibitive. A logarithmic utility function can be scaled so that not meeting or barely meeting the funding level required for essential goals has an infinitely negative utility. Continuous functions that have very steep slopes near the point of barely funding essential goals also make it prohibitive to fail to satisfy the goals. A rule that assigns an infinitely negative utility to missing an essential goal has the same effect, regardless of the shape of utility function elsewhere. By prohibitive, we mean that encountering more than a remote probability a of missing an essential goal at any time during the time horizon, where a < 0.05, or preferably < 0.01, or more preferably < 0.001, causes the utility over the time horizon to be lower or less favorable than the utility of courses of action that do not have the threshold probability of missing any essential goal. [00256] The control action recommendation module outputs at least recommended control actions for the beginning period of the analysis. That is, control actions to be followed immediately may result from the analysis. These control actions may include at least a consumption level and a portfolio risk level. Optionally, the control actions may be linked to further modules that refine control actions in terms of particular assets. The control actions also may be linked to modules that automatically implement the control actions. [00257] A further aspect of this invention is a control strategy evaluation system that includes the planning server. In this embodiment, the planning server control recommendation module outputs a control strategy data cube that includes control strategies for selection of consumption levels and selection of portfolio risks that span dimensions of the search grid. The control strategy data cube would include recommended consumption and risk levels spanning at least the time horizon and resource values found in the search grid. The control strategy evaluation system would further include a simulation server 715 that accesses the control strategy data cube and conducts at least 50 probabilistic simulation runs over the time horizon. The simulation runs would apply the control strategies to the simulated intermediate economic events and report the distribution of simulated outcomes. The simulation server might perform at least 100 probabilistic simulation runs, or preferably 500 probabilistic simulation runs, or more preferably 1000 probabilistic simulation runs in order to generate a statistically significant distribution of outcomes.
[00258] Another embodiment disclosed is a computer implemented method for selecting at least immediate control actions in a multi-year planning setting. The years in the planning setting may be treated as years subdivided into months or weeks. With sufficient computing resources, the periods could be subdivided into weeks or days. The method includes accessing electronic data compilations of portfolio information, goal information and market information. The portfolio information includes pluralities of investment and non-investment resources available over multiple time periods. The goal information includes pluralities at one time and repeating expenditure goals, and at least two levels or classes of priority that span the essential and nonessential expenditure goals. Preferably, the priority levels include essential, target and aspirational goals. Additional goals or even selection of goals on a continuum can be used to express the goal information. Individual goals, such as payment of living expenses, may be broken into parts and represented partially as an essential goal and partially in another priority level or class. Market information includes estimates available, investment opportunities, risks, rewards and covariance ratios among assets. The covariance ratios allow calculation of an overall statistical portfolio of assets with mixed characteristics. The information on which the method operates should be treated as part of the environment in which the method has practical application. Alternatively, in another embodiment, aspects of compiling the data may become part of the method.
[00259] The method begins with accessing the data compilations and calculating alternative diversified risk portfolios with a range of available risk levels for particular times within a time horizon. The available risk levels may be expressed in terms of variability of returns (such as statistical variance) or value-at-risk. When the value-at-risk approach is taken, the value-at-risk level may be expressed as a percentage of resources at risk, given either a predetermined probability or predetermined confidence level and a predetermined at-risk period. The alternative portfolios may be selected using a variation on Markowitz's classical method or some equivalent approach. Those portfolios that produce the greatest return for a given degree of risk can be described as being on the efficient frontier. Optionally, the alternative diversified portfolio calculation can take into account the covariance ratios between investment and non- investment resources. As the mix of investment and non-investment resources changes, preferences among alternative portfolios may change. The calculation of alternative diversified portfolios may take into account both assets that can be liquidated and redeployed and assets that are locked in position. The calculation also may take into account initial conditions of portfolio risk level and embedded gain. The initial portfolio risk level indicates the extent of turnover required to reach an alternative risk level. The embedded gain indicates the tax liability to be realized due to a particular extent of turnover.
[00260] The method continues with assigning a search grid spanning on subdividing dimensions of the problem. It effectively converts a continuous problem into a discrete problem that is amenable to numerical algorithms. The search demand grid dimensions may include the time horizon of analysis, the range of available risk levels, potential resource levels and a range of consumption levels that meet at least essential goals. Information in the data compilations, some of which may be hard coded into a program implementing the method, can be used to generate the search grid, optionally subject to revision by a user. Potential resource values optionally may include both investment and non-investment resources, especially when non- investment resources are available to satisfy goals. For instance, salaries and Social Security benefits may be included in the resources. The consumption level optionally may be expressed as a ratio of resource or combined resource values. The search grid is output for use by the next computer implemented module. The output may be an object stored in memory or persisted to a nonvolatile memory. It may be a handful of parameters passed to another module. [00261] The method further continues with evaluating control actions for particular times within the time horizon and particular combined resource values. The control actions evaluated include it least selection of a consumption level and selection of a risk level. The consumption level may be a ratio selected from a range of ratios. Selected control actions can be followed by advisers or automatically implemented by other modules.
[00262] Evaluating the control actions at least combines an immediate utility of consumption resulting from chosen control actions and long-term expected utility of results probabilistically expected to be achieved as a consequence of the chosen control actions. The immediate utility relates to a particular time, typically the current period of analysis or the next period. The long-term expected utility of a particular result expresses utility from that point forward to the end of the time horizon. That is, long-term expected utility is a summation from a particular period to the end of the time horizon. Discounting future utility is optional. Preferably, calculations proceed from the end of the time horizon backwards, so that long-term expected utility values of later periods are available when calculating expected utility values of control actions taken in earlier periods. Long-term utility values are expressed as expected utility values that result from particular control actions. This involves applying a probability distribution function to determine likely future outcomes. The level of risk and reward in a diversified risk portfolio can be expressed as the expected gain subject to a variance. The gain and variance parameters are typically applied to a normal distribution of likely outcomes. In the discrete case, a discrete variation on the normal distribution or another selected distribution is applied. In one embodiment, the utility of failing, with more than a remote probability, at any time through the time horizon to satisfy the essential expenditure goals is prohibitive. A logarithmic utility function can be scaled so that not meeting or barely meeting the funding level required for essential goals has been infinitely negative utility. Continuous functions that have very steep slopes near the point of barely funding essential goals also make it prohibitive to miss the goals. A rule that assigns an infinitely negative utility to missing an essential goal has the same effect, regardless of the shape of utility function. By prohibitive, we mean that encountering more than a remote probability a of missing an essential goal at any time during the time horizon, where a ≤ 0.05, or preferably < 0.01 or more preferably < 0.001, causes the utility over the time horizon to be lower or less favorable than the utility of courses of action that do not have the threshold risk of missing any essential goal.
[00263] The method also includes outputting at least beginning period control actions that select a consumption level and a portfolio risk level corresponding to results of the evaluating. These control actions may include at least a consumption level and a portfolio risk level. Optionally, the control actions may be linked to further modules that refine control actions in terms of particular assets. The call control actions also may be linked to modules that automatically implement the control actions.
[00264] As a further aspect of this method, resources and expenditure goals may be characterized in current dollars or in constant purchasing power. When resources and claims are characterized in this way, a range of inflation factors may be included in the search grid. A probability distribution function may be established for changes in inflation rates. Or, sensitivity analysis may be provided regarding how various inflation rates impact the outcome. Depending on the embodiment, the consumption level stated as a percentage of resources, may be a percentage of investment resources, unlocked investment resources, or combined investment and non-investment resources. The non-investment resources may include at least a home, and employment income (in some time period) and a Social Security entitlement. [00265] A further aspect of the method addresses taxable events. To practice this aspect of the method, the portfolio information includes embedded gain information. The method is extended by evaluating generation of taxable gain due to portfolio activities such as rebalancing and liquidating assets and tax liability resulting from taking the control actions. Both the consumption and the risk level control actions can produce tax liability. Consumption typically requires generation of cash. Adjusting the risk level for a portfolio typically requires rebalancing. [00266] In some embodiments, non-investment resources can be sold to generate consumable resources. The method may be extended by setting a time span in which a particular non-investment resource can be sold and taking into account tax consequences of selling the non-investment resource. Sometimes, sale of the non-investment resource may be coupled to the purchase of a replacement non-investment resource. For instance, a time for selling the family home may be paired with the purchase of a replacement home. [00267] One utility function that may be used is a logarithmic utility function scaled to set a negatively infinite utility of exactly satisfying or of failing to satisfy the essential goals in a particular time period. Other potential utility functions are mentioned above. [00268] An alternative utility function applies a rule whereby control action that produces a probability above a predetermined threshold of failing to satisfy the essential goals eliminated from consideration. This rule can be combined with a variety of utility functions in consumption ranges that satisfy the essential goals.
[00269] The method may be further extended by outputting a control strategy data cube including control strategies for selection of consumption and portfolio risk levels. The control strategy data cube spans the time horizon and the resource or combined resource values of the search grid.
[00270] A control strategy data cube may be consumed by a simulation engine that follows the control strategies in the data cube and conducts at least 50 simulation runs over the time horizon to distribute to generate a distribution of outcomes. The simulation engine reports the distribution of outcomes.
[00271] Another embodiment is a method for generating a recommended control action policy in a multi-year planning setting, which control policy cannot realistically be determined by a series of mental steps, beginning with electronic data compilations of current resource information, future goal information and market information. This method embodiment can be combined with the features and aspects of methods and servers described above, which we do not repeat here, but incoroporate by reference. The current resource information is for an investor and includes inputs describing investments, human capital and housing resources. The future goal information for the investor includes at least goals for repeating and one-time expenses, for date of retirement and whether to hold or sell housing resources. This goal information categorizes the goals at least is essential or nonessential. The market information includes estimates of available investment opportunities, risks, rewards and covariance ratios. The method begins with electronically calculating returns from alternative diversified portfolios that include investment resources, human capital and housing resources. Calculating these returns identifies preferred portfolio mixes and returns an a range of risk-taking levels. The returns on human capital and housing resources in these alternative diversified portfolios accommodate and satisfy goals for retirement age and for holding are selling housing resources, set by the investor. The method further includes setting up a computer-solvable problem, including assigning a search grid spanning and subdividing several dimensions. The dimensions include time horizon, potential resource values for the investor's portfolio, a range of spending levels and a range of risk-taking levels. The range of spending levels at least satisfies essential goals and may then be applied to satisfy investor's nonessential goals. The method proceeds by working backwards through the time horizon to generate a control action policy. It uses a computer to evaluate potential control actions for particular times and resource values within the search grid. It selects recommended control actions for the particular times and resource values. These control actions set spending and risk-taking levels for the particular times. The spending and risk-taking levels at particular times and resource values are combined into a control action policy. Evaluating potential control actions includes calculating a utility of spending and risk- taking levels. A utility at a specific time and resource value for control actions of spending and risk-taking levels combines at least the utility in the specific time of the spending and an expected future utility through the end of the time horizon of future spending and risk-taking levels. The utility calculation recognizes a greater utility of satisfying the essential goals than satisfying the nonessential goals. The method outputs at least part of the control action policy for the time horizon and the potential resource values, including recommendations for the spending in risk-taking levels. A further aspect of this method may be that the utility in the specific time of spending less than needed to satisfy essential goals is essentially prohibitive. [00272] Yet a further embodiment is a planning server 714 for selecting at least immediate control actions in a multiyear planning and setting. This server embodiment can be combined with the features and aspects of servers described above, which we do not repeat here, but incoroporate by reference. The planning server has access to one or more repositories of electronic data include current resource information, future goal information and market information. These types of information are generally as described in the preceding method embodiment. The planning server includes an alternative portfolio generating module, a problem initiation module, and a control action recommendation module. The alternative portfolio generating module accesses the data and calculates returns from alternative diversified portfolios that include investment resources, human capital and housing levels. The alternative portfolio generating module identifies preferred portfolio mixes and returns across a range of risk-taking levels. The returns, if any, on the human capital and housing resources in the alternative portfolios can be applied to satisfy goals set for retirement age and for holding are selling housing resources, as dictated by the investor. The problem initiation module accesses the data and establishes a search grid spanning and subdividing several parameters. The parameters include a time horizon, potential resource values for the investor's portfolio, a range of spending levels as described above, and the range of risk-taking levels. The control action recommendation module accesses the search grid, the risks and returns for alternative diversified portfolios and the utility functions. It evaluates potential control actions and selects a control action policy for setting the consumption and the risk levels based on utility of the series of potential control actions. The control action recommendation module works backwards through the time horizon. It uses a computer to evaluate potential control actions for particular times and resource values within the search grid. It selects recommended control actions for the particular times and resource values. The control actions include recommendations for setting spending and risk-taking levels for particular combinations of time and resource level. The control action recommendation module compliance recommended control actions into a control action policy. When evaluating utility at a specific time and resource value, the control action recommendation module combines at least the utility in the specific time of the spending and a future expected utility to the end of the time horizon of future spending in risk-taking levels. The utility calculation recognizes a greater utility for satisfying the essential goals than for satisfying the nonessential goals. The control action recommendation module outputs at least part of the control action policy for the time horizon and the potential resource values, including recommendations for the spending and the risk-taking levels.
[00273] A further aspect of the method includes, prior to evaluating the control actions, constructing a resources and claims analysis and qualifying the goals or at least the essential goals is likely to be satisfied by the resources available. In addition to balancing total resources and claims, the problem to be solved may be qualified as feasible by constructing a cash flow analysis and comparing the timing of the claims to the timing of resources available. [00274] While the present invention is disclosed by reference to the preferred embodiments and examples detailed above, it is understood that these examples are intended in an illustrative rather than in a limiting sense. Computer-assisted processing is implicated in the described embodiments. It is contemplated that modifications and combinations will readily occur to those skilled in the art, which modifications and combinations will be within the spirit of the invention and the scope of the following claims. [00275] We claim as follows:

Claims

CLAIMS 1. A computer-implemented method for generating a recommended control action policy in a multi-year planning setting, which control policy cannot realistically be determined by a series of mental steps, beginning with electronic data compilations of (a) current resource information for an investor, including inputs describing investments, human capital and housing resources; (b) future goal information for the investor, including goals for repeating and one-time expenses, for date of retirement and whether to hold or sell housing resources, the goal information categorizing the goals at least as essential or non-essential; and (c) market information, including estimates of available investment opportunities, risks, rewards and covariance ratios, the method including: electronically calculating returns from alternative diversified portfolios that include investment resources, human capital and housing resources, thereby identifying preferred portfolio mixes and returns at a range of risk taking levels; wherein the returns, if any, on the human capital and the housing resources satisfy goals set by an investor for retirement age and for holding or selling the housing resources; setting up a computer-solvable problem, including assigning a search grid spanning and subdividing at least a time horizon, potential resource values for the investor's portfolio, a range of spending levels that satisfy essential goals of the investor and are then applied to satisfying the investor's non-essential goals, and the range of risk taking levels; and working backwards through the time horizon, using a computer to evaluate potential control actions for particular times and resource values within the search grid, selecting recommended control actions for the particular times and resource values, the control actions setting spending and risk taking levels for the particular times, and combining the control actions into a control action policy; wherein using the computer to evaluate the potential control actions for the particular times and resource values includes calculating a utility of spending and risk taking levels, such that the utility at a specific time and resource value for the spending and risk taking levels combines at least a utility in the specific time of the spending and a future expected utility through the end of the time horizon of future spending and risk taking levels; and such that the utility calculation recognizes a greater utility of satisfying the essential goals than of satisfying the non-essential goals; and outputting at least part of the control action policy for the time horizon and the potential resource values, including recommendations for the spending and the risk taking levels.
2. The method of claim 1, wherein the utility in the specific time of the spending is essentially prohibitive of a spending level that fails to satisfy the essential goals.
3. A computer implemented control method for selecting control actions in a multi-period setting, beginning with data resources including (a) current resource information, (b) future goal information, (c) performance opportunity information and (d) resource replenishment risk information, the method including: determining risk and return metrics of alternative resource holdings over a predetermined planning horizon; assigning a search grid spanning and subdividing at least the planning horizon, a range of resource replenishment risk levels, potential resource levels, including a potential resource cushion level at an end of the planning horizon, and a range of consumption; for at least part of the search grid, evaluating potential control actions and selecting a control action policy for setting the consumption levels; wherein the evaluating includes calculating a utility of the series of the potential control actions, where the utility at least combines an immediate utility of consumption, given the performance opportunity information, during a particular interval and a future expected utility through the planning horizon of results probabilistically expected to be achieved as a consequence of taking the potential control actions, and the immediate utility of encountering more than a remote probability of failing at any time through the planning horizon to satisfy an applicable goal is prohibitive; and outputting the control action policy that includes the consumption levels and the corresponding resource replenishment risk information.
4. A computer implemented method for recommending a control action policy in a multi- year planning setting, beginning with electronic data compilations of (a) current resource information, including investment and non-investment resources; (b) future goal information, including goals for repeating and one-time expenses, for savings and for control of the non- investment resources, the goal information categorizing the goals at least as essential or non- essential; and (c) market information, including estimates of available investment opportunities, risks, rewards and covariance ratios, the method including: determining risk and return metrics of alternative diversified portfolios of investment and non-investment resources with a range of risk levels, wherein status of the non-investment resources conforms to the goals for control of the non- investment resources; assigning a search grid spanning and subdividing at least a time horizon, the range of risk levels, potential combined resource values for the investment and non-investment resources, including bequests, and a range of consumption to satisfy the essential and non-essential goals; for at least part of the search grid, evaluating potential control actions and selecting a control action policy for setting the consumption and the risk levels; wherein the evaluating includes calculating a utility of the series of the potential control actions, where the utility at least combines an immediate utility of consumption during a particular time and a future expected utility through the time horizon of results probabilistically expected to be achieved as a consequence of taking the potential control actions, such that the utility calculation recognizes different utilities of satisfying the essential and the non-essential goals and the immediate utility of encountering more than a remote probability of failing at any time through the time horizon to satisfy the essential expenditure goals is prohibitive; and outputting the control action policy that includes the consumption and the risk levels.
5. The method of claims 1, 2, or 5, wherein the risk and return metrics of the alternative diversified portfolios take into account the covariance ratios between the investment and non- investment resources and changes in the non-investment resources over times.
6. The method of claims 1, 2, 4 or 5, further including: choosing for the goals whether to express an amount that satisfies a particular goal in constant dollars or current purchasing dollars; and including in the search grid a range of inflation factors.
7. The method of claims 1, 2, 4 or 5, further including: summarizing the alternative diversified portfolios with efficient frontiers; and expressing the risk levels in terms of value-at-risk as a percentage of resources, given a selected probability or confidence level and a holding period.
8. The method of claims 1, 2, 4 or 5, wherein the non-investment resources include at least a home, an employment income and a social security entitlement.
9. The method of claims 1, 2, 4 or 5, wherein the current resource information includes embedded gain for tax purposes of at least some resources, wherein: the search grid to includes a range of embedded gain; and the evaluating includes realizing tax consequences of selling the resource with the embedded gain to satisfy the goals.
10. The method of claim 9, wherein the investment resource with the embedded gain is a home and sale of the home is paired with purchase of a replacement home.
11. The method of claims 1 , 2, 4 or 5, further including outputting a control policy datacube, the control policy datacube spanning the time horizon and combined resource values of the search grid.
12. The method of claim 11 , further including: beginning with the current resources and following the control policy included in the control policy datacube, conducting at least 50 probabilistic simulation runs over the time horizon to generate a distribution of outcomes; and reporting the distribution of outcomes.
13. The method of claims 1, 2, 4 or 5, further including: prior to the evaluating the control actions, constructing a resources and claims analysis and qualifying the goals as likely to be satisfied by the resources available.
14. The method of claim 13, further including: constructing a cash flow analysis and qualifying timing of the goals as feasible, given timing of the resources available.
15. A planning server for selecting at least immediate control actions in a multi-year planning setting, the planning server having access to one or more repositories of electronic data that include (a) current resource information, including investment and non-investment resources, (b) future goal information, including goals for repeating and one-time expenses, for savings and for control of the non-investment resources, the goal information categorizing the goals at least as essential or non-essential, and (c) market information, including estimates of available investment opportunities, risks, rewards and covariance ratios, the planning server including: an alternative portfolio generating module that accesses the data, determines risk and return functions for a range of alternative diversified portfolios of investment and non-investment resources with a range of risk levels across a time horizon, wherein the risk and return functions take into account the covariance ratios between the investment and non-investment resources and status of the non-investment resources conforms to the goals for control of the non-investment resources; a problem initiation module that accesses the data and establishes a search grid spanning and subdividing at least the time horizon, the range of risk levels, potential combined resource values for the investment and non-investment resources, including bequests, and a range of consumption to satisfy the essential and non-essential goals a control action recommendation module that accesses the search grid, the risk and return functions, and utility functions based on the future goal information, evaluates potential control actions and selects a control action policy for setting the consumption and the risk levels based on utility of a series of the potential control actions, wherein the utility at least combines an immediate utility of consumption during a particular time and a future expected utility through the time horizon of results probabilistically expected to be achieved as a consequence of taking the potential control actions, such that calculation of the utility recognizes different utilities of satisfying the essential and the non-essential goals and the immediate utility of encountering more than a remote probability of failing at any time through the time horizon to satisfy the essential expenditure goals is prohibitive; and the control action recommendation module outputs the control action policy that includes the consumption and the risk levels.
16. A control strategy evaluation system including the planning server of claim 15, further including: a lifetime control policy simulation server that accesses the control action policy output by the control action recommendation module and conducts at least 50 probabilistic simulation runs over the time horizon, which simulation runs apply the control action policy to generate a distribution of outcomes, and reports at least the distribution of the outcomes.
17. A planning server for selecting at least immediate control actions in a multi-year planning setting, the planning server having access to one or more repositories of electronic data that include (a) current resource information for an investor, including inputs describing investments, human capital and housing resources, (b) future goal information for the investor, including goals for repeating and one-time expenses, for date of retirement and whether to hold or sell housing resources, the goal information categorizing the goals at least as essential or non-essential; and (c) market information, including estimates of available investment opportunities, risks, rewards and co variance ratios, the planning server including: an alternative portfolio generating module that accesses the data and calculates returns from alternative diversified portfolios that include investment resources, human capital and housing resources, thereby identifying preferred portfolio mixes and returns at a range of risk taking levels; wherein the returns, if any, on the human capital and the housing resources satisfy goals set by an investor for retirement age and for holding or selling the housing resources; a problem initiation module that accesses the data and establishes a search grid spanning and subdividing at least a time horizon, potential resource values for the investor's portfolio, a range of spending levels that satisfy essential goals of the investor and are then applied to satisfying the investor's non-essential goals, the range of risk taking levels; a control action recommendation module that accesses the search grid, the returns from the alterative diversified portfolios at the range of risks, and utility functions, evaluates potential control actions and selects a control action policy for setting the consumption and the risk levels based on utility of a series of the potential control actions, wherein the control action recommendation module works backwards through the time horizon, using a computer to evaluate potential control actions for particular times and resource values within the search grid, selecting recommended control actions for the particular times and resource values, the control actions setting spending and risk taking levels for the particular times, and combining the control actions into a control action policy; such that the utility at a specific time and resource value for the spending and risk taking levels combines at least a utility in the specific time of the spending and a future expected utility through the end of the time horizon of future spending and risk taking levels; and such that the utility calculation recognizes a greater utility of satisfying the essential goals than of satisfying the non-essential goals; and, the control action recommendation module outputs at least part of the control action policy for the time horizon and the potential resource values, including recommendations for the spending and the risk taking levels.
PCT/US2008/079734 2007-10-12 2008-10-13 Stochastic control system and method for multi-period consumption WO2009049294A2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US97976507P 2007-10-12 2007-10-12
US60/979,765 2007-10-12
US12/038,712 US7516095B1 (en) 2007-10-12 2008-02-27 Stochastic control system and method for multi-period consumption
US12/038,712 2008-02-27

Publications (4)

Publication Number Publication Date
WO2009049294A2 true WO2009049294A2 (en) 2009-04-16
WO2009049294A3 WO2009049294A3 (en) 2009-08-06
WO2009049294A4 WO2009049294A4 (en) 2009-10-08
WO2009049294A9 WO2009049294A9 (en) 2010-07-22

Family

ID=40512817

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2008/079734 WO2009049294A2 (en) 2007-10-12 2008-10-13 Stochastic control system and method for multi-period consumption

Country Status (2)

Country Link
US (4) US7516095B1 (en)
WO (1) WO2009049294A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112686551A (en) * 2020-12-31 2021-04-20 北京千方科技股份有限公司 Flight cost index obtaining method and device, electronic equipment and storage medium

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11593722B2 (en) * 2007-12-19 2023-02-28 International Business Machines Corporation Method and structure for risk-based resource planning for configurable products
US8321319B1 (en) * 2008-10-23 2012-11-27 Intuit Inc. Rental property investment calculator
US8645286B2 (en) * 2010-02-23 2014-02-04 Prior Knowledge, Inc. Configurable circuitry for solving stochastic problems
US20110320233A1 (en) 2010-05-30 2011-12-29 Sonian, Inc. Method and system for arbitraging computing resources in a cloud computing environment
US20120310872A1 (en) * 2011-06-02 2012-12-06 Supported Intelligence, LLC System and method for evaluating decision opportunities
US11676090B2 (en) 2011-11-29 2023-06-13 Model N, Inc. Enhanced multi-component object-based design, computation, and evaluation
US8781937B2 (en) 2012-09-04 2014-07-15 Qwema Group, Inc. Optimal portfolio withdrawal during retirement in the presence of longevity risk
US11074643B1 (en) 2012-12-21 2021-07-27 Model N, Inc. Method and systems for efficient product navigation and product configuration
US9466026B2 (en) 2012-12-21 2016-10-11 Model N, Inc. Rule assignments and templating
US10373066B2 (en) 2012-12-21 2019-08-06 Model N. Inc. Simplified product configuration using table-based rules, rule conflict resolution through voting, and efficient model compilation
US8533017B1 (en) * 2013-02-13 2013-09-10 Fmr Llc Succession planning for registered investment advisors
US9672573B2 (en) * 2013-03-15 2017-06-06 Perkins Coie LLP Graphical user interface for facilitating allocation of variable compensation
US8731977B1 (en) * 2013-03-15 2014-05-20 Red Mountain Technologies, LLC System and method for analyzing and using vehicle historical data
CN103870888A (en) * 2014-03-10 2014-06-18 国家电网公司 Load forecasting method for electric vehicle
US20150287141A1 (en) * 2014-04-03 2015-10-08 Edgar Parker, JR. Portfolio optimization by the detection and control of the predictive horizon of included investments.
US20160125545A1 (en) * 2014-05-16 2016-05-05 New York Life Insurance Company System and method for determining lifetime events from data sources
US11037244B1 (en) 2017-03-03 2021-06-15 Wells Fargo Bank, N.A. Computerized portfolio management tool
US11062392B1 (en) * 2018-03-30 2021-07-13 Wells Fargo Bank, N.A. Systems and methods of personalized inflation modeling based on activity monitoring
US10757169B2 (en) 2018-05-25 2020-08-25 Model N, Inc. Selective master data transport
CN110163453B (en) * 2019-06-20 2021-08-13 跑哪儿科技(北京)有限公司 Method, device and system for predicting replenishment resource allocation strategy and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884283A (en) * 1996-09-05 1999-03-16 Manos; Christopher T. System, method and program product for managing and controlling the disposition of financial resources
US5913198A (en) * 1997-09-09 1999-06-15 Sbp Services, Inc. System and method for designing and administering survivor benefit plans
US6411939B1 (en) * 1999-05-17 2002-06-25 Offshore Benefits, Llc Computer-aided method, machine, and products produced thereby, for illustrating a replacement of a benefit plan that is viable at one location but not viable at the location of the replacement
US7216099B2 (en) * 2002-03-05 2007-05-08 Ibbotson Associates Automatically allocating and rebalancing discretionary portfolios

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4885686A (en) 1987-01-12 1989-12-05 American Telephone And Telegraph At&T Bell Laboratories Methods and apparatus for efficient resource allocation
US5148365A (en) * 1989-08-15 1992-09-15 Dembo Ron S Scenario optimization
US5216593A (en) 1991-01-24 1993-06-01 International Business Machines Corporation Method and apparatus for discrete activity resourse allocation through cardinality constraint generation
US5963911A (en) * 1994-03-25 1999-10-05 British Telecommunications Public Limited Company Resource allocation
US5884276A (en) 1994-10-12 1999-03-16 U S West, Inc. System for translating an optimization problem for use in efficient resource allocation
US5787283A (en) 1995-10-27 1998-07-28 International Business Machines Corporation Framework for manufacturing logistics decision support
US5956691A (en) 1997-01-07 1999-09-21 Second Opinion Financial Systems, Inc. Dynamic policy illustration system
US6032123A (en) * 1997-05-12 2000-02-29 Jameson; Joel Method and apparatus for allocating, costing, and pricing organizational resources
US6009402A (en) 1997-07-28 1999-12-28 Whitworth; Brian L. System and method for predicting, comparing and presenting the cost of self insurance versus insurance and for creating bond financing when advantageous
US6021397A (en) 1997-12-02 2000-02-01 Financial Engines, Inc. Financial advisory system
US7016870B1 (en) 1997-12-02 2006-03-21 Financial Engines Identifying a recommended portfolio of financial products for an investor based upon financial products that are available to the investor
US5918217A (en) 1997-12-10 1999-06-29 Financial Engines, Inc. User interface for a financial advisory system
US6965867B1 (en) 1998-04-29 2005-11-15 Joel Jameson Methods and apparatus for allocating, costing, and pricing organizational resources
US6292787B1 (en) 1998-09-11 2001-09-18 Financial Engines, Inc. Enhancing utility and diversifying model risk in a portfolio optimization framework
US20020091604A1 (en) 1999-11-05 2002-07-11 David B. Loeper Method, system and computer program for auditing finanacial plans
US6219649B1 (en) 1999-01-21 2001-04-17 Joel Jameson Methods and apparatus for allocating resources in the presence of uncertainty
US6167320A (en) 1999-03-03 2000-12-26 Powell; Roger A. System for control and resource allocation for the manufacturing of a product
US6182007B1 (en) * 1999-03-11 2001-01-30 Lockheed Martin Corp. Incorporating aspect angle into route planners
JP2003521020A (en) 1999-06-03 2003-07-08 アルゴリズミクス インターナショナル コーポレイション Risk management system and method for providing rules-based deployment of an instrument portfolio
US6591232B1 (en) 1999-06-08 2003-07-08 Sikorsky Aircraft Corporation Method of selecting an optimum mix of resources to maximize an outcome while minimizing risk
US7149713B2 (en) 1999-06-09 2006-12-12 The Vanguard Group, Inc. System and method for automating investment planning
US20010032029A1 (en) 1999-07-01 2001-10-18 Stuart Kauffman System and method for infrastructure design
EP1212705A1 (en) 1999-08-13 2002-06-12 MPower.com, Inc. A system, method, and computer program product for configuring stochastic simulation models in an object oriented environment
US6684193B1 (en) * 1999-10-05 2004-01-27 Rapt Technologies Corporation Method and apparatus for multivariate allocation of resources
US6459955B1 (en) * 1999-11-18 2002-10-01 The Procter & Gamble Company Home cleaning robot
WO2001055884A2 (en) 2000-01-27 2001-08-02 Carole Muller Decision-support system for system performance management
US6606527B2 (en) 2000-03-31 2003-08-12 International Business Machines Corporation Methods and systems for planning operations in manufacturing plants
US7031935B1 (en) 2000-07-31 2006-04-18 J.P. Morgan Advisory Services Inc. Method and system for computing path dependent probabilities of attaining financial goals
EP1220121A1 (en) 2000-12-29 2002-07-03 Rockwool International A/S System and method for predicting plant development
US20020147678A1 (en) 2001-02-02 2002-10-10 Mellon Bank, N.A. Adjudication method and system
AUPR319801A0 (en) 2001-02-20 2001-03-15 CRC for Sustainable Tourism Pty Limited Sustainability expert system for travel and tourism
US8407125B2 (en) 2001-07-31 2013-03-26 Ameriprise Financial, Inc. System and method for providing financial planning and advice
US6847854B2 (en) 2001-08-10 2005-01-25 Rockwell Automation Technologies, Inc. System and method for dynamic multi-objective optimization of machine selection, integration and utilization
US20040133489A1 (en) 2001-11-08 2004-07-08 Stremler Troy D. Philanthropy management apparatus, system, and methods of use and doing business
US20050119959A1 (en) 2001-12-12 2005-06-02 Eder Jeffrey S. Project optimization system
US6898472B2 (en) * 2001-12-27 2005-05-24 Manugistics, Inc. System and method for order group planning with attribute based planning
US6885902B2 (en) * 2001-12-27 2005-04-26 Manugistics, Inc. System and method for replenishment by purchase with attribute based planning
AU2002367254A1 (en) 2001-12-27 2003-07-24 Manugistics, Inc. System and method for order planning
US20030126054A1 (en) 2001-12-28 2003-07-03 Purcell, W. Richard Method and apparatus for optimizing investment portfolio plans for long-term financial plans and goals
US6981377B2 (en) * 2002-02-25 2006-01-03 Outfitter Energy Inc System and method for generation of electricity and power from waste heat and solar sources
US20030195831A1 (en) 2002-04-12 2003-10-16 Ibbotson Associates, Inc. Portfolio generation using resampled efficient frontiers and interval-associated groups
US7120601B2 (en) 2002-06-18 2006-10-10 Ibbotson Associates, Inc. Optimal asset allocation during retirement in the presence of fixed and variable immediate life annuities (payout annuities)
US20050052080A1 (en) 2002-07-31 2005-03-10 Maslov Boris A. Adaptive electric car
US20040128253A1 (en) 2002-10-11 2004-07-01 Harnsberger Jim Industry specific business and tax management system
US7284054B2 (en) * 2003-04-11 2007-10-16 Sun Microsystems, Inc. Systems, methods, and articles of manufacture for aligning service containers
US7353897B2 (en) 2003-07-23 2008-04-08 Fernandez Dennis S Telematic method and apparatus with integrated power source
US20050187851A1 (en) 2003-10-08 2005-08-25 Finsage Inc. Financial portfolio management and analysis system and method
US20050137172A1 (en) 2003-10-15 2005-06-23 Dalton James T. Haloacetamide and azide substituted compounds and methods of use thereof
WO2005079157A2 (en) 2004-02-19 2005-09-01 Dmitry Gorbatovsky Portfolio optimization
US7949590B2 (en) 2004-04-16 2011-05-24 Goldman Sachs & Co. Apparatus, method and system for designing and trading macroeconomic investment views
WO2005114517A2 (en) * 2004-05-14 2005-12-01 Hedgestreet, Inc. Risk management contracts and method and apparatus for trading same
GB0412123D0 (en) * 2004-05-29 2004-06-30 Cambridge Systems Associates L Computer system for data manipulation and related methods
US20060085083A1 (en) 2004-09-02 2006-04-20 Robert Congel Methods and system for conducting research and development on an urban scale
US20060143103A1 (en) * 2004-12-23 2006-06-29 Denne David A Method of facilitating, managing and financing environmentally focused projects
US7665559B2 (en) 2005-06-10 2010-02-23 De La Torre-Bueno Jose Inputs for optimizing performance in hybrid vehicles
US20070016432A1 (en) 2005-07-15 2007-01-18 Piggott Bryan N Performance and cost analysis system and method
US7925426B2 (en) 2005-11-17 2011-04-12 Motility Systems Power management systems and devices
KR20080109754A (en) 2006-03-13 2008-12-17 그린 볼츠, 인코포레이티드 Tracking solar power system
US7689494B2 (en) 2006-03-23 2010-03-30 Advisor Software Inc. Simulation of portfolios and risk budget analysis
US8768810B2 (en) * 2006-05-19 2014-07-01 Gerd Infanger Dynamic asset allocation using stochastic dynamic programming

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884283A (en) * 1996-09-05 1999-03-16 Manos; Christopher T. System, method and program product for managing and controlling the disposition of financial resources
US5913198A (en) * 1997-09-09 1999-06-15 Sbp Services, Inc. System and method for designing and administering survivor benefit plans
US6411939B1 (en) * 1999-05-17 2002-06-25 Offshore Benefits, Llc Computer-aided method, machine, and products produced thereby, for illustrating a replacement of a benefit plan that is viable at one location but not viable at the location of the replacement
US7216099B2 (en) * 2002-03-05 2007-05-08 Ibbotson Associates Automatically allocating and rebalancing discretionary portfolios

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112686551A (en) * 2020-12-31 2021-04-20 北京千方科技股份有限公司 Flight cost index obtaining method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
US20110191263A1 (en) 2011-08-04
US20090254491A1 (en) 2009-10-08
US20120271781A1 (en) 2012-10-25
US7516095B1 (en) 2009-04-07
US8732050B2 (en) 2014-05-20
US20090099975A1 (en) 2009-04-16
US8185462B2 (en) 2012-05-22
US7925565B2 (en) 2011-04-12
WO2009049294A9 (en) 2010-07-22
WO2009049294A3 (en) 2009-08-06
WO2009049294A4 (en) 2009-10-08

Similar Documents

Publication Publication Date Title
US8732050B2 (en) Stochastic control system and method for multi period consumption with goal satisfaction reporting
Bhandari et al. Fiscal policy and debt management with incomplete markets
US7249081B2 (en) Load aware optimization
US7016870B1 (en) Identifying a recommended portfolio of financial products for an investor based upon financial products that are available to the investor
US8275688B2 (en) Personalized financial illustration, guidance and advisory system for reference-date dependent investments
US20030078867A1 (en) Enhancing utility and diversifying model risk in a portfolio optimization framework
WO2003012594A2 (en) System and method for providing financial planning and advice
Mulvey et al. Asset and liability management systems for long-term investors: discussion of the issues
Fabozzi et al. Portfolio construction and analytics
Garlappi et al. Solving consumption and portfolio choice problems: The state variable decomposition method
Caldeira et al. Predicting the yield curve using forecast combinations
Ilut et al. Modeling uncertainty as ambiguity: A review
Alexander et al. Model risk in real option valuation
Sauer Educational financing and lifetime earnings
Hommes et al. Canvas: A canadian behavioral agent-based model
Stewart Manager selection
Ilut et al. Ambiguity
Martellini et al. Advances in Retirement Investing
Idzorek Personalized Multiple Account Portfolio Optimization
Poncet et al. Options (I): General Description, Parity Relations, Basic Concepts, and Valuation Using the Binomial Model
Perera Forecasting commercial property market performance: beyond the primary reliance on econometric models
Mulvey Multi-stage financial planning systems
Van Rooyen An alternative quantitative approach to tactical asset allocation using the Kalman filter
AU2007200695B2 (en) Financial advisory system
何翰 A Venture Capital-Based Integrated Valuation Model by Using Business Model Canvas and Financial Statement Valuation: A Case Analysis on a Mobile Application Company

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08836861

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08836861

Country of ref document: EP

Kind code of ref document: A2