Skip to main content

Optimisation problems - Far from being a commodity


I am always surprised how many - at first sight - easy, resource optimisation problems, are still unsolved or can only get solved by specialist users.
Almost in every industry, you have optimisation problems, i.e. problems in which resources are constrained (limited capacity) and need to be most effectively planned to come to a solution. Typically, each resource also comes with a number of constraints, which makes the planning exercise even more complex.
Some every-day examples are:
  • School exam schedules: create a schedule for all exams for the different school years and directions, taking into account the availability of teachers (sometimes working at multiple schools), availability of classrooms, but also preferences of students (e.g. complex and large classes like mathematics placed after a weekend).
  • School schedules for supervision during breaks: create a schedule for the supervision of teachers on the playground during breaks, taking into account the number of hours each teacher should do supervision (based on seniority and working regime), the availability of the teacher at the school (e.g. don’t foresee a teacher for supervision on a day he is not working or he is working at another school) and the preferences of each teacher.
  • School class schedules: create a schedule for all classes for the different school years and directions, taking into account the availability of teachers, the number of hours each direction should follow of a specific class and some logical constraints ensuring a good mix (e.g. not all hours of one class on the same day, mix of sciences and languages during a day…​)
  • Allocation of students to schools: allocate all students to different schools, taking into account the number of places in each school, which directions are offered at each school, the preferences of students, the distance of the student’s home address to the school, priority students like brothers/sisters of students already at the school…​
  • Schedules for work shifts: these schedules should make sure all work gets done, that the schedule is fair and motivating for every employee, but also that potential costs are minimized (e.g. for airplane crew avoid as much as possible hotel costs if crew has to spend the night abroad), e.g.
    • In hospitals: schedules for doctors and nurses
    • In airline companies: schedules for plane crew (pilots and stewards/stewardesses), taking into account flight schedules, minimum rest times, working regimes, ensuring a mix in seniority of the crew, capabilities of pilot to fly with certain planes…​
  • Task assignments:
    • Assignment of manual tasks, with different degrees of complexity to a number of resources, taking into account resource availability, resource task backlog, complexity of task and knowledge/expertise of resource…​ Typical examples in the financial services industry are credit analysis and decision tasks and KYC tasks.
    • Allocation of specialists to projects: in a company certain IT specialists like DBAs, architects, DevOps specialists, security specialists…​ are often solicited by multiple projects. The allocation of these specialists is also an optimization problem, taking into account the availability of the specialists, priority of projects, planning restrictions of the projects, effort required on each project…​
  • Schedules for usage and maintenance of vehicles, tools and equipment, e.g.
    • Airplane scheduling: determine which aircraft to fly on each route, where and when it should be maintained, whether airplane should make intermediate stops…​
    • Office & desk assignment: determine location of office (optimal for everyone to come to office) and desks to optimize productivity (minimum travel time, maximize collaboration, maximize employee satisfaction, minimize costs…​)
    • Schedules for maintenance of highly used and expensive equipment, e.g. maintenance of electricity centrals, taking into account constraints like electricity price, forecasted electricity consumption, availability of resources to execute the maintenance activities…​
    • Commitment of equipment, e.g. generator commitment, i.e. given the forecasted demand and operating cost of each generator, determine which generators should be activated at which time
  • Route planning:
    • Calculation of delivery routes (for transportation companies, postal services, courier services…​): given a list of destinations to deliver something, what is the optimal route to pass by each delivery address, taking into account constraints like traffic jams (current traffic jams, but also forecasted recurring traffic jams), availability of people to sign off for a delivery, urgency of a delivery…​
    • (Multi-modal) Route planning: planning a route, allowing to use different mobility options (car, bike, public transport, shared mobility…​), while taking into account constraints like weather, passengers, personal preferences (e.g. mobility restrictions), availability of mobility options, traffic on the road, cost price…​ The route could be optimized for time, cost price or ecological footprint (or a combination of these different objectives.
  • Investment advise optimization:
    • Robo-advise: given a limited amount of money a customer can invest, try to optimize the customer’s portfolio diversification (i.e. minimize correlation between assets, thus minimizing market risk) taking into account multiple constraints, like MiFID2 appropriateness constraints (i.e. only invest in products in which customer has required knowledge and experience), MIFID2 suitability constraints (i.e. the resulting portfolio should meet the customer’s investment objectives), customer’s personal constraints (e.g. only local firms, no foreign currencies, no tobacco or weapon industry, only investment in sustainable companies), internal policy constraints (e.g. no derivatives, maximum 20% in same share, maximum 10% in same sector, bonds should have a minimum B+ rating), cost constraints (i.e. optimize for transaction costs, by avoiding to sell existing positions if not needed and avoiding to buy too much small positions), trading constraints (such as minimum trading quantity and denomination)…​
    • Determine optimal bond portfolio: based on a predefined schedule of future (in and out) cash flows, compose a bond portfolio, for which coupon and reimbursement payments match these cash flows, while meeting also additional objectives and constraints, like maximizing return (i.e. highest interest rate), minimum bond rating, maximum percentage in same bond issuer…​
All the above problems are actually optimisation problems, for which in principle all elements are known upfront (or can at least be estimated), meaning there is little to no forecasting required. This makes a big difference with forecasting problems (often resolved with AI), which usually try to predict future behaviour based on data (and derived insights) from the past. Examples of such forecasting problems are calculation of required cash to be foreseen in ATMs, customer or employee churn predictions, product recommendations, credit scoring (calculate probability of customer not being to reimburse credit)…​
Every one of the above optimisation problems has following elements:
  • A (finite) list of resources (e.g. employees, equipment, vehicles, money…​) which should be allocated in the best possible way
  • A list of constraints on the resources (e.g. maximum working hours per employee). As it might be impossible to meet all constraints, it is important to set a weight to each constraint, so that hard constraints are forced to be met, while softer constraints are only used for optimization.
  • A cost function to determine how well a specific solution to the optimization problem meets the expectations, i.e. indication how well constraints are met and how well the target objective is reached. This target objective can be a single objective (like minimizing cost, minimizing delays…​) or a weighted combination of multiple objectives.
Note that in some cases in order to calculate the cost function, it might be required to work with simulation and forecasting models to calculate certain external or non-mathematical factors (such as traffic jam prediction or employee motivation). It is however best to split these 2 problems, i.e. the optimization problem can be isolated by calling a separate forecasting model to get necessary input for cost function calculation.
Given the specific skills required to solve these issues (not yet commoditized) and also the fact that optimizations often cross certain boundaries (e.g. for exam schedules, it should ideally be done for all schools together, to take into account teachers working at multiple schools), "Optimisation as a Service" seems a very interesting business.
Depending on the frequency of execution of the optimisation problem, different service levels can be foreseen, i.e.
  • For a one-shot calculation problem, data can be delivered manually, and very little automation is required.
  • For a recurring (daily, weekly, monthly) calculation more automation is required in the delivery of the input data (i.e. resources and their availability and constraints), the execution and delivery of output results, but performance is less of an issue
  • Continuous (also real-time) optimization problems, requiring a full automation, with very low latency
While the world is overwhelmed by Machine Learning and AI tools, offerings and consultancy firms, it is strange that these optimisation problems which offer also enormous business potential for many companies, are still the domain of specialists and intuition and a lot of manual work. It will be interesting to see if open source tools (like TensorFlow did for ML and AI) can further commoditize these problems. The business potential is in any case enormous (will Google deliver the necessary revolution here as well or will a new unicorn rise?).
Check out all my blogs on https://bankloch.blogspot.com/

Comments

  1. Informative blog...!!
    Fretron Logistics Software for Transportation Management Systems is an integrated solution that covers end to end needs of Logistics Service Providers and shippers.
    Transportation Management Solution
    Transportation Management Software

    ReplyDelete
  2. This is very interesting blog, thanks for posting. I found that Gurobi is very good at handling the wide variety of problems you mention above, and does so incredibly quickly.

    ReplyDelete

Post a Comment

Popular posts from this blog

Transforming the insurance sector to an Open API Ecosystem

1. Introduction "Open" has recently become a new buzzword in the financial services industry, i.e.   open data, open APIs, Open Banking, Open Insurance …​, but what does this new buzzword really mean? "Open" refers to the capability of companies to expose their services to the outside world, so that   external partners or even competitors   can use these services to bring added value to their customers. This trend is made possible by the technological evolution of   open APIs (Application Programming Interfaces), which are the   digital ports making this communication possible. Together companies, interconnected through open APIs, form a true   API ecosystem , offering best-of-breed customer experience, by combining the digital services offered by multiple companies. In the   technology sector   this evolution has been ongoing for multiple years (think about the travelling sector, allowing you to book any hotel online). An excellent example of this

Are product silos in a bank inevitable?

Silo thinking   is often frowned upon in the industry. It is often a synonym for bureaucratic processes and politics and in almost every article describing the threats of new innovative Fintech players on the banking industry, the strong bank product silos are put forward as one of the main blockages why incumbent banks are not able to (quickly) react to the changing customer expectations. Customers want solutions to their problems   and do not want to be bothered about the internal organisation of their bank. Most banks are however organized by product domain (daily banking, investments and lending) and by customer segmentation (retail banking, private banking, SMEs and corporates). This division is reflected both at business and IT side and almost automatically leads to the creation of silos. It is however difficult to reorganize a bank without creating new silos or introducing other types of issues and inefficiencies. An organization is never ideal and needs to take a number of cons

RPA - The miracle solution for incumbent banks to bridge the automation gap with neo-banks?

Hypes and marketing buzz words are strongly present in the IT landscape. Often these are existing concepts, which have evolved technologically and are then renamed to a new term, as if it were a brand new technology or concept. If you want to understand and assess these new trends, it is important to   reduce the concepts to their essence and compare them with existing technologies , e.g. Integration (middleware) software   ensures that 2 separate applications or components can be integrated in an easy way. Of course, there is a huge evolution in the protocols, volumes of exchanged data, scalability, performance…​, but in essence the problem remains the same. Nonetheless, there have been multiple terms for integration software such as ETL, ESB, EAI, SOA, Service Mesh…​ Data storage software   ensures that data is stored in such a way that data is not lost and that there is some kind guaranteed consistency, maximum availability and scalability, easy retrieval and searching

IoT - Revolution or Evolution in the Financial Services Industry

1. The IoT hype We have all heard about the   "Internet of Things" (IoT)   as this revolutionary new technology, which will radically change our lives. But is it really such a revolution and will it really have an impact on the Financial Services Industry? To refresh our memory, the Internet of Things (IoT) refers to any   object , which is able to   collect data and communicate and share this information (like condition, geolocation…​)   over the internet . This communication will often occur between 2 objects (i.e. not involving any human), which is often referred to as Machine-to-Machine (M2M) communication. Well known examples are home thermostats, home security systems, fitness and health monitors, wearables…​ This all seems futuristic, but   smartphones, tablets and smartwatches   can also be considered as IoT devices. More importantly, beside these futuristic visions of IoT, the smartphone will most likely continue to be the center of the connected devi

Neobanks should find their niche to improve their profitability

The last 5 years dozens of so-called   neo- or challenger banks  (according to Exton Consulting 256 neobanks are in circulation today) have disrupted the banking landscape, by offering a fully digitized (cfr. "tech companies with a banking license"), very customer-centric, simple and fluent (e.g. possibility to become client and open an account in a few clicks) and low-cost product and service offering. While several of them are already valued at billions of euros (like Revolut, Monzo, Chime, N26, NuBank…​), very few of them are expected to be profitable in the coming years and even less are already profitable today (Accenture research shows that the average UK neobank loses $11 per user yearly). These challenger banks are typically confronted with increasing costs, while the margins generated per customer remain low (e.g. due to the offering of free products and services or above market-level saving account interest rates). While it’s obvious that disrupting the financial ma

PFM, BFM, Financial Butler, Financial Cockpit, Account Aggregator…​ - Will the cumbersome administrative tasks on your financials finally be taken over by your financial institution?

1. Introduction Personal Financial Management   (PFM) refers to the software that helps users manage their money (budget, save and spend money). Therefore, it is often also called   Digital Money Management . In other words, PFM tools   help customers make sense of their money , i.e. they help customers follow, classify, remain informed and manage their Personal Finances. Personal Finance   used to be (or still is) a time-consuming effort , where people would manually input all their income and expenses in a self-developed spreadsheet, which would gradually be extended with additional calculations. Already for more than 20 years,   several software vendors aim to give a solution to this , by providing applications, websites and/or apps. These tools were never massively adopted, since they still required a lot of manual interventions (manual input of income and expense transaction, manual mapping transactions to categories…​) and lacked an integration in the day-to-da

Can Augmented Reality make daily banking a more pleasant experience?

With the   increased competition in the financial services landscape (between banks/insurers, but also of new entrants like FinTechs and Telcos), customers are demanding and expecting a more innovative and fluent digital user experience. Unfortunately, most banks and insurers, with their product-oriented online and mobile platforms, are not known for their pleasant and fluent user experience. The   trend towards customer oriented services , like personal financial management (with functions like budget management, expense categorization, saving goals…​) and robo-advise, is already a big step in the right direction, but even then, managing financials is still considered to be a boring intangible and complex task for most people. Virtual (VR) and augmented reality (AR)   could bring a solution. These technologies provide a user experience which is   more intuitive, personalised and pleasant , as they introduce an element of   gamification   to the experience. Both VR and AR

Beyond Imagination: The Rise and Evolution of Generative AI Tools

Generative AI   has revolutionized the way we create and interact with digital content. Since the launch of Dall-E in July 2022 and ChatGPT in November 2022, the field has seen unprecedented growth. This technology, initially popularized by OpenAI’s ChatGPT, has now been embraced by major tech players like Microsoft and Google, as well as a plethora of innovative startups. These advancements offer solutions for generating a diverse range of outputs including text, images, video, audio, and other media from simple prompts. The consumer now has a vast array of options based on their specific   output needs and use cases . From generic, large-scale, multi-modal models like OpenAI’s ChatGPT and Google’s Bard to specialized solutions tailored for specific use cases and sectors like finance and legal advice, the choices are vast and varied. For instance, in the financial sector, tools like BloombergGPT ( https://www.bloomberg.com/ ), FinGPT ( https://fin-gpt.org/ ), StockGPT ( https://www.as

Eco-systems - Welcome to a new cooperating world

Last week I attended the Digital Finance Summit conference in Brussels, organized by Fintech Belgium, B-Hive, Febelfin and EBF. A central theme of the summit was the cooperation between banks and Fintechs and more in general the rise of ecosystems. In the past I have written already about this topic in my blogs about "Transforming the bank to an Open API Ecosystem ( https://www.linkedin.com/pulse/transforming-bank-open-api-ecosystem-joris-lochy/ ) and "The war for direct customer contact - Banks should fight along!" ( https://www.linkedin.com/pulse/war-direct-customer-contact-banks-should-fight-along-joris-lochy/ ), but still I was surprised about the number of initiatives taken in this domain. In my last job at The Glue, I already had the pleasure to work on several interesting cases: TOCO   ( https://www.toco.eu ): bringing entrepreneurs, accountants and banks closer together, by supporting entrepreneurs and accountants in their daily admin (and in the f

Low- and No-code platforms - Will IT developers soon be out of a job?

“ The future of coding is no coding at all ” - Chris Wanstrath (CEO at GitHub). Mid May I posted a blog on RPA (Robotic Process Automation -   https://bankloch.blogspot.com/2020/05/rpa-miracle-solution-for-incumbent.html ) on how this technology, promises the world to companies. A very similar story is found with low- and no-code platforms, which also promise that business people, with limited to no knowledge of IT, can create complex business applications. These   platforms originate , just as RPA tools,   from the growing demand for IT developments , while IT cannot keep up with the available capacity. As a result, an enormous gap between IT teams and business demands is created, which is often filled by shadow-IT departments, which extend the IT workforce and create business tools in Excel, Access, WordPress…​ Unfortunately these tools built in shadow-IT departments arrive very soon at their limits, as they don’t support the required non-functional requirements (like high availabili