Multi-objective optimisation
Multi-objective optimisation (also known as multi-objective programming, vector optimisation, multicriteria optimisation, multiattribute optimisation or Pareto optimisation) is an area of multiple criteria decision making that is concerned with mathematical optimisation problems involving more than one objective function to be optimized simultaneously. Multi-objective optimisation has been applied in many fields of science, including engineering, economics and logistics where optimal decisions need to be taken in the presence of trade-offs between two or more conflicting objectives. Minimizing cost while maximizing comfort while buying a car, and maximizing performance whilst minimizing fuel consumption and emission of pollutants of a vehicle are examples of multi-objective optimisation problems involving two and three objectives, respectively. In practical problems, there can be more than three objectives.

Competing client objectives
In the context of optimising a financial plan, it is probably that a client may have multiple competing objectives which may not necessarily be achievable simultaneously. In this scenario, the optimisation problem must be able to prioritise which objective should be prioritised.

PrimeSolve solves this issue via the introduction of a penalty for goals not met. For example, consider a scenario whereby we have resources of $55,000 in a given year and the following competing goals:

Goal Cost Importance
Purchase a car $50,000 Critical
Go on holiday $10,000 Not important

To achieve both goals in this scenario we would require $60,000 in resources. Given we only have $55,000 in resources the optimisation engine must make a decision on which goal will be satisfied.

We can see from our goals that Goal 1 is critically important, whereas Goal 2 is not important. Using the penalty system the model will apply a penalty factor of 8 for failing to achieve goal 1 and a penalty factor of 1 for failing to achieve goal 2.

In this scenario the engine will choose to satisfy goal 1, and partially satisfy goal 2. The penalty applied to the objective function from failing to satisfy goal 2 would be as follows:

Penalty factors Amount
Big number $1,000,000
Target $10,000
Optimised amount $5,000
Percentage of target not met 50%
Penalty factor 1
Penalty applied ($1,000,000 * 50% * 1) $500,000

To compare what would occur if the optimisation engine prioritised goal 2, the penalty applied to goal 1 would be as follows:

Penalty factors Amount
Big number $1,000,000
Target $50,000
Optimised amount $45,000
Percentage of target met 10%
Penalty factor 8
Penalty applied ($1,000,000 * 10% * 8) $800,000

Therefore, in this scenario the engine will prioritise meeting goal 1 as it carries a penalty of $300,000 less ($800,000 – $500,000).

In practice, due to the significant penalties that apply for not meeting objectives the optimisation engine will strive to meet all objectives provided it is feasible to do so. In the event the optimisation problem is unable to achieve all goals, competing goals will be prioritised according to what is most important as per the above example.

Feedback

Was this helpful?

Yes No
You indicated this topic was not helpful to you ...
Could you please leave a comment telling us why? Thank you!
Thanks for your feedback.

Post your comment on this topic.

Post Comment