The tags of this question included convolutional and recurrent types network, it is likely that the GRU cell is a good choice for learning temporal functions, however reinforcement is the kind of learning that is most developed for continuous learning. With a GRU network, the training will have to be run off line from data acquired from the business. That's fine too.
Most of the pertinent dimensions (fields) of input from which learning of optimal revenue can occur is probably already in the point of sale system, the inventory system, or an integrated system containing both. What may be missing is spoilage data and stock depletion data.
To optimize, more information related to the real time purchase and sales available to the manager, regardless whether the stock management is human or AI, can lead to better decisioning.
- Indications of spoilage and product disposal because of it
- Indications of expired product in stock based on distributor printed dates
- Indications of missing stock on the shelf
- Indications of missing stock of non-perishables to continually forward fill the products that exhibit high sales rates
- Balance in the use of customer facing shelf display area and heights of customer facing product, especially product with high rate of sale
- Day of the week
- Standard distributor delivery times
In standard GRU or LSTM network learning or in DQN designs, these will need to be inputs so that the learning includes these features and can correlate the business inventory and sales features with them.
The AI component must learn how to order and put on sales products in such a way to minimize losses due to spoilage and maximize sales. Prediction of revenue and cost can only be reliable after a process is under control. This is an area of business control that has already benefited from considerable research. The fields of manufacturing and business have already seen the advantages of Total Quality Management (TQM), CMU's Capability Maturity Model, and 6 Sigma.
Therefore it is recommended to follow the basic principles of these systems of thought and phase this project out something like this.
- Record observations — make sure a good stream of accurate daily and perhaps hourly data is acquired and stored
- Document a repeatable process — how to buy, stock the shelves, and put on sale as a function of simple statistics taken from recorded observations, manually first to avoid risking the loss of the business before the AI has learned anything of value
- Run the AI training from the working business data to bring its effectiveness to at least as good as the repeatable manual process before deployment
- Continue to push the limit of optimization by further developing the AI component and the acquisition and control functions that connect it to the business
Response to Comments
How can I get data?
The answer to that question is in the third bullet item just above. Deploying a learning system that has not yet learned anything and not yet passed validation testing as a replacement for existing human processes can lead to business collapse. To open a new store employing AI, training and test data to prepare the system for actual use and validation data to ensure it is prepared, whether beginning with RNN or DQN, must be collected or bought from an existing set of stores with similar characteristics.
The only other option is to generate the data by creating a model of a store and simulating customer behavior, but that takes significant expertise.