Systems and method for updating an item of data representative of the weight of a product in a computer database
Patent Information
- Application Number
- EP2024706120
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-02-20
- Filing Date
- 2024-02-20
- Publication Date
- 2025-12-31
AI Technical Summary
In warehouse management and logistics, the association of product weights with theoretical weights is often erroneous due to changes in product composition or packaging, making it difficult to ensure order compliance and accuracy.
A system and method that utilize a software module for automatic product classification and machine learning to adaptively update weight data by capturing and filtering weight values based on validity intervals, minimum and maximum capture periods, and statistical parameters, ensuring accurate and reliable weight representation.
This approach ensures effective and reliable updates of product weights, accounting for fluctuations and variations, thereby enhancing the accuracy of order compliance checks and warehouse management.
Smart Images

Figure EP2024054291_29082024_PF_FP_ABST
Abstract
Description
[0001] DESCRIPTION
[0002] SYSTEMS AND METHOD FOR UPDATING DATA REPRESENTATIVE OF THE WEIGHT OF A PRODUCT IN A COMPUTER DATABASE
[0003] Technical field of the invention
[0004] The present invention relates to systems for updating data representative of the weight of a product in a computer database and a method for updating data representative of the weight of a product in a computer database. It applies, in particular, to the field of warehouse management and logistics.
[0005] State of the art
[0006] In the field of warehouse management and logistics, particularly orders, a weight value is associated with every product so as to ensure compliance control between an order and a set containing at least one product, or item, to be shipped. This compliance is achieved, simply, by calculating the arithmetic sum of the weights measured by an operator of the products in an order being processed and by comparing them with the arithmetic sum of the theoretical weights of the products. This assumes that the association between product and theoretical weight of the products is correctly set. However, for several reasons, this association is often erroneous.
[0007] In particular, manufacturers of certain products may change the composition of the products in such a way that the weight of the product is affected, either intentionally or unintentionally. Such a change may not be notified to warehouse managers, making it impossible to check order compliance. It also happens that the packaging of a product changes, altering not directly the weight of a product but the weight of a transport batch of the product.
[0008] For all these reasons, verifying the conformity of a set of products to be sent with respect to an order issued for these products is made difficult and warehouse management is degraded. We know of American patent application US 2008 / 217 108A1 which discloses a method for validating a weight measurement representative of an order if, after a period of time has elapsed, the order is not contested.
[0009] Brief description of the figures
[0010] Other advantages, aims and particular characteristics of the invention will emerge from the following non-limiting description of at least one particular embodiment of the systems and method which are the subject of the present invention, with reference to the appended drawings, in which: Figure 1 represents, schematically, a particular embodiment of the system which is the subject of the invention, Figure 2 represents, schematically, a particular embodiment of a computer system which is the subject of the invention, Figure 3 represents, and in the form of a flowchart, a particular succession of steps of the method which is the subject of the invention, Figure 4 represents, schematically, a set of weight values captured from a product and implemented by a system or method which is the subject of the invention and Figure 5 represents, in the form of a flowchart, a particular succession of steps complementary or subsidiary to that of the method which is the subject of the invention.
[0011] Subject of the invention
[0012] The present invention aims to remedy all or part of these drawbacks.
[0013] All embodiments disclosed and claimed herein are directed to computer-implemented methods that interact with digital data to provide a practical application of computer technology to the problem of unreliability in identifying the nature of a batch or product by the weight of said batch or product, considering fluctuations in weight related to actions of the manufacturers of such batches or products. The disclosure is not intended to encompass techniques for organizing human activity, performing mental processes, or executing a mathematical concept, and any interpretation of the claims to encompass such techniques would be unreasonable based on the disclosure as a whole.
[0014] To this end, according to a first aspect, the invention relates to a system according to claim 1. Thanks to these provisions, the reference weight of the products, articles or batches evolves according to the modifications of this weight by the manufacturers, these modifications not being transmitted reliably to the storage and distribution warehouses using the weight of the products as a control measure in the execution of order processing. The implementation of validity intervals for weight captures makes it possible to guarantee the adaptive nature of the system, by favoring recent captures at the expense of older captures.
[0015] In embodiments, the system which is the subject of the invention comprises a software module for automatic classification of products in the database, associating at least one product identifier with a product class, at least one value from among:
[0016] - a minimum number of weight values captured for a product identifier,
[0017] - a time interval of validity of capture of weight values captured for a product identifier and / or
[0018] - a maximum validity period for capturing weight values captured for a product identifier, implemented by the software module for determining data representative of the weight being determined according to a product class.
[0019] These embodiments make it possible to categorize products into different groups with distinct characteristics, particularly in terms of processing frequency, for example. This makes it possible to guarantee an efficient and reliable update, in the sense of being representative of reality, of the weight values of the products.
[0020] In embodiments, the system of the invention comprises a machine learning module configured to associate a product class with at least one product identifier. These embodiments make it possible to obtain product classes automatically and adaptably according to the learning of the learning module.
[0021] In embodiments, the learning module is an automatic learning classification module configured to associate a product class with at least one product identifier based on:
[0022] - a maximum duration between two captures of weight values captured for a product identifier,
[0023] - an average duration between two captures of weight values captured for a product identifier,
[0024] - a total number of weight value captures captured for a product identifier,
[0025] - a maximum number, per day during which at least one weight capture is carried out, of captures of weight values captured for a product identifier,
[0026] - an average number, per day during which at least one weight capture is carried out, of captures of weight values captured for a product identifier,
[0027] - an average number, per day, of captures of weight values captured for a product identifier,
[0028] - a proportion of the number of days during which at least one weight capture is carried out among the number of days during a given period,
[0029] - a number of days during which at least three weight captures are carried out,
[0030] - a proportion of the number of days during which at least three weight captures are carried out among the number of days during which at least one weight capture is carried out,
[0031] - a number of successive days during which at least three weight captures are carried out and / or
[0032] - a duration between the first day and the last day during which at least one weight capture is carried out.
[0033] In embodiments, the system that is the subject of the invention comprises a software module for filtering captured weight values based on a capture validity limit value, the filtered values being implemented by the determination software module and / or by the machine learning module. These embodiments make it possible to remove extraordinary and incorrect values from the statistical sample serving as a basis for the adaptivity of the system. For example, in the case of implementing the system in a warehouse, an operator can "force" the weight of a product in the event of a mismatch between the measured weight and the theoretical weight.
[0034] In embodiments, the system that is the subject of the invention comprises a module for updating the filtering software module, configured to update the validity limit value, as a function of a statistical parameter representative of a distribution of captured weight values and reference weight values associated with at least one product identifier. These embodiments make it possible to intelligently filter the values implemented in the update module.
[0035] In embodiments, the statistical parameter is formed from the sum of:
[0036] - the variance of a distribution of captured weight values and reference weight values associated with a product identifier and
[0037] - the variance of a distribution of captured weight values and reference weight values independently of a product identifier.
[0038] These embodiments make it possible to take into account both intra-product variation and inter-product variation.
[0039] According to a second aspect, the invention relates to a method for updating data representative of the weight of a product in a computer database, which comprises:
[0040] - a step of capturing a value representative of the weight of a product,
[0041] - a timestamp step, to associate a timestamp value with a weight value capture of a product represented, in a database, by a product identifier,
[0042] - a step of determining data representative of the weight of a product based on at least:
[0043] - a minimum number of weight values captured for a product identifier,
[0044] - a time interval of validity of capture of weight values captured for a product identifier and / or
[0045] - a maximum validity period for capturing weight values captured for a product identifier, said step being configured to determine an average value of captured weights:
[0046] - for the minimum number of values defined, - located in a minimum number of successive intervals of validity time defined and
[0047] - within the limit of the maximum period of validity defined and
[0048] - a step of updating a weight value of a product in a computer database based on the determined average value.
[0049] This method has the same advantages as the system which is the subject of the first aspect of the invention.
[0050] According to a third aspect, the invention relates to a system for updating data representative of the weight of a product in a computer database, which comprises:
[0051] - at least one computing system, comprising at least one processor and at least one memory, and
[0052] - instructions, stored in a memory and which, when executed by the computing system, cause the computing system to carry out:
[0053] - a step of capturing a value representative of the weight of a product,
[0054] - a timestamp step, to associate a timestamp value with a weight value capture of a product represented, in a database, by a product identifier,
[0055] - a step of determining data representative of the weight of a product based on at least:
[0056] - a minimum number of weight values captured for a product identifier,
[0057] - a time interval of validity of capture of weight values captured for a product identifier and / or
[0058] - a maximum validity period for capturing weight values captured for a product identifier, said step being configured to determine an average value of captured weights:
[0059] - for the minimum number of values defined,
[0060] - located within a minimum number of successive intervals of defined validity time and
[0061] - within the limit of the maximum period of validity defined and
[0062] - a step of updating a weight value of a product in a computer database based on the determined average value.
[0063] This system has the same advantages as the system which is the subject of the first aspect of the invention.
[0064] Description of exemplary embodiments of the invention The present description is given without limitation, each characteristic of an embodiment being able to be combined with any other characteristic of any other embodiment in an advantageous manner.
[0065] Please note that the figures are not to scale.
[0066] As understood from the present description, various inventive concepts may be implemented by one or more methods or devices described below, several examples of which are provided herein. The actions or steps performed in carrying out the method or device may be ordered in any suitable manner. Accordingly, it is possible to construct embodiments in which the actions or steps are performed in a different order than illustrated, which may include performing certain acts simultaneously, even if they are presented as sequential acts in the illustrated embodiments.
[0067] The expression "and / or", as used herein and in the claims, is to be understood to mean 'either or both' of the elements so conjoined, i.e., elements which are present conjunctively in some cases and disjunctively in other cases. Multiple elements listed with "and / or" are to be interpreted in the same way, i.e., 'one or more' of the elements so conjoined. Other elements may optionally be present, other than the elements specifically identified by the "and / or" clause, whether or not they are related to these specifically identified elements.Thus, by way of non-limiting example, a reference to "A and / or B", when used in conjunction with open language such as "comprising" may refer, in one embodiment, to A only (optionally including elements other than B); in another embodiment, to B only (optionally including elements other than A); in yet another embodiment, to both A and B (optionally including other elements); etc.
[0068] As used herein in the description and claims, "or" is to be understood inclusively.
[0069] As used in this specification and in the claims, the expression "at least one", with reference to a list of one or more elements, is to be understood to mean at least one element selected from one or more elements in the list of elements, but not necessarily including at least one of each element specifically listed in the list of elements and not excluding every combination of elements in the list of elements. This definition also allows for the optional presence of elements other than the specifically identified elements in the list of elements to which the expression "at least one" refers, whether or not related to those specifically identified elements.Thus, by way of non-limiting example, "at least one of A and B" (or, equivalently, "at least one of A or B", or, equivalently, "at least one of A and / or B") may refer, in one embodiment, to at least one, optionally including more than one, A, without B present (and optionally including elements other than B); in another embodiment, to at least one, optionally including more than one, B, without A present (and optionally including elements other than A); in yet another embodiment, to at least one, optionally including more than one, A, and at least one, optionally including more than one, B (and optionally including other elements); etc.
[0070] In the claims, as well as in the description below, all transitional expressions such as "comprising", "including", "carrying", "having", "containing", "involving", "holding", "consisting of", and the like, are to be understood as open, i.e., as meaning including but not limited to. Only the transitional expressions "consisting of" and "consisting essentially of" are to be understood as closed or semi-closed transitional expressions, respectively.
[0071] 2 is a block diagram illustrating an exemplary computer system with which an embodiment may be implemented. In the example of FIG. 2, a computer system 205 and instructions for implementing the disclosed technologies in hardware, software, or a combination of hardware and software are shown schematically, e.g., as boxes and circles, at the same level of detail that is commonly used by those of ordinary skill in the art to which this disclosure relates to communicate about computer architecture and computer system implementations.
[0072] The computer system 205 includes an input / output (I / O) subsystem 220 that may include a bus and / or one or more other communication mechanisms for communicating information and / or instructions between components of the computer system 205 over electronic signal paths. The input / output subsystem 220 may include an input / output controller, a memory controller, and at least one input / output port. The electronic signal paths are shown schematically in the drawings, for example, as lines, one-way arrows, or two-way arrows.
[0073] At least one processor 210 is coupled to the I / O subsystem 220 to process information and instructions. The processor 210 may include, for example, a general-purpose microprocessor or microcontroller and / or a special-purpose microprocessor such as an embedded system or graphics processing unit (GPU) or a digital signal processor or an ARM processor. The processor 210 may include an integrated arithmetic logic unit (ALU) or may be coupled to a separate ALU. The computer system 205 may include one or more memories 225, such as a main memory, which is coupled to the I / O subsystem 220 to electronically digitally store data and instructions to be executed by the processor 210. The memory 225 may include volatile memory such as various forms of random access memory (RAM) or any other dynamic storage device.Memory 225 may also be used to store temporary variables or other intermediate information during the execution of instructions to be executed by processor 210. Such instructions, when stored in a non-transitory computer-readable storage medium accessible to processor 210, may transform computer system 205 into a special-purpose machine that is customized to perform the operations specified in the instructions.
[0074] The computer system 205 further includes non-volatile memory such as a read-only memory (ROM) 230 or other static storage device coupled to the I / O subsystem 220 for storing information and instructions for the processor 210. The ROM 230 may include various forms of programmable ROM (PROM) such as erasable PROM (EPROM) or electrically erasable PROM (EEPROM). A persistent storage unit 215 may include various forms of non-volatile random access memory (NVRAM), such as FLASH memory, or solid state storage, a magnetic disk, or an optical disk such as a CD-ROM or DVD-ROM and may be coupled to the I / O subsystem 220 for storing information and instructions.Memory 215 is an example of a non-transitory computer-readable medium that may be used to store instructions and data that, when executed by processor 210, cause execution of computer-implemented methods for performing the techniques of this document.
[0075] The instructions in memory 225, ROM 230, or storage 215 may comprise one or more sets of instructions that are organized into modules, methods, objects, functions, routines, or calls. The instructions may be organized as one or more computer programs, operating system services, or application programs, including mobile applications. The instructions may comprise an operating system and / or system software; one or more libraries to support multimedia, programming, or other functions; data protocol instructions or stacks to implement TCP / IP, HTTP, or other communication protocols; file format processing instructions to parse or render files encoded using HTML, XML, JPEG, MPEG, or PNG;user interface instructions for rendering or interpreting commands for a graphical user interface (GUI), command-line interface, or text-based user interface;application software such as an office suite, Internet access applications, design and manufacturing applications, graphics applications, audio applications, software engineering applications, educational applications, games, or miscellaneous applications. The instructions may implement a web server, a web application server, or a web client. The instructions may be organized as a presentation layer, an application layer, and a data storage layer such as a relational database system using Structured Query Language (SQL) or no SQL, an object store, a graph database, a flat file system, or other data storage.;
[0076] The computer system 205 may be coupled via the I / O subsystem 220 to at least one output device 235. In one embodiment, the output device 235 is a digital computer display. Exemplary displays that may be used in various embodiments include a touchscreen or a light-emitting diode (LED) display or a liquid crystal display (LCD) or an e-paper display. The computer system 205 may include one or more other types of output devices 235, instead of or in addition to a display device. Examples of other output devices 235 include printers, ticket printers, plotters, projectors, sound cards or video cards, speakers, buzzers or piezoelectric devices or other audible devices, LED or LCD lamps or indicators, haptic devices, actuators, or servos.
[0077] At least one input device 240 is coupled to the I / O subsystem 220 to communicate signals, data, command selections, or gestures to the processor 210. Examples of input devices 240 include touchscreens, microphones, digital still and video cameras, alphanumeric and other keys, keyboards, graphics tablets, image scanners, joysticks, clocks, switches, buttons, dials, sliders.
[0078] Another type of input device is a control device 245, which may perform cursor control or other automated control functions such as navigating a graphical interface on a display screen, alternatively or in addition to input functions. The control device 245 may be a touchpad, mouse, trackball, or cursor direction keys to communicate direction information and control selections to the processor 210 and to control movement of the cursor on the display 235. The input device may have at least two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), which allows the device to specify positions in a plane.Another type of input device is a wired, wireless, or optical control device, such as a joystick, wand, console, steering wheel, pedal, gear shift mechanism, or other type of control device. An input device 240 may include a combination of several different input devices, such as a video camera and a depth sensor.
[0079] In another embodiment, the computer system 205 may include an Internet of Things (IoT) device in which one or more of the output device 235, the input device 240, and the control device 245 are omitted. Or, in such an embodiment, the input device 240 may include one or more cameras, motion detectors, thermometers, microphones, seismic detectors, other sensors or detectors, measuring devices, or encoders, and the output device 235 may include a special-purpose display such as a single-line LED or LCD display, one or more indicators, a display panel, a meter, a valve, a solenoid, an actuator, or a servomotor.
[0080] The output device 235 may include hardware, software, firmware, and interfaces to generate position report packets, notifications, pulse or heartbeat signals, or other recurring data transmissions that specify a position of the computer system 205, alone or in combination with other application-specific data, directed to the host 250 or server 255.
[0081] The computer system 205 may implement the techniques described herein using custom hardwired logic, at least one ASIC (Application-specific integrated circuit) or FPGA (Field-programmable gate array), firmware, and / or program instructions or logic that, when loaded and used or executed in combination with the computer system, cause or program the computer system to operate as a special-purpose machine. In one embodiment, the techniques described herein are executed by the computer system 205 in response to the processor 210 executing at least one sequence of at least one instruction contained in the main memory 225.These instructions may be read into main memory 225 from another storage medium, such as memory 215. Execution of the instruction sequences contained in main memory 225 causes processor 210 to execute the process steps described herein. In other embodiments, hard-wired circuits may be used instead of or in combination with software instructions.
[0082] The term "storage medium," as used herein, means any non-transitory medium that stores data and / or instructions that enable a machine to operate in a specific manner. These storage media may include non-volatile media and / or volatile media. Non-volatile media include, for example, optical or magnetic disks, such as memory 215. Volatile media include dynamic memory, such as memory 225. Common forms of storage media include, for example, a hard disk drive, a solid-state drive, a flash drive, a magnetic data storage medium, any optical or physical data storage medium, a memory chip, etc.
[0083] Storage media are distinct from transmission media, but may be used in conjunction with them. Transmission media are involved in the transfer of information between storage media. For example, transmission media include coaxial cables, copper wires, and optical fibers, including the wires that make up a bus of the I / O subsystem 220. Transmission media may also take the form of acoustic or light waves, such as those generated during radio and infrared data communications.
[0084] Various forms of media may be involved in transporting at least one sequence of at least one instruction to the processor 210 for execution. For example, the instructions may initially be transported on a magnetic disk or solid-state drive of a remote computer. The remote computer may load the instructions into its dynamic memory and send the instructions over a communications link such as a fiber optic or coaxial cable or a telephone line using a modem. A modem or router local to the computer system 205 may receive the data over the communications link and convert the data into a format that can be read by the computer system 205.For example, a receiver such as a radio frequency antenna or an infrared detector may receive the data carried in a wireless or optical signal and suitable circuitry may provide the data to the I / O subsystem 220, for example by placing the data on a bus. The I / O subsystem 220 transports the data to the memory 225, from which the processor 210 retrieves and executes the instructions. The instructions received by the memory 225 may optionally be stored on the memory 215 before or after execution by the processor 210.
[0085] The computer system 205 also includes a communication interface 260 coupled to a bus 220. The communication interface 260 provides a bidirectional data communication coupling to the one or more network links 265 that are directly or indirectly connected to at least one communication network, such as a network 270 or a public or private cloud on the Internet. For example, the communication interface 260 may be an "Ethernet"® network interface, an Integrated Services Digital Network (ISDN) card, a cable modem, a satellite modem, or a modem for providing a data communication connection to a corresponding type of communication line, for example, an "Ethernet"® cable or a metallic cable of any type or a fiber optic line or a telephone line.Network 270 broadly represents a local area network (LAN), a wide area network (WAN), a campus network, an Internet network, or any combination thereof. Communications interface 260 may include a LAN card to provide a data communications connection to a compatible LAN, or a cellular radiotelephone interface that is wired to send or receive cellular data according to cellular radiotelephone wireless network standards, or a satellite radio interface that is wired to send or receive digital data according to satellite wireless network standards. In any such implementation, communications interface 260 sends and receives electrical, electromagnetic, or optical signals over signal paths that carry digital data streams representing various types of information.
[0086] The network link 265 typically provides electrical, electromagnetic, or optical data communication directly or via at least one network to other data devices, using, for example, satellite, cellular, "Wi-Fi"®, or "BLUETOOTH"® technology. For example, the network link 265 may provide a connection through a network 270 to a host computer 250.
[0087] Further, the network link 265 may provide a connection via the network 270 or to other computing devices via interconnecting devices and / or computers that are operated by an Internet Service Provider (ISP) 275. The ISP 275 provides data communication services via a global packet data communication network represented by the Internet 280. A server computer 255 may be coupled to the Internet 280. The server 255 broadly represents any computer, data center, virtual machine or virtual computing instance with or without a hypervisor, or computer running a containerized program system such as "DOCKER"® or "KU BERN ETES"®. The server 255 may represent an electronic digital service that is implemented using more than one computer or instance and that is accessed and used by transmitting web service requests,Uniform Resource Locator (URL) strings with parameters in Hypertext Transfer Protocol (HTTP) payloads, Application Programming Interface (API) calls, application service calls, or other service calls. The computer system 205 and the server 255 may form elements of a distributed computing system that includes other computers, a processing cluster, a server farm, or other organization of computers that cooperate to perform tasks or run applications or services. The server 255 may have one or more sets of instructions that are organized as modules, methods, objects, functions,routines or calls. Instructions may be organized as one or more computer programs, operating system services, or application programs, including mobile applications. Instructions may include an operating system and / or system software; one or more libraries to support multimedia, programming, or other functions; instructions or data protocol stacks to implement TCP / IP (for "Transmission control protocol / Internet protocol"), HTTP, or other communication protocols; file format processing instructions to parse or render files encoded using HTML (for "Hypertext markup language"), XML (for "Extensible markup language"),JPEG (for Joint Photography Experts Group), MPEG (for Moving picture experts group), or PNG (for Portable Networks Graphics); user interface instructions for rendering or interpreting commands for a graphical user interface (GUI), command-line interface, or text-based user interface; application software such as an office suite, Internet access applications, design and manufacturing applications, graphics applications, audio applications, software engineering applications, educational applications, games, or miscellaneous applications. The server 255 may include a web application server that hosts a presentation layer,an application layer and a data storage layer such as a relational database system using Structured Query Language (SQL) or no SQL, an object store, a graph database, a flat file system, or any other data storage.
[0088] The computer system 205 may send messages and receive data and instructions, including program code, via the network(s), network link 265, and communications interface 260. In the Internet example, a server 255 may transmit requested code for an application program via the Internet 280, ISP 275, local area network 270, and communications interface 260. The received code may be executed by the processor 210 as it is received, and / or stored in memory 215, or other non-volatile memory for later execution.
[0089] The execution of instructions as described in this section may implement a process as an instance of a running computer program consisting of program code and its current activity. Depending on the operating system (OS), a process may consist of multiple threads that execute instructions concurrently. In this context, a computer program is a passive collection of instructions, while a process may be the actual execution of those instructions. Multiple processes may be associated with the same program; for example, having multiple instances of the same program open often means that more than one process is running. Multitasking may be implemented to allow multiple processes to share the processor 210.Although each processor 210 or processor core executes only one task at a time, the computer system 205 may be programmed to implement multitasking to allow each processor to switch between currently executing tasks without having to wait for each task to complete. In one embodiment, the switches may be performed when tasks perform input / output operations, when a task indicates that it can be switched, or upon hardware interrupts. Time sharing may be implemented to allow rapid response to user interactive applications by rapidly performing context switches to give the appearance of simultaneous execution of multiple processes.In one embodiment, for security and reliability reasons, an operating system may prevent direct communication between independent processes, by providing strictly mediated and controlled interprocess communication functionality.
[0090] In this description, the term "order" refers to a set of at least one product having a specific recipient, the term "batch" refers to a set of at least two similar products grouped in a single package, and the term "product" or "item" refers to an object that can be grouped into a batch or set to form an order.
[0091] Figure 1 shows a schematic view of an embodiment of the system 100 which is the subject of the invention. This system 100 for updating data representative of the weight of a product in a computer database 105 comprises:
[0092] - a sensor 110 with a value representative of the weight of a product,
[0093] - a timestamp module 115, configured to associate a timestamp value with a capture of the weight value of a product represented, in a database, by a product identifier, - a software module 120 for determining data representative of the weight of a product as a function of at least:
[0094] - a minimum number of weight values captured for a product identifier,
[0095] - a time interval of validity of capture of weight values captured for a product identifier and / or
[0096] - a maximum validity period for capturing weight values captured for a product identifier, said module being configured to determine an average value of captured weights:
[0097] - for the minimum number of values defined,
[0098] - located within a minimum number of successive intervals of defined validity time and
[0099] - within the limit of the maximum period of validity defined and
[0100] - a software module 125 for updating a weight value of a product in a computer database based on the determined average value.
[0101] In variants, the system 100 comprises a sensor 111 of a product reference. Such a reference is associated in a computer database of products in the form of an identifier, for example alphanumeric.
[0102] The sensor 111 of a reference representative of a batch or a product is, for example, an image sensor configured to detect a two-dimensional or four-dimensional bar code (called a “QR code”, for “Quick Response code”).
[0103] In preferred embodiments, the sensor 111 is a barcode scanner. In variants, not shown, the sensor 111 implements an I / O subsystem 220, associating a keyboard or a mouse with a user interface so as to allow manual entry, into a batch or product control computer system, of an alphanumeric reference representative of a batch or a product.
[0104] The sensor 110 of a value representative of the weight of a product is, for example, a scale. The weight of a product can be associated with each type of product (or each product reference), so as to compare the theoretical weight of a product and the captured weight, so as to avoid obvious errors in sending products. The capture of the reference of a product and the weight of said product allows a double verification of the identification of a product to be sent.
[0105] The time stamp module 115 is, for example, an internal clock of the calculation system 205. This time stamping means 130 is configured, for example, to provide date and time information. Such information is implemented, for example, when a sensor 110 is actuated with a value representative of the weight of a product.
[0106] The time stamp module 115 may be integrated into the sensor 110 of a value representative of the weight of a product or into a computer server 255 associated with the database 105 of captured product weight values. The time stamp module 115 may be a dedicated third-party system with which a calculation system 205 interacts when capturing a value representative of the weight of a product by the sensor 110.
[0107] The software module 120 is, for example, formed from a set of instructions stored in a memory 215 of a computing system 205 and configured to be executed by a processor 210, this set of instructions being integrated into dedicated software or not. Such instructions are representative of a programmed processing algorithm. Such an algorithm is, for example, configured to carry out at least one of the following processing operations:
[0108] - selection of a number of samples of weight value captures, for the same product reference, for a duration having as upper limit the date of execution of the algorithm and as lower limit the date of execution, from which the validity time interval is subtracted,
[0109] - if this number of samples is less than the minimum number defined, selection of a number of samples of weight value captures, for the same product reference, over a minimum number of validity time intervals, in such a way that this number of samples is greater than or equal to the minimum number defined, for a duration having as its upper limit the date of execution of the algorithm and as its lower limit the date of execution, from which the minimum number of validity time intervals is subtracted and / or
[0110] - if the time (measured in number of defined intervals) required to select the number of capture samples is greater than the maximum time defined, the product weight update is abandoned.
[0111] The values implemented by the 120 software module, such as:
[0112] - the minimum number of weight values captured for a product identifier,
[0113] - the time interval of validity of capturing weight values captured for a product identifier and / or
[0114] - the maximum validity period for capturing weight values captured for a product identifier, can be determined, calculable or learned by automatic training.
[0115] The determination software module 120 may, in variants, be configured to determine another value representative of a statistical distribution of a sample of captured weight values, such as the median for example. In variants, the average determined by the determination software module 120 may be an arithmetic or weighted average, in particular depending on the date of the captured weight value.
[0116] When at least one of these values is determined, this value can be initialized and adapted by a user by implementing a human-machine interface (such as a keyboard and mouse associated with a user interface) associated with the 220 I / O subsystem.
[0117] When at least one of these values is computable, a calculation formula can be entered and adapted by a user by implementing a human-machine interface (such as a keyboard and mouse associated with a user interface) associated with the I / O subsystem 220. In variations, such a calculation formula is predetermined by a computer developer.
[0118] In preferred embodiments, the system 100 comprises a software module 130 for automatic classification of products in the database 105, associating at least one product identifier with a product class, at least one value from among:
[0119] - a minimum number of weight values captured for a product identifier,
[0120] - a time interval of validity of capture of weight values captured for a product identifier and / or
[0121] - a maximum validity period for capturing weight values captured for a product identifier, implemented by the software module 120 for determining data representative of the weight being determined according to a product class.
[0122] Such classification may result from the application of an algorithm, predetermined or defined by a user, for example via the entry of a calculation formula which may be entered and adapted by a user by the implementation of a human-machine interface (such as a keyboard and a mouse associated with a user interface) associated with the 220 I / O subsystem.
[0123] For example, the representative value of the minimum number of weight values captured for a product identifier, said product belonging to a given product class, may be equal to the maximum value between 10 days and the sum of the maximum deviation between two captures of weight values in number of calendar days and the standard deviation of the determined deviation values.
[0124] For example, the representative value of a capture validity time interval for a product identifier, said product belonging to a given product class, may be equal to the maximum value between 5 days and the average difference between two captures of weight values in number of calendar days.
[0125] For example, the maximum validity period for a product identifier, said product belonging to a given product class, may be equal to the maximum value between 3 and a maximum number of weight value captures recorded per day of weight value captures.
[0126] Such a classification may correspond, for example, to a classification representative of the frequency of capturing weight values for different classes of products. Indeed, some products are ordered more regularly than others, which implies a higher frequency of capturing weights. Thus, for such products, the duration of the capture validity interval to be implemented by the determination software module 120 may be reduced. Conversely, some products are rarely ordered and therefore the capture of their weight is rare, thus, the maximum duration of capture validity for such products may be increased. The classification makes it possible to divide the products into homogeneous classes sharing on average the same statistical characteristics.
[0127] The number of classes of such products depends on the implementation of the system 100 and, in particular, on the products stored in a particular warehouse. Thus, it is complex to determine, a priori, a universal classification rule, applicable to any warehouse.
[0128] For these reasons, in preferred embodiments, the system 100 which is the subject of the invention comprises a machine learning module 135 configured to associate a product class with at least one product identifier.
[0129] Such a learning module 135 implements, for example, a neural network. Such a learning module 135 implements, for example, a hierarchical clustering algorithm called “HCPC” (for “Hierarchical Clustering - Partitional Clustering”, translated into French as hierarchical grouping - partitioned grouping) which aims to identify groups of similar objects in a data set. The HCPC approach makes it possible to combine three standard methods used in multivariate analysis, namely, the PCA principal component methods, hierarchical ascending clustering and k-means partitioning.
[0130] The learning module 135 uses a history of weight value captures to allow the classification algorithm to have enough information to characterize the behavior of each product.
[0131] For example, to establish the classification, the algorithm takes as input all the weight value capture data for each product. The collected data provides weight value captures or constants, for example: the actual weight recorded and the capture date. This data does not describe the behavior of the products, namely the number of weight value captures per day, the number of total weight value captures or the duration between two successive weight value captures. On the other hand, all this information makes it possible to calculate variables aimed at identifying behaviors and characterizing the products. Thus, a product characterization function can be implemented.
[0132] This function takes as input the weight value capture data from the database and calculates the variables that best describe the products. The behavior of a product over time is defined in the table below.
[0133] [Table]
[0134] Thus, in particular embodiments, the learning module 135 is an automatic learning classification module configured to associate a product class with at least one product identifier based on:
[0135] - a maximum duration between two captures of weight values captured for a product identifier,
[0136] - an average duration between two captures of weight values captured for a product identifier,
[0137] - a total number of weight value captures for a product identifier,
[0138] - a maximum number, per day during which at least one weight capture is carried out, of captures of weight values captured for a product identifier,
[0139] - an average number, per day during which at least one weight capture is carried out, of captures of weight values captured for a product identifier,
[0140] - an average number, per day, of captures of weight values captured for a product identifier,
[0141] - a proportion of the number of days during which at least one weight capture is carried out among the number of days during a given period,
[0142] - a number of days during which at least three weight captures are carried out,
[0143] - a proportion of the number of days during which at least three weight captures are carried out among the number of days during which at least one weight capture is carried out,
[0144] - a number of successive days during which at least three weight captures are carried out and / or
[0145] - a duration between the first day and the last day during which at least one weight capture is carried out.
[0146] The classification algorithm can then group together products that share the same characteristics on average. The classes are thus defined by discriminating variables, the values of these variables being able to be of the mean and standard deviation type. These variables make it possible to know the behavior of each class, in order to adapt the setting of the update of the reference weight of each product, according to its characteristics.
[0147] For example, for a given class, the variable "Average_deviation" which represents the average deviation in calendar days between two weight value captures, amounts to 22 days. This means that on average, at least one weight value capture is carried out every 22 days. The deviation between weight value captures, like all other variables, is an important parameter in the characterization of product classes.
[0148] Each product class behaves differently and cannot be configured in the same way. Therefore, the determination software module 120 preferentially implements a configuration rule based on a product class indicator associated with the products in the database. In these variants, once the update parameters have been established, the update algorithm can be executed.
[0149] The number of product classes can be determined automatically, manually, or semi-automatically, i.e., automatically and adjusted by a user. By default, a product class can be assigned to any new product identifier added to the computer database.
[0150] The machine learning module 135 may be implemented periodically, according to a manually or automatically defined period, for example 15 days. The machine learning module 135 may be implemented manually or automatically, for example based on a number of product identifiers added to the computer database and not yet classified or classified by default.
[0151] In variants, a product identifier added to the computer database is assigned to a given product class and then a principal component analysis is performed to extract and visualize the important information contained in a multivariate data table. Then, the calculation of the "cos2" metric on each axis is performed. This metric expresses the quality of representation of the product on the dimensions of the principal component analysis. If the sum of the two "cos2" metrics is greater than 0.5, the function accepts the new product and proceeds to predict its class. Otherwise, the product remains in the assigned default class while waiting to acquire more data.
[0152] The update software module 125 is, for example, formed of a set of instructions stored in a memory 215 of a calculation system 205 and configured to be executed by a processor 210, this set of instructions being integrated into dedicated software or not. The update software module 125 is configured to edit or add an entry representative of the weight determined by the module 120 for determining a weight for a product. At the end of the execution of an update by the update software module 125, the theoretical weight, to which the captured weight of a product is compared to ensure its conformity, is updated.
[0153] In particular embodiments, the method 100 which is the subject of the invention comprises a software module 140 for filtering captured weight values according to a capture validity limit value, the filtered values being implemented by the determination software module 120 and / or by the automatic learning module 135.
[0154] The filtering software module 140 is, for example, formed of a set of instructions stored in a memory 215 of a computing system 205 and configured to be executed by a processor 210. Such a filtering software module 140 may be of the manual or automatic type. A manual type filtering software module 140 implements, for example, a human-machine interface (such as a keyboard and a mouse associated with a user interface) associated with the I / O subsystem 220. In this user interface, an operator can set a validity threshold value for the captured weight values. An automatic type filtering software module 140 implements, for example, a statistical processing computer algorithm configured to filter the outliers from a sample.
[0155] Such a filter can be based on the following parameters, for example:
[0156] - a representative value of the average captured weight, for a given product, over a given period (for example two years), and
[0157] - a value representative of the standard deviation of the average captured weight which represents the dispersion of the actual weight of a product compared to the average captured weight for this type of product.
[0158] A captured weight value can thus be filtered if this captured weight value meets the following condition:
[0159] Abs Actual weight — average weight * quantity) , 0.9 * average weight)
[0160] Where "qnorm" is the inverse of the cumulative distribution function of the sample. In variants, a weight value is filtered if that value is less than 0. In variants, a weight value is filtered if the quantity of an associated product is less than or equal to 0. In variants, a weight value is filtered if the above condition associated with a weight value of an associated product is true.
[0161] Figure 4 illustrates, for example, for a given product, a set of captured weight values 405, defined on the abscissa by a capture date and on the ordinate by a captured weight value. We also observe a weight value 410 located outside a validity interval defined by an average 415 of weight captured during a determined period of time and a determined tolerance margin 420, applied in subtraction and addition to the average 415.
[0162] Such tolerance can be defined by the following formula:
[0163] Tolerance = Constant + (Group Ref. Weight * Tolerance%, Ref. Weight * Unit %)
[0164] In which:
[0165] - constant represents an error due to measurement imprecision,
[0166] - WeightRef.Group represents the weight of a product, in a grouped form, - Tolerance% represents the percentage tolerance for products in a grouped form,
[0167] - WeightRef represents the unit weight of a product and
[0168] - %Unit represents the tolerance percentage for unit products.
[0169] Such a filtering module has the particular objective of not considering, in a sample, so-called "forced" values, that is to say those overloaded by computer by a warehouse operator, in particular in the event of a mismatch between the theoretical weight and the captured weight of a product. The number of forced values is a performance metric of the method 100 which is the subject of the invention. Indeed, an aberrant value, by feedback, degrades the adaptive nature of the updating of the weight values.
[0170] A weight value is said to be "forced" if this value meets the following condition: Abs Actual weight — theoretical weight * quantity > Tolerance
[0171] In particular embodiments, the method 100 which is the subject of the invention comprises a module 145 for updating the filtering software module 140, configured to update the validity limit value, as a function of a statistical parameter representative of a distribution of captured weight values and reference weight values associated with at least one product identifier. The update module 145 is, for example, formed of a set of instructions stored in a memory 215 of a calculation system 205 and configured to be executed by a processor 210, this set of instructions being integrated into dedicated software or not.
[0172] In particular embodiments, the statistical parameter is formed from the sum of:
[0173] - the variance, called “intra”, of a distribution of captured weight values associated with a product identifier and
[0174] - the variance, called “inter”, of a distribution of captured weight values associated with a product identifier of quantity greater than one.
[0175] This statistical parameter, nicknamed “total variance,” is represented by the following equation:
[0176] Variance Totaie = Variance intra + Variance inter
[0177] In which:
[0178] - Variance inter represents the variability of the weight of the entire population of captures of selected weight values during the update period and
[0179] - Variance intra represents the intra-group variance which describes the variance of weight values of a given product with a quantity greater than 1.
[0180] This variance can be implemented to determine the tolerance interval of weight values according to the following equation:
[0181] In which:
[0182] - Xi represents the updated theoretical, or reference, weight,
[0183] - Variance Totaie represents the total variance of the weight values captured before updating,
[0184] - n represents the number of weight values captured over a given sampling period, for example 6 months and
[0185] - a represents an assumed or tolerated prediction error, for example 1%.
[0186] Alternatively, this variance can be implemented to determine the tolerance interval of weight values according to the following equation:
[0187] In which:
[0188] - Coeff Var represents the variance adjustment coefficient, for example equal to 2, aimed at overestimating the intra-group variance in order to get as close as possible to the total variance.
[0189] For low-turnover products, the variance may be estimated based on a small population of captured weight values, for example: over six months of history, only 3 values are available. The estimated variance is often very low and gives a very narrow tolerance interval, which can encourage the appearance of unjustified forcing during future updates. To avoid this, a safety tolerance, corresponding to a proportion of the reference weight of a product, can be implemented. This safety tolerance allows for a minimum acceptable tolerance. Its default value is 5% of the reference weight of a product.
[0190] The safety tolerance can be configured, depending on the absolute maximum deviation, according to the following equation for example:
[0191] The determination of the tolerance interval of weight values can be calculated according to the following equation:
[0192] Tolerance Interval
[0193] + Safety tolerance) Figure 3 shows schematically a succession of particular steps of the method 300 which is the subject of the invention. This method 300 for updating data representing the weight of a product in a computer database comprises:
[0194] - a step 305 of capturing a value representative of the weight of a product,
[0195] - a timestamp step 310, for associating a timestamp value with a weight value capture of a product represented, in a database, by a product identifier,
[0196] - a step 315 of determining data representative of the weight of a product as a function of at least:
[0197] - a minimum number of weight values captured for a product identifier,
[0198] - a time interval of validity of capture of weight values captured for a product identifier and / or
[0199] - a maximum validity period for capturing weight values captured for a product identifier, said step being configured to determine an average value of captured weights:
[0200] - for the minimum number of values defined,
[0201] - located within a minimum number of successive intervals of defined validity time and
[0202] - within the limit of the maximum period of validity defined and
[0203] - a step 320 of updating a weight value of a product in a computer database based on the determined average value.
[0204] Particular embodiments of the steps of the method 300 which is the subject of the invention are described with reference to figures 1 and 2.
[0205] We also observe, in Figure 2, schematically, a particular embodiment of the system 200 which is the subject of the invention. This system 200 for updating data representative of the weight of a product in a computer database comprises:
[0206] - at least one computing system 205, comprising at least one processor 210 and at least one memory 215, and
[0207] - instructions, stored in a memory and which, when executed by the computing system, cause the computing system to carry out:
[0208] - a step of capturing a value representative of the weight of a product,
[0209] - a timestamp step, to associate a timestamp value with a weight value capture of a product represented, in a database, by a product identifier,
[0210] - a step of determining data representative of the weight of a product based on at least: - a minimum number of weight values captured for a product identifier,
[0211] - a time interval of validity of capture of weight values captured for a product identifier and / or
[0212] - a maximum validity period for capturing weight values captured for a product identifier, said step being configured to determine an average value of captured weights:
[0213] - for the minimum number of values defined,
[0214] - located within a minimum number of successive intervals of defined validity time and
[0215] - within the limit of the maximum period of validity defined and
[0216] - a step of updating a weight value of a product in a computer database based on the determined average value.
[0217] In Figure 5, we observe a succession 500 of particular steps complementary or subsidiary to that of the method 300. This method 500 allows the dynamic counting of products, the automatic validation of an order preparation line and / or preventive maintenance of a scale of the weighing device. The method 500 comprises:
[0218] - a step 505 of selecting a file for preparing a received order, a file comprising at least one line representing an identifier of a product and a quantity of this product in this order,
[0219] - a step 510 of placing, by an operator, a product on a sensor 110 of a value representative of the weight of a product, for example a scale, of the device,
[0220] - a step 515 of capturing a value representative of the weight of the product,
[0221] - a step 520 of determining, by the calculation system 205, the number of products on the sensor 110, by dividing the weight captured by the weight of a product in the computer database 105,
[0222] - a step 525 of displaying, by the output device 235, the number of products identical to the product already placed on the sensor 110, remaining to be placed on this sensor to reach the number of products indicated in the order preparation currently being processed, with, if this number is greater than or equal to one, return to step 510,
[0223] - when the number of identical products on a line of order preparation has been reached, a step 530 of validation of this order line,
[0224] - if there remains at least one product line which has not yet been validated in this order preparation, a step 535 of automatic passage to another product including the product line which has not yet been validated, chosen according to a predetermined selection criterion, for example the product identified in the following line in the preparation of the order or the product identified by one of the order lines which have not yet been validated which is closest to the device,
[0225] - if there is no line of the order left to validate, a step 540 of validation of the order and moving on to another order preparation, if there is at least one to prepare.
[0226] Steps 545 to 555, which will now be described, are carried out upon triggering (by the operator or the supplier of the device) or on a regular basis, to allow preventive maintenance of the device. During a step 545, the software calculates, for at least one sensor 110, an average deviation between its weight measurements and the weight values for the same products, updated as explained with regard to FIG. 3. This average deviation is expressed in weight units and / or as a percentage. During a step 550, the absolute value of the average deviation of the sensor in question is compared with a predetermined limit value, for example one gram and / or one thousandth.If the average deviation is greater than this predetermined limit value, during a step 555, a message representative of this excess is sent, preferably by identifying each sensor concerned and, optionally, information representative of the result of the calculation of the average deviation for each sensor concerned (preferably, this result). It is noted that steps 545 to 555 can each be carried out locally or remotely.
Claims
CLAIMS 1. System (100) for updating data representative of the weight of a product in a computer database (105), characterized in that it comprises: - a sensor (110) of a value representative of the weight of a product, - a timestamp module (115), configured to associate a timestamp value with a weight value capture of a product represented, in a database, by a product identifier, - a software module (120) for determining data representative of the weight of a product as a function of at least: - a minimum number of weight values captured for a product identifier, - a time interval of validity of capture of weight values captured for a product identifier and / or - a maximum validity period for capturing weight values captured for a product identifier, said module being configured to determine an average value of captured weights: - for the minimum number of values defined, - located within a minimum number of successive intervals of defined validity time and - within the limit of the maximum period of validity defined and - a software module (125) for updating a weight value of a product in a computer database based on the determined average value.
2. System (100) according to claim 1, which comprises a software module (130) for automatic classification of products in the database (105), associating with at least one product identifier a product class and at least one value from among: - a minimum number of weight values captured for a product identifier, - a time interval of validity of capture of weight values captured for a product identifier and / or - a maximum validity period for capturing weight values captured for a product identifier, implemented by the software module (120) for determining data representative of the weight being determined according to a product class.
3. The system (100) of claim 2, which comprises a machine learning module (135) configured to associate a product class with at least one product identifier.
4. System (100) according to claim 3, wherein the learning module (135) is an automatic learning classification module configured to associate a product class with at least one product identifier based on: - a maximum duration between two captures of weight values captured for a product identifier, - an average duration between two captures of weight values captured for a product identifier, - a total number of weight value captures captured for a product identifier, - a maximum number, per day during which at least one weight capture is carried out, of captures of weight values captured for a product identifier, - an average number, per day during which at least one weight capture is carried out, of captures of weight values captured for a product identifier, - an average number, per day, of captures of weight values captured for a product identifier, - a proportion of the number of days during which at least one weight capture is carried out among the number of days during a given period, - a number of days during which at least three weight captures are carried out, - a proportion of the number of days during which at least three weight captures are carried out among the number of days during which at least one weight capture is carried out, - a number of successive days during which at least three weight captures are carried out and / or - a duration between the first day and the last day during which at least one weight capture is carried out.
5. System (100) according to one of claims 1 to 4, which comprises a software module (140) for filtering captured weight values according to a capture validity limit value, the filtered values being implemented by the determination software module (120) and / or by the automatic learning module (135).
6. System (100) according to claim 5, which comprises a module (145) for updating the filtering software module (140), configured to update the validity limit value, as a function of a statistical parameter representative of a distribution of captured weight values and reference weight values associated with at least one product identifier.
7. System (100) according to claim 6, in which the validity limit value is updated according to a tolerance interval, determined by the following equation: i Tolerance Interval = Xi + Quantile -a / 2 x Var lance Totaie x 11 + n in which: - xt represents the updated theoretical, or reference, weight for a type of product, - Variance Tota ie represents the total variance of the weight values captured before updating for a product type, - n represents the number of weight values captured over a given sampling period and - a represents an assumed or tolerated prediction error.
8. System (100) according to one of claims 5 to 7, in which the filtering software module (140) is configured to filter a captured weight value according to: - a value representative of the average captured weight, for a given product, over a given period and - a value representative of the standard deviation of the average captured weight, which represents the dispersion of the actual weight of a product compared to the average captured weight for this type of product.
9. Method (300, 500) for updating data representative of the weight of a product in a computer database, characterized in that it comprises: - a step (305) of capturing a value representative of the weight of a product, - a timestamp step (310), for associating a timestamp value with a weight value capture of a product represented, in a database, by a product identifier, - a step (315) of determining data representative of the weight of a product as a function of at least: - a minimum number of weight values captured for a product identifier, - a time interval of validity of capture of weight values captured for a product identifier and / or - a maximum validity period for capturing weight values captured for a product identifier, said step being configured to determine an average value of captured weights: - for the minimum number of values defined, - located within a minimum number of successive intervals of defined validity time and - within the limit of the maximum period of validity defined and - a step (320) of updating a weight value of a product in a computer database based on the determined average value.
10. The method (300, 500) of claim 9, which further comprises: - a step (505) of selecting a received order preparation file, file comprising at least one line representing an identifier of a product and a quantity of this product in this order, - a step (510) of placing, by an operator, a product on a sensor (110) of a value representative of the weight of a product, - a step (515) of capturing a value representative of the weight of the product, - a step (520) of determining, by a calculation system (205), the number of products on the sensor (110), by dividing the weight captured by the weight of a product in the computer database (105), - a step (525) of displaying, by the output device (235), the number of products identical to the product already placed on the sensor, remaining to be placed on this sensor to reach the number of products indicated in the order preparation currently being processed.
11. The method (300, 500) of claim 10, which further comprises: - when the number of products on a line of order preparation has been reached, a step (530) of validation of this order line, - if there remains at least one product line which has not yet been validated in this order preparation, a step (535) of automatic transition to another product from another product line which has not yet been validated.
12. Method (300, 500) according to claim 11, in which, during the step (535) of automatically switching to another product, this other product is chosen according to a predetermined selection criterion, for example the product identified in the next line in the order preparation or the product identified by one of the order lines which have not yet been validated which is closest to the device.
13. Method (300, 500) according to one of claims 9 to 12, which further comprises: - a step (545) of calculating, for at least one sensor (110), an average deviation between its weight measurements and the weight values for the same products, updated, - a step (550) of comparing the absolute value of the average deviation of the sensor considered with a predetermined limit value, and - if the average deviation is greater than this predetermined limit value, a step (555) of sending a message representative of this excess.
14. Method (300, 500) according to claim 13, in which the message comprises an identifier of each sensor (110) concerned and the result of the calculation of the average deviation for each sensor.
15. System (200) for updating data representative of the weight of a product in a computer database, characterized in that it comprises: - at least one computing system (205), comprising at least one processor (210) and at least one memory (215), and - instructions, stored in a memory and which, when executed by the computing system, cause the computing system to carry out: - a step of capturing a value representative of the weight of a product, - a timestamp step, to associate a timestamp value with a weight value capture of a product represented, in a database, by a product identifier, - a step of determining data representative of the weight of a product based on at least: - a minimum number of weight values captured for a product identifier, - a time interval of validity of capture of weight values captured for a product identifier and / or - a maximum validity period for capturing weight values captured for a product identifier, said step being configured to determine an average value of captured weights: - for the minimum number of values defined, - located within a minimum number of successive intervals of defined validity time and - within the limit of the maximum period of validity defined and - a step of updating a weight value of a product in a computer database based on the determined average value.