Artificial Intelligence Tools: A Look At Optimisation

Marian Keane
Version 1
Published in
4 min readJan 14, 2021
Photo by Christina @ wocintechchat.com on Unsplash

Among the wide range of artificial intelligence tools available to organisations today, optimisation is growing in popularity as a means of harnessing computing power and mathematical algorithms to help business leaders find the best solutions to complex problems. Within the world of data science, optimisation models fall into a class of “prescriptive analytics” models, that not only predict potential outcomes but prescribe the best course of action.

So what is the best solution? This can vary according to the context. In manufacturing it may be the production line configuration that maximises productivity. In retail it may be the product pricing/promotions decisions that maximise revenue. For an energy company, it may be the operating levels for electric power plants that minimize operating costs.

Optimisation has traditionally been associated with operations research, supply chain management, and transportation management, but is now increasingly applied to any situation where a business wishes to maximise profit (or minimise costs) subject to a number of constraints.

What do we mean by constraints? Constraints are any real-world obstacles that the optimised solution must workaround. There will usually be a multitude of constraints for each business problem to be optimised. For a manufacturing company, there are many scheduling constraints (steps that must take place in a particular order). For the energy company, an important constraint is that the customer demand for electricity must be met at all times. Constraints can either be hard constraints (which must be satisfied) or soft constraints (which are preferred but not required to be satisfied).

An example that should be familiar to all from our school days is the problem of class timetabling. In planning for each new academic year, the school management is tasked with designing a timetable to accommodate the teacher and student populations for that year, and their subjects taught/chosen. The best solution is one that keeps the greatest number of teachers happy in their jobs and offers the greatest number of students their first choice of subjects. The constraints are many:

  • Maximum number of students per classroom/teacher,
  • Maximum number of hours per week per teacher,
  • Part-time teachers may only be available at certain times,
  • Certain subjects require specialised rooms (e.g. science labs),
  • A group of students taking a particular subject should be taught by the same teacher for all periods as far as possible,
  • The class periods for a particular subject to be spread evenly across the week, etc.

The school I attended (once upon a time) offered students a very limited choice of non-core subjects — this presumably made the timetabling task easier. Larger schools can now offer students broad subject choices (e.g. choose any 4 out of 16) — this makes the timetabling task more challenging but increases the attractiveness of the school for prospective students.

How do optimisation models work? The underlying algorithms are varied and often borrow from observed behaviour in the natural world. For example:

  • Genetic algorithms are based on the natural selection process that drives biological evolution. They repeatedly modify a population of individual solutions, at each stage selecting ‘parent’ solutions to combine and mutate to create ‘child’ solutions which feed into the next iteration.
  • Simulated annealing algorithms are based on mimicking the thermodynamic forces observed when a metal or other material is heated and then cooled. The algorithm initially runs ‘hot’, jumping around the solution space to find global maxima or minima, and over time ‘cools down’ to explores solutions more local to the current solution.

Whatever the algorithm, the goal is to avoid carrying out a brute-force search of the entire state space, while still finding the best solution.

The complexity associated with optimisation models can be high, leading to long run-times (or difficulty finding a working solution). This can be addressed via additional computing power, and/or by making the algorithms work as efficiently as possible. Heuristic techniques have been found to be useful in speeding up run times — heuristics are practical “rules of thumb” that can be coded into the search algorithm. For example, within the school timetabling problem, a heuristic may be to rank the students (and separately the teachers) according to the complexity of their requirements or constraints and to schedule the most difficult cases first.

Photo by Markus Spiske on Unsplash

A good and useful output from an optimisation model is:

a) The best solution

b) A short-list of the next best (sub-optimal) solutions for review

c) Where no optimal solution could be found, a short list of constraints that, if relaxed, would lead to a solution being found. (For example, it may be that an individual student has requested a set of subject choices that are so different to the remainder of the student population that they cannot be met. The school may then need to re-assign this student to alternative subjects.)

To Conclude

The range of applications for optimisation models is growing rapidly over time. For any business to get ahead, the best operational and strategic decisions must be made. Optimisation models can provide solutions that drive the best results.

About the Author

Marian Keane is currently a Senior Consultant in Version 1’s BI and Analytics practice. For more blog posts around Data Analytics, BI and Analytics, be sure to follow Marian and the Version 1 publication.

--

--