An ongoing challenge for modern-day demand planners and inventory managers is improving the accuracy of demand forecasts. Besides the algorithmic challenge of minimising the forecast error, there is also the challenge of understanding and optimising the trade-off between working capital costs and service levels to customers. In complex operating environments where many variables impact on the actual demand realised for specific products in specific geographies, demand forecast accuracy can quickly degrade, resulting in:

  • Expedited shipping costs due to the wrong inventory being at the wrong place at the wrong time
  • Stock-outs and compromised services levels to customers, especially on measures such as DIFOT and fill rates
  • Low inventory stock turns
  • Stock obsolescence
  • High forecast error

About Complexica

Employing almost 100 staff across 4 offices, Complexica is a leading provider of Artificial Intelligence software applications that can optimise sales, marketing, and supply chain decisions. Our investors include MA Financial Group (ASX:MAF), Flinders Ports, and Microequities Asset Management (ASX: MAM). We were founded upon the research of several world-renowned computer scientists, and have commercialised a modularised software platform called Decision Cloud® that empowers staff across multiple business functions to make better decisions. Decision Cloud® is powered by our award-winning Artificial Intelligence engine Larry, the Digital Analyst®:

Research Partnerships

We maintain research partnerships with the Polish-Japanese Academy of Information Technology, the University of Adelaide, and RMIT University, and also have a Scientific Advisory Board that includes international thought leaders in the area of Artificial Intelligence. Our enterprise software employs techniques from a range of fields, including deep learning, predictive analytics, machine learning, Artificial Intelligence, simulation and big data analytics to solve complex business problems and deliver value.

Supply Chain

Complexica can help you address these commonplace challenges through our Demand Planner module of Decision Cloud®, which provides robust and easy-to-use demand planning, forecasting, and analysis capabilities.

Supply Chain

Supply Chain Management

Demand planning is a supply chain management process that allows a company to project future demand and successfully customize the company's production, whether products or services, according to. demand planning is the supply chain management process for forecasting demand, so that products can be delivered reliably and.

Forecasting and Demand Management

Demand forecasting provides insight into your next cash flow so companies can more accurately budget supplier payments and other operating costs, while continuing to invest in company growth. Demand forecasting is the process of making estimates of future customer demand over a defined period, using historical data and other information. Demand forecasting is especially useful for products that have an expiration date, such as in the food or chemical industry. Without adequate demand forecasting, you risk losing money if you produce too many items and have to sell them at a discounted price as their expiration date approaches.

In addition, unnecessary storage costs are incurred when too many products are produced. Demand forecasting is known as the process of making future estimates in relation to customer demand for a specific period of time. In general, demand forecasting will take into account historical data and other analytical information to produce the most accurate predictions. More specifically, demand forecasting methods involve the use of predictive analysis of historical data to understand and predict customer demand to understand key economic conditions and help make supply decisions crucial to optimizing business profitability.

Forecasting and Demand Management

Demand Management

Demand management can also be used to reduce demand. This encourages customers to talk on the weekends rather than during the week to reduce service demand. Demand management is a planning methodology. Companies use it to forecast and plan how to meet demand for services and products.

Demand Management Improves Connections Between Operations and Marketing. The result is closer coordination of customer strategy, capacity and needs. Demand management involves forecasting and planning to meet customer demand. An example of an activity that illustrates demand management is sales forecasting, customer evaluation, and modeling.

Predictive Demand Planning

Rather than using a pre-defined set of rigid models that are based solely on statistical methods, Complexica’s Demand Planner relies on a wide variety of predictive algorithms and techniques that are tuned to your internal sales data as well as external sources and available overlays to improve accuracy.

Based on advanced statistical models and Artificial Intelligence methods such as Deep Learning, Demand Planner can help your organisation move demand planning away from an anecdotal and “gut feel” approach, to a data-driven and market intelligence capability. In particular, we can help you:

  • Reduce the forecast error associated with demand planning
  • Increase DIFOT and service levels to customers
  • Improve stock turns and decrease overall inventory levels
  • Improve reaction time and response to unexpected events (e.g. sudden change in demand requiring additional inventory)
  • Automate manual processes to eliminate human error and key man risk
  • Understand the impact of changes in business rules and constraints (such as lead times, capacity constraints, required inventory levels, etc.)
  • Replace home-grown spreadsheets, which are often opaque and convoluted
  • Optimise and automate the replenishment process across various time periods, product categories, lines, and individual SKUs
  • Understand customer sales trends and patterns

Frequently Asked Questions

Yes, Larry, the Digital Analyst® can generate decision recommendations based upon the automatic analysis of the data carried out by its underlying algorithms, rather than just providing insights or analytic reports. Hence, Larry is "forward-focused" on what the next best decision should be, rather than "rearward focused" on what happened in the past and why.

As a simple example, it's possible to define two classes of entities within Larry: Customers and Products, where customers have preferences for certain products and these preferences must be extracted from the data. The utility matrix gives (for each customer-product pair) a value that represents what is known about the degree of preference of that customer for that product (the matrix is often sparse, as most entries are unknown). Larry, the Digital Analyst® then examines the properties of products recommended to customers: For example, customer A “likes” products with characteristics X, so that Larry would recommend products with characteristic X, and analyse the similarity measures between customers and/or products (the products that are recommended to a customer are those preferred by “similar” customers, which is often referred to as collaborative filtering).

Larry, the Digital Analyst® is comprised of many algorithmic techniques and models that can be applied to specific business functions, such as demand forecasting, price elasticity modelling, promotional planning, omni-channel ordering, and production planning & scheduling, among others. In addition to Larry, Complexica has developed a range of software modules called Decision Cloud® to enable end-users to access and utilise Larry's algorithms within a variety of workflows (e.g. trade spend optimisation). For every new deployment where Complexica applies Larry's algorithms to a specific business function, these algorithms are trained on customer-specific data in order to enable proper use. At a high level, the learning aspects of Larry can be summarised by the following methods:

Training & deploying models

  • Self-learning feedback loops
  • Training & deploying models  

The process of configuring Larry's algorithms to a particular problem includes several steps:

Data mining

  • Learning the problem domain (relevant prior knowledge and goals)
  • Creating a target data set (data selection), including both internal and external datasets
  • Data cleaning and pre-processing
  • Data reduction and transformation (finding useful features, dimensionality/variable reduction, invariant representation)
  • Choosing functions of data mining (summarisation, classification, regression, association, clustering)
  • Choosing the data mining algorithm(s)
  • Searching for patterns and trends of interest
  • Pattern evaluation and knowledge presentation (visualisation, transformation, removing redundant patterns, etc.)
  • Establishing the key variables to be used in the models for the relevant use-case.


  • Choosing or combining Larry's algorithmic techniques for a specific business problem
  • Training the algorithmic techniques on customer data (as well as potentially external data)
  • Configuring Larry's parameters for the customer-specific use-case
  • Evaluating the model(s) performance against key metrics

Model deployment

The final step is deploying the trained model(s) into the customer-specific AWS instance and enable users to access through the relevant Complexica Decision Cloud® software module (e.g. Promotional Campaign Manager or Demand Planner)

Self-Learning Feedback Loops

Cognitive computing involves self-learning systems that use Artificial Intelligence, data mining/machine learning, visualization, and natural language processing to mimic the way the human brain works. The overall goal of cognitive analytics is to create automated IT systems that are capable of “learning from” and “adapting to” changes in the environment.

To understand the “self-learning” mechanism within Larry, the Digital Analyst®, there is a step within the modelling stage described as “Configuring Larry's parameters for the customer-specific use-case,” which works in close alignment with the next step “Evaluating the model(s) performance against key metrics”. Once live, Larry continues to evaluate the model's performance against actual results (e.g. did the promotional plan recommended by Larry actually generate the predicted uplift in sales? If not, to what extent did it fall short?). The difference detected being the “error rate," which acts as a trigger (when it exceeds an acceptable threshold) for Larry's adaptive algorithms to automatically adjust/self-tune the initially configured parameters to "learn" and improve performance in the future.

Complexica does not custom-make software applications for each customer, as this approach would be too prohibitive from a cost, time, and risk perspective. Based on almost a decade of research and development, Larry, the Digital Analyst® and the Decision Cloud® platform are software products with pre-existing algorithms, models, workflows, user interfaces, functions & features, integrations, and security controls. Hence, from this perspective, Complexica's software applications can be categorised as enterprise-grade, commercial-off-the-shelf (COTS) products. 

That said, our experience is that most COTS products are unable to handle many customer-specific requirements such as complex business rules set in time-changing data environments, non-linear relationships, and non-standard business processes and workflows, among others. For this reason, the Decision Cloud® platform allows for a "customer-specific layer" to be added on top of the COTS product which caters for unique requirements without compromising the base product (or the ability to upgrade to future versions and releases). Hence, Complexica's Decision Cloud® platform combines the best of both worlds by leveraging the cost and time efficiencies of a COTS product, and the flexibility of being able to handle unique requirements within the customer-specific layer.