<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=273238486464353&amp;ev=PageView&amp;noscript=1">

About Us

The Rise of Artificial Intelligence. Chapter 4: Data

    This supplementary video to Chapter 4 of The Rise of Artificial Intelligence presents basic terminology related to data (e.g. datasets, records, variables, and values), as well as an overview of data transformation and composition, variable selection, data reduction, data normalization, and missing data. This video also distinguishes between data, information, and knowledge, which represent the three lower levels of the problem-to-decision pyramid.

    Some of material in this video is based on a complex business problem that's used as a running example. The following article provides a full explanation of this problem as well as its complexities:

    Michalewicz, Z., Schmidt, M., Michalewicz, M., and Chiriac, C., A Decision-Support System based on Computational Intelligence: A Case Study, IEEE Intelligent Systems, Vol.20 (4), July-August 2005, pp.44 – 49

    Click here to download Chapters 1 & 2 of The Rise of Artificial Intelligence: Real-world applications for revenue and margin growth, and please contact us to request a soft copy of any other chapter of the book.

    Transcript (reading time: 19:10 min)


    Hi, this is Zbigniew Michalewicz, I am one of the co-authors of The Rise of Artificial Intelligence, and this is a supplementary video to Chapter 4 of the book. During this presentation, we'll talk about data, which is the topic of Chapter 4. However, I would also touch on the next two levels of the pyramid, information and knowledge. Let me start with a general remark. Some of the presented material for this chapter and the next three chapters is based on one particular, very complex business problem, and I would use this problem as a running example.


    There is one particular article listed here, available from our website, which is recommended reading because it describes this complex business problem in detail. The outline of this presentation is as follows: we'll start with the car distribution example, then talk about terminology, data sets, records, variables and values, followed by data preparation, data transformation, composition, variable selection, and the handling of missing data. Towards the end we'll make a distinction between data, information and knowledge, and then conclude by returning to the car distribution example.


    So, GMAC is a leasing company, they lease cars across the nation and these cars are returned to GMAC at the end of the lease. When returned, these cars are sold on auction sites across the United States. The annual turnover is over a million cars, which translates into a daily number of between 4,000 and 7,000 cars. Every single day, the re-marketing team in Detroit of 23 data analysts make decisions for every single car that's ready to be shipped to auction.


    They have to make a manual decision: which is the best auction site to send this particular car to? And the problem is very complex. We'll discuss the complexity of this problem when we talk about prediction and optimization in chapters five and six, and you can  also read about the complexity of this problem in the article I mentioned earlier. So the cars are collected at distribution centers where they're sent from dealerships, over there the paperwork is prepared and little repairs are performed if necessary.


    Whenever the car is ready for shipment, the re-marketing team in Detroit makes the final decision on where to ship the car. For example, this particular Pontiac Grand Prix, which is sitting and ready for shipment at this particular location, would be shipped to this particular auction site or that particular auction site. So a few thousand cars are available for shipment every day, meaning that a few thousand individual decisions need to be make every day. The team has to come up with the best possible destination, and the "best" means the destination that would provide the highest selling price.


    So today we'll look at available data and we'll talk about how it's transformed into information and knowledge. And the main purpose of such transformations is to prepare for building models, in particular, predictive models and optimization models. At the end of the day, we'd like to have a better understanding of different possibilities, putting some intelligent system together. So all these exercises connected with data and transformations only have one goal: to build a clever model that would help us make better decisions.


    So, let's talk about data. As far as cars are concerned, we have a variety of variables: we have the VIN number for each car, the make and model, mileage, year of production, and color. These cars may also have a damage level from zero to ten, and some indicators for options, such as power windows, sunroof, alloy wheels, and so on. We also have a variety of data connected with the auction sites.


    In one particular auction in Houston, Texas, we might have a maximum inventory of 8,500 cars that we can keep there. We may have some information about the average number of people who attend auctions. We also need some information on the distance between all distribution centers and all auction sites. So the distance between first distribution center and first auction site is 850 miles. The distance between the second distribution center and first auction site is 220 miles, and so on. This will be important for estimating transportation costs.


    Also, it's very important to have a calendar of auctions because auctions are usually run every second week. These dates are very important because if you miss the auction by a single day, the car will sit for an additional two weeks, suffering depreciation costs. So the calendar of auctions will be a very important variable for the optimal distribution of cars. Also, we have historical data on sales. We know that a particular car with a particular VIN number was sold at auction site 47 in Houston, Texas on 28th February 2002, and the price was $11,900.


    And this information is also extended by the identifiers of other cars that were processed that day. The reason for this is called the volume effect. If we have too many cars of the same type that are sold together, they would depress the price. So the volume effect is an important aspect for consideration, which is helpful later on in modeling. And the remarketing team also has access to external historical data: for example, they know the temperature that day or rainfall and the gas prices and additional information like color preferences for this area of the country.


    And some of these variables are really important. If we have significant rainfall, clearly the prices would be lower because fewer people would attend the auction. So the basic term is dataset. The dataset is simply a collection of records for cars. We have all these records that follow the structure, which I just described a little bit earlier. So each record would consists of VIN number and make and model and mileage, color and power windows, and so on.


    And when we talk about records, it's customary to talk about variables and their values so VIN number, make, model, mileage – these are variables, and then each variable would have a value from a particular range. It might be a string of characters like the VIN number, it may be the year of production, it might be any integer number for mileage and so on. And the values for options are indicated by binary variables: "yes" or "no."


    Talking about the values of variables or variables themselves, we can look at variables from a slightly different perspective: we can say some variables are numerical, which are easy variables to deal with because we can compare the value of one variable against the value of the same variable in the other record – for example, which of the two cars have higher mileage. Some variables are nominal, there are some labels attached to the variable like color, white, yellow, green, silver, and so on.


    Some variables are binary: "0/1," "yes/no," "true/false," and very often there are some other variables like free text, we have some free text description of the damage, or a description that relates to special features of the car, which are not included in a standard set of attributes. Then very often when we are dealing with nominal variables, we are converting them into numbers simply because computers are much better with numbers than a string of characters. So one possibility might be to assign "1" for white and "2" for yellow, "3" for orange, and so on.


    Having fourteen colors, let's say we assign "14" for black. Another possibility would be to convert these labels into binary strings, so let's say white would be "1" followed by 13 zeros, yellow is "01" followed by 12 zeros, and so on, with black being all zeros and on the 14th position the number "1," so many possibilities of how to do this. Also, variable transformation and variable composition are very important concepts because some variables may require transformation. For example, age might be much more important than year of birth for a human and for taking into account datasets for cars we can see the age of cars might be more important than year of production, for example: this is a three year old car, a five year old car.


    So having only a year of production, it might be smart to transform this variable into age. The same with the variable composition. It may be meaningful to create a new variable, which by itself may not present in the dataset, but we can construct this variable by means of other variables. So average miles per year: we take the whole mileage on the odometer, we divide it by the age of the car, and we have an average number of miles per year, which may be a very important and useful variable for predictive modeling, when we try to predict the price for the car at a particular auction site. Also, variable selection is a very important concept because oftentimes there's a significant number of variables and the key issue is to select the meaningful variables, and only the meaningful variables. If we miss a meaningful variable, that's very bad, for example, if we don't include the make of the car.


    So we have no clue whether it is Toyota or whether it is Honda, Mazda, Holden, or so on. Clearly, the make and model of the car would be one of the key variables and this is very obvious. But with a large number of variables, it's not that obvious which variables are more important and which of them are less important. And if we keep including irrelevant variables, then it's very bad for the predictive model because we're introducing noise and it's much harder to train the model, and the accuracy of the model will usually would be much, much poorer.


    And the issue is the following: If we have just 20 key variables, we have over a million possible subsets of variables to choose from. The question is, how should we organize these variables into subsets? Let's say one possible subset would be to select the variable 2, 3, 5, 7 and 11. Another possible subset is to select variables 3, 5, 6, 11, 12 17,19. And if we look at all these possible subsets of variables we'd like to include in the predictive model, then the number of these possible subsets is quite significant: with 100 variables, the number of possible subsets is huge.


    So we can't evaluate each subset and we can't evaluate the precision of the model built on all different subsets. Instead, we have to use principal component analysis or other methods to identify these variables. Also, this variable selection process is part of the data reduction process. Very often we have huge datasets and very often it's useful to train the model on subsets of variables. So basically, again, the concept is very much the same: we remove non-essential data and this is a very healthy approach from a predictive modeling point of view.


    One possibility is to remove some variables. Let's say we discover that this binary variable "power windows" is of no significance whatsoever, so we can remove it. Another possibility would be to cluster some values which are present in the dataset in two ranges. For example, instead of dealing with every single possible integer for milage, we can group them together, for example, mileage between 10,000 and 20,000.


    Another possibility, would be to remove some records, because it's not always the case that "the more data, the better." One particular technique we can use is incremental sampling when we train a model on a subset of data, and gradually increase the number of records and measure improvements on the predictive model, and once we see the improvement has stopped we keep adding records and there's no improvement – then it's time to stop. An additional aspect of data preparation is data normalization. For some variables, it may be meaningful to scale them into specific range, let's say from 0 to 1.


    Because the reason is very simple. If we look at the age of a car, which is usually a single digit integer two-year old car, five-year old car, and so on, versus mileage, which is in tens of thousands of miles, then the ranges of these two variables are very, very different. And to introduce some uniformity and predictive modeling, you may wish to have some scale. And so both the age of the cars and their mileage are represented on the scale of 0 to 1, with "1" meaning the largest possible mileage we have in the dataset, and the same for age, with "1" corresponding to the oldest possible car, which might be a nine-year old car.


    Also, we can convert some numbers into different numbers; for example, instead of keeping $400 in damage for this particular car, we can convert that either into a damage level or a damage category. Categories 0, 1, 2, 3, 4 and  5, with "5" being very, very significant damage. Also, it's important to develop an approach for missing data because in almost any dataset, some values aren't recorded.


    Colour might be missing, mileage might be missing, and so on. So either we introduce an additional value for the variable apart from white, silver of red, black, we can have "unknown" as a value, because it's missing – or we can just remove the records with missing values. However, we have to be very careful with that. Everything depends on the proportion of missing values in the whole dataset. In some cases, we might lose over 90% of records, which isn't healthy.


    So another possibility would be to do some replacement. For example, we can take some mean value for this variable. Let's say the mean value for mileage would be "27,000" miles, and whenever we find a missing value, we insert "27,000" miles. It will be even better if we can estimate the value of this variable on the basis of additional data which we may have. For example, we can assume that the average car travels 12,000 miles per year, and  if we know that the car with missing mileage was four years old, we can then estimate its mileage at 48,000 miles, which is a more meaningful replacement. Additional possibility is to use agent-based systems to fill in the gap. And in the book, we discuss one particular application of agent-based system where we have a collection of birds, they are distributed randomly in the environment, the location is random and the initial direction of their flight is random, and we just impose two very simple rules:


    If two birds of the same species meaning that both of them are either blue or red come close to each other, then since they're the same species, they get even closer together, and if two birds of different species come close to each other, then they get further apart. And we can wonder with random start what would be the emergent behavior, what would happen?


    So we build a simple simulation model and we observe the emergent behavior, and we can see what would happen, how they cluster together, and we can reach some conclusions. We can make a variety of additional observations. This is a very interesting approach that we can use to simulate a variety of things. We can simulate, for example, the number of individuals attending the auction site where the variables are season, weather, proximity from some cities, and a variety of other factors. And the rules we get are based on historical data and our observations of what happened in the past.


    But we can model a variety of situations and we can arrive at some results that would fill in the gap for is. Final aspect I would like to mention is time dependency: very often when people do time series modelling, they assume that they're present at regular intervals. For example, every week you have some sales data, every quarter – in stock market, every day, or every hour where we can take readings, and so on. With cars, it is a very different story.


    For example, we can look at one particular car, let's say Toyota Corolla, let's say blue with some mileage around 30,000, and then we look at one particular auction site and realize that one car of this type was sold in mid-April, the other two in early May, another one in late August. And now we're making a prediction for mid-October. So it's not really this classic time series modelling, when everything is very regular, we need, again, some clever techniques to come up with an accurate prediction.


    Let's talk now a little bit more about information, and later about knowledge. We use all this data, process it, and get some information. For example, we can take one particular make and model –the Pontiac Grand Prix – and concentrate on cars between 20,000 and 40,000 miles, produced in 2001, with no accidents or with damage level of "0." And we can look at the average price of this particular type of car across a variety of auction sits.


    And we can see, on the one hand, we have auction site 14 where these cars aren't that popular, with the average price is around $11,000, and on the other extreme, we have auction site 18, where we can sell the same car for more than $12,500. So we get some very significant information that would be very useful in our distribution decision of where we should send each car. However, we have to remember the volume effect; for example, it seems that the best destination for this particular car is auction site 18. However, if we send 300 Pontiac Grand Prix to auction site 18, then the price might fall below $10,000 because of the volume effect because of too much supply. We may get some additional external data for consumer preferences in the surrounding neighbourhoods. So in the area around auction site 18, we can look at color of new cars sold, which provides information on consumer color preferences.


    This might also be an important indicator for some auction sites that we'll return to during the next video. We can then look at that one particular auction site and again, look at one particular make and model, with particular mileage and year of production, with no accident record, and look at different months of the year and the number of cars that were sold and the average price. And for some particular reason, September was very, very successful: despite the fact that the number of cars was the highest: 18, the price was also very high.


    It might be because of some seasonal factors, or there were some other external events that contributed to that, which would require deeper investigation. We can look at the total number of cars sold in the nation, in different states, we can look at the number of people attending auctions, during the summertime or wintertime, and this particular piece of information might be quite significant. Again, the more people attending auctions, the higher the price, the correlation is very, very clear.


    Also, if we look at depreciation from the day the car is delivered to auction site to the day the car is sold, it seems that a few auction sites have very long waiting periods in Nevada and Idaho, and the north east over there. And this should be taken also into account when we distribute the cars, trying to maximize the auction price. So let's talk about knowledge: we can gain a variety of very important insights.


    For example, we can discover that green cars are very unpopular in Texas: for some particular reason, people there simply don't like green cars, whatever the reason, and there is significant evidence based on historical data. So we can make a note saying: "try to stay away from sending any green cars to Houston," or we might discover that people over there don't appreciate cars with high mileage, so we can make another note. This is the knowledge we discover by analyzing historical data, finding that if a car has over 80,000 miles, it's probably a mistake to send this car to this auction site; or old cars – cars produced in 2002 or earlier – or it may be some current events, some bad press, people boycotting BMWs, Audis, and so on. We can make a note, no BMWs, no Audis would go to this auction site, keep these cars on an exclusion list. The same with volume effect. If we look at the number of similar cars being sold at a particular auction on a particular day, and I indicated already a few times there is a strong correlation between the price of the car and the number of the same cars that are sold, the number of Pontiac Grand Prix for example, we send 200 almost identical cars to this auction site, we would like to understand what would happen to the price, a very important consideration when we build a predictive model.


    The remarketing team in Detroit are manually making up to 7,000 decisions. At this particular distribution center, they have 510 cars. And for each single car, they have to make a decision: which car should be shipped to which particular auction site. And they have to take all information and all knowledge into account. They take into account seasonality and weather forecasts and distances and transportation costs, depreciation values and volume effect – everything humanly possible – and they are doing the best they can.


    So basically, so far we discussed how decisions are made using data, information and knowledge. Of course, everything is supported by additional material. They have access to Black Book, Blue Book, with the valuation of different colors which are modified by mileage and year of production and so on. They are getting regular reports from individual auction sites.


    So they have data, information, knowledge, and their task is to make the best possible decision. And the question is, can we make better decisions by climbing up the pyramid? If we add a predictive model, if we add optimization model, can we beat a human team by making smarter decision, providing significant value for the company? This would be the topic for the next couple of videos. Thank you.


    To schedule a demo or learn more about our software productsplease contact us:

    Request a Demo

    "Larry will be our digital expert that will enable our sales team and add that technological advantage that our competitors don't have."

    Kerry Smith
    CEO, PFD Foods
    $1.6 billion in revenue
    PFD Food Services uses Complexica's Order Management System

    "Lion is one of Australasia’s largest food and beverage companies, supplying various alcohol products to wholesalers and retailers, and running multiple and frequent trade promotions throughout the year. The creation of promotional plans is a complicated task that requires considerable expertise and effort, and is an area where improved decision-making has the potential to positively impact the sales growth of various Lion products and product categories. Given Complexica’s world-class prediction and optimisation capabilities, award-winning software applications, and significant customer base in the food and alcohol industry, we have selected Complexica as our vendor of choice for trade promotion optimisation."

    Mark Powell
    National Sales Director, Lion

    "At Liquor Barons we have an entrepreneurial mindset and are proud of being proactive rather than reactive in our approach to delivering the best possible customer service, which includes our premier liquor loyalty program and consumer-driven marketing. Given Complexica’s expertise in the Liquor industry, and significant customer base on both the retail and supplier side, we chose Complexica's Promotional Campaign Manager for digitalizing our spreadsheet-based approach for promotion planning, range management, and supplier portal access, which in turn will lift the sophistication of our key marketing processes."

    Richard Verney
    Marketing Manager
    Liquor Barons



    "Dulux is a leading marketer and manufacturer of some of Australia’s most recognised paint brands. The Dulux Retail sales team manage a diverse portfolio of products and the execution of our sales and marketing activity within both large, medium and small format home improvement retail stores. We consistently challenge ourselves to innovate and grow and to create greater value for our customers and the end consumer. Given the rise and application of Artificial Intelligence in recent times, we have partnered with Complexica to help us identify the right insight at the right time to improve our focus, decision making, execution, and value creation."

    Jay Bedford
    National Retail Sales Manager


    "Following a successful proof-of-concept earlier this year, we have selected Complexica as our vendor of choice for standardizing and optimising our promotional planning activities. Complexica’s Promotional Campaign Manager will provide us with a cloud-based platform for automating and optimising promotional planning for more than 2,700 stores, leading to improved decision-making, promotional effectiveness, and financial outcomes for our retail stores."

    Rod Pritchard
    Interim CEO, Metcash - Australian Liquor Marketers
    $3.4 billion in revenue

    "After evaluating a number of software applications and vendors available on the market, we have decided to partner with Complexica for sales force optimisation and automation. We have found Complexica’s applications to be best suited for our extensive SKU range and large set of customers, being capable of generating recommendations and insights without burdening our sales staff with endless data analysis and interpretation. 

    Aemel Nordin
    Managing Director, Polyaire
    Polyaire chooses Complexica for sales force optimisation and automation

    "DuluxGroup is pleased to expand its relationship with Complexica, a valued strategic partner and supplier to our business. Complexica’s software will enable DuluxGroup to reduce the amount of time required to generate usable insights, increase our campaign automation capability, personalise our communications based on core metrics, and close the loop on sales results to optimise ongoing digital marketing activity."

    James Jones
    Group Head of CRM, DuluxGroup

    "Instead of hiring hundreds of data scientists to churn through endless sets of data to provide PFD with customer-specific insights and personalised recommendations, Larry, the Digital Analyst® will serve up the answers we need, when we need them, on a fully automated basis without the time and manual processes typically associated with complex analytical tasks.”

    Richard Cohen
    CIO, PFD Foods
    $1.6 billion in revenue

    "As a global innovator in the wine industry, Pernod Ricard Winemakers is always seeking ways to gain efficiencies and best practices across our operational sites. Given the rise of Artificial Intelligence and big data analytics in recent times, we have engaged Complexica to explore how we can achieve a best-in-class wine supply chain using their cloud-based software applications. The engagement is focused on Australia & New Zealand, with a view to expand globally."

    Brett McKinnon
    Global Operations Director, Pernod Ricard Winemakers

    "70% - 80% of what we do is about promotional activity, promotional pricing -- essentially what we take to the marketplace. This is one of the most comprehensive, most complex, one of the most difficult aspect of our business to get right. With Complexica, we will be best in class - there will not be anybody in the market that can perform this task more effectively or more efficiently than we can."

    Doug Misener
    CEO, Liquor Marketing Group
    1,400+ retail stores
    Liquor Marketing Group LMG uses Complexica's Promotional Campaign Manager

    "The key thing that makes such a difference in working with Complexica is their focus on delivering the business benefits and outcomes of the project."

    Doug Misener
    CEO, Liquor Marketing Group
    1,400+ retail stores
    Liquor Marketing Group LMG uses Complexica's Promotional Campaign Manager

    "Australia needs smart technology and people, and it has been a great experience for me to observe Complexica co-founders Zbigniew and Matt Michalewicz assemble great teams of people using their mathematical, logic, programming, and business skills to create world-beating products. They are leaders in taking our bright graduates and forging them into the businesses of the future."

    Lewis Owens
    Chairman of the Board, SA Water

    "Having known the team behind Complexica for some years ago now, I am struck by their ability to make the complex simple - to use data and all its possibilities for useful purpose. They bring real intelligence to AI and have an commercial approach to its application."

    Andrew McEvoy
    Managing Director, Fairfax Media - Digital

    "I have worked with the team at Complexica for a number of years and have found them professional, innovative and have appreciated their partnership approach to delivering solutions to complex problems."

    Kelvin McGrath
    CIO, Asciano

    “Working with Complexica to deliver Project Automate has been a true partnership from the initial stages of analysis of LMG’s existing processes and data handling, through scoping and development phase and onto delivery and process change adoption. The Complexica team have delivered considerable value at each stage and will continue to be a valued partner to LMG."

    Gavin Saunders
    CFO, Liquor Marketing Group
    Liquor Marketing Group LMG uses Complexica's Promotional Campaign Manager

    “Complexica’s Order Management System and Larry, the Digital Analyst will provide more than 300 Bunzl account managers with real-time analytics and insights, to empower decision making and enhanced support. This will create more time for our teams to enable them to see more customers each day and provide the Bunzl personalised experience.”

    Kim Hetherington
    CEO, Bunzl Australasia
    Bunzl Australia uses Complexica's Order Management System

    "The team behind Complexica develops software products that are at the cutting edge of science and technology, always focused on the opportunities to deliver a decisive competitive edge to business. It has always been a great experience collaborating with Matthew, Zbigniew and Co."

    Mike Lomman
    GM Demand Chain, Roy Hill Iron Ore

    "The innovations that the Complexica team are capable of continue to amaze me. They look at problems from the client side and use a unique approach to collaborating with and deeply understanding their customers challenges. This uniquely differentiates what they bring to market and how they deliver value to customers."

    John Ansley
    CIO, Toll Group

    "Rather than building out an internal analytics team to investigate and analyse countless data sets, we have partnered with Complexica to provide our sales reps with the answers they need, when they need them, on a fully automated basis. We are excited about the benefits that Larry, the Digital Analyst will deliver to our business.”

    Peter Caughey
    CEO, Coventry Group

    “Complexica’s Order Management System and Larry, the Digital Analyst will provide more than 300 Bunzl account managers with real-time analytics and insights, to empower decision making and enhanced support. This will create more time for our teams to enable them to see more customers each day and provide the Bunzl personalised experience.”

    Kim Hetherington
    CEO, Bunzl Australasia
    Bunzl Australia uses Complexica's Order Management System

    "As the leading brand of plasterboard in Australia, CSR is always seeking ways to provide a better customer experience and solidifying the Trade Centres' reputation for providing quality, value and local expert advice. Given the rise of Artificial Intelligence and big data analytics in recent times, we have engaged Complexica to explore how we can provide the Gyprock Trade Centre team with predictive insights on sales and customers, as well as optimised recommendations that are store and customer-specific, rather than endless reporting that needs to be analysed and interpreted."

    Troy Jones
    Regional General Manager, CSR

    "After an evaluation process and successful proof-of-concept in 2016, we have chosen to partner with Complexica to upgrade the technological capability of our in-field sales force. The next-generation Customer Opportunity Profiler provided by Complexica will serve as a key tool for sales staff to optimise their daily activities, personalise conversations and interactions with customers, and analyse data to generate actionable insights."

    Stephen Mooney
    Group Sales Capability Manager, DuluxGroup
    $1.7 billion in revenue
    Dulux Group uses Complexica's Customer Opportunity Profiler

     "After evaluating a number of software systems available in the marketplace, we have ultimately selected Complexica as our vendor of choice for sales force automation and CRM. Given the large SKU range we carry and very long tail of customers we serve, Complexica’s applications are best suited to deal with this inherent complexity without burdening our staff with endless data entry."

    Nick Carr
    CEO, Haircaire Australia
    Australia's largest distributor of haircare products
    Haircare Australia to use Complexica's Customer Opportunity Profiler, CRM and Order Management System


    "Our products are distributed across a broad set of outlets operating under different business models, ranging from ‘big-box retailers’ to small convenience stores. This affects our ability to influence range, share-of-shelf, and stock holdings at the store level, and also adds complexity to our retail execution and field sales model. We have partnered with Complexica to help us automatically predict the ‘next best stores’ to visit at any given time, provide each rep with the 'next best conversations' for each store, and dynamically optimise individual call plans."

    Mark Fenton
    CEO, SodaStream

    Some of our Customers