The attack surfaces of the computing nodes are dramatically decreased compared to other service providers. We are using a firewall with white lists of the access points of companies meaning that our servers cannot be attacked because it is not even available publicly. This gives the strongest available protection of information because the hackers do not even have anything to hack. Aside from this we do code audit and infrastructure audit constantly and also apply proactive black listing protection in case an attack would still come from a white listed company.
Computing the answers for several thousand items might take minutes. The optimum for 10 thousand items might be computed under an hour. Classical machine learning cannot do this, not even close.
Every aspect of every model in the system is entirely adaptive meaning that no parameters are needed from the users like in the case of many solutions in the market. Whenever some information is missing just as in every aspect of life, the system can still make the decision by finding the best mathematical answer to refill the missing information. Our model gives better answers.
Strong fault tolerance against errors in the data is built into every point of our complex decision process to filter anomalies. Like wrong prices, wrong supplier ids when the customer sends back an item and the customer id gets stored in the data instead of the supplier. Wrong delivery times get corrected as well.
Relearns every changes everyday
Even if the company intervenes in anything like changing the amount of order, the system adapts itself to the new changes the next day.
All items of all suppliers
Since no companies have infinite capital, the budget must be taken from an item when we want to increase the order amount for another one. Therefore a global optimum is required considering all aspects of all items and all suppliers when making the decision mathematically.
The system takes into account all limits for the orders like the minimum amounts per item or per supplier, weight and volumes of items and the minimum cost of orders for all suppliers. The system can compute very complicated limits automatically like when 3 pallets or a single truck must be filled entirely as a minimum order amount for a supplier. This is highly complicated because the items have different volumes and they must fill up the total volume whereas future demands changes and other constraints must be considered too when computing the optimum.
Fixed order days
The system can consider specific days when order must be sent to suppliers if it’s a requirement. This gets complicated quickly because the lead times change usually and so the planning periods change as well which are determined by these fixed points of time.
Black and white list of suppliers and items
Filters extreme orders
When making the decision the system is able to make a difference smartly between normal amount of orders and extreme ones to avoid distorting the demand planning.
Lead time detection
Automatically and constantly determines the total lead time to expect for the next delivery. It is essential for the whole demand planning. It has high variance usually and is very unpredictable.
The system understands the amount of the capital and its changes for the selected set of items. This is critical to get to a global optimum. Offers must be maximized to increase chance of satisfying demands as much as possible and the capital must also be split between the suppliers and their items as optimally as possible. Daily capital limits must be determined for this and the total order must be squeezed into it.
Liquidity problem management
The system can handle situations when the capital decreased dramatically or if the company cannot make orders for some time because it’s got liquidity problems. The system can still make the best available decision considering the limited financial resources.
Manual budget limits
The system can be told the minimum and maximum limits of budget to plan with for the entire set of items or the subset as well.
The system does a sophisticated balancing between suppliers and their items when the capital is split between them. Business importance and diversity are both factored in.
A special score is computed for every item and it is updated constantly. It shows how important the specific item is for the company from business standpoint. This is a sophisticated metric considering many current and past properties of the item during its sales period like its unit profit, unit cost, fluctuation of sales, the usual amount of sales, the turnover speed and more. This gives the ability for the system to approach a much better optimum when many options must be considered altogether for the decision.
Items and suppliers can have settings that override the automatic values. Like lead time may be bigger for some items, the limits of minimum orders may vary, some item may be for preorder only, some items may be inactive currently, some items have a minimum stock level, maximum stock level, items will expiry, minimum packaging unit, volume, weight, price discount and more.
Detects packaging units
The system is able to fulfill complicated group minimums if required. This means that multiple items may have a minimum order amount. For example 3 items together should reach a minimum order of 100 pieces independently of their individual amount.
The system converts between currencies automatically. The price values can be provided with a 3 letter abbreviation after the number like “3 eur”, “45 usd”, “569 jpy”.
Expiry periods are taken into account when approaching the global optimum. This is also complicated mathematics because shorter expiry time puts a limit to the amount of order and it matters if the end of expiry ends on weekdays or weekends or holidays. The item will keep expiring during the non-working days. Therefore the actual calendar structure complicates the constraints further. The system can also work with number of days and expiry dates too as input information. All this is considered with the rest of constraints when making the final decision.
Detection of lost demands
The system figures out the amount of demands lost in all sales periods when stock was empty and adapts the decision accordingly when learning from the data.
Detection of seasonality
Detection of inactivity
Automatic restart of inactive items
The automatic inactive period is closed and the item is turned back active again if several conditions meet. Like the item is seasonal and the season begins or if a change is initiated because the item is available and manufactured again.
Offer restart volume for inactive items
The system shows a restart volume for inactive items If they need to be ordered because they are available again at the manufacturer after a long break or any other reasons.
Considering short and long terms of changes in sales periods of items. This complicates things further because the variance keeps changing all the time. The system can handle this easily with our smart new generation methods.
The system is able to understand the different sales prices in the past, even if the prices changed everyday. Or if the future prices changes then it is able to determine the best order amount to stock up for the next period that satisfies the new situation. For example if the company is targeting to do a discount decreasing the price with 20% for the next 2 weeks then more demand is expected. The question is how much more? This is answered with adaptive exponential models considering all past and future information.
Multiple supplier prices
Multiple actual purchase prices can be provided for all items from their suppliers. The system will then choose the best price of it. However it also checks if there is any recent delays in the supplier’s history and considers this as well when choosing a supplier.
Automatic reorder is initiated at an automatic point of time if the items are not arriving.
The system keeps track of delays of deliveries and automatically increases the planning time to decrease the chance of future shortages of goods. This gives an entirely automatic risk management that adapts itself quickly to the unreliable supplier sources. Items can also be marked for out-of-stock protection manually as well. The system is also able to do an automatically computed overstocking if buying prices increase in the future.
The system handles negative sales and negative orders. In each case the items are brought back by the customers or sent back to the suppliers. These information are considered.
The system considers consignee items when planning the daily budget limit for the order. It can also watch the warehouse space for consignee items and limit them entirely automatically because since they don’t cost anything beforehand, the predictions could go way too high. So an automatic limit can be applied.
Detection of company halts
Breaks of company operations in calendar are detected and workdays are filtered for all mathematical calculations. Lead times and expiry times are all converted to workdays while removing the outages to avoid distortion effect of weekends and holidays to all computations. This complicates everything and affects all steps. Our models solve this entirely.
Special offer advertisement periods
The system can calculate with different time periods for different items for which the company would like to advertise these products with same or less selling prices. This complicates further the planning times and planning amounts of the different items and suppliers.
Consideration of supplier halts in the future
Suppliers may suspend operations from time to time for many reasons like holiday during which they don’t deliver any goods. This complicates the planning windows that our system takes into account.
Our models can take into account the physical limits of the warehouse. They are able to squeeze the orders into the available volume and still provide an optimum.
Extremely small data
The models are able to make good decisions from extremely low amount of data like when an item is available for a couple of days only. This is not the case for classical machine learning solutions. They simply cannot handle anything like this. Our system can go on with any items of short life cycles just fine.
Out models give information about the groups of items that they belong to. It’s an entirely automatic grouping process based on the sales characteristics of all items. This is computed by our robust and non-parametric clustering algorithm that’s also part of our innovation. This kind of grouping gives an insight into further understanding of the sales process.
Recommending automatic configuration of items on shelves. This is done by considering the longest collective refill time based on intelligent understanding of past sales.
The report contains several extra columns that are providing useful information for the company about the status of items. Like score of business importance, automatic group type, delivery times, planning times, a human readable text of comments containing information about many aspects of the item like: How long has it been delayed? Is it inactive? Is there any limits of order at its supplier? Was there any constraint during the computation that had to use less budget for this supplier? And many more.
We do constant supervising everyday with regular checks and verifications using our internal analytics to provide maximum quality assurance and to minimize financial risks. We use intelligent solutions like anomaly detection along with human control. Not only we shape our solution for the company’s needs but we make it error proof as well.