Devices and orchestrating system for a similar data sharing system
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- KONINK KPN NV
- Filing Date
- 2024-07-01
- Publication Date
- 2026-05-13
AI Technical Summary
Low-power IoT devices, relying on energy-harvesting, face challenges in conserving energy due to high energy consumption in wireless transmissions, necessitating efficient data sharing mechanisms to minimize unnecessary data transmission.
A secondary device in a data sharing system receives a radio resource indication to overhear data transmissions from a primary device, compares the received data with local data, and determines if transmission is necessary, thereby reducing energy consumption by transmitting only similar or differing data as needed.
This approach significantly reduces energy expenditure by allowing secondary devices to determine if data transmission is required, optimizing energy use and resource allocation in low-power IoT networks.
Smart Images

Figure EP2024068502_09012025_PF_FP_ABST
Abstract
Description
[0001] Devices and orchestrating system for a similar data sharing system
[0002] TECHNICAL FIELD
[0003] The present disclosure relates to a secondary device for use in a similar data sharing system, to an orchestrating system in the similar data sharing system and to a primary device for use with the orchestrating system.
[0004] BACKGROUND
[0005] Low-power networks are a crucial component of Internet-of-Things (loT) and machine-to- machine (M2M) communication. Low power devices may, for example, rely on energy-harvesting, which requires that these devices must operate in an energy efficient manner. Where devices must conserve energy, specifically those with limited resources and without a battery, needless transmission must be avoided. Such devices may be referred to as power-constrained devices.
[0006] For example, 3GPP recently issued a study on ambient power-enabled loT devices, in Technical Recommendation 3GPP TR 22.840. The document discloses use cases and requirements for ambient power-enabled loT devices, being battery-less devices with limited energy storage capability (a capacitor may be included) wherein the energy is provided through the harvesting of radio waves, light, motion, heat or any other power source that could be suitable. Thus, energy is a very scarce resource in this context, and its usage is preferably optimized by limiting the number and / or size of exchanged messages.
[0007] SUMMARY
[0008] The inventors have realized that wireless transmissions may require a much higher energy consumption for a device than computation in that same device. Receiving data and performing computations on the received data may, therefore, be preferable over transmission of data.
[0009] To that end, a secondary device is disclosed for use in a similar data sharing system comprising an orchestrating system and at least one primary device configured for transmission of first data. The secondary device is configured to receive a first radio resource indication from the orchestrating system regarding radio resources for transmission of the first data from the primary device. Such radio resource indication may specify a radio resource used for transmitting the first data by the primary device to, for example, the orchestrating system, for example, specify at least one of a time slot, frequency, code, etc.
[0010] The secondary device may be configured to overhear the transmission of the first data from the primary device using the first radio resource indication. The first radio resource indication assists the secondary device to listen to the first data transmission from the primary device while the transmission is not directed to the secondary device. This includes a transmission of first data from the primary device to another device than the secondary device, for example to the orchestrating system. The transmission may also be a broadcast of the first data. In this manner, the secondary device may receive the first data from the primary device without the transmission being directed to the secondary device. The secondary device may further be configured to compare at least a part of the first data with second data accessible to the second device to obtain a comparison result. The second data may, e.g. be stored in the secondary device. The second data may have been received previously or may have been obtained locally. The comparison result shows whether or not the first data is similar to the second data which is reflected in a comparison indication.
[0011] Also, the secondary device may determine the comparison indication based on the comparison result. The (value of the) comparison indication signals whether or not the secondary device may take action, for example whether the secondary device should send the second data, or a part thereof, to the recipient (e.g. the orchestrating system) of the transmission of the first data from the primary device in order for the recipient to have sufficient data available to perform its task(s). If the data is considered not similar, the comparison indication may trigger a transmission of the differences between the first and second data only. If the comparison result indicates that the received first data is similar to the second data, the comparison indication may trigger one or more actions. For example, it may be decided that nothing needs to be done. Optionally, however, the secondary device is configured to trigger a transmission so that it arrives at the recipient of the first data, such as directly to the orchestrating system, or via other devices, such as the primary device or other second device (s).. The comparison indication may, for example, trigger transmission of a small message indicating similarity of the data to the recipient, such as the orchestrating system.
[0012] Another aspect of the disclosure pertains to an orchestrating system for use in a similar data sharing system comprising a plurality of devices. The orchestrating system may be configured to transmit a first radio resource indication to a set of secondary devices of the plurality of devices regarding transmission of first data from a set of primary devices of the plurality of devices.
[0013] Such radio resource indication may specify a radio resource used for transmitting the first data by the primary device to, for example, the orchestrating system, for example, specify at least one of a time slot, frequency, code, etc.
[0014] A set of devices includes one or more devices.
[0015] The orchestrating system may be configured to determine a comparison indication of a secondary device of the set of secondary devices based on a comparison result from comparing at least a part of the first data with the second data in a secondary device. The comparison indication signals whether or not the secondary device may be expected to take action, for example if the secondary device will send the second data, or a part thereof, to the recipient (e.g. the orchestrating system) of the transmission of the first data in order for the recipient to have sufficient data available to perform its task(s). If the data is considered not similar, the comparison indication may trigger a transmission of the differences between the first and second data only and the orchestrating system may determine the comparison indication from this transmission. If the comparison indication indicates that the part of the first data is similar to the second data, the comparison indication may take several forms. For example, it may be agreed that in such a case no transmission will occur from the secondary device, i.e. an implicit comparison indication is determined in the orchestrating system. Optionally, however, the orchestrating system is configured to receive a transmission from the second device, so that the comparison indication can be determined. The transmission may be a small message.
[0016] Yet another aspect of the disclosure involves a primary device for use with the orchestrating system as defined above.
[0017] The inventors have envisaged that the secondary device should be configured to receive the first data and to perform a computation, for example a comparison to determine similarity, as a first step instead of transmitting its own (second) data unconditionally. This may save transmissions from the secondary device because the secondary device may determine that transmission is not necessary, thereby saving energy and transmission resources. The orchestrating system may assist the secondary device to overhear the first data transmission and is enabled to evaluate the result of the comparison between the part of the first data and the second data using the comparison indication.
[0018] It should be acknowledged that first data and second data may be considered similar when fully identical, identical for at least a predefined subset of the first data or identical with some predetermined margin of error. In an embodiment, a similar data sharing system may amount to a case, wherein otherwise a primary device and secondary device have to transmit at least the same type of parameters, for example measurement values, under similar conditions and thus the same or similar (measurement) values may occur for at least some of the parameters in the data. In another example, in machine learning techniques, such as federated learning, parameter updates of devices may afford a level of lossy compression or adjustment without affecting the model accuracy. Other data may also allow for inaccuracy margins, for example temperature or humidity in e.g. a warehouse, factory, field, green house, on a floor of an office or store etc.
[0019] In one embodiment, the first data, transmitted from the primary device, is in encrypted form. The secondary device may be configured to perform an operation on at least one of the first data in encrypted form and the second data to enable the comparison, wherein the secondary device is, optionally, configured to receive encryption information from the orchestrating system and process the encryption information to perform the operation.
[0020] In one embodiment, the orchestrating system may be configured to transmit the encryption information to the plurality of devices to enable encryption of the first data transmitted from the set of primary devices and to enable comparison at devices of the set of secondary devices.
[0021] In one embodiment, the primary device may be further configured to receive encryption information from the orchestrating system and encrypt the first data in accordance with the encryption information, for example when storing the first data or before transmission of the first data.
[0022] The similar data sharing system benefits from encrypted transmission of the first data (and second data, if needed) to secure that data transmission. The orchestrating system may ensure that the primary and secondary devices have encryption information available to allow the comparison of the (part of the) first data and the second data. It should be acknowledged that the comparison may either be performed based on decrypted first and second data, encrypted first and second data or some digital signatures of the data, either encrypted or not. The orchestrating system may arbitrarily assign devices to the set of primary devices and / or to the set of secondary devices, e.g. using a randomizing function. The orchestrating system may, however, benefit from information regarding the devices to enhance energy efficiency for the similar data sharing system.
[0023] In one embodiment, the secondary device may be configured to transmit at least one of a capability indication of one or more device capabilities, a radio indication regarding radio propagation characteristics, and a spatial indication regarding spatial characteristics of the secondary device. The information generally relates to device features. Such information may assist the orchestrating system to assign the device to the set of secondary devices. For example, a device may be assigned to the set of secondary devices if its capabilities and / or when a radio connection and / or location make it less suitable for data transmission (for example, battery-powered and far away from the orchestrating system to which transmissions should be directed).
[0024] In one embodiment, the orchestrating system may be configured to execute an assignment algorithm to assign devices of the plurality of devices to the set of primary devices for transmission of the first data. The assignment algorithm may use at least one of device capabilities, data similarity, radio propagation characteristics and spatial characteristics of the devices as input for the algorithm to assign one or more devices to the set of primary devices. The orchestrating system is, optionally, configured to receive at least one of capability indication of one or more device capabilities, a radio indication regarding radio propagation characteristics and a spatial indication regarding spatial characteristics from one or more of the plurality of devices. The orchestrating system is suited to make a central assessment of the conditions for all devices in relation to each other and / or to the overall system and select primary devices suitable for transmission of the first data in full to enhance energy efficiency for the similar data sharing system.
[0025] The use of data similarity to select primary devices may consider previous datasets of the devices such that allocation of primary or secondary devices is given by a secondary device’s data typically matching with a primary device. This similarity may be verified as a start where all devices share full data sets and these can be used to initialize the similar data sharing system. In this operation, the full datasets may be compared for similarity and the orchestrating system may then assume similar datasets from particular devices is likely to continue as a trend.
[0026] As an option, the orchestrating system may be configured to assign devices of the plurality of devices to the set of secondary devices, wherein a subset of the set of primary devices is associated with a subset of the set of secondary devices. This configuration avoids the need for a secondary device to overhear the transmission of first data of all primary devices in a scenario with multiple primary devices. The orchestrating system may ensure that the secondary device only overhears data from relevant, nearby, etc. primary devices and will adjust the information it sends to the secondary devices accordingly, such as the first radio resource indication.
[0027] In one embodiment, the secondary device is configured to modify receiving characteristics in accordance with the first radio resource indication to temporarily enhance sensitivity to overhear the transmission of the first data. Optionally, the secondary device may be configured to receive and process a sensitivity indication from the orchestrating system in response to which it can temporarily enhance the sensitivity, for example during the first data transmission indicated by the first radio resource indication.
[0028] In one embodiment, the orchestrating system is further configured to transmit at least one of a transmission boost indication and a sensitivity indication to temporarily boost transmission of the first data for the set of primary devices resp. to temporarily enhance sensitivity to overhear the first data for the set of secondary devices.
[0029] In one embodiment, the orchestrating system is further configured to transmit a device-to-device indication to the primary and secondary devices. The indication enables the primary and secondary devices to find out transmission characteristics.
[0030] In one embodiment, the primary device is configured to receive a transmission boost indication to temporarily boost transmission of the first data.
[0031] These embodiments facilitate overhearing the transmission of the first data by the secondary device, thereby decreasing the chance that the secondary device(s) must transmit data themselves.
[0032] In one embodiment, the secondary device is configured to compare a subset of the first data as the part of the first data to obtain the comparison result. Optionally, the secondary device is configured to receive and process a subset indication of the subset from the orchestrating system to determine which part of the first data to take into account for the comparison operation.
[0033] In one embodiment, the orchestrating system is configured to transmit a subset indication indicating a subset of the first data to at least one of the set of primary devices and the set of secondary devices.
[0034] In one embodiment, the primary device is configured to receive and process a subset indication indicating a subset of the first data to be transmitted and transmit the first data in accordance with the subset indication.
[0035] The subset indication may serve to identify key data from the first data. This indication can be used by the secondary device to reduce use of computation resources as only a subset of the first data may be used for the comparison step. The primary device may use the subset indication to adjust the transmission of the first data, for example, to have the transmission of the subset of data to precede transmission of other data of the first data. The orchestrating system may be used to coordinate definition of the subset of the first data between the primary device(s) and secondary device(s).
[0036] In one embodiment, the secondary device is configured to receive a similarity threshold indication to be used in determining the comparison indication.
[0037] In one embodiment, the orchestrating system is configured to transmit a similarity threshold indication to assist the set of secondary devices to determine the comparison indication in the secondary devices.
[0038] The similarity threshold indication is used to determine whether or not the (subset of the) first data is considered similar to the second data. The indication may thus be useful to determine whether or not the secondary device will engage in its own transmission of (second) data. The similarity threshold indication provides for flexibility from the orchestrating system to strike a balance between energy efficiency and need of data from secondary devices. As mentioned above, a secondary device may sometimes need to transmit second data when the comparison result is unsatisfactory, indicated by the comparison indication.
[0039] In one embodiment, the secondary device is configured to transmit the second data, or a part thereof. The secondary device may, as an option, determine the part of the second data to be transmitted in accordance with the comparison result. The similarity threshold indication may also play a role in determining the part of the second data to be transmitted. As mentioned above, transmission of the second data, or part thereof, may be triggered by the comparison indication. A part of the data may, for example, includes a part of the data not meeting the similarity threshold.
[0040] In one embodiment, the orchestrating system is configured to transmit the first radio resource indication to the set of primary devices to schedule transmission of the first data. This allows the orchestrating system to coordinate transmission from the primary device(s) and receipt by the secondary devices.
[0041] Optionally, the first radio resource indication may be different for different primary devices in the set of primary devices. This allows the secondary device to distinguish between different transmissions of first data from various primary devices, so that it can execute, for example, a comparison for first data received from one primary device and then decide on whether there is a need for a further comparison on first data received from another primary device. This may save resources for the secondary device.
[0042] In one embodiment, the secondary device is configured to receive a second radio resource indication from the orchestrating system to transmit the part of the second data.
[0043] In one embodiment, the orchestrating system is configured to transmit a second radio resource indication to the set of secondary devices to schedule transmission of (a part of) the second data. As an option, the second radio resource indication may determine that transmission of the first data from one or more primary devices precedes transmission of the part of the second data for at least some devices of the set of secondary devices. The orchestrating system may, optionally, be configured to set a time interval between transmission of the first data and transmission of the part of the second data.
[0044] Optionally, the orchestrating system is configured to transmit a third radio resource indication to the set of secondary devices. The secondary device may schedule transmission of a small message in accordance with the third radio resource indication in case the comparison indication indicates the same, or at least sufficiently similar, second data. Thus a secondary device may transmit either using a second radio resource or using a third radio resource depending on the similarity of the second data. This gives more control options over transmissions, for example to prioritize transmission of messages that contain additional data to precede transmission of small messages that only indicate similarity, or to use different radio parameters to avoid collisions on radio resources, optimized for the size of the respective messages on the respective radio resources. Another option may be to prioritize the small messages over the messages that contain additional data. For example, the latter can be used to confirm that a sufficient number of secondary devices of a set of secondary devices have the same or sufficiently similar data, and the orchestrating system may require no further response from other secondary devices or secondary devices that transmit different data, or may not have to wait for further responses once a sufficient number of small messages is received.
[0045] In one embodiment, the primary device may be configured to receive and process a first radio resource indication to schedule transmission of the first data and transmit the first data in accordance with the first radio resource allocation.
[0046] The second radio resource indication may, for example, specify at least one of a time slot, frequency, code, etc. used for transmitting the second data by the secondary device to, for example, the orchestrating system or another device, such as the primary device or another secondary device. The second radio resource indication may, for example, schedule the transmission of second data to take place after determining a comparison indication. The secondary device uses the second resource indication under the condition that the comparison indication triggers the use thereof.
[0047] In one embodiment, the primary device is allocated a primary device identifier, enabling the secondary device to distinguish between primary devices, if there are more.,
[0048] It should be acknowledged that the disclosure also relates to a secondary device performing overhearing the transmission of the first data based on the first radio resource indication or comparing the first data with second data to determine a comparison indication.
[0049] That is, one aspect of the disclosure also pertains to a secondary device configured to receive a first radio resource indication from the orchestrating system regarding radio resources for transmission of the first data from the primary device. Such radio resource indication may specify a radio resource used for transmitting the first data by the primary device to, for example, the orchestrating system, for example, specify at least one of a time slot, frequency, code, etc.
[0050] A secondary device may be configured to overhear the transmission of the first data from the primary device using the first radio resource indication. The first radio resource indication assists the secondary device to listen to the first data transmission from the primary device while the transmission is not directed to the secondary device. This includes a transmission of first data from the primary device to another device than the secondary device, for example the orchestrating system, or a broadcast of the first data. In this manner, the secondary device may receive the first data from the primary device without the transmission being directed to the secondary device.
[0051] Another aspect of the disclosure involves a secondary device configured to compare at least a part of the first data with second data accessible to the second device to obtain a comparison result. The second data may, e.g., be stored in the secondary device. The second data may have been received previously or may have been obtained locally. The comparison result indicates whether the first data is similar to the second data.
[0052] Also, the secondary device may determine a comparison indication based on the comparison result. The comparison indication signals whether or not the secondary device may take action, for example whether the secondary device should send the second data, or a part thereof, to the recipient (e.g. the orchestrating system) of the transmission of the first data in order for the recipient to have sufficient data available to perform its task(s). If the data is considered not similar, the comparison indication may include a transmission of the differences between the first and second data only and the orchestrating system may receive this comparison indication. If the comparison result indicates that the part of the first data is similar to the second data, the comparison indication may take several forms. For example, it may be decided that no indication needs to be provided. Optionally, however, the secondary device is configured to transmit the determined comparison indication to at least one of the primary device and the orchestrating system. The comparison indication may be a small message indicating similarity of the data.
[0053] The disclosure also pertains to a method in a secondary device, for use in a similar data sharing system comprising an orchestrating system and at least one primary device configured for transmission of first data. The method involves the step of receiving a first radio resource indication from the orchestrating system regarding radio resources for transmission of the first data and the step of overhearing the transmission of the first data from the primary device using the first radio resource indication. Alternatively, or in addition, the method may comprise the step of comparing at least a part of first data that may be received from the primary device with second data accessible to the second device to obtain a comparison result and the, optional, step of transmitting the determined comparison indication to at least one of the primary device and the orchestrating system.
[0054] Another aspect of the disclosure amounts to a method in an orchestrating system for use in a similar data sharing system comprising a plurality of devices. The method involves the step of transmitting a first radio resource indication to a set of secondary devices of the plurality of devices regarding transmission of first data from a set of primary devices of the plurality of devices. The set of primary devices comprises at least one primary device. The method may further comprise the step of determining a comparison indication of a secondary device of the set of secondary devices based on a comparison result from comparing at least a part of the first data with the second data in a secondary device. The method may also comprise, as an optional step, receiving the comparison indication from at least one of a primary device and the secondary device.
[0055] Further aspects of the disclosure involve a computer program comprising one or more software code portions to execute, when run by a processing unit, to execute one or more of the steps of these methods, respectively.
[0056] The disclosure also pertains to a similar data sharing system comprising at least one secondary device and an orchestrating system as disclosed herein. A similar data sharing system may also comprise at least one primary device as disclosed herein.
[0057] In particular, an aspect of the disclosure involves a similar data sharing system comprising: at least one secondary device, wherein the secondary device is configured to: receive a first radio resource indication from the orchestrating system regarding radio resources for transmission of the first data from a primary device; overhear the transmission of the first data from the primary device using the first radio resource indication; compare at least a part of the first data with second data accessible to the second device to obtain a comparison result; determine a comparison indication based on the comparison result, wherein, optionally, the secondary device is configured to transmit the determined comparison indication to at least one of the primary device and the orchestrating system, and an orchestrating system, wherein the orchestrating system is configured to: transmit a first radio resource indication to a set of secondary devices of the plurality of devices regarding transmission of first data from a set of primary devices of the plurality of devices; determine a comparison indication of a secondary device of the set of secondary devices based on a comparison result from comparing at least a part of the first data with the second data in a secondary device, wherein, optionally, the comparison indication is received from at least one of a primary device and the secondary device.
[0058] As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, a method or a computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Functions described in this disclosure may be implemented as an algorithm executed by a processor / microprocessor of a computer. Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied, e.g., stored, thereon.
[0059] Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a computer readable storage medium may include, but are not limited to, the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of the present invention, a computer readable storage medium may be any tangible medium that can contain, or store, a program for use by or in connection with an instruction execution system, apparatus, or device.
[0060] A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
[0061] Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber, cable, RF, etc., or any suitable combination of the foregoing. Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object-oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the person’s computer, partly on the person's computer, as a stand-alone software package, partly on the person’s computer and partly on a remote computer, or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the person’s computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
[0062] Aspects of the present invention are described below with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor, in particular a microprocessor or a central processing unit (CPU), of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer, other programmable data processing apparatus, or other devices create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0063] These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function / act specified in the flowchart and / or block diagram block or blocks.
[0064] The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.
[0065] The flowchart and block diagrams in the figures Illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and / or flowchart illustrations, and combinations of blocks in the block diagrams and / or flowchart illustrations, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
[0066] Moreover, a computer program for carrying out the methods described herein, as well as a non- transitory computer readable storage-medium storing the computer program are provided.
[0067] Elements and aspects discussed for or in relation with a particular embodiment may be suitably combined with elements and aspects of other embodiments, unless explicitly stated otherwise. Embodiments of the present invention will be further illustrated with reference to the attached drawings, which schematically will show embodiments according to the invention. It will be understood that the present invention is not in any way restricted to these specific embodiments.
[0068] BRIEF DESCRIPTION OF THE DRAWINGS
[0069] Aspects of the invention will be explained in greater detail by reference to exemplary embodiments shown in the drawings, in which:
[0070] FIGS. 1A and 1 B are schematic illustrations of embodiments of an orchestrating system and secondary device resp. a time diagram illustrating some steps to be performed in a similar data sharing system;
[0071] FIGS. 2A and 2B are more detailed illustrations of embodiments of an orchestrating system and secondary device, respectively;
[0072] FIGS. 3A and 3B show examples of time diagrams illustrating some steps to be performed in a similar data sharing system;
[0073] FIG. 4 is a flow chart illustrating exemplary steps for a similar data sharing system;
[0074] FIGS. 5A-5D are visualizations of several stages for a particular application of a similar data sharing system; and
[0075] FIG. 6 depicts an example of a processing system according to an embodiment of an orchestrating system or secondary device or a part thereof.
[0076] DETAILED DESCRIPTION OF THE DRAWINGS
[0077] FIG. 1A is a schematic illustration of a similar data sharing system 1 comprising an orchestrating system 100 and a plurality of devices 10, 20A, 20B. One or more devices 10 are a set of primary devices, wherein the set of devices 20A, 20B are referred to as secondary devices for reasons explained below in more detail. It should be acknowledged that the similar data sharing system 1 may comprise many more devices than shown in FIG. 1 A.
[0078] Communication between the orchestrating system 100 and the primary and secondary devices 10, 20A, 20B is wireless. The orchestrating system 100 may be part of or connected to a telecommunications network, such as a 5G or 6G telecommunications network. Communications with the primary and secondary device may be over the radio interface of the telecommunication network using a base station BS of the network as shown in FIG. 1A. The orchestrating system 100 further comprises a plurality of components 110, including a processor and storage, as will be described with reference to FIG. 2A in more detail. Primary and / or secondary devices 10, 20A, 20B may be power constrained devices, i.e. devices having restricted power, for example a battery BAT with low capacity or almost empty. FIG. 1 A contains a magnification of a second device 20B to illustrate some components of a secondary device, including a transceiver 21 , a processor 22, data storage 23 and sensor 24. Data storage 23 may store second data SD. Sensor 24 may comprise a temperature, humidity or other type of sensor. Primary devices may contain or have sensed first data FD.
[0079] Another example of a power constrained device is a device wherein a battery or other internal power source (except, maybe, for a capacitor) is absent. Such devices rely on energy-harvesting. An example of such a device will be described in further detail with reference to FIG. 2B.
[0080] The use of power-constrained devices requires that these devices must operate in an energy efficient manner. Where devices must conserve energy, specifically those with limited resources and without a battery, needless transmission must be avoided.
[0081] FIG. 1 B is a time diagram illustrating some steps to increase efficiency in similar data sharing system 1 . In FIG. 1 B, it is assumed that a set of primary devices 10 and a set of secondary devices 20A, 20B has already been determined.
[0082] In step S1 , the orchestrating system 100 transmits a first radio resource indication RRI1 to the set of secondary devices 20A, 20B of the plurality of devices regarding transmission of first data FD from a set of primary devices 10 of the plurality of devices. The secondary devices 20A, 20B are configured to receive a first radio resource indication RRI1 from the orchestrating system 100 regarding radio resources for transmission of the first data FD from the primary device 10. The first radio resource indication RRI1 may specify a radio resource used for transmitting the first data by the primary device to, for example, the orchestrating system, for example, specify at least one of a time slot, frequency, code, etc. As shown in FIG. 1 B by the dashed arrow, the first radio resource indication RRI1 may also be transmitted to the primary device 10 as an instruction of the radio resources to be used when transmitting the first data. It should be noted that the primary device 10 may have received the radio resources to be used before step S1 or may have determined the radio resources in another manner and have informed the orchestrating system 100 accordingly.
[0083] In step S2, primary device 10 transmits first data FD in accordance with the first radio resource indication RRI1. The transmission may be directed to the orchestrating system 100 or to another device using an address of the orchestrating system or the other device. The transmission may also be a broadcast of the first data FD.
[0084] While the first data FD is not directed to the set of second devices 20A, 20B, the second devices are configured to overhear the transmission of the first data FD when in the vicinity of the primary device 10. This is illustrated in FIG. 1 B by the dotted arrows. The first radio resource indication RRI1 received in step S1 assists the secondary devices 20A, 20B to listen to the transmission of the first data FD from the primary device 10 while the transmission is not directed to the secondary device. In this manner, the secondary devices 10A, 10B may receive the first data FD from the primary device 10 without the transmission being directed to the secondary devices 20A, 20B.
[0085] Each secondary device 20A, 20B may further be configured to compare at least a part of the first data FD with second data SD accessible to the second device 20A, 20B to obtain a comparison result. The second data may, e.g. be stored in the data storage 23 of the secondary device 20A, 20B, as shown in FIG. 1 A. The second SD data may have been received previously or may have been obtained locally from using a sensor 24, for example.
[0086] The comparison result indicates whether or not the first data FD is similar to the second data SD. Also, the secondary devices 20A, 20B may determine a comparison indication reflecting comparison result. Step S3 in FIG. 1 B illustrates the execution of the comparing step comparing FD and SD and the determination of the comparison indication Cl as is performed by each secondary device 20A, 20B individually. The comparison indication signals whether or not the secondary device 20A, 20B may take action.
[0087] One action may be performed if the comparison result indicates that the received first data FD is similar to the second data SD is step S3, for example for secondary device 20A. The comparison indication Cl may trigger a small message indicating similarity of the data to the recipient of the first data FD from the primary device 10, such as the orchestrating system 100. This is shown in step S4. The orchestrating system 100 may derive from the small message that the second data SD at the secondary device 20A is similar to the first data FD as received from the primary system and hence determine a comparison indication Cl itself. It should be noted that the secondary device 20A may be configured such that the comparison indication Cl indicating the FD and SD are similar does not trigger a transmission. The orchestrating system 100 may determine an implicit comparison indication Cl from the absence of a message from the secondary device 20A.
[0088] Another action may comprise that the secondary device 20A should send the second data SD, or part thereof, to the recipient of the transmission of the first data FD from the primary device 10 in order for the recipient to have sufficient data available to perform its task(s). The recipient of the first data FD may be the orchestrating system 100. If the secondary device 20 finds out that the first data FD is not similar to the second data SD in step S3, the comparison indication Cl may trigger a transmission of the second data SD or a part thereof, for example the differences found between FD and SD. The orchestrating system may determine a comparison indication from the transmission. This is shown in step S5.
[0089] The first data FD and second data SD may be considered similar when fully identical, identical for at least a predefined subset of the first data or identical with some predetermined margin of error. The secondary devices 20A, 20B may run a similarity algorithm to determine whether the (part of) the first data FD is similar to the second data SD which is indicated by the comparison indication Cl. The secondary devices 20A, 20B may apply a similarity threshold to this end. The similarity threshold may be obtained previously from, for example, the orchestrating system 100.
[0090] In an embodiment, a similar data sharing system 1 may amount to a case, wherein otherwise a primary device 10 and second devices 20A, 20B have to transmit at least the same type of parameters under similar conditions and thus the same or similar values are likely for at least some of the parameters in the data. For example, in machine learning techniques, such as federated learning, parameter updates of devices may afford a level of lossy compression or adjustment without affecting the model accuracy. This will be illustrated in further detail with reference to FIGS. 5A-5D. Other data may also allow for inaccuracy margins, for example temperature or humidity in e.g. a warehouse, factory, field, green house, on a floor of an office or store etc..
[0091] FIG. 2A is a schematic illustration of an example of an orchestrating system 100. The orchestrating system 100 comprises a transceiver 110 for wireless communication with primary and secondary devices 10, 20A, 20B. The orchestrating system 100 further comprises a processor 120 and a data storage 130. The processor 120 is configured to execute various algorithms 141-146 shown as a virtual algorithm store 140. The algorithms would normally be implemented as software code executable by the processor 120. FIG. 3A illustrates some steps wherein some of these algorithms are used. It is noted that the orchestrating system 100 may be configured to execute more or fewer algorithms than disclosed herein.
[0092] Algorithm 141 pertains to an encryption key generation algorithm. The orchestrating system may be configured to transmit the encryption information to the plurality of devices 10, 20A, 20B to enable encryption of the first data FD transmitted from the set of primary devices 10 and to enable comparison at secondary devices 20A, 20B of the set of secondary devices. The primary device 10 may be further configured to receive the encryption information El from the orchestrating system 100 and encrypt the first data FD in accordance with the encryption information, for example when storing the first data or shortly before transmission of the first data. The secondary devices 20A, 20B may also be configured to receive encryption information El from the orchestrating system 100. The secondary devices 20A, 20B may be configured to perform an operation on at least one of the first data FD in encrypted form and the second data SD stored locally to enable the comparison.
[0093] The similar data sharing system 1 benefits from encrypted transmission of the first data FD (and second data SD, if needed) to secure that data transmission. The orchestrating system 100 may ensure that the primary and secondary devices have encryption information using algorithm 141 to allow the comparison of the (part of the) first data and the second data. It should be acknowledged that the comparison may either be performed based on decrypted first and second data, encrypted first and second data or some digital signatures of the data, either encrypted or not.
[0094] In particular, the generated keys may be temporary encryption keys using digital cryptography method(s). Examples of such methods include public-key asymmetric cryptography, symmetric key cryptography and hybrid key cryptography, The encryption keys may be individually assigned to each primary device. The temporary encryption keys may be stored in the storage 130 of the orchestrating system.
[0095] Algorithm 142 is a device assignment algorithm. The algorithm determines which devices in the coverage area of the orchestrating system can be assigned as primary device(s) 10 and which devices can be assigned as secondary device(s) 20A, 20B.
[0096] This algorithm of the orchestrating system 100 may arbitrarily assign devices to the set of primary devices or the set of secondary devices, e.g. using a randomizing function. The orchestrating system 100 may, however, benefit from information regarding the devices 10, 20A, 20B to enhance energy efficiency for the similar data sharing system 1 .
[0097] The orchestrating system 100 may execute an assignment algorithm 100 to assign devices of the plurality of devices to the set of primary devices for transmission of the first data FD based on the information obtained from the devices 10, 20A, 20B. The assignment algorithm may use at least one of device capabilities, data similarity, radio propagation characteristics and spatial characteristics of the devices as input for the algorithm to assign one or more devices to the set of primary devices 10.
[0098] The orchestrating system 10 may be configured to receive at least one of capability indication of one or more device capabilities, a radio indication regarding radio propagation characteristics and a spatial indication regarding spatial characteristics from one or more of the plurality of devices 10, 20A, 20B. The orchestrating system 100 is suited to make a central assessment of the conditions for all devices 10, 20A, 20B in relation to each other and / or to the overall system and select primary devices suitable for transmission of the first data FD in full to enhance energy efficiency for the similar data sharing system. For example, a device may be assigned to the set of secondary devices if its capabilities and / or when a radio connection and / or location make it less suitable for data transmission (for example, battery-powered and far away from the orchestrating system to which transmissions should be directed).
[0099] The use of data similarity to select primary devices 10 may consider previous datasets of the devices 10, 20A, 20B such that allocation of primary or secondary devices is given by a secondary device’s data typically matching with a primary device. This similarity may be verified as a start where all devices 10, 20A, 20B share full datasets and these can be used to initialize the similar data sharing system 1. In this operation, the full datasets may be compared for similarity and the orchestrating system may then assume similar datasets from particular devices is likely to continue as a trend.
[0100] The devices 10, 20A, 20B may be configured to transmit such information for the assignment to the orchestrating system 100. This is also shown in step S10 in FIG. 3A, wherein the dash-dotted box illustrates the transmission and receipt of assignment information from each of the devices 10, 20A, 20B. The information may pertain, for example, to least one of a capability indication of one or more device capabilities, a radio indication regarding radio propagation characteristics, and a spatial indication regarding spatial characteristics of the devices 10, 20A, 20B. Such information may assist the orchestrating system 100 to assign the device to the set of primary or to the set of secondary devices. For example, a device may be assigned to the set of secondary devices if its capabilities and / or when a radio connection and / or location make it less suitable for data transmission (for example, battery-powered and far away from the orchestrating system to which transmissions should be directed).
[0101] In step S11 , the orchestrating system 100 transmits an assignment to each of the devices. In particular, the orchestrating system 100 informs device 10A that it should behave as a primary device and informs devices 20A, 20B that they should behave as secondary devices.
[0102] Algorithm 143 may be used by the orchestrating system 100 to modify transmission characteristics of primary devices 10 and to modify reception characteristics of secondary devices temporarily to increase the probability that secondary devices 20A, 20B can reliably overhear the transmission of the first data FD from the primary device 10.
[0103] The algorithm 143 determines how the characteristics of devices may be modified to increase the probability. The orchestrating system 100 may be configured to transmit a transmission boost indication TBI to the devices or, if primary devices 10 have already been determined, the orchestrating system 100 may decide to only send the transmission boost indication TBI to the primary devices 10. Likewise, the orchestrating system 100 may transmit a sensitivity indication SI to the devices 10, 20A, 20B or, if the secondary devices 20A, 20B have already been assigned, to the secondary devices 20A, 20B to temporarily enhance sensitivity to overhear the first data FD for the set of secondary devices 20A, 20B.
[0104] Secondary devices 20A, 20B may be configured to modify receiving characteristics in accordance with the first radio resource indication RRI1 to temporarily enhance sensitivity to overhear the transmission of the first data FD.
[0105] Step S12 in FIG. 3A is depicted as a single transmission from the orchestrating system 100 to transmit various indications to the devices 10, 20A, 20B. It should be noted that these indications may also be transmitted in multiple transmissions or that these indications are provided to the devices 10, 20A, 20B prior to assigning devices as primary or secondary. In the latter event, it may be useful to send the indications to all devices 10, 20A, 20B and decide on the use of the indications after assignment of primary and secondary devices 10, 20A, 20B.
[0106] Step S12 in FIG. 3A illustrates the transmission of the transmission boost indication TBI to the primary device 10 and the transmission of the sensitivity indication SI to the secondary devices. It is noted that these indications may also have been included in the assignment indications in step S11 . It is further noted that TBI and SI may also be sent to all devices.
[0107] Algorithm 144 enables the orchestrating system 100 to determine a subset indication SSI indicating a subset of the first data FD. The subset indication SSI may serve to identify key data from the first data FD. This indication can be used by secondary devices 20A, 20B to reduce use of computation resources as only a subset of the first data FD may be used for the comparison step to determine the comparison indication Cl. The orchestrating system 100 is configured to transmit a subset indication SSI indicating a subset of the first data FD to at least one of the set of primary devices 10 and the set of secondary devices 20A, 20B.
[0108] The primary device 10 may use the subset indication SSI to adjust the transmission of the first data FD. For example, the transmission may be tailored or adapted to have to have the transmission of the key data subset of data to precede transmission of other data of the first data FD. The orchestrating system 100 may be used to coordinate definition of the subset of the first data FD between the primary device(s) 10 and secondary devices 20A, 20B.
[0109] The secondary devices 20A, 20B are configured to compare a subset of the first data FD as the part of the first data FD to obtain the comparison result. The secondary device may be configured to receive and process a subset indication SSI of the subset from the orchestrating system 100 to determine which part of the first data to take into account for the comparison operation.
[0110] Step S12 in FIG. 3A shows the transmission of the subset indication SSI to both primary and secondary devices 10, 20A, 20B.
[0111] Algorithm 145 provides the orchestrating system 100 with the capability to execute a similarity threshold algorithm to determine a similarity threshold ST. The orchestrating system 100 is configured to transmit a similarity threshold indication STI to assist the set of secondary devices 20A, 20B to determine the comparison indication Cl in the secondary devices. This is shown in FIG. 3A in step
[0112] S12.
[0113] The secondary devices 20A, 20B may be configured to receive a similarity threshold indication STI to be used in determining the comparison indication Cl. The similarity threshold indication STI may be used to determine whether or not the (subset of the) first data FD is considered similar to the second data SD. The indication STI may thus be useful to determine whether or not the secondary device 20A, 20B will engage in its own transmission of (second) data SD. The similarity threshold indication STI provides for flexibility from the orchestrating system 100 to strike a balance between energy efficiency and need of data from secondary devices 20A, 20B.
[0114] As mentioned above, a secondary device, such as device 20B, may sometimes need to transmit second data SD when the comparison result is unsatisfactory, indicated by the comparison indication Cl. The secondary device 20B is configured to transmit the second data, or a part thereof. The secondary device 20B may determine the part of the second data SD to be transmitted in accordance with the comparison result. The similarity threshold indication STI may also play a role in determining the part of the second data to be transmitted. As mentioned above, transmission of the second data, or part thereof, may be triggered by the comparison indication Cl and sent to, for example, the orchestrating system.
[0115] Algorithm 146 serves the orchestrating system 100 to determine radio resources indications RRI1 and / or RRI2 for the primary and secondary devices 10, 20A, 20B. The first radio resource indication RRI1 may be sent to both the primary device 10 and secondary devices 20A, 20B as described with reference to FIG. 1 B.
[0116] The first radio resource indication RRI1 serves the secondary devices 20A, 20B in overhearing the transmission of the first data FD from the primary device 10 that transmits in accordance with the first radio resource indication RRI1. The orchestrating system 100 may further transmit the first radio resource indication RRI1 to the set of primary devices 10 to schedule transmission of the first data FD. This allows the orchestrating system 100 to coordinate transmission from the primary device(s) 10 and receipt by the secondary devices 20A, 20B via overhearing.
[0117] The orchestrating system 100 may further transmit the second radio resource indication RRI2 for transmission of (a part of) the second data. The second radio resource indication RRI2 may also be used by the secondary device to transmit a small message when the comparison indication indicates that the first data FD and the second data SD are similar, possibly taking into account the similarity threshold indication STI.
[0118] The secondary devices 20A, 20B may be configured to receive the second radio resource indication RRI2 from the orchestrating system 100 to transmit the (part of the) second data. The second radio resource indication RRI2 may determine that transmission of the first data FD from one or more primary devices 10 precedes transmission of (the part of) the second data for at least some devices 20A, 20B of the set of secondary devices. The orchestrating system 100 may, optionally, be configured to set a time interval between receipt of the first data and transmission of (the part of) the second data as shown in FIG. 3A by time interval AT. The time interval may be part of the second radio resource indicator RRI2. The second radio resource indication RRI2 may, for example, specify at least one of a time slot, frequency, code, etc. used for transmitting the second data SD, or part thereof, by the secondary device 20A, 20Dto, for example, the orchestrating system 100 or another device, such as the primary device 10 or another secondary device. The second radio resource indication RRI may, for example, schedule the transmission of second data SD to take place after determining a comparison indication Cl. The secondary device 20A, 20B uses the second resource indication RRI2 under the condition that the comparison indication Cl triggers the use thereof.
[0119] FIG. 2B is a schematic illustration of an ambient loT device 20 as a secondary device configured to receive and process power signal PS to provide power. The ambient loT device 20 comprises a power harvesting part 21 , a processing part 22 and a storage part 23 configured to store second data. The ambient loT device 20 also comprises at least one of a communication part, which is assumed to be contained in the power harvesting part 21 . The ambient loT device may comprise further parts or functions, such as at least one sensor 24 (or a connector therefore). It should be appreciated that ambient loT device 20 may comprise a plurality of sensors 24 or connectors therefore. Examples of sensors include a location sensor, a temperature sensor, a humidity sensor, a light sensor, a pressure sensor, a motion sensor etc. A time stamp generator may also be a function available in the device, to include time stamps in data transmissions.
[0120] The ambient loT device 20 is configured to harvest power from the power signal PS and may, optionally determine from the power signal PS whether or not to respond. If so, at least the processing part and, optionally, the other parts, such as at least one of the storage part 23 and sensor 24 may be activated. Power supply lines to these parts are indicated by the solid lines in FIG. 2B.
[0121] The processing part 22 is configured to execute operations for being able to work with the orchestrating system 100 as described above. For example, the processing part 20 may be configured to receive and process at least one of the first radio resource indication RRI1 to overhearthe transmission of the first data FD, encryption information El to decrypt the first data FD or encrypt the second data SD, a sensitivity indication SI to enhance overhearing the first data FD, a subset indication SSI to determine the part of the first data FD to be used for comparing with the second data stored in the storage part 23, a similarity threshold indication STI to be used in the comparison operation, a second radio resource indication RRI2 to determine transmission of the (part of the) second data, if any, etc. Signal lines for such action(s) are indicated by the dashed-dotted lines in FIG. 2B.
[0122] It is appreciated that ambient loT devices 20 may comprise more or fewer parts. Essentially, the ambient loT device 20 is a battery-less device with limited, if any, energy storage capability (one or more capacitors may be included) wherein the energy is provided through the harvesting of radio waves (e.g. from the orchestrating system 100), light, motion, heat or any other power source that could be suitable. The ambient loT device 20 is not capable of storing any significant power provided to it in the power signal PS and uses the supplied power almost immediately in order to complete its desired actions.
[0123] Step S13 in FIG. 3A amounts to the transmission of the first data FD from the primary device 10 and the overhearing by second devices 20A, 20B in accordance with the radio resource indication RRI 1 and, optionally, one or more of the other indications received in step S12 (or S11 , see above). For example, the first data FD may be encrypted using the encryption information El obtained in step S12. The primary device 10 may also format the first data FD in accordance with the subset indication SSI that determines key data to be compared in the secondary devices 20A, 20B to obtain the comparison result and comparison indication Cl. Furthermore, the primary device 10 may apply the received transmission boost indication to boost the transmission of the first data FD.
[0124] The secondary devices 20A, 20B may apply the obtained indications in step S12. For example, the secondary devices 20A, 20B may overhear the transmission of the first data FD in accordance with RRI1 and increase sensitivity of the receiver in accordance with the sensitivity indication SI temporarily. For the comparison, the secondary devices use the encryption information El obtained in step S12 if the first data FD is encrypted accordingly. Also for the comparison, the secondary devices may use the subset indication SSI to determine a subset of the data (the key data) from the first data for the comparison.
[0125] In FIG. 3A, it is assumed that secondary device 20A concludes that the second data SD is similar to the first data FD (or the subset of key data thereof), possibly taking account of the similarity threshold indication STI. The orchestrating system 100 concludes this from the absence of a transmission from the secondary device 20A and thereby determines a (positive) comparison indication Cl implicitly. Secondary device 20B determines a comparison indication Cl indicating that the first data FD (or subset thereof) is not similar to the second data SD, possibly taking account of the similarity threshold indication STI. After a time interval AT, the secondary device 20B transmits second data, or a part thereof, in accordance with the second radio resource indicator RRI2. This is shown in step S14 in FIG. 3A
[0126] FIG. 3B is an example of a time diagram for a situation with more (sets of) primary devices 10A, 10B.
[0127] Again, step S10, indicated by the dash-dotted box, shows devices 10A, 10B, 20A, 20B to transmit information for the assignment to the orchestrating system 100. The information may pertain, for example, to least one of a capability indication of one or more device capabilities, a radio indication regarding radio propagation characteristics, and a spatial indication regarding spatial characteristics of the devices 10A, 10B, 20A, 20B. Such information may assist the orchestrating system 100 to assign the device to the set of primary or to the set of secondary devices as explained with reference to FIG. 3A. In step S11 , the orchestrating system 100 assigns the devices 10A, 10B as primary devices and the devices 20A, 20B as secondary devices.
[0128] The orchestrating system 100 may be configured to assign devices 20A, 20B of the plurality of devices to the set of secondary devices, wherein a subset of the set of primary devices 10A, 10B is associated with a subset of the set of secondary devices 20A, 20B. In FIG. 3B, is may be assumed the the (subset of) primary device(s) 10A is associated with the (subset of) secondary device(s) 20A and that the (subset of) primary device(s) 10B is associated with the (subset of) secondary device(s) 20B. This configuration avoids the need for a secondary device 20A, 20B to overhear the transmission of first data FD of all primary devices 10A, 10B. The orchestrating system 100 may ensure that the secondary device only overhears data from relevant, nearby, etc. primary devices and will adjust the information it sends to the secondary devices 20A, 20B accordingly, such as the first radio resource indication RRI1 .
[0129] In FIG. 3B, step S11 pertains to the assignment of the primary and secondary devices to subsets by the orchestrating system. In step S11 , the orchestrating system 100 may also provide one or more of the indications as shown for FIG. 3A to the devices.
[0130] It is noted that the first radio resource indication RRI1 may be different for different primary devices in the set of primary devices, for example RRI1A for devices of the set of primary devices 10A and RRI1 B for devices of the set of primary devices 1 B. RRI1A and RRI1 B are also sent to secondary devices 10A, resp. 10B. This allows the secondary devices 20A, 20B to distinguish between different transmissions of first data FD from primary devices, so that it can execute, for example, a comparison for first data FD received from one primary device, 10A, resp. 10B. When a secondary device 20A, 20B receives both RRI1A and RRI1 B, it may decide on whether there is a need for a further comparison on first data received from another primary device 10B after having received first data from a previous primary device 10A. This may save resources for the secondary device.
[0131] Step S13A in FIG. 3B amounts to the transmission of first data FD from primary device 10A in accordance with RRI1 A so that it is overheard by secondary device 20A. The comparison indication Cl is obtained and may trigger a small message in step S14A to indicate to the orchestrating system 100 that the first data FD is similar to the second data SD, possibly taking similarity threshold indication STI obtained in step S11 into account. Likewise, step S13B represents the transmission of first data FD from primary device 10B in accordance with RRI1 B, so that it is overheard by secondary device 20B. SUB may amount to a small message as for step S14A or may be a transmission of second data triggered by the comparison indication Cl computer by secondary device 20B.
[0132] The primary devices 10A, 10B may include a primary device identifier PDI_A, PDI_B in their transmission so that secondary devices 20A, 20B may distinguish the between the (transmissions of) the primary devices 10A, 10B.
[0133] Transmissions from different primary devices 10A, 10B may be scheduled so that secondary devices 20A, 20B may stop overhearing after a (subset of) first data FD is received that is similar to its second data SD. The secondary device may communicate this to the orchestrating system by including the applicable primary device identifier PDI_A, resp. PDI_B.
[0134] In one embodiment, secondary devices 20A, 20B may also transmit to other devices than the orchestrating system. For example, the small message, data differences or full second data may be transmitted to the primary device 10, 10A, 10B or to another secondary device, for example when the channel between these devices is more efficient than the channel from a secondary device to the orchestrating system 100. The primary device 10, 10A, 10B may be (made) aware of this upcoming transmission, for example by the orchestrating system 100 after having received device features from the devices. A multi-hop scenario to convey transmissions from the secondary device 20A, 20B to the orchestrating system 100 is also envisaged.
[0135] FIG. 4 is a flow chart illustrating exemplary steps to be taken in a similar data sharing system 1 as shown in FIG. 1 A. It should be noted that the order of the steps may be changed, where appropriate. Where multiple primary devices are present, the secondary device may repeat one or more steps for each primary device transmission.
[0136] Starting from the step indicated in the upper left block of FIG. 4, the orchestrating system is tasked with collecting data from devices or with updating a central model. To this end, the orchestrating system may gather device features that may be stored in the data storage of the orchestrating system. The devices may provide the device features upon request by the orchestrating system. The devices may store device features locally in a data storage in order to provide these upon request.
[0137] In a next step, primary and secondary device status is assigned to all devices by the assignment algorithm in the orchestrating system. In this manner, the primary and secondary device selection is generated. The assignment algorithm may receive the device features to determine which devices to assign primary and secondary status based on pre-established criteria. For example, if the battery status of a device is below a certain pre-defined threshold, it may be assigned secondary device status. If the device can be overheard by many local devices, it may be assigned primary device status. For example, if the device has a large propagation distance, high transmit power and is located within a densely populated area of devices, it may also be assigned primary status. Primary and secondary device selection may be stored in a data storage within the orchestrating system.
[0138] Alternatively or in addition to the device features, an initial round of sampling from all devices may be used to determine the similarities in data to be used as input to the assignment algorithm in the orchestrating system. The device assignment algorithm may then use the similarities of the data to determine which devices to assign primary and secondary status. For example, if the current data obtained by two devices and provided to the orchestrating system is deemed similar, the device with the smaller power supply is assigned secondary device status and vice vera. The similarities in data may also be obtained using a similarity threshold algorithm and a comparison algorithm as explained above.
[0139] In a further step, the primary and secondary device selection is used for executing a device transmission scheduling algorithm in the orchestrating system to generate the device transmission schedule. The device transmission scheduling algorithm uses the primary and secondary device selection to allocate transmission resources for each device such that the secondary devices may receive and compare first data from primary device(s) before their own transmission slots. An example method comprises that the primary device is allocated an initial transmission window and the secondary device is allocated a later transmission window. The transmission windows are recorded in the device transmission schedule and may be stored in the orchestrating system.
[0140] As shown in FIG. 4, this step may optionally include application of an encryption key generating algorithm where the uplink data requires encryption. This algorithm may assign temporary encryption keys to be used by primary device transmissions of first data. The encryption key generating algorithm may receive the primary and secondary device selection and generate a temporary encryption key for each primary device using digital cryptography methods. These are individually assigned to each primary device. The temporary encryption keys may be stored within the orchestrating system. Furthermore, this step may include the determination of key data to be used for comparison by the secondary devices. The key data may be obtained using the key data assignment algorithm in the orchestrating system. The key data assignment algorithm may use previously acquired first and second data from devices to obtain specific data points. The key data may be stored in within the orchestrating system.
[0141] This step may also include measures to enhance the reception of primary device transmissions of first data by secondary devices, or to enhance privacy. The orchestrating system may request that devices adjust their transceiver characteristics. Optionally, changes to the transmission characteristics of primary devices may be calculated by the orchestrating system using a modified transmission algorithm. This algorithm may apply the device features to determine the modification of transmission characteristics of a primary device to enhance data reception at a secondary device. For example, using the relative locations of the primary and secondary devices, the transmission beam of the primary device may be widened such that the secondary device receives a higher signal strength Or, when the distance between the primary and secondary devices is considered, the transmission strength of the primary device may be increased. Alternatively, where primary device transmissions are to avoid certain devices, the primary device may decrease transmission power in a specific direction. The modified transmission characteristics may be stored within the orchestrating system.
[0142] Alternatively, the orchestrating system may request that primary and secondary devices determine the required transmission characteristics via device-to-device (D2D) communications. This may be aided by the orchestrating system sharing location information between primary and secondary device(s).
[0143] The orchestrating system may also consider the reception characteristics of the secondary devices to enhance their sensitivity. For example, such enhanced sensitivity may result from phase alignment of a multi-antenna receiver of a secondary device to enhance signal reception. The orchestrating system may apply a modified receiver algorithm. This algorithm may apply the device features to determine the modified receiver characteristics to enhance data reception at a secondary device. For example, using the relative locations of the primary and secondary devices, the phase of a multi-antenna receiver of the secondary device may be tuned such that the primary device transmission is constructively enhanced, and the secondary device receives a higher signal strength. The modified receiver characteristics may be stored within the orchestrating system. Optionally, as for the modification of transmission characteristics, the orchestrating system may request that primary and secondary devices determine the required receiver characteristics via device-to-device (D2D) communications.
[0144] In a next step, the similarity threshold for secondary devices may be determined that can be used when comparing datasets. This threshold may be obtained using a similarity threshold algorithm. The similarity threshold algorithm may assign a similarity threshold to the secondary devices based on data factors and / or a set of pre-defined criteria. For example, the algorithm may compare previous data obtained from devices and define the similarity threshold based on a percentile of the standard deviation between previous device datasets. Alternatively, the similarity threshold may be preset in the secondary devices. The similarity threshold may be stored within the orchestrating system. As a next step, the primary and secondary device selection, device transmission schedule, and the similarity Threshold, are transmitted from the orchestrating system to all devices. The comparison algorithm may also be shared with all secondary devices. The transmission may be a broadcast, multicast or unicast.
[0145] Optionally, where the data to be compared by secondary devices must be encrypted, the temporary encryption keys generated by the encryption key generating algorithm, should be shared with individual devices, for example via encrypted private channels, or preconfigured or updated in the devices, e.g. in a secure environment. Primary devices are given their temporary encryption keys to be used for the uplink transmission of first data. All secondary devices are given the temporary encryption keys used by the primary devices to encrypt the first data.
[0146] Optionally, where the orchestrating system has determined the set of key data of the first data, from the key data assignment algorithm, the selection of key data is also shared with all devices. Optionally, the orchestrating system may specify to all devices, that the key data is to be transmitted at the beginning of all uplink transmissions of first data.
[0147] Furthermore, optionally this step involves the sharing of modified transmission and receiver characteristics when, for example, the orchestrating system has determined propagation characteristics of the primary and secondary device links. The indications may be transmitted to all devices. The indications may pertain to the modified transmission characteristics determined by the modified transmission algorithm, the modified receiver characteristics determined by the modified receiver algorithm and / or location data to be used by primary and secondary devices to process optimal propagation links locally, for example for D2D communication.
[0148] As a next step, the primary device and secondary device obtain primary device data and secondary device data, respectively, possibly using onboard sensors. These data sets are stored in the devices respective local data storages. The individual device processors may process the device data obtained by the respective devices before storage.
[0149] As a next step, the primary device transmits its full set of data to the orchestrating system in accordance with the transmission schedule. This first data may be stored within the orchestrating system. Alternatively, where, as described above, the uplink data requires encryption, the transmission is encrypted with the provided temporary encryption key obtained from the orchestrating system. Where, as described above, only key data is to be compared by secondary devices, only the key data may be encrypted using the dedicated temporary encryption key. Optionally, where, as described above, only key data is to be compared by secondary devices, the key data may be transmitted before transmission of other first data. Optionally, where, as described above, the propagation characteristics of the primary device transmission of first data may be modified in accordance with the indication. Alternatively, the desired propagation characteristics may require D2D communications to secondary devices and / or local calculations.
[0150] As a next step, the secondary device(s) overhear the transmission by the primary devices in accordance with the transmission schedule provided by the orchestrating system. The secondary device may receive the primary and secondary device selection, identify itself as a secondary device and check the transmission schedule to determine what resources must be used to receive the primary device data. For example, the transmission schedule may specify the transmission window of the primary device such that the secondary device activates its receiver during this time period. The transmission schedule may, alternatively or in addition, specify a frequency channel of the primary device such that the secondary device tunes its reception frequency.
[0151] Optionally, where, as described above, only key data is to be compared by secondary devices, the secondary device may only listen to the key-data, for example, transmitted at the start of the primary device uplink. Optionally, where, as described above, the receiver characteristics may be adjusted to heighten the sensitivity of the secondary devices’ receiver, in accordance with the modified receiver characteristics. Optionally, where, as described above, local calculations are required, the secondary device may calculate its own receiver characteristics to enhance the receiver sensitivity to the specified primary device transmission. Optionally, as described above in Method Step 7.d.i ., the secondary device receiver-sensitivity may be improved via D2D communications with the desired primary device.
[0152] In a next step, the secondary devices may compute a comparison result and determine a comparison indication. The comparison indication is generated by the comparison algorithm using the similarity threshold. The comparison algorithm may receive the local secondary device data and the first data of the primary device to determine the level of similarity between the two sets of data based on pre-established criteria. For example, if the difference between the two sets of data is greater than the similarity threshold, the sets of data are deemed dissimilar to one another, and this is reflected in the comparison indication.
[0153] Optionally, the amount to which the two sets of data differ may be calculated by obtaining the difference between the two sets of data and comparing this to the similarity threshold. Optionally, where, as described above, the primary device data is encrypted, the secondary device may first decrypt the primary device data using the specific temporary encryption key previously obtained from the orchestrating system. Optionally, where, as described above, only key data is to be compared by secondary device, the comparison algorithm in the secondary device is used only to compare the key data with corresponding data in the secondary device.
[0154] As a next step, the secondary device may act in accordance with the comparison indication. In accordance with the transmission schedule obtained from the orchestrating system, the secondary device may update the orchestrating system. The secondary device may transmit to the orchestrating system based on pre-established criteria. For example, if the comparison indication indicates the primary device data and secondary device data are similar, the secondary device may transmit a lightweight “Agreement message”. The term “Agreement message” describes an acknowledgement message from a secondary device stating that its local data is similar to that overheard from the primary device.
[0155] Optionally, the secondary device may include a comparison indication range in a transmission to the orchestrating system. Alternatively, the secondary device may transmit nothing to indicate that the overheard primary device data obtained is similar to the secondary device data. Alternatively, if the secondary device has received data from multiple primary devices, the Agreement message may include the identification number of the primary device. Where there is more than one primary device with data that are within the similarity threshold of the secondary device, the one with the closest data is selected. If the comparison indication indicates the primary and secondary data are not similar, the secondary device may transmit its full data set. Optionally, the secondary device may transmit only the difference in data between its local data and the primary device’s data.
[0156] The method steps of FIG. 4 may be repeated for further iterations of first data transmissions from devices.
[0157] FIGS. 5A-5D are visualizations of a several stages for a particular application of a similar data sharing system, viz. updating of a model.
[0158] In FIG. 5A, an orchestrating system (e.g. a base station) determines primary devices (triangles with a full battery symbol) and secondary device (black circles with (almost) empty battery symbol). The orchestrating system transmits, for example broadcasts, one or more of the indications disclosed above to obtain updates of a model visualized by the graph at the orchestrating system. The transmission may include transmission of the model, e.g. a federated learning model, and one or more (key) weights applicable to the model.
[0159] In FIG. 5B, the primary and second devices use local data to train their local models, visualized by the graphs near the devices.
[0160] In FIG. 5C, a primary device transmits the full model and obtained local weights in accordance with indications from the orchestrating system and some of the secondary devices overhear these transmissions, visualized by the ear pictures, in accordance with indications from the orchestrating system.
[0161] The secondary devices than compute a comparison result and determine a comparison indication. In FIG. 5D, it is shown that one secondary device transmits a small message SM indicating to the orchestrating system that its model and weights are similar to the one transmitted by the primary device. The other secondary device has found that its model and weights are not similar to the one of the primary device so that it sends a full model and its locally determined weights, as indicated by the graph.
[0162] FIG. 6 depicts a block diagram illustrating an exemplary processing system according to a disclosed embodiment, e.g. a wireless transmission device 20, 40 or a authentication system AUT as described above for use in a system 100. As shown in FIG. 6, the processing system 60 may include at least one processor 61 coupled to memory elements 62 through a system bus 63. As such, the processing system may store program code within memory elements 62. Further, the processor 61 may execute the program code accessed from the memory elements 62 via a system bus 63. In one aspect, the processing system may be implemented as a computer system that is suitable for storing and / or executing program code. It should be appreciated, however, that the processing system 60 may be implemented in the form of any system including a processor and a memory that is capable of performing the functions described within this specification.
[0163] The memory elements 62 may include one or more physical memory devices such as, for example, local memory 64 and one or more bulk storage devices 65. The local memory may refer to random access memory or other non-persistent memory device(s) generally used during actual execution of the program code. A bulk storage device may be implemented as a hard drive or other persistent data storage device. The processing system 60 may also include one or more cache memories (not shown) that provide temporary storage of at least some program code in order to reduce the number of times program code must be retrieved from the bulk storage device 65 during execution.
[0164] Input / output (I / O) devices depicted as an input device 66 and an output device 67 optionally can be coupled to the processing system. Examples of input devices may include, but are not limited to, a space access keyboard, a pointing device such as a mouse, or the like. Examples of output devices may include, but are not limited to, a monitor or a display, speakers, or the like. Input and / or output devices may be coupled to the processing system either directly or through intervening I / O controllers.
[0165] In an embodiment, the input and the output devices may be implemented as a combined input / output device (illustrated in FIG. 6 with a dashed line surrounding the input device 66 and the output device 67). An example of such a combined device is a touch sensitive display, also sometimes referred to as a “touch screen display” or simply “touch screen” that may be provided with the UE. In such an embodiment, input to the device may be provided by a movement of a physical object, such as e.g. a stylus or a finger of a person, on or near the touch screen display.
[0166] A network adapter 68 may also be coupled to the processing system to enable it to become coupled to other systems, computer systems, remote network devices, and / or remote storage devices through intervening private or public networks. The network adapter may comprise a data receiver for receiving data that is transmitted by said systems, devices and / or networks to the processing system 60, and a data transmitter for transmitting data from the processing system 60 to said systems, devices and / or networks. Modems, cable modems, and Ethernet cards are examples of different types of network adapter that may be used with the processing system 60.
[0167] As pictured in FIG. 6, the memory elements 62 may store an application 69. In various embodiments, the application 69 may be stored in the local memory 64, the one or more bulk storage devices 65, or apart from the local memory and the bulk storage devices. It should be appreciated that the processing system 60 may further execute an operating system (not shown in FIG. 6) that can facilitate execution of the application 69. The application 69, being implemented in the form of executable program code, can be executed by the processing system 60, e.g., by the processor 61 . Responsive to executing the application, the processing system 60 may be configured to perform one or more operations or method steps described herein.
[0168] In one aspect of the present invention, one or more components of the orchestrating system as disclosed herein may represent processing system 60 as described herein.
[0169] Various embodiments of the invention may be implemented as a program product for use with a computer system, where the program(s) of the program product define functions of the embodiments (including the methods described herein). In one embodiment, the program(s) can be contained on a variety of non-transitory computer-readable storage media, where, as used herein, the expression “non-transitory computer readable storage media” comprises all computer-readable media, with the sole exception being a transitory, propagating signal. In another embodiment, the program(s) can be contained on a variety of transitory computer-readable storage media. Illustrative computer-readable storage media include, but are not limited to: (i) non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive, ROM chips or any type of solid-state non-volatile semiconductor memory) on which information is permanently stored; and (ii) writable storage media (e.g., flash memory, floppy disks within a diskette drive or hard-disk drive or any type of solid-state random-access semiconductor memory) on which alterable information is stored. The computer program may be run on the processor 61 described herein.
[0170] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “"a” "an" and "th" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprise" and / or "comprising” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0171] The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of embodiments of the present invention has been presented for purposes of illustration but is not intended to be exhaustive or limited to the implementations in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the claims. The embodiments were chosen and described in order to best explain the principles and some practical applications of the present invention, and to enable others of ordinary skill in the art to understand the present invention for various embodiments with various modifications as are suited to the particular use contemplated.
Claims
CLAIMS1 . A secondary device for use in a similar data sharing system comprising an orchestrating system and at least one primary device configured for transmission of first data, wherein the secondary device is configured to: receive a first radio resource indication from the orchestrating system regarding radio resources for transmission of the first data from the primary device; overhear the transmission of the first data from the primary device using the first radio resource indication; compare at least a part of the first data with second data accessible to the second device to obtain a comparison result; determine a comparison indication based on the comparison result, wherein, optionally, the secondary device is configured to transmit in accordance with the determined comparison indication to at least one of the primary device and the orchestrating system.
2. The secondary device according to claim 1 , wherein the first data is in encrypted form and wherein the secondary device is configured to perform an operation on at least one of the first data in encrypted form and the second data to enable the comparison, wherein the secondary device is, optionally, configured to receive encryption information from the orchestrating system and process the encryption information to perform the operation.
3. The secondary device according to claim 1 or 2, wherein the secondary device is configured to transmit at least one of a capability indication of one or more device capabilities, a radio indication regarding radio propagation characteristics, and a spatial indication regarding spatial characteristics of the secondary device, optionally in response to a request from the orchestrating system.
4. The secondary device according to one or more of the preceding claims, wherein the secondary device is configured to modify receiving characteristics in accordance with the first radio resource indication to temporarily enhance sensitivity to overhear the transmission of the first data, optionally in response to a sensitivity indication from the orchestrating system.
5. The secondary device according to one or more of the preceding claims, wherein the secondary device is configured to compare a subset of the first data as the part of the first data to obtain the comparison result, wherein, optionally, the secondary device is configured to receive and process a subset indication of the subset from the orchestrating system.
6. The secondary device according to one or more of the preceding claims, wherein the secondary device is configured to receive a similarity threshold indication to be used in determining the comparison indication.
7. The secondary device according to one or more of the preceding claims, wherein the secondary device is configured to transmit a part of the second data, wherein the part is determined in accordance with the comparison result, wherein, optionally, the secondary device is configured to receive a second radio resource indication from the orchestrating system to transmit the part of the second data.
8. An orchestrating system for use in a similar data sharing system comprising a plurality of devices, wherein the orchestrating system is configured to: transmit a first radio resource indication to a set of secondary devices of the plurality of devices regarding transmission of first data from a set of primary devices of the plurality of devices; determine a comparison indication of a secondary device of the set of secondary devices based on a comparison result from comparing at least a part of the first data with the second data in the secondary device, wherein, optionally, the comparison indication is determined from a transmission of at least one of a primary device and the secondary device.
9. The orchestrating system according to claim 8, wherein the orchestrating system is further configured to transmit the encryption information to the plurality of devices to enable encryption of the first data transmitted from the set of primary devices and to enable comparison at devices of the set of secondary devices.
10. The orchestrating system according to claim 8 or 9, wherein the orchestrating system is configured to execute an assignment algorithm to assign devices of the plurality of devices to the set of primary devices for transmission of the first data, wherein the assignment algorithmuses at least one of device capabilities, data similarity, radio propagation characteristics and spatial characteristics of the plurality of devices as input for the algorithm to assign one or more devices to the set of primary devices, wherein the orchestrating system is, optionally, configured to at least one of: receive at least one of capability indication of one or more device capabilities, a radio indication regarding radio propagation characteristics and a spatial indication regarding spatial characteristics from one or more of the plurality of devices; assign devices of the plurality of devices to the set of secondary devices, wherein, optionally, a subset of the set of primary devices is associated with a subset of the set of secondary devices.11 . The orchestrating system according to one or more of the preceding claims 8-10, wherein the orchestrating system is further configured to transmit at least one of the following: the first radio resource indication to the set of primary devices to schedule transmission of the first data, wherein, optionally, the first radio resource indication is different for different primary devices in the set of primary devices; a second radio resource indication to the set of secondary devices to schedule transmission of a part of the second data, wherein the second radio resource indication determines that transmission of the first data precedes transmission of the part of the second data for at least some devices of the set of secondary devices, wherein the orchestrating system is configured, optionally, to set a time interval between transmission of the first data and transmission of the part of the second data.
12. The orchestrating system according to one or more of the preceding claims 8-11 , wherein the orchestrating system is further configured to transmit at least one of the following: at least one of a transmission boost indication and a sensitivity indication to temporarily boost transmission of the first data for the set of primary devices resp. temporarily enhance sensitivity to overhear the first data for the set of secondary devices; a device-to-device indication to instruct primary and secondary devices to communicate with each other to find out transmission and receiving characteristics; a subset indication indicating a subset of the first data to at least one of the set of primary devices and the set of secondary devices; and a similarity threshold indication to assist the set of secondary devices to determine the comparison indication in the secondary devices.
13. A primary device for use with an orchestrating system according to one or more of the preceding claims 8-12, wherein the primary device is configured to: receive a subset indication from the orchestrating system and transmit a subset of data of the first data in a predetermined manner in accordance with the subset indication.
14. The primary device according to claim 13, wherein the primary device is further configured to at least one of the following: receive and process encryption information from the orchestrating system and encrypt the first data in accordance with the encryption information; receive and process a transmission boost indication to temporarily boost transmission of the first data; receive and process a subset indication indicating a subset of the first data to be transmitted and transmit the first data in accordance with the subset indication.
15. The primary device according to claim 13 or 14, wherein the primary device is allocated a primary device identifier.