Sample storage management method, sample management system

By associating the labels of sample boxes with the box location nodes, and matching the optimal storage location based on attributes, the errors and limitations in sample storage management are solved, and accurate automated storage and efficient traceability management are achieved.

CN121329286BActive Publication Date: 2026-05-01BEIJING HONGCHENG INNOVATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING HONGCHENG INNOVATION TECH CO LTD
Filing Date
2025-09-09
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

In existing technologies, sample storage and management rely on manual operation, which leads to management errors and limitations in global information management, making it difficult to ensure that samples are stored in the most suitable storage area, thus affecting sample activity and quality.

Method used

By responding to the warehousing information, the box tags of the sample boxes are associated with the sample tags. The target box location node is determined based on location, environmental adaptation and storage attributes, and then bound to it to form a synchronous association between logical and physical storage locations, ensuring that the sample matches the best storage area.

Benefits of technology

It achieves accurate and automatic sample matching, improves storage space utilization and sample tracking efficiency, avoids false occupancy or incorrect location of storage spaces, ensures sample viability, and provides information foundation support for traceability and inventory efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121329286B_ABST
    Figure CN121329286B_ABST
Patent Text Reader

Abstract

The application discloses a sample storage management method and a sample management system, and belongs to the technical field of computers. The method comprises the following steps: in response to obtaining the storage information of at least one sample box, associating the box label of each sample box with the sample label of each sample included in each sample box, wherein the storage information comprises sample association information and attribute information of the sample box, the sample association information comprises the box label of the sample box and the sample label of each sample included in the sample box, and the attribute information comprises the position attribute, the environment adaptation attribute and the storage attribute of the sample box; determining the target box position node matched with each sample box based on at least one of the position attribute, the environment adaptation attribute and the storage attribute of each sample box; binding the box label of each sample box with the box position label of the matched target box position node, forming a unique association, and updating the storage state of each target box position node and the corresponding ancestor node to an occupied state.
Need to check novelty before this filing date? Find Prior Art

Description

Sample storage management methods and sample management systems Technical Field

[0001] This application relates to the field of computer technology, and in particular to a method for managing the storage location of samples and a sample management system. Background Technology

[0002] In fields such as biology and medicine, various types of samples are generated. To ensure the effective use of these samples, they need to be stored. In traditional methods, sample storage and registration usually rely on manual operation. However, this approach may be prone to management errors or limitations in global information management, making it difficult to ensure that each sample is stored in its most suitable storage area. This can lead to reduced sample viability and consequently affect sample quality. Therefore, how to accurately and automatically match samples to the optimal cold storage area is a technical problem that urgently needs to be solved in related technologies. Summary of the Invention

[0003] This application provides a sample storage management method and a sample management system that can accurately and automatically match the best storage area for samples.

[0004] To solve the above-mentioned technical problems, this application is implemented as follows:

[0005] Firstly, a method for managing sample storage locations is provided. The method includes: in response to obtaining storage information for at least one sample box, associating the box tag of each sample box with the sample tag of each sample included in each sample box, wherein the storage information includes sample association information and attribute information of the sample box, the sample association information includes the box tag of the sample box and the sample tag of each sample included in the sample box, the attribute information includes the location attribute, environmental adaptation attribute, and storage attribute of the sample box, the location attribute includes the current location information, the environmental adaptation attribute includes the sample temperature control value and the maximum allowable temperature fluctuation value, and the storage attribute includes the expected storage duration, the minimum allowable sample viability rate, and the sample type; determining a target box location node matching each sample box based on at least one of the location attribute, environmental adaptation attribute, and storage attribute of each sample box; binding the box tag of each sample box with the box location tag of the matching target box location node to form a unique association, and updating the storage location status of each target box location node and its corresponding ancestor node to an occupied state, wherein the ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and root nodes.

[0006] Secondly, a sample management system is provided, including: a user permission management module, a basic information management module, a device management module, a sample lifecycle management module, an approval process management module, and a statistical analysis module. The user permission management module is used to perform user login authentication, role assignment, and access control operations. The basic information management module is used to configure sample process operations, including: storage location management, container management, topic management, sample template customization, and business process configuration. Storage location management is used to implement the steps of the method in the first aspect. The device management module is used for hardware management and monitoring. The sample lifecycle management module is used to manage the sample process, including: sample registration, sample application, sample approval, sample warehousing, sample warehousing, sample transfer, and sample verification. The approval process management module is used to perform process-based approval and task distribution based on user permissions. The statistical analysis module is used for data visualization and traceability of sample information.

[0007] Thirdly, an electronic device is provided, including a processor and a memory, wherein the memory stores a program or instructions executable on the processor, and the program or instructions, when executed by the processor, implement the steps of the method as described in the first aspect.

[0008] Fourthly, a readable storage medium is provided, on which a program or instructions are stored, which, when executed by a processor, implement the steps of the method of the first aspect.

[0009] Fifthly, a computer program product is provided, comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program including program instructions that, when executed by a computer, cause the computer to perform the steps of the method as described in the first aspect.

[0010] In this embodiment, in response to obtaining the storage information of at least one sample box, the box label of each sample box is associated with the sample label of each sample included in each sample box. The storage information includes sample association information and attribute information of the sample box. The sample association information includes the box label of the sample box and the sample label of each sample included in the sample box. The attribute information includes the location attribute, environmental adaptation attribute, and storage attribute of the sample box. The location attribute includes the current location information. The environmental adaptation attribute includes the sample temperature control value and the maximum allowable temperature fluctuation value. The storage attribute includes the expected storage duration, the minimum allowable sample viability rate, and the sample type. Based on at least one of the location attribute, environmental adaptation attribute, and storage attribute of each sample box, a target box location node matching each sample box is determined. The box label of each sample box is bound to the box location label of the matching target box location node to form a unique association. The storage status of each target box location node and its corresponding ancestor node is updated to an occupied state. The ancestor nodes, from bottom to top, include layer nodes, shelf nodes, device nodes, and root nodes, which can match the best storage area for the sample, so as to have a better preservation effect on biological samples and thus ensure sample viability. In addition, the embodiments of this application also realize the synchronization and association between logical tags and physical storage locations, which can avoid the problem of storage locations being occupied falsely or incorrectly. At the same time, it improves the utilization rate of storage locations and the efficiency of sample tracking, and provides an information foundation for subsequent sample traceability, inventory efficiency and compliance.

[0011] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description

[0012] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.

[0013] Figure 1 shows a schematic flowchart of a sample storage management method provided in an exemplary embodiment of this application;

[0014] Figure 2 illustrates another flowchart of a sample storage management method provided in an exemplary embodiment of this application;

[0015] Figure 3 illustrates another schematic flowchart of a sample storage management method provided in an exemplary embodiment of this application;

[0016] Figure 4 illustrates another schematic flowchart of a sample storage management method provided in an exemplary embodiment of this application;

[0017] Figure 5 illustrates yet another schematic flowchart of a sample storage management method provided in an exemplary embodiment of this application;

[0018] Figure 6 shows a schematic diagram of a sample management system provided in an exemplary embodiment of this application;

[0019] Figure 7 shows a schematic diagram of a storage management device for a sample provided in an exemplary embodiment of this application;

[0020] Figure 8 shows a schematic diagram of the structure of an electronic device provided in an exemplary embodiment of this application. Detailed Implementation

[0021] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0022] Figure 1 illustrates a schematic flowchart of a storage location management method provided in an exemplary embodiment of this application. This method can be executed by an electronic device, which may include a terminal device and a network-side device. In other words, the method can be executed by software or hardware installed on the electronic device, and the method may include the following steps:

[0023] S110: In response to obtaining the storage information of at least one sample box, associate the box label of each sample box with the sample label of each sample included in each sample box.

[0024] The storage information includes sample association information and attribute information of the sample box. The sample association information includes the box label of the sample box and the sample label of each sample contained in the sample box. The attribute information includes the location attribute, environmental adaptation attribute and storage attribute of the sample box. The location attribute includes the current location information. The environmental adaptation attribute includes the biological sensitivity parameter and the maximum allowable temperature fluctuation value. The biological sensitivity parameter includes the sample temperature control value. The storage attribute includes the expected storage duration, the minimum allowable sample viability rate and the sample type.

[0025] The sample tag and box tag can be RFID tags. The sample tag can be based on a country code, organization designation, sample type code, and unique sample identification code, and the box tag can be based on a country code, organization designation, sample box type code, and unique sample box identification code. In an exemplary embodiment, each sample is packaged in a corresponding sample tube, and the sample tube corresponds to the same RFID tag as the packaged sample.

[0026] Understandably, when the operator performs the storage operation, it scans both the sample to be stored and the sample box used to store the sample simultaneously to obtain the storage information of the sample box. After the management terminal obtains the storage information reported by the operator, it associates the box label of the sample box with the sample label of each sample contained in the sample box based on the sample association information included in the storage information. In this way, the sample label of each sample is associated with the box label of the corresponding sample box, thereby realizing the binding of the sample and the sample box.

[0027] The sample storage management method provided in this application embodiment can store at least one sample box at a time. That is, the operating terminal can simultaneously scan multiple groups of stored items to obtain multiple storage information entries. Each group of stored items includes a sample box and at least one sample contained within that sample box. In an exemplary embodiment, during simultaneous scanning, each group of stored items can be determined based on the division of spatial regions, meaning the distance between the sample box and the sample in each group is less than a preset distance. In another exemplary embodiment, during simultaneous scanning, each group of stored items can be determined using auxiliary markers, meaning the sample box and sample in each group correspond to the same auxiliary marker.

[0028] S120: Determine the target box node that matches each sample box based on at least one of the location attributes, environment adaptation attributes, and storage attributes of each sample box.

[0029] Understandably, the operating terminal also reports the location attributes, environmental adaptation attributes, and storage attributes of each sample box. The location attribute includes the current location information to identify the current location of the sample box; the environmental adaptation attribute includes a sample temperature control value to indicate the required storage temperature for the samples stored in the sample box, and a maximum allowable temperature fluctuation value to indicate the fluctuation range of the required storage temperature; the storage attribute includes an expected storage duration to indicate the maximum storage time for the samples in the sample box, a minimum allowable sample viability rate to indicate the minimum allowable sample viability rate in the sample box, and a sample type to indicate the type of sample in the sample box. For example, the sample type may include, but is not limited to, blood samples, serum samples, and microbial samples. Therefore, it is necessary to determine the target box location node matching each sample box based on at least one of the location attributes, environmental adaptation attributes, and storage attributes, so that the sample box can be stored in a suitable area.

[0030] S30: Bind the box label of each sample box to the box label of the matching target box node to form a unique association, and update the storage status of each target box node and its corresponding ancestor node to the occupied state.

[0031] The ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and root nodes.

[0032] It is understandable that by binding the box label of each sample with the box label of the matching target box node to form a unique association, the sample is associated with the sample box, and the sample box is associated with the target box node, thus realizing the association between logical data and physical storage location, as well as the association between the logical label of the box node and the physical storage location.

[0033] The box location tag is used to identify the box location node. Each box location node corresponds to a physical storage location, and the physical storage location has corresponding storage location coordinates. The box location tag can be an RFID tag, and the box location tag can be based on the country code, organization designation, box location node type code, and box location node unique identification code.

[0034] In one exemplary embodiment, the set consisting of the box labels of all valid sample boxes is defined as follows: , where m is the total number of registered sample boxes. The set consisting of all box labels is defined as follows: , where n is the total number of box nodes. The binding of the sample box's box label to the target box node's box label must satisfy the following constraints:

[0035] (1) Injectivity: Each sample box is bound to at most one box node. Formal representation: That is, at most one Make .

[0036] (2) Injectivity: Each box node is occupied by at most one sample box. Formal representation: At most one Make .

[0037] (3) Bijectivity: When a binding is established, the mapping relationship forms a bijection between subsets of R and P. That is:

[0038]

[0039] in, This represents the set of bound sample boxes. This represents the set of occupied box slots, meaning that each sample box that is entered into the database corresponds one-to-one with a box slot node.

[0040] In another exemplary embodiment, a sparse matrix storage structure can be used to optimize the above constraints: the binding relationship matrix M is defined as an m×n binary matrix:

[0041]

[0042] The matrix has the following characteristics: each row has at most one 1, meaning that each sample box is bound to no more than one box node; each column has at most one 1, meaning that each box node is occupied by no more than one sample box.

[0043] In yet another exemplary embodiment, a key-value pair mapping table can be used to store binding records:

[0044] (1) Forward mapping: Record the box position node bound to each sample box; if not bound, it is null.

[0045] (2) Reverse mapping: Records the sample boxes bound to each box position node; if idle, it is null.

[0046] Thus, when the operator scans the box label *r* and box location node *p* of the sample box, the management terminal obtains the (r, p) pair. (Check) If it is not null, it means that the sample box is already bound to another box node, and an error is returned to the operator. Check. If it is not null, it means that the storage location node has been occupied by another sample box, and an error is returned to the operator. Otherwise, the binding operation is performed, and the storage location status is updated to occupied.

[0047]

[0048]

[0049]

[0050] In this application embodiment, a storage location is a description of a physical storage location, such as a storage area, device, rack, column, layer, or box. The storage location status includes idle, occupied, and reserved states. The storage location status is calculated from bottom to top, meaning the box status is directly determined by the binding operation. If at least one box node under a layer node is occupied, the layer status is occupied; otherwise, it is idle. The same applies to rack nodes; if any layer node is occupied, the rack node is occupied. Similarly, for device nodes, if any rack node is occupied, the device node is occupied. For example, the following expression can be defined to describe this: [Define...] Indicates the state of node n. If the set is the set of child nodes, then:

[0051]

[0052] in, This indicates a logical OR, meaning that if at least one child node is not in an idle state, the current node is in an occupied state.

[0053] It is understood that, in this embodiment of the application, a four-layer tree structure model is constructed, following the principle of topological sorting:

[0054]

[0055] in, The virtual root node of the target storage area. For device nodes. Virtual root node A created based on user actions:

[0056]

[0057] Based on user actions, a new device node D is added under root node A. The device node is then created according to its physical structure data.

[0058]

[0059] in, This represents a unique identifier for device node D. This represents the parent node of device node D. Indicates the node type. Indicates the device serial number. This indicates the storage location status of the equipment. Regarding the physical structure data of equipment node D, taking a refrigerator as an example, the refrigerator's physical structure data includes: refrigerator ID, shelf arrangement, layers on each shelf, number of compartments on each layer, and their location codes. The refrigerator can be a regular refrigerator or a smart refrigerator. For regular refrigerators, the physical structure data can be manually entered; for smart refrigerators, the physical structure data can be obtained in real time through the smart refrigerator's hardware interface, following a unified equipment description specification.

[0060]

[0061] in, A unique identifier for the refrigerator device, such as a MAC address or serial number; It is a structural unit containing hierarchical nesting relationships; It is a layered structural unit, serving as a location container; This is the smallest physical storage location identifier, i.e., the compartment label. Therefore, based on the refrigerator's physical structure data, lower-level nodes can be recursively constructed level by level, namely, shelf nodes, layer nodes, and compartment nodes. All nodes are then saved to the storage location table in the database, and an index is created using the parent node's ParentID. It's important to note that if the storage capacity of a device node is full, the user's attempt to add a new compartment node will be rejected, and an alarm such as "Device storage capacity is full, no new compartment can be added" will be triggered.

[0062] In one exemplary embodiment, the front-end can call an API to retrieve tree data rooted at the target storage area. A collapsible tree can be drawn using the D3.js library, with each node displaying an icon and status. When the user clicks the "+" sign, the front-end can dynamically load child nodes and expand the tree.

[0063] In one embodiment, the logical storage location hierarchy between nodes can be updated in real time, for example, by listening to device change events or by using a message queue. Device change events can include adding or removing devices; the message queue can include RabbitMQ sending events. Taking a smart refrigerator as an example, the refrigerator interface is called to retrieve the refrigerator's physical structure data again. The differences between the old and new structures are compared, and the logical storage location hierarchy is updated: if a new physical location exists, a corresponding node is created; if the physical location does not exist, the corresponding node is marked as a discarded node. That is, if a node with a non-existent physical location is associated with a sample, it cannot be deleted, but it is marked as a discarded node.

[0064] In step S130, after binding the box label of the sample box with the box label of the matching target box node to form a unique association, the storage status of each target box node and its corresponding ancestor node is updated to occupied status. The ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and root nodes. This storage status indicates the current usage status of the node.

[0065] In this embodiment, in response to obtaining the storage information of at least one sample box, the box label of each sample box is associated with the sample label of each sample included in each sample box. The storage information includes sample association information and attribute information of the sample box. The sample association information includes the box label of the sample box and the sample label of each sample included in the sample box. The attribute information includes the location attribute, environmental adaptation attribute, and storage attribute of the sample box. The location attribute includes the current location information. The environmental adaptation attribute includes the sample temperature control value and the maximum allowable temperature fluctuation value. The storage attribute includes the expected storage duration, the minimum allowable sample viability rate, and the sample type. Based on at least one of the location attribute, environmental adaptation attribute, and storage attribute of each sample box, a target box location node matching each sample box is determined. The box label of each sample box is bound to the box location label of the matching target box location node to form a unique association. The storage status of each target box location node and its corresponding ancestor node is updated to an occupied state. The ancestor nodes, from bottom to top, include layer nodes, shelf nodes, device nodes, and root nodes, which can match the best storage area for the sample, so as to have a better preservation effect on biological samples and thus ensure sample viability. In addition, the embodiments of this application also realize the synchronization and association between logical tags and physical storage locations, which can avoid the problem of storage locations being occupied falsely or incorrectly. At the same time, it improves the utilization rate of storage locations and the efficiency of sample tracking, and provides an information foundation for subsequent sample traceability, inventory efficiency and compliance.

[0066] In an exemplary embodiment, the above-described S120 may include the following steps: for each sample box, based on the location attributes and environment adaptation attributes of the sample box, determine a first candidate box node corresponding to the sample box; and in response to the presence of multiple first candidate box nodes, determine a target box node matching the sample box based on the storage attributes of the sample box and the service curve of each first candidate box node; or, in response to the presence of only one first candidate box node, determine the first candidate box node as the target box node.

[0067] The service curve indicates the activity maintenance capability of the first candidate bin node for the sample; that is, it describes the activity maintenance capability of the node under different storage durations. For example, the service curve is a continuous curve with storage time t on the horizontal axis and the predicted sample activity rate on the vertical axis.

[0068] Understandably, at the same set temperature, differences in temperature gradient, wind speed, and defrosting cycle within different areas may lead to slight differences in the actual temperature of each box node. Consequently, the activity rate of the same type of sample stored in different box nodes may differ. Therefore, it is necessary to determine the matching target box node based on the service curve of each box node.

[0069] In this embodiment, based on the location attributes and environment adaptability attributes of the sample boxes, the first candidate box nodes can be selected first, that is, infeasible box nodes are eliminated first based on location attributes and environment adaptability attributes to avoid subsequent analysis of invalid box nodes. Then, based on storage attributes and the service curve of each first candidate box node, the target box node is determined. In this two-step selection, accurate matching can be achieved based on the node's activity maintenance capability under different storage durations and the sample storage duration.

[0070] In some embodiments, the service curve is calculated based on stored data of historical samples stored in the box node.

[0071] In one exemplary embodiment, determining the first candidate box node corresponding to the sample box based on the sample box's location attributes and environment adaptation attributes may include the following steps:

[0072] Step 1: Select the box node that meets the first condition from multiple box nodes as the second candidate box node, wherein the first condition includes:

[0073] (1) The storage position status of the box node is idle;

[0074] (2) The temperature of the equipment node to which the box position node belongs meets the sample temperature control value;

[0075] (3) The maximum temperature fluctuation value of the equipment node to which the box node belongs meets the maximum allowable temperature fluctuation value;

[0076] (4) The distance between the storage coordinates of the box node and the current location information of the sample box is less than the first threshold.

[0077] In other words, the storage status of the second candidate box location node matched with each sample box is idle, the temperature of the device node meets the sample temperature control value, and the distance between the box location node and the sample box is less than a first threshold. In this way, based on the proximity principle and the temperature matching principle, the second candidate box location node that is idle and matched with each sample box is determined, and infeasible box location nodes can be eliminated in advance.

[0078] Step 2: Based on the biosensitivity parameters of the sample box and the environmental parameters of each corresponding second candidate box node, determine the matching score of each second candidate box node.

[0079] In one exemplary embodiment, the environmental parameters include the temperature of the storage box node, the light sensitivity of the storage box node, the humidity tolerance range of the storage box node, and a safety isolation mark. The biosensitivity parameters also include: the light sensitivity of the sample, the humidity tolerance range of the sample, and the biosafety level. The values ​​of the node light sensitivity and the sample light sensitivity are located in the range [0,1], where 0 represents complete light avoidance and 1 represents tolerance to strong light. The humidity tolerance range of the storage box node and the humidity tolerance range of the sample are represented by a tuple, and the biosafety level is represented by a one-thermal encoding. Based on the biosensitivity parameters of the sample box and the environmental parameters of each corresponding second candidate storage box node, a matching score for each second candidate storage box node is determined, including: for each second candidate storage box node, the biosensitivity parameters of the sample box and the environmental parameters of the second candidate storage box node are associated through a graph structure to construct a node feature matrix of the storage location-sample heterogeneous graph, wherein the node feature matrix is: ,in, This indicates the temperature of the box-type node. Indicates the light sensitivity of the box-position node. This indicates the humidity tolerance range for the junction box. Indicates a safety isolation sign. Indicates the temperature of the sample node. Indicates the light sensitivity of the sample node. Indicates the humidity tolerance range of the sample nodes. Indicates the biosafety level; according to preset rules, constructs the adjacency matrix of each node's feature matrix, where the elements in the adjacency matrix belong to the node are... This indicates the connection strength between sample box node i and the second candidate box node j. Preset rules include: the biosafety level of sample box node i. And if the second candidate box node j is located in a non-isolated area, then determine Biosafety level at sample box node i If the second candidate box node j is located in the isolation zone, determine Where β is a learnable parameter. and Let be the node feature vector in the node feature matrix; for each second candidate box node, inter-layer propagation is performed based on the adjacency matrix and node embedding to obtain the sample box embedding vector and the box node embedding vector. The node embedding for each layer is based on the node embedding of the previous layer and the attention coefficient of the current layer. Certainly, attention coefficient Attention coefficients used to adjust the weights of each modality category. for: ,in, Let be a learnable vector for mode k; k represents the mode category, including temperature, light intensity, humidity, and safety. This is the weight matrix corresponding to mode k, used for feature transformation; This indicates vector concatenation; It is the set of neighbors of node i; LeakyReLU is the activation function; the node embedding is: ,in, For activation function, It refers to the embedding of node j in layer l. The AGGREGATE function is used to ensure balanced fusion of neighbor information. The weight matrix corresponding to modality k in layer l; the matching score of each second candidate box node is determined based on the cosine similarity between the sample box embedding vector and the box node embedding vector corresponding to each second candidate box node.

[0080] In this embodiment, preset rules ensure that highly pathogenic samples, such as BSL-3 / 4, can only connect to isolated storage locations, preventing contamination of other nodes during message transmission. Biosafety parameters are transformed into graph topological constraints, rather than simple numerical filtering, ensuring compliance at the algorithm's underlying level. Simultaneously, a learnable parameter β adaptively adjusts the isolation strength, avoiding overly conservative recommendations, such as mistakenly isolating low-risk samples. Furthermore, an attention mechanism dynamically learns the weights of each modality, enabling the algorithm to perceive sample characteristics: for photosensitive samples, i.e., high... It can increase the lighting modes Light-protected storage is preferred for humidity-sensitive samples, i.e., narrow storage spaces. This can increase the humidity modal weight, ensuring that the storage humidity remains within a tolerable range. For example, for photosensitive samples, nodes with strong light-shielding properties in neighboring storage locations can be recommended, such as low-light-value cell nodes, through high... To obtain greater weights and embedding vectors Enhanced light-shielding characteristics. Additionally, this embodiment can prevent high-risk samples from connecting to non-isolated storage sites, ensuring the polymerization process meets safety standards.

[0081] The light sensitivity value is located in the range [0,1], where 0 = complete avoidance of light (e.g., photosensitive viruses) and 1 = tolerance to strong light (e.g., some fungi). Humidity tolerance can be represented by a binary tuple in %RH, such as fungal samples requiring 30-50%RH. Biosafety levels can be represented by unique thermal codes, such as BSL-1 to BSL-4. In addition, high-level samples require physical isolation.

[0082] In another exemplary embodiment, the matching score of each second candidate box node is determined based on a preset distance threshold and the temperature adaptability and the idleness of the layer node to which each candidate box node belongs. This includes: for each second candidate box node, determining the matching score of the second candidate box node as a weighted sum of a first value, the temperature adaptability of the candidate box node, and the idleness of the layer node to which the candidate box node belongs, wherein the first value is the difference between 1 and the preset distance threshold, and the idleness of the layer node to which the second candidate box node belongs is the ratio of the maximum number of consecutive idle box nodes included in the layer node to the target value.

[0083] For example, the target value can be 10.

[0084] For example, the matching score can be expressed by the following formula:

[0085]

[0086] in, For the preset distance threshold, For temperature adaptability, w represents the idle level of the layer node to which the candidate box node belongs, where w is the weight.

[0087] Step 3: Based on the matching score, determine the first candidate box node from the second candidate box node.

[0088] In some embodiments, determining the first candidate box location node from the second candidate box location nodes based on the matching score includes: filtering the first candidate box location nodes according to the target constraint and based on the matching score and handling distance of each second candidate box location node, wherein the handling distance is the distance between the second candidate box location node and the sample box, and the target constraint is:

[0089]

[0090] in, For allocation function, For matching the rating, D represents the transport distance. This is the current location information of the sample box. The storage coordinates are for the second candidate box location node. As the first hyperparameter, This is the second hyperparameter.

[0091] Understandably, this objective constraint is used to indicate how to maximize the total matching score and minimize the total transport distance under a given constraint. This objective constraint can be used to allocate high biosafety level samples to isolated storage sites; otherwise, the solution is invalid.

[0092] In other embodiments, a preset number of second candidate box nodes with the highest matching scores are determined as first candidate box nodes.

[0093] It is understandable that each matching score is used to characterize the degree of matching between each second candidate box node and the sample box. The higher the matching score, the higher the degree of matching. Therefore, a preset number of second candidate box nodes with the highest matching scores are determined as first candidate box nodes.

[0094] In some embodiments, determining the target cell node that matches the sample cell based on the storage attributes of the sample cell and the service curve of each corresponding first candidate cell node may include the following steps:

[0095] Step 1: Select the service curve that matches the sample type from the service curves of each first candidate box node as the target service curve.

[0096] It is understandable that the activity decay patterns of different types of samples may differ. Therefore, the activity maintenance capabilities of the same box node for different types of samples will also be different. If a common service curve is used, it may lead to a large deviation between the activity prediction and the actual activity, resulting in matching errors.

[0097] Step 2: Obtain the predicted activity rate of the samples on the target service curve of each first candidate box node for the expected storage duration.

[0098] It is understandable that the horizontal axis of the service curve represents time t, and the vertical axis represents the predicted sample activity rate. Therefore, based on the expected storage duration of the sample box, the predicted sample activity rate corresponding to that expected storage duration can be determined.

[0099] Step 3: For each first candidate box node, determine the sample activity retention rate corresponding to the first candidate box node as the quotient of the predicted sample activity rate and the minimum allowed sample activity rate.

[0100] For example, it can be represented by the following formula:

[0101]

[0102] Step 4: Determine the first candidate box node corresponding to the maximum sample activity retention rate as the target box node.

[0103] In this embodiment, dynamic matching is achieved by matching the sample storage duration and the sample activity maintenance capability of each candidate node, which can maximize the quality of the sample.

[0104] In one exemplary embodiment, the candidate box nodes matched by each sample box can be pushed to the operation terminal, and the operator at the operation terminal can determine the target box node from the matched candidate box nodes.

[0105] In one exemplary embodiment, determining the target cell node matching each sample cell based on at least one of the location attributes, environment adaptation attributes, and storage attributes of each sample cell includes the following steps:

[0106] Step 1: Group at least one sample box according to environmental adaptation attributes to obtain multiple groups, wherein the temperature control ranges corresponding to each group do not overlap.

[0107] In some embodiments, step 1 may include: determining the target storage temperature range for each sample box, wherein the target storage range is determined based on the sample temperature control value and the maximum allowable temperature fluctuation value of the sample box; and determining multiple groups based on the intersection of the target storage ranges corresponding to each sample box, wherein sample boxes with no intersection correspond to a separate group. In other words, the grouping is performed according to the principle that the target storage temperature ranges of the sample boxes in each group have intersections, and that there is no intersection between the groups.

[0108] In one exemplary embodiment, if the label of the sample box specifies a candidate region, such as "preferably stored in device node A", then the sample box is further grouped according to the candidate region. In this way, each temperature group may be further divided into several subgroups.

[0109] Step 2: Determine the storage pool corresponding to each group. The storage pool includes multiple box nodes that meet the second condition. The second condition includes: the storage status of the box node is idle; the difference between the temperature of the layer node to which the box node belongs and the temperature control range corresponding to the group is less than the second threshold.

[0110] Understandably, for each group, the storage pool is determined according to the second condition, namely, the storage pool is in an idle state and the temperature of the storage pool is within the tolerance range required by the sample box temperature.

[0111] In another exemplary embodiment, if a group has a designated candidate region, then only the storage location of that candidate region is selected.

[0112] Step 3: For each group, determine the maximum number of consecutive empty box slots corresponding to each device node from the storage pool; in response to the fact that the maximum number of consecutive idle box slots corresponding to the target device node in at least one device node is greater than or equal to the total number of sample boxes included in the group, determine the target box slots matching each sample box included in the group in sequence from the storage pool based on the maximum number of consecutive empty box slots corresponding to the target device node.

[0113] It is understandable that allocating consecutive storage blocks to each group is beneficial for management and subsequent access, while also considering handling efficiency, i.e., minimizing the overall handling distance. If multiple sample boxes are currently located in the same geographical area, they can be stored in the same area, such as one device or multiple adjacent devices. Therefore, priority is given to allocating sample boxes of the same temperature group to adjacent storage blocks in the same device, minimizing device switching. For each group, consecutive storage blocks are searched in the selected storage pool. A consecutive storage block is defined as multiple consecutive box locations in the same device, on the same shelf, and on the same floor. If the size of a consecutive block is greater than or equal to the number required for the group, a consecutive block is directly allocated. For example, the box location allocation results are shown in Table 1:

[0114] Table 1

[0115]

[0116] Furthermore, in another exemplary embodiment, after determining the maximum number of consecutive idle box slot nodes from the storage pool, the method further includes: in response to the absence of a maximum number of consecutive box slot nodes corresponding to a target device node in at least one device node that is greater than or equal to the total number of sample boxes included in the group, determining a plurality of consecutive storage blocks from the storage pool, wherein each consecutive storage block includes at least one box slot node, and the plurality of consecutive storage blocks are located on the same device node; in response to the number of box slot nodes included in the plurality of consecutive storage blocks being greater than or equal to the total number of sample boxes included in the group, sequentially determining the target box slot node matched for each sample box included in the group from the plurality of consecutive storage blocks.

[0117] In other words, if there are not enough contiguous storage blocks, allocate multiple contiguous blocks, and keep the number of contiguous blocks as small as possible, and ensure that these contiguous blocks are within the same device.

[0118] Furthermore, in yet another exemplary embodiment, after allocating multiple consecutive storage blocks to a group from the storage pool, the method further includes: in response to the number of box nodes included in the multiple consecutive storage blocks being less than the total number of sample boxes included in the group, determining multiple consecutive storage blocks including at least two adjacent device nodes from the storage pool, and sequentially determining target box nodes matching each sample box included in the group from the multiple consecutive storage blocks.

[0119] In other words, if the remaining storage space included in the same equipment cannot meet the needs, then adjacent equipment should be considered to reduce the handling distance.

[0120] Therefore, in this embodiment of the application, the allocation of storage locations can follow the following priority:

[0121] Priority 1: Consecutive storage blocks within the same device, with the block size meeting the requirements;

[0122] Priority 2: Within the same device, there should be as few consecutive storage blocks as possible, and the number of storage locations included in each consecutive block should be as large as possible;

[0123] Priority 3: Select the storage block of the adjacent device.

[0124] Figure 2 illustrates a flowchart of a sample storage management method provided in an exemplary embodiment of this application, which may include the following steps:

[0125] S210: In response to obtaining the storage information of at least one sample box, associate the box label of each sample box with the sample label of each sample included in each sample box.

[0126] The storage information includes sample association information and attribute information of the sample box. The sample association information includes the box label of the sample box and the sample label of each sample contained in the sample box. The attribute information includes the location attribute, environmental adaptation attribute and storage attribute of the sample box. The location attribute includes the current location information. The environmental adaptation attribute includes the biological sensitivity parameter and the maximum allowable temperature fluctuation value. The biological sensitivity parameter includes the sample temperature control value. The storage attribute includes the expected storage duration, the minimum allowable sample viability rate and the sample type.

[0127] S220: Based on at least one of the location attributes, environment adaptation attributes, and storage attributes of each sample box, determine the target box node that matches each sample box.

[0128] S230: Bind the box label of each sample box to the box label of the matching target box node to form a unique association, and update the storage status of each target box node and its corresponding ancestor node to the occupied state.

[0129] The ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and root nodes.

[0130] For details regarding the specific content of S210-S230, please refer to the relevant descriptions of S110-S10 in the embodiment shown in Figure 1, which will not be repeated here.

[0131] S240: Generate inventory paths by dividing the inventory area into K inventory zones.

[0132] The inventory scope is determined based on the configuration information and includes multiple storage locations to be inventoried, which are located in a continuous storage area.

[0133] The configuration information can be user configuration information, that is, parameter information corresponding to the inventory range indicated by the user.

[0134] For example, the scope of the inventory count can be:

[0135]

[0136] in, For the set of all box-position nodes, The box label for the box location node. The continuous storage range specified by the user, i.e. the inventory range.

[0137] The optimal inventory route can be described by the following expression:

[0138] constraint

[0139] in, This refers to the physical distance between the two boxes.

[0140] Understandably, this optimal inventory route can reduce the unnecessary movement distance and number of turns for inventory personnel, saving manpower and time costs and improving inventory efficiency.

[0141] S250: Instructs the operator to retrieve the sample labels of all sample boxes stored in each inventory area according to the inventory path.

[0142] In other words, the generated inventory task is sent to the operator, instructing the operator to scan the tags. This is done by emitting directional radio frequency waves to activate all sample tags within the box location node and to read the sample EPC codes in batches.

[0143]

[0144] in, This represents the sensitivity threshold of the tag. Higher sensitivity means the tag can be activated at greater distances. In one exemplary embodiment... It can be set to -70dBm.

[0145] S260: Obtain the inventory records reported by the operating terminal.

[0146] The inventory records include the sample labels of the samples stored in each sample box node within each inventory area.

[0147] S270: Based on the inventory records and count records corresponding to the count range, conduct a count of the samples stored in the count range.

[0148] After obtaining the inventory records reported by the terminal, the system performs an inventory check on the samples stored in the inventory range based on the inventory records and inventory records corresponding to the inventory range, thereby automatically identifying the difference sample boxes and accurately locating the missing or redundant samples.

[0149] In one exemplary embodiment, the process of taking inventory of samples stored within an inventory count range, based on inventory records and physical inventory records, includes:

[0150] Step 1: In response to the discrepancy between the number of samples corresponding to inventory records and the number of samples corresponding to physical inventory records, determine the Discrepancy Score based on at least one of the missing sample number and the redundant sample number. The Discrepancy Score is:

[0151]

[0152] in, , , for Corresponding weights for The corresponding weights The number of samples corresponding to the inventory records. Record the number of samples corresponding to the inventory count.

[0153] In other words, the number of missing samples is the difference between the number of samples corresponding to inventory records and the number of samples corresponding to physical inventory records, and the number of redundant samples is the difference between the number of samples corresponding to physical inventory records and the number of samples corresponding to inventory records.

[0154] Step 2: In response to the difference assessment score being greater than the third threshold, the inventory record is corrected.

[0155] The third threshold represents the maximum allowed difference, and can be 3. If the difference assessment score is less than or equal to the third threshold, no correction is made; otherwise, correction is required. This correction logic can be described by the following expression:

[0156]

[0157] in, The third threshold can be set to 3.

[0158] In other words, if a conflict is detected between the logical storage location and the physical equipment status during inventory checks, corrections are required. These corrections may include manually removing unbound samples, automatically marking the location as an "abnormal storage location," freezing operation permissions, and notifying the administrator.

[0159] In another exemplary embodiment, the method may further include: updating the storage position status of the box node according to a preset update logic, wherein the preset update logic is:

[0160]

[0161] in, In idle state It is in an occupied state. To reserve a state, To allow for the maximum number of differences, we can set it to 1.

[0162] In other words, for each box location node included in the inventory count, the storage location status of the box location node is updated based on the inventory record and the inventory count record. Specifically, if there is no record for the box location node in either the inventory record or the inventory count record, the storage location status is updated to "idle". If the difference between the number of samples associated with the box location node in the inventory record and the number of samples associated with the box location node in the inventory record is less than or equal to 1, the storage location status is updated to "occupied". In all other cases, the storage location status is updated to "reserved".

[0163] In some embodiments, an inventory count is performed on samples stored within an inventory count range based on inventory records and physical count records, including: obtaining a first Merkle tree and a second Merkle tree, wherein the first Merkle tree is the Merkle tree of the inventory records corresponding to the inventory count range, and the second Merkle tree is the Merkle tree corresponding to the physical count records. Each node in the first and second Merkle trees corresponds to a key-value pair, wherein the key-value pair consists of a key and a content hash value, the key being the storage location coordinates corresponding to the node, the content hash value of each box node is determined based on the sample labels of the samples included in the sample box stored in the box node, and the content hash value of each non-box node is determined based on the content hash values ​​of all its child nodes; and correcting the inventory records in response to the inconsistency between the root nodes of the first and second Merkle trees.

[0164] It is understood that this application provides a tree structure model that divides the storage area into multiple levels of nodes, from top to bottom, including root nodes, device nodes, rack nodes, layer nodes, and box nodes. Each box node is used to store one sample box, and each sample box stores at least one sample. Therefore, the content hash value of a box node is determined based on the sample tags of all samples included in the stored sample box. The content hash value of a layer node is determined by performing a secondary hash mapping based on the content hash values ​​of the included box nodes. The content hash value of a rack node is determined by performing a secondary hash mapping based on the content hash values ​​of the included layer nodes. Indeed, the content hash value of a device node is determined by a secondary hash mapping based on the content hash values ​​of its included rack nodes, and the content hash value of the root node is determined by a secondary hash mapping based on the content hash values ​​of its included device nodes. In other words, each node in the first and second Merkle trees is a secondary mapping of the combination of hash values ​​of its child nodes. The path from the leaf node to the root node constructs an immutable data link, ensuring that any data change will cause a change in the root node. Therefore, by comparing the root nodes of the first and second Merkle trees, it is possible to quickly detect whether the root node has changed. If the root node hash values ​​are different, it indicates that at least one leaf node, i.e., the corresponding box node, has either changed the stored sample box or no sample box is stored.

[0165] Furthermore, in another exemplary embodiment, if it is determined that the root nodes of the first Merkle tree and the second Merkle tree are inconsistent, the branch nodes can be compared layer by layer until the leaf nodes, thereby determining which specific box node has changed the number of samples stored, and then the inventory record can be corrected.

[0166] Figure 3 illustrates a flowchart of a sample storage management method provided in an exemplary embodiment of this application, which may include the following steps:

[0167] S310: In response to obtaining the storage information of at least one sample box, associate the box label of each sample box with the sample label of each sample included in each sample box.

[0168] The storage information includes sample association information and attribute information of the sample box. The sample association information includes the box label of the sample box and the sample label of each sample contained in the sample box. The attribute information includes the location attribute, environmental adaptation attribute and storage attribute of the sample box. The location attribute includes the current location information. The environmental adaptation attribute includes the biological sensitivity parameter and the maximum allowable temperature fluctuation value. The biological sensitivity parameter includes the sample temperature control value. The storage attribute includes the expected storage duration, the minimum allowable sample viability rate and the sample type.

[0169] S320: Determine the target box node that matches each sample box based on at least one of the location attributes, environment adaptation attributes, and storage attributes of each sample box.

[0170] S330: Bind the box label of each sample box to the box label of the matching target box node to form a unique association, and update the storage status of each target box node and its corresponding ancestor node to occupied status.

[0171] The ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and root nodes.

[0172] For details regarding the specific content of S310-S330 above, please refer to the relevant descriptions of S110-S10 in the embodiment shown in Figure 1, which will not be repeated here.

[0173] S340: In response to receiving a transfer instruction for the first sample box, verify the storage location status of the first original box node and the capacity of the target storage area indicated by the transfer instruction.

[0174] Among them, at least one sample box includes a first sample box, and the first original box node is the target box node associated with the first sample box.

[0175] S350: In response to the verification result meeting the transfer condition, the association between the box position label of the first original box position node and the box label of the first sample box is removed, and the storage position status of the first original box position node is updated to idle.

[0176] S360: From the target storage area, redetermine the target box node that matches the attribute information of the first sample box, and bind the box label of the first sample box to the box label of the redetermined target box node to form a unique association.

[0177] S370: Update the storage status of the newly determined target box node and its corresponding ancestor node to occupied status.

[0178] In other words, according to the transfer instruction, the sample box is unbound from the original storage location, the original storage location is set to "idle," the new box label is scanned to complete the binding, and the storage location status is updated. For example, the transfer instruction can be represented as a quadruple:

[0179]

[0180] in, For the source sample box set, This is the identifier for the target region. For operation timeliness window, For temperature compatibility constraints, this constraint primarily characterizes whether the temperature range of the storage location matches the temperature requirements of the microbial samples in the sample cassette to be transferred. First, the status of the original cassette location is verified; if it is unoccupied, the operation terminates. Next, the capacity of the target area is verified; if the capacity is insufficient, a capacity shortage error is triggered. For the original cassette location, the bound sample cassette data is obtained, i.e., the mapping function from cassette location to sample cassette. The mapping function is then updated, and the mapping relationship is released.

[0181]

[0182]

[0183]

[0184] Additionally, unbinding logs can be recorded to propagate the storage location status hierarchically, recursively updating the storage location status of each node from the box location upwards. After unbinding, a command is sent to the operator. The operator arrives at the target area according to the prompts from the management terminal, scans the box location tag of the new box location, and the management terminal verifies that the storage location status must be idle. The operator scans the box tag of the sample box, verifies that the current status of the sample box is unbound, establishes a new binding relationship, and updates the storage location status.

[0185] In an exemplary embodiment, after unbinding the original storage location, a recommended storage location can be determined and displayed to the user for selection, thus obtaining the target storage location, i.e., the target storage location node.

[0186] Figure 4 illustrates a flowchart of a sample storage management method provided in an exemplary embodiment of this application, which may include the following steps:

[0187] S410: In response to obtaining the storage information of at least one sample box, associate the box label of each sample box with the sample label of each sample included in each sample box.

[0188] The storage information includes sample association information and attribute information of the sample box. The sample association information includes the box label of the sample box and the sample label of each sample contained in the sample box. The attribute information includes the location attribute, environmental adaptation attribute and storage attribute of the sample box. The location attribute includes the current location information. The environmental adaptation attribute includes the biological sensitivity parameter and the maximum allowable temperature fluctuation value. The biological sensitivity parameter includes the sample temperature control value. The storage attribute includes the expected storage duration, the minimum allowable sample viability rate and the sample type.

[0189] S420: Bind the box label of each sample box to the box label of the matching target box node to form a unique association, and update the storage status of each target box node and its corresponding ancestor node to occupied status.

[0190] The ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and root nodes.

[0191] S430: Bind the box label of each sample box to the box label of the matching target box node to form a unique association, and update the storage status of each target box node and its corresponding ancestor node to occupied status.

[0192] The ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and root nodes.

[0193] For details regarding the specific content of S410-S430, please refer to the relevant descriptions of S110-S10 in the embodiment shown in Figure 1, which will not be repeated here.

[0194] S440: In response to receiving an outbound instruction for the second sample box, disconnect the association between the second sample box and the second original box location node.

[0195] Among them, the second original box node is the target box node associated with the second sample box;

[0196] S450: In response to the outbound instruction carrying the return command, adjust the storage location status of the second original box location node based on time constraints.

[0197] The time constraint is as follows: within the preset time window, the storage status of the second original box node is kept in the reserved state; outside the preset time window, the storage status of the second original box node is updated to the idle state.

[0198] or,

[0199] S460: In response to the outbound command not carrying a return command, update the storage location status of the second original box node to the idle state.

[0200] In other words, based on the outbound requisition form, the sample box and storage location are unbound, and the storage location status is set to "idle." If the sample box needs to be returned, the storage location status is marked as "reserved." Once it is confirmed that the number of samples outbound matches the requisition, the inventory record is updated synchronously, and an outbound record is generated. The "reserved status" can be constrained by a time window; after the time window expires, it automatically updates to "idle." The time window constraint can be described by the following expression:

[0201]

[0202] Among them, when hour: If the window time has expired, the storage space status is set to idle.

[0203] In an exemplary embodiment, after updating the storage status of each target box node and its corresponding ancestor node to an occupied state, the method further includes: in response to a discrepancy between the actual number of sample boxes issued and the requested number, interrupting the issuance process and generating an exception report.

[0204] In other words, the difference between the actual number of sample boxes shipped and the quantity requested in the requisition is calculated. When the difference is not zero, indicating an over- or under-shipment, a discrepancy alarm is immediately triggered. The shipping process is then interrupted, and a discrepancy report is generated. For example, if the actual quantity is less than the requested quantity, the missing sample box numbers are marked; if the actual quantity is more, the extra boxes are identified.

[0205] This application embodiment also provides another schematic flowchart of a sample storage management method, as shown in Figure 2, which may include the following stages:

[0206] During the warehousing stage:

[0207] S501: Analyze the physical structure data of the smart refrigerator.

[0208] S502: Generate logical storage level.

[0209] S503: Establish the mapping relationship between sample boxes and box IDs.

[0210] S504: Determine whether the storage location is idle.

[0211] If the system is idle, proceed to S506; otherwise, proceed to S505.

[0212] S505: Conflict warning.

[0213] S506: Binding storage location.

[0214] During the inventory phase:

[0215] S507: Generate inventory task.

[0216] S508: Acquire scan data.

[0217] S509: Compare with inventory data.

[0218] If there is a difference, proceed to S510; otherwise, proceed to S520.

[0219] S510: Marking differences.

[0220] S511: Update inventory records.

[0221] During the inventory transfer phase:

[0222] S512: Receives database transfer instructions.

[0223] S513: Unbind the original storage location.

[0224] S514: Scan the new storage location tag.

[0225] S515: Determine whether the new storage location is compliant.

[0226] If not, proceed to S516; if yes, proceed to S517.

[0227] S516: Re-recommend the storage location.

[0228] S517: Bind a new storage location.

[0229] S518: Update storage location status.

[0230] During the outbound stage:

[0231] S519: Receive outbound application form.

[0232] S520: Dissolve the storage relationship.

[0233] S521: Determine whether the sample needs to be returned.

[0234] If not, proceed to S522; if yes, proceed to S523.

[0235] S522: Mark the storage location as idle.

[0236] S523: Mark the storage location status as reserved.

[0237] S524: Generate an outbound order.

[0238] This application embodiment also provides a sample management system 600, as shown in Figure 6, including: a user permission management module 610, a basic information management module 620, a device management module 630, a sample lifecycle management module 640, an approval process management module 650, and a statistical analysis module 660. The user permission management module 610 is used to perform user login authentication, role assignment, and permission control operations. The basic information management module 620 is used to configure sample process operations, including: storage location management, container management, topic management, sample template customization, and business process configuration. Storage location management is used to implement the various processes implemented in the method embodiments shown in Figures 1-5. The device management module 630 is used for hardware management and monitoring. The sample lifecycle management module 640 is used to manage sample processes, including: sample registration, sample application, sample approval, sample warehousing, sample warehousing, sample transfer, and sample verification. The approval process management module 650 is used to perform process-based approval and task distribution in conjunction with user permissions. The statistical analysis module 660 is used for data visualization and traceability of sample information.

[0239] Figure 7 shows a schematic diagram of the structure of a sample storage management device provided in an embodiment of this application. As shown in Figure 7, the sample storage management device 700 may include: an association module 710, a determination module 720, and an update module 730.

[0240] In this embodiment, the association module 710 is configured to, in response to obtaining the storage information of at least one sample box, associate the box label of each sample box with the sample label of each sample included in each sample box. The storage information includes sample association information and attribute information for the sample box. The sample association information includes the box label of the sample box and the sample label of each sample included in the sample box. The attribute information includes the location attribute, environmental adaptation attribute, and storage attribute of the sample box. The location attribute includes current location information. The environmental adaptation attribute includes biosensitive parameters and the maximum allowable temperature fluctuation value. The biosensitive parameters include the sample... Temperature control value; storage attributes include expected storage duration, minimum allowable sample viability, and sample type; determination module 720 is used to determine the target box location node matching each sample box based on at least one of the location attributes, environmental adaptation attributes, and storage attributes of each sample box; update module 730 is used to bind the box label of each sample box to the box location label of the matching target box location node to form a unique association, and update the storage location status of each target box location node and its corresponding ancestor node to the occupied state; wherein, the ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and root nodes.

[0241] The sample storage management device provided in this application embodiment can realize the various processes implemented in the method embodiment shown in FIG1. ​​To avoid repetition, it will not be described again here.

[0242] The sample management system in this application embodiment can be a device, or a component, integrated circuit, or chip in an electronic device. This application embodiment does not impose specific limitations.

[0243] One sample management system in this application embodiment can be a device with an operating system. The operating system can be Android, iOS, or other possible operating systems; this application embodiment does not specifically limit the specific operating system.

[0244] As shown in Figure 8, this application embodiment also provides an electronic device 800, including a processor 810 and a memory 820. The memory 820 stores a program or instructions that can run on the processor 810. When the program or instructions are executed by the processor 810, they implement the various processes of the embodiments shown in Figures 1 to 5 above and can achieve the same technical effect. To avoid repetition, they will not be described again here.

[0245] This application also provides a readable storage medium on which a program or instruction is stored. When the program or instruction is executed by a processor, it implements the various processes of the embodiments shown in Figures 1 to 5 above and can achieve the same technical effect. To avoid repetition, it will not be described again here.

[0246] The processor is the processor in the terminal described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk. In some examples, the readable storage medium may be a non-transient readable storage medium.

[0247] This application also provides a chip, which includes a processor and a communication interface. The communication interface and the processor are coupled. The processor is used to run programs or instructions to implement the various processes of the embodiments shown in Figures 1 to 5 above, and can achieve the same technical effect. To avoid repetition, it will not be described again here.

[0248] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.

[0249] This application also provides a computer program / program product, which includes a computer program stored on a non-transitory computer-readable storage medium. The computer program includes program instructions. When the program instructions are executed by a computer, the computer performs the various processes shown in the embodiments of Figures 1 to 5 above and achieves the same technical effect. To avoid repetition, these will not be described again here.

[0250] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element. Furthermore, it should be noted that the scope of the methods and apparatuses in the embodiments of this application is not limited to performing functions in the order shown or discussed, but may also include performing functions substantially simultaneously or in the reverse order, depending on the functions involved. For example, the described methods may be performed in a different order than described, and various steps may be added, omitted, or combined. Additionally, features described with reference to certain examples may be combined in other examples.

[0251] From the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of computer software products plus necessary general-purpose hardware platforms, and of course, they can also be implemented by hardware. The computer software product is stored in a storage medium (such as ROM, RAM, magnetic disk, optical disk, etc.) and includes several instructions to cause a terminal or network-side device to execute the methods of the various embodiments of this application.

[0252] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other implementations under the guidance of this application without departing from the spirit and scope of the claims. All of these implementations are within the protection scope of this application.

Claims

1. A method for managing the storage location of samples, characterized in that, include: In response to obtaining the storage information of at least one sample box, the box label of each sample box is associated with the sample label of each sample included in each sample box. The storage information includes sample association information and attribute information for the sample box. The sample association information includes the box label of the sample box and the sample label of each sample included in the sample box. The attribute information includes the location attribute, environmental adaptation attribute, and storage attribute of the sample box. The location attribute includes current location information. The environmental adaptation attribute includes biosensor parameters and the maximum allowable temperature fluctuation value. The biosensor parameters include the sample temperature control value. The storage attribute includes the expected storage duration, the minimum allowable sample viability rate, and the sample type. Based on each... Based on at least one of the location attributes, environment adaptation attributes, and storage attributes of each sample box, a target box location node matching each sample box is determined; the box label of each sample box is bound to the box location label of the matching target box location node to form a unique association, and the storage location status of each target box location node and its corresponding ancestor node is updated to an occupied state, wherein the ancestor nodes, from bottom to top, include layer nodes, rack nodes, device nodes, and the first root node; wherein, determining the target box location node matching each sample box based on at least one of the location attributes, environment adaptation attributes, and storage attributes of each sample box includes: for each sample box, based on the sample box location attributes, environment adaptation attributes, and storage attributes, determining the target box location node matching each sample box, and determining the target box location node matching each sample box based on at least one of the location attributes, environment adaptation attributes, and storage attributes of each sample box ... Based on the location attributes and environment adaptation attributes of the sample box, a first candidate box node corresponding to the sample box is determined. In response to the presence of multiple first candidate box nodes, a target box node matching the sample box is determined based on the storage attributes of the sample box and the service curve of each first candidate box node. The service curve indicates the activity maintenance capability of the first candidate box node for the sample. Alternatively, in response to the presence of only one first candidate box node, the first candidate box node is determined as the target box node. The determination of the first candidate box node based on the location attributes and environment adaptation attributes of the sample box includes: selecting from multiple box nodes... The sample box node that meets the first condition is selected as the second candidate sample box node, wherein the first condition includes: the storage position of the sample box node is idle; the temperature of the device node to which the sample box node belongs meets the sample temperature control value; the maximum temperature fluctuation value of the device node to which the sample box node belongs meets the maximum allowable temperature fluctuation value; the distance between the storage position coordinates of the sample box node and the current location information of the sample box is less than a first threshold; based on the biosensitivity parameters of the sample box and the environmental parameters of each second candidate sample box node, a matching score is determined for each second candidate sample box node; based on the matching score, the first candidate sample box node is determined from the second candidate sample box nodes.The environmental parameters include the temperature of the storage box node, the light sensitivity of the storage box node, the humidity tolerance range of the storage box node, and the safety isolation mark. The biosensitivity parameters also include: the light sensitivity of the sample, the humidity tolerance range of the sample, and the biosafety level. The values ​​of the node light sensitivity and the sample light sensitivity are located in the range [0,1], where 0 represents complete light avoidance and 1 represents strong light tolerance. The humidity tolerance range of the storage box node and the humidity tolerance range of the sample are represented by a tuple. The biosafety level is represented by a unique thermal encoding. The matching score of each second candidate storage box node is determined based on the biosensitivity parameters of the sample box and the environmental parameters of each corresponding second candidate storage box node. This includes: for each second candidate storage box node, associating the biosensitivity parameters of the sample box and the environmental parameters of the second candidate storage box node through a graph structure to construct a node feature matrix of the storage box-sample heterogeneity graph, wherein the node feature matrix is: in, Indicates the second candidate box node temperature, Indicates the second candidate box node Light sensitivity, Indicates the second candidate box node Humidity tolerance range, Indicates the second candidate box node Safety isolation signs, Represents sample box node temperature, Represents sample box node Light sensitivity, Represents sample box node Humidity tolerance range, Represents sample box node The biosafety level; according to preset rules, construct an adjacency matrix for each node's feature matrix, wherein the elements in the adjacency matrix... The preset rules represent the connection strength between sample box node i and the second candidate box node j, and include: the biosafety level of sample box node i. And if the second candidate box node j is located in a non-isolated area, then determine Biosafety level at sample box node i If the second candidate box node j is located in the isolation zone, determine ,in, For learnable parameters, and The node feature vector is defined in the node feature matrix. For each second candidate box node, inter-layer propagation is performed based on the adjacency matrix and node embedding to obtain a sample box embedding vector and a box node embedding vector. The node embedding at each layer is based on the node embedding of the previous layer and the attention coefficient of the current layer. The attention coefficient is determined. The attention coefficient is used to adjust the weights of each modality category. for: in, Let be a learnable vector for modality class k; k represents the modality class, including temperature, light intensity, humidity, and safety. This is the weight matrix corresponding to modality category k, used for feature transformation; This indicates vector concatenation; It is the set of neighbors of sample box node i; LeakyReLU is the activation function; the node embedding is: in, For activation function, It is the embedding of the second candidate box node j in layer l. The function is used to ensure balanced integration of neighbor information. Let k be the weight matrix corresponding to modality class k in layer l; determine the matching score of each second candidate box node based on the cosine similarity between the sample box embedding vector and the box node embedding vector corresponding to each second candidate box node; the step of determining the first candidate box node from the second candidate box nodes based on the matching score includes: filtering the first candidate box nodes according to the target constraint and based on the matching score and transport distance of each second candidate box node, wherein the transport distance is the distance between the second candidate box node and the sample box, and the target constraint is: in, For allocation function, For matching the rating, D represents the transport distance. This refers to the current location information of the sample box. The storage coordinates are those of the second candidate box node. As the first hyperparameter, The second hyperparameter; determining the target box node matching the sample box based on the storage attributes of the sample box and the service curve of each corresponding first candidate box node includes: selecting the service curve matching the sample type from the service curves of each first candidate box node as the target service curve; obtaining the predicted sample activity rate corresponding to the expected storage duration on the target service curve of each first candidate box node; for each first candidate box node, determining the sample activity retention rate corresponding to the first candidate box node as the quotient of the corresponding predicted sample activity rate and the minimum allowed sample activity rate; and determining the first candidate box node corresponding to the maximum sample activity retention rate as the target box node.

2. The method according to claim 1, characterized in that, The step of determining a target box node matching each sample box based on at least one of the location attribute, environment adaptation attribute, and storage attribute of each sample box includes: grouping at least one sample box according to the environment adaptation attribute to obtain multiple groups, wherein the temperature control range corresponding to each group does not overlap; determining a storage pool corresponding to each group, wherein the storage pool includes multiple box nodes satisfying a second condition, the second condition including: the storage status of the box node is idle; the difference between the temperature of the layer node to which the box node belongs and the temperature control range corresponding to the group is less than a second threshold; for each group, determining the maximum number of consecutive box nodes corresponding to each device node from the storage pool; in response to at least one device node having a maximum number of consecutive idle box nodes corresponding to a target device node that is greater than or equal to the total number of sample boxes included in the group, determining the target box node matching each sample box included in the group sequentially from the storage pool based on the maximum number of consecutive box nodes corresponding to the target device node.

3. The method according to claim 2, characterized in that, After determining the maximum number of consecutive idle box slot nodes from the storage pool, the method further includes: in response to the absence of a maximum number of consecutive box slot nodes corresponding to a target device node in at least one of the device nodes that is greater than or equal to the total number of sample boxes included in the group, determining a plurality of consecutive storage blocks from the storage pool, wherein each of the consecutive storage blocks includes at least one box slot node, and the plurality of consecutive storage blocks are located on the same device node; in response to the presence of a number of box slot nodes included in the plurality of consecutive storage blocks that is greater than or equal to the total number of sample boxes included in the group, sequentially determining the target box slot node matching each sample box included in the group from the plurality of consecutive storage blocks.

4. The method according to claim 3, characterized in that, After allocating multiple consecutive storage blocks to the group from the storage pool, the method further includes: in response to the number of box nodes included in the multiple consecutive storage blocks being less than the total number of sample boxes included in the group, determining at least two adjacent multiple consecutive storage blocks including the device nodes from the storage pool, and sequentially determining the target box node matching each sample box included in the group from the multiple consecutive storage blocks.

5. The method according to claim 1, characterized in that, After updating the storage status of each target box node and its corresponding ancestor node to an occupied state, the method further includes: generating an inventory path by dividing the inventory range into K inventory areas, wherein the inventory range is determined based on configuration information, the inventory range includes multiple box nodes to be inventoried, and the multiple box nodes to be inventoried are located in a continuous storage space interval; instructing the operating terminal to obtain the sample tags of all sample boxes stored in each inventory area according to the inventory path; obtaining the inventory record reported by the operating terminal, wherein the inventory record includes the sample tags of sample boxes stored in each box node within each inventory area; and performing an inventory check on the samples stored in the inventory range based on the inventory record corresponding to the inventory range and the inventory record.

6. The method according to claim 5, characterized in that, The step of conducting an inventory count of samples stored within the inventory count range based on the inventory records and the inventory count records includes: determining a Discrepancy Score based on at least one of the number of missing samples and the number of redundant samples, wherein the Discrepancy Score is: in, , , for Corresponding weights for The corresponding weights The number of samples corresponding to the inventory records. Record the number of samples corresponding to the inventory count. Indicates the number of missing samples. This indicates the number of redundant samples; in response to the difference assessment score being greater than the third threshold, the inventory record is corrected.

7. The method according to claim 5, characterized in that, The step of inventorying the samples stored within the inventory range based on the inventory records and the inventory count records includes: obtaining a first Merkle tree and a second Merkle tree, wherein the first Merkle tree is the Merkle tree of the inventory records corresponding to the inventory range, and the second Merkle tree is the Merkle tree corresponding to the inventory count records. Each node in the first Merkle tree and the second Merkle tree corresponds to a key-value pair, wherein the key-value pair consists of a key and a content hash value. The key is composed of the storage location coordinates corresponding to the node. The content hash value of each box node is determined based on the sample labels of the samples included in the sample boxes stored in the box node. The content hash value of each non-box node is determined based on the content hash values ​​of all its child nodes. In response to the inconsistency between the second root node of the first Merkle tree and the second Merkle tree, the inventory records are corrected.

8. The method according to claim 6, characterized in that, The method further includes: updating the storage status of the box node according to a preset update logic, wherein the preset update logic is: in, In idle state It is in an occupied state. To reserve a state, This represents the maximum allowed number of differences.

9. The method according to claim 1, characterized in that, After updating the storage status of each target box node and its corresponding ancestor node to an occupied state, the method further includes: in response to receiving a transfer instruction for the first sample box, verifying the storage status of the first original box node and the capacity of the target storage area indicated by the transfer instruction, wherein at least one sample box includes the first sample box, and the first original box node is the target box node associated with the first sample box; in response to the verification result satisfying the transfer condition, deassociating the box tag of the first original box node with the box tag of the first sample box, and updating the storage status of the first original box node to an idle state; from the target storage area, re-determining the target box node that matches the attribute information of the first sample box, and binding the box tag of the first sample box with the re-determined box tag of the target box node to form a unique association; updating the storage status of the re-determined target box node and its corresponding ancestor node to an occupied state.

10. The method according to claim 1, characterized in that, After updating the storage status of each target box node and its corresponding ancestor node to an occupied state, the method further includes: in response to receiving an outbound instruction for the second sample box, releasing the association between the second sample box and the second original box node, wherein the second original box node is the target box node associated with the second sample box; in response to the outbound instruction carrying a return command, adjusting the storage status of the second original box node based on time constraints, wherein the time constraints are: within a preset time window, maintaining the storage status of the second original box node in a reserved state, and outside the preset time window, updating the storage status of the second original box node to an idle state; or, in response to the outbound instruction not carrying a return command, updating the storage status of the second original box node to an idle state.

11. The method according to claim 1, characterized in that, After updating the storage status of each target box node and its corresponding ancestor node to occupied status, the method further includes: in response to the discrepancy between the actual number of sample boxes issued and the requested number, interrupting the outbound process and generating an exception report.

12. A sample management system, characterized in that, include: The system comprises a user permission management module, a basic information management module, a device management module, a sample lifecycle management module, an approval process management module, and a statistical analysis module. Specifically: the user permission management module performs user login authentication, role assignment, and permission control operations; the basic information management module configures sample process operations, including: storage space management, container management, project management, sample template customization, and business process configuration; the storage space management module implements the steps of the sample storage space management method according to any one of claims 1-11; the device management module manages and monitors hardware; the sample lifecycle management module manages the sample process, including: sample registration, sample application, sample approval, sample warehousing, sample warehousing, sample transfer, and sample cancellation; the approval process management module performs process-based approval and task distribution based on user permissions; and the statistical analysis module performs data visualization and traceability of sample information.

Citation Information

Patent Citations

  • Biological specimen management method, system, device and medium

    CN111882166A

  • Sample library management method and device, computer equipment and storage medium

    CN113222078A