Interval extraction device, interval extraction method, and program
The segment extraction device using blockchain non-fungible tokens efficiently associates occupancy transfer history with environmental information, reducing data complexity and processing time while enhancing analysis accuracy.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- NTT TECHNOCROSS CORP
- Filing Date
- 2025-05-13
- Publication Date
- 2026-07-16
AI Technical Summary
Associating environmental information with the transfer history of products results in a large amount of data, leading to complex visualization and prolonged analysis times, especially when issues arise.
A segment extraction device using blockchain non-fungible tokens to represent transfer history, extracting intervals based on changes in occupancy, and associating environmental information with these segments to calculate accurate CO2 emissions per product.
Enables efficient matching of occupancy transfer history with environmental information, reducing data volume and processing time, and improving analysis accuracy.
Smart Images

Figure 0007891569000001 
Figure 0007891569000002 
Figure 0007891569000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to an interval extraction device, an interval extraction method, and a program.
Background Art
[0002] In recent years, in the supply chain field, the importance of sharing the transfer history of possession among stakeholders for the purpose of ensuring traceability in case of defects in any articles such as goods and products (hereinafter, these are collectively referred to as "goods") has been recognized. The transfer history of possession is, for example, what records what moved from where to where and when for each article (that is, what records for each article from which possessor and to which possessor it transferred at what time).
[0003] For example, as one of the prior arts, Patent Document 1 describes realizing a traceability system for resource objects by using a blockchain composed of a plurality of nodes.
[0004] In addition, for purposes such as analysis and analysis at the time of occurrence of defects, cost reduction, and business efficiency improvement, efforts are also becoming widespread to install IoT (Internet of Things) sensors in transport vehicles, warehouses, etc. and monitor the information measured by these IoT sensors (hereinafter, also referred to as environmental information). For example, in recent years, as the international momentum for decarbonization has increased, there has been a growing interest in efforts to visualize environmental information such as CO2 emissions measured by IoT sensors.
[0005] Therefore, in the future, it is expected that by associating the transfer history of possession for each article with the environmental information measured by IoT sensors, it will be possible to visualize detailed environmental information for each article in the supply chain of goods.
Prior Art Documents
Patent Documents
[0006] [Patent Document 1] Japanese Patent Publication No. 2021-131620 [Overview of the project] [Problems that the invention aims to solve]
[0007] However, since there is a large amount of ownership transfer history for each product, simply associating environmental information with this ownership transfer history would result in an enormous amount of data. Therefore, when visualizing detailed environmental information for each product, the visualization results become complex, which could lead to a significant amount of time being required for analysis and investigation, for example, when a problem occurs.
[0008] This disclosure is made in view of the above points and aims to provide a technology that can efficiently associate occupancy transfer history with environmental information. [Means for solving the problem]
[0009] A segment extraction device according to one aspect of the present disclosure represents the transfer history of an occupant of an object in a supply chain, and is an occupancy transfer history record realized with blockchain non-fungible tokens, which comprises an occupancy transfer history record that includes at least the date and time of the transfer of the object, source identification information indicating the identification information of the source of the transfer of the object, and destination identification information indicating the identification information of the destination of the transfer of the object, and extracts segments representing intervals delimited by changes in the total amount of the object simultaneously occupied by the occupant as intervals to associate the environmental information of the object, and for each segment extracted by the segment extraction device The segment extraction unit comprises, for each transfer destination identification information, an association unit that associates environmental information of objects simultaneously occupied by the occupant in the segment with the segment, and the segment extraction unit initializes the start date and time and the end date and time of the segment for each transfer destination identification information, and then acquires occupancy transfer history records in order of transfer date and time in which the same identification information as the transfer destination identification information is included as the transfer source identification information or the transfer destination identification information, and updates the end date and time with the transfer date and time included in the acquired occupancy transfer history records until a predetermined condition is met, thereby extracting the interval from the start date and time to the end date and time as the segment corresponding to the transfer destination identification information. [Effects of the Invention]
[0010] A technology is provided that enables the efficient matching of occupant relocation history with environmental information. [Brief explanation of the drawing]
[0011] [Figure 1] This is a diagram illustrating an example of a history of occupancy transfers. [Figure 2] This is a diagram (part 1) illustrating an example of the processing flow for quantitative type environmental information. [Figure 3] This is a diagram (part 2) illustrating an example of the processing flow for quantitative type environmental information. [Figure 4] This figure shows an example of the visualization results of quantitative information type environmental data. [Figure 5]This is a diagram for explaining an example of a segmentation determination threshold value. [Figure 6] This is a diagram for explaining an example of the flow of processing related to environmental information of the point information type. [Figure 7] This is a diagram showing an example of the hardware configuration of the environmental information management device in Example 1. [Figure 8] This is a diagram showing an example of the functional configuration of the environmental information management device in Example 1. [Figure 9] This is a diagram showing an example of the processing flow of the environmental information management device in Example 1. [Figure 10] This is a diagram showing an example of the segment extraction process in Example 1. [Figure 11] This is a diagram showing an example of the occupied interval extraction process in Example 1. [Figure 12] This is a diagram showing an example of the functional configuration of the environmental information management device in Example 2. [Figure 13] This is a diagram showing an example of the processing flow of the environmental information management device in Example 2.
Mode for Carrying Out the Invention
[0012] Hereinafter, an embodiment of the present invention will be described.
[0013] <Possessor Transfer History> The possessor transfer history is what records for each product in units of one product when it transferred from which possessor to which possessor. By recording the possessor transfer history, traceability regarding the logistics of products (hereinafter, also simply referred to as logistics traceability) is ensured.
[0014] Also, a possessor is a natural person, a legal person, or a thing such as a space under its control and management that temporarily or non-temporarily controls and manages goods (objects) or services (intangibles). Hereinafter, as an example, the possessor will be described as a space that temporarily or non-temporarily controls and manages goods.
[0015] Specific examples of the possessor include, for example, transport vehicles such as trucks that can transport goods by means of a loading platform or the like, trains that can transport goods, warehouses and factories where goods can be stored, stores where goods are sold, etc. Note that a single truck, a single train, a single warehouse, a single store, etc. may include multiple possessors. For example, when there are multiple rooms in a warehouse, each room may be regarded as a single possessor, or a predetermined two or more rooms may be regarded as a single possessor. Similarly, when there are multiple floors in a warehouse, each floor may be regarded as a single possessor, or a predetermined two or more floors may be regarded as a single possessor. The same applies when a transport vehicle has multiple loading platforms or a train is composed of multiple vehicles.
[0016] Hereinafter, data representing the possessor transfer history is referred to as a "possessor transfer history record", and table-form data composed of possessor transfer history records is referred to as a "possessor transfer history table". A possessor transfer history record represents when a certain product has transferred from which possessor to which possessor. A possessor transfer history record is represented, for example, in the following data format.
[0017] (Product individual ID, Transfer date and time, Transfer source ID, Transfer destination ID, Quantity of product) Here, the individual product ID is an identifier that uniquely identifies a product within the product's supply chain (e.g., a manufacturing-specific number). The transfer date and time is the date and time when the transfer of goods occurred (including cases where goods were originally acquired through production / manufacturing, or transferred through sale, disposal, exhaustion, etc.). The source ID is an identifier that uniquely identifies the possessor of the source. The destination ID is an identifier that uniquely identifies the possessor of the destination. The product quantity is information that represents the size, quantity, weight, volume, number, etc. of the goods. Note that if goods were originally acquired through production / manufacturing, the source ID will be set to a predetermined identifier that indicates the goods were originally acquired. On the other hand, if goods were transferred through sale, etc., the destination ID will be set to a predetermined identifier that indicates the goods were transferred. Hereafter, the primary key in the possessor transfer history table will be (individual product ID, transfer date and time).
[0018] As an example, Figure 1 shows a case where the ownership transfer history record is implemented using a blockchain (Ethereum®) non-fungible token (e.g., an ERC721 token). In the example shown in Figure 1, a certain product (product individual ID: item1) is manufactured at a factory (owner ID: 0x111), and an ownership transfer history record (product individual ID, transfer date and time, source ID, destination ID, quantity of product) = (item1, 2022 / 1 / 1 12:00, 0x0, 0x111, 1) is generated and recorded in the blockchain's distributed ledger (hereinafter abbreviated as BC). Note that in the example shown in Figure 1, the identifier (address) indicating that the product was originally acquired is set to 0x0 (invalid address).
[0019] Subsequently, in the example shown in Figure 1, a transfer of ownership occurs for track 1 (Occupant ID: 0x222), and an ownership transfer history record (item ID, transfer date and time, source ID, destination ID, quantity) = (item1, 2022 / 1 / 2 15:30, 0x111, 0x222, 1) is recorded in BC. Similarly, a transfer of ownership then occurs for warehouse (Occupant ID: 0x333), and an ownership transfer history record (item ID, transfer date and time, source ID, destination ID, quantity) = (item1, 2022 / 1 / 2 18:00, 0x222, 0x333, 1) is recorded in BC. Similarly, a transfer of ownership occurs in track 2 (Occupant ID: 0x444), and an ownership transfer history record (item ID, transfer date and time, source ID, destination ID, quantity) = (item1, 2022 / 1 / 3 13:00, 0x333, 0x444, 1) is recorded in BC. Similarly, a transfer of ownership occurs in store (Occupant ID: 0x555), and an ownership transfer history record (item ID, transfer date and time, source ID, destination ID, quantity) = (item1, 2022 / 1 / 4 9:00, 0x444, 0x555, 1) is recorded in BC. Finally, when an item (item ID: item1) is sold at the store (occupant ID: 0x555), the occupant transfer history record (item ID, transfer date and time, source ID, destination ID, item quantity) = (item1, 2022 / 1 / 4 16:00, 0x555, 0x0, 1) is recorded in BC. Note that in the example shown in Figure 1, the identifier (address) indicating that the item was sold is set to 0x0 (invalid address).
[0020] In this way, the ownership transfer history record ensures traceability (logistics traceability) throughout the entire logistics supply chain, from the production and manufacturing of goods to distribution and sales. In the example shown in Figure 1, the system for ensuring logistics traceability (logistics traceability system) is implemented using blockchain, but this is just one example. In addition to blockchain, logistics traceability may also be ensured by a centralized database system that can store ownership transfer history on a per-product basis. The logistics traceability system to which this embodiment can be applied is not limited to a specific logistics traceability system, but can be applied to any logistics traceability system that can manage ownership transfer history records after identifying the managed items using IDs, barcodes, RFID (Radio Frequency Identification) tags, etc.
[0021] <Environmental information> Environmental information refers to information measured by IoT sensors installed in a certain space (including spaces temporarily or permanently controlled or managed by an occupant). In this embodiment, it is assumed that some kind of environmental information is measured by IoT sensors within spaces controlled or managed by at least some occupants in the logistics supply chain.
[0022] Specific examples of environmental information include, for instance, GPS (Global Positioning System) information (i.e., location information determined using radio waves received by a GPS receiver), temperature, humidity, electricity consumption, fuel consumption, and CO2 emissions.
[0023] Environmental information can be classified into point-based information types and quantity-based information types. Examples of point-based environmental information include GPS data, temperature, and humidity. On the other hand, examples of quantity-based environmental information include electricity consumption, fuel consumption, and CO2 emissions.
[0024] Point-type environmental information means that even if multiple products exist within the measurement space of an IoT sensor, the environmental information for each product will be the same (including cases where it can be considered the same). Furthermore, each point in point-type environmental information has strong meaning as it exists in a time series, and the environmental information is not added or divided from one another. On the other hand, with quantity-type environmental information, if multiple products exist within the measurement space of an IoT sensor, it is expected that the environmental information for each product will be determined by considering the total quantity and attributes of the products. Specifically, for example, it is expected that the power consumption, fuel consumption, CO2 emissions, etc. for each product will be determined by apportionment calculations that take into account the total quantity and attributes of the products.
[0025] Furthermore, by linking the history of occupant transfers with environmental information, it is expected that detailed environmental information for each individual product in the logistics supply chain (i.e., environmental information for each individual product for each occupant) will be visualized. On the other hand, since there is a large amount of occupant transfer history for each product, there is a challenge in that the amount of data will become enormous if the history of occupant transfers with environmental information is simply linked.
[0026] Furthermore, when performing apportionment calculations for quantity-based environmental information, there is a problem that simple apportionment calculations result in inaccurate environmental information for individual products. For example, consider CO2 emissions as environmental information, and assume a truck departs from a warehouse and delivers goods to multiple locations. In this case, if the CO2 emissions along the delivery route are simply apportioned by the total amount of goods, the CO2 emissions of goods unloaded earlier will be calculated to be higher than they actually are, while the CO2 emissions of goods unloaded later will be calculated to be lower than they actually are.
[0027] Therefore, in order to solve the two problems mentioned above, we will introduce a segment called a "segment," and use segments to efficiently associate occupant transfer history with environmental information, and for quantitative type environmental information, we will explain a method (proposed method) that enables the calculation of more accurate environmental information on a per-product basis.
[0028] Furthermore, if more accurate environmental information can be calculated on a per-product basis for quantitative environmental information, it will be possible to more accurately calculate, for example, CO2 emissions related to Scope 3 categories 4 and 9 (transportation and delivery) in the logistics supply chain as defined by the Greenhouse Gas (GHG) Protocol.
[0029] <Outline of the proposed method> • About quantitative information type environmental information Assume that a occupant transfer history table is provided, consisting of occupant transfer history records for a certain period (for example, a predetermined period up to the current date and time). Furthermore, assume that the cumulative value of the environmental information of the quantity type is obtained for each occupant over time. As an example, assume that the environmental information of the quantity type is CO2 emissions, and that the cumulative value of the CO2 emissions over time for each occupant (hereinafter also referred to as cumulative CO2 emissions) is obtained.
[0030] At this point, the proposed method performs the following processes (1-1) to (1-6).
[0031] (1-1) Segment extraction Segments are extracted for each occupant based on the transfer date and time of the occupant transfer history records stored in the occupant transfer history table. A segment is an interval defined by the change in the total quantity of goods simultaneously occupied by the occupant. Each segment is associated with an occupant. Here, the total quantity of goods refers to the sum of the quantities of goods simultaneously occupied by the occupant associated with that segment. This total quantity of goods is used to allocate environmental information of the quantity information type. Whether to use size, quantity, weight, volume, number, etc., as the quantity of goods is determined, for example, by the attributes and properties of the goods. The specific method of segment extraction will be described later.
[0032] (1-2) Extraction of occupied intervals Based on the source ID and destination ID of the occupant transfer history record stored in the occupant transfer history table, the occupancy interval for each product is extracted. An occupancy interval is a period defined by a change in the occupant who occupies a product. The occupancy interval is associated with the product. The specific method for extracting occupancy intervals will be described later.
[0033] (1-3) Calculation of CO2 emissions for each segment The CO2 emissions for each segment are calculated. For example, the start date and time of a segment are designated as "segment start date and time" and the end date and time as "segment end date and time." For each segment, the cumulative CO2 emissions for the date and time closest to the segment end date and time (hereinafter referred to as the first cumulative CO2 emissions) and the cumulative CO2 emissions for the date and time closest to the segment start date and time (hereinafter referred to as the second cumulative CO2 emissions) are obtained. Then, the value obtained by subtracting the second cumulative CO2 emissions from the first cumulative CO2 emissions is calculated as the segment-specific CO2 emissions for that segment. However, this calculation method is just one example, and the method of calculating segment-specific CO2 emissions is not limited to this.
[0034] (1-4) Calculation of CO2 emissions per product for each segment For example, for each segment, the CO2 emissions per product per segment are calculated as follows: Segment-specific CO2 emissions per product = Segment-specific CO2 emissions × Product quantity / (Total quantity of products simultaneously occupied by the occupant in that segment).
[0035] (1-5) Calculation of CO2 emissions per product per occupied section For example, the sum of the CO2 emissions per product per segment of segments within the same segment as the occupant of the occupied section, from the segment with the closest segment start date before the start date of the occupied section to the segment with the closest segment end date after the end date of the occupied section, is calculated as the CO2 emissions per product per occupied section for that occupied section.
[0036] (1-6) Visualization Visualize CO2 emissions per product for each occupied section and per product for each segment (for example, by displaying them on a screen).
[0037] Specific examples of how to calculate CO2 emissions per segment and CO2 emissions per product per occupied section will be explained with reference to Figures 2 and 3. For example, as shown in Figure 2, suppose the transportation route of Truck 1 (occupant) on a certain day was as follows.
[0038] • At 12:00, load products A and B at warehouse A. • At 13:00, load products C and D at warehouse b. • At 14:00, unload items B, C, and D at store c. • At 15:00, unload product A at store d.
[0039] Furthermore, assume that the quantity (weight) of products A and B was 5 kg, and the quantity (weight) of products C and D was 3 kg.
[0040] In this case, as shown in Figure 3, the segments of track 1 are "Segment 1" from 12:00 to 13:00, "Segment 2" from 13:00 to 14:00, and "Segment 3" from 14:00 to 15:00. Also, the occupied period for track 1 for product A is 12:00 to 15:00, for product B it is 12:00 to 14:00, for product C it is 13:00 to 14:00, and for product D it is 13:00 to 14:00.
[0041] Furthermore, as shown in Figure 2, the results of calculating CO2 emissions for each segment are as follows.
[0042] CO2 emissions per segment for Segment 1: 100 CO2 emissions per segment for Segment 2: 100 CO2 emissions per segment for segment 3: 100 In the above case, the CO2 emissions per product per segment for each product in each segment of Track 1 are calculated as follows:
[0043] CO2 emissions per product per segment for product A in segment 1: 100 × 5 / 10 CO2 emissions per product per segment for product B in segment 1: 100 × 5 / 10 CO2 emissions per product per segment for product A in segment 2: 100 × 5 / 16 CO2 emissions per product per segment for product B in segment 2: 100 × 5 / 16 CO2 emissions per product per segment for product C in segment 2: 100 × 3 / 16 CO2 emissions per product per segment for product D in segment 2: 100 × 3 / 16 CO2 emissions per product per segment for product A in segment 3: 100 × 5 / 5 Therefore, the CO2 emissions per product per occupied section are calculated as follows:
[0044] CO2 emissions per unit of product A per occupied section for the section occupied by Track 1: 100 × 5 / 10 + 100 × 5 / 16 + 100 × 5 / 5 ≈ 181 CO2 emissions per unit of product for each occupied section of the section occupied by Track 1: 100 × 5 / 10 + 100 × 5 / 16 ≈ 81 CO2 emissions per unit of product C per occupied section of track 1: 100 × 3 / 16 ≈ 19 CO2 emissions per unit of product D per occupied section for the section occupied by Track 1: 100 × 3 / 16 ≈ 19 This allows us to obtain CO2 emissions per product per segment and CO2 emissions per product per occupied section. Therefore, these can be visualized and used for purposes such as analyzing malfunctions, reducing costs, and improving operational efficiency.
[0045] Furthermore, since the CO2 emissions of each product are associated with the occupied section or segment, the amount of data can be significantly reduced compared to simply associating CO2 emissions with the history of occupant changes. As a result, it becomes possible to perform processes such as analysis and processing in the event of a malfunction on a segment-by-segment basis, which can lead to a significant reduction in processing time.
[0046] Furthermore, since CO2 emissions are calculated for each product segment and then aggregated to determine the CO2 emissions per occupied section, it is possible to calculate CO2 emissions more accurately compared to simple apportionment calculations.
[0047] Here, an example of the results of visualizing CO2 emissions per product per segment and CO2 emissions per product per occupied section is shown in Figure 4. In the example shown in Figure 4, the CO2 emissions per product per occupied section (CO2 emissions (kg-CO2)) for a certain product (product individual ID: item1) for each occupied section, along with related information (product individual ID, occupant, start date and time of occupied section, end date and time of occupied section, total, etc.) are visualized on display field 1000. Also, in the example shown in Figure 4, the CO2 emissions per product per segment (CO2 emissions per product (kg-CO2)) for a certain product in a particular segment, along with related information (product individual ID, weight, occupant, start date and time of segment, end date and time of segment, CO2 emissions for the segment (kg-CO2), total amount of simultaneously occupied products (kg), total, etc.) are visualized on display field 1100. Note that display field 1100 may be displayed, for example, by a user selecting a desired segment on display field 1000.
[0048] • Regarding point-type environmental information Assume that a occupant transfer history table is provided, consisting of occupant transfer history records for a certain period (for example, a predetermined period up to the current date and time). Furthermore, assume that time-series environmental information for each occupant is available for point-type environmental information. In the following example, assume that the point-type environmental information is GPS information, and that time-series GPS information is available for each occupant.
[0049] At this point, the proposed method performs the following processes (2-1) to (2-3).
[0050] (2-1) Segment extraction This is the same as (1-1) above. That is, segments for each occupant are extracted based on the transfer date and time of the occupant transfer history record stored in the occupant transfer history table. However, since there is no need to apportion environmental information by the total quantity of goods in the point information type, the quantity of goods can be, for example, the number of items. The specific method of segment extraction will be described later.
[0051] Regarding the segmentation threshold For example, even when multiple goods are simultaneously deposited into a warehouse or simultaneously shipped out of a warehouse, the transfer dates and times in the possession transfer history record for these multiple goods may not be exactly the same. This is because, for example, the transfer dates and times in the possession transfer history record may be updated in the order in which the goods are unloaded from the truck. Also, for example, if the possession transfer history record is implemented using non-fungible tokens on a blockchain, the transactions for updating the possession transfer history record may not be recorded in the same block.
[0052] Therefore, if segments were strictly defined based on changes in the total quantity of goods, the segments might become too fine and lose their meaning. To address this, a threshold (hereinafter referred to as the "segmentation threshold") is set for transfers involving the same occupant, where even if the transfer dates differ, if the difference between them is less than a certain amount, they are considered as one segment. This prevents the segments from becoming too fine. The segmentation threshold is pre-set to an appropriate value.
[0053] For example, as shown in Figure 5, suppose goods A through D (each with a quantity of "1 kg") are transferred from truck 1 to a certain occupant (e.g., a warehouse or store) almost simultaneously and sequentially. If we strictly divide the segments based on the change in total quantity of goods, as shown in the upper part of Figure 5, we would obtain segments 1 (total quantity "1 kg"), 2 (total quantity "2 kg"), 3 (total quantity "3 kg"), and 4 (total quantity "4 kg") in sequence. However, these are very fine segments, and the processing volume would be enormous without being meaningful. Therefore, as shown in the lower part of Figure 5, even if the total quantity of goods occupied simultaneously changes, if the difference in transfer dates and times is less than the segmentation threshold, they are considered the same segment. Thus, for example, if the segmentation threshold is 3 minutes, as shown in the lower part of Figure 5, goods A through C, which were transferred almost simultaneously, can be treated as goods simultaneously occupied by the occupant in segment 1 (total quantity "3 kg").
[0054] (2-2) Mapping GPS information to each segment The process involves associating each segment with GPS information. For example, for each segment, GPS information existing between the segment start date and segment end date and time can be obtained, and this obtained GPS information can be associated with the segment in question.
[0055] (2-3) Visualization For each segment, the GPS information associated with that segment is visualized (for example, displayed on a screen).
[0056] A specific example of associating GPS information with each segment will be explained with reference to Figure 6. For example, as shown in Figure 6, suppose the transport route of truck 1 (occupant) on a certain day was as follows.
[0057] • At 12:00, load 200 items into warehouse A. • At 13:00, load 200 items into warehouse b. • At 14:00, unload 300 items at store C. • At 15:00, unload 100 items at store D.
[0058] In this case, the segments of track 1 will be "Segment 1" from 12:00 to 13:00, "Segment 2" from 13:00 to 14:00, and "Segment 3" from 14:00 to 15:00.
[0059] Therefore, segment 1 is associated with GPS information from 12:00 to 13:00. Similarly, segment 2 is associated with GPS information from 13:00 to 14:00. Similarly, segment 3 is associated with GPS information from 14:00 to 15:00.
[0060] This allows for the correspondence between each segment and GPS information. Therefore, this data can be visualized and used for purposes such as analyzing malfunctions, reducing costs, and improving operational efficiency.
[0061] Furthermore, since GPS information is associated with segments in this process, the amount of data can be significantly reduced compared to simply associating GPS information with the occupant relocation history. As a result, it becomes possible to perform processes such as analysis and processing in the event of a malfunction on a segment-by-segment basis, which can lead to a significant reduction in processing time.
[0062] While specific examples of visualization results for GPS information associated with segments are omitted here, for example, one could visualize the GPS information associated with each segment (or visualize only one or more representative GPS data points from among that GPS information).
[0063] [Example 1] The following describes Example 1 of this embodiment. In Example 1, we assume that the environmental information is CO2 emissions, and we will describe the environmental information management device 10 that performs the processes (1-1) to (1-6) described above. However, the fact that the environmental information is CO2 emissions is just one example, and Example 1 described below can be similarly applied to other types of quantity information environmental information (for example, electricity consumption, fuel consumption, etc.).
[0064] <Example of hardware configuration of the environmental information management device 10 in Example 1> Figure 7 shows an example of the hardware configuration of the environmental information management device 10 in Example 1. As shown in Figure 7, the environmental information management device 10 in Example 1 is implemented using the hardware configuration of a general computer or computer system, and includes, for example, an input device 101, a display device 102, an external I / F 103, a communication I / F 104, a RAM (Random Access Memory) 105, a ROM (Read Only Memory) 106, an auxiliary storage device 107, and a processor 108. Furthermore, each of these hardware components is connected to each other via a bus 109 so as to be communicative.
[0065] The input device 101 is, for example, a keyboard, mouse, touch panel, or physical button. The display device 102 is, for example, a display or display panel. The environmental information management device 10 does not necessarily have to have at least one of the input device 101 and the display device 102.
[0066] External I / F 103 is an interface to external devices such as recording media 103a. The environmental information management device 10 can read from and write to the recording media 103a via the external I / F 103. Examples of recording media 103a include flexible disks, CDs (Compact Discs), DVDs (Digital Versatile Disks), SD memory cards (Secure Digital memory cards), and USB (Universal Serial Bus) memory cards.
[0067] The communication interface 104 is an interface for the environmental information management device 10 to connect to a communication network, etc. The RAM 105 is a volatile semiconductor memory (storage device) that temporarily holds programs and data. The ROM 106 is a non-volatile semiconductor memory (storage device) that can retain programs and data even when the power is turned off. The auxiliary storage device 107 is a storage device (storage device) such as an HDD (Hard Disk Drive), SSD (Solid State Drive), or flash memory. The processor 108 is an arithmetic unit such as a CPU (Central Processing Unit).
[0068] The environmental information management device 10 in Example 1 can perform various processes described later by having the hardware configuration shown in Figure 7. Note that the hardware configuration shown in Figure 7 is just one example, and the hardware configuration of the environmental information management device 10 is not limited to this. For example, the environmental information management device 10 may have multiple auxiliary storage devices 107 and multiple processors 108, or it may not have some of the hardware shown, or it may have various hardware other than the hardware shown.
[0069] <Example of the functional configuration of the environmental information management device 10 in Example 1> Figure 8 shows an example of the functional configuration of the environmental information management device 10 in Example 1. As shown in Figure 8, the environmental information management device 10 in Example 1 includes a segment extraction unit 201, an occupied section extraction unit 202, a segment-specific CO2 emission calculation unit 203, a segment-specific product-specific CO2 emission calculation unit 204, an occupied section-specific product-specific CO2 emission calculation unit 205, and a visualization unit 206. Each of these units is realized, for example, by processing that one or more programs installed in the environmental information management device 10 are executed by a processor 108 or the like. The environmental information management device 10 in Example 1 also includes an occupant transfer history storage unit 301, an accumulated CO2 emission storage unit 302, a segment-specific CO2 emission storage unit 303, and an occupied section-specific product-specific CO2 emission storage unit 304. Each of these units is realized, for example, by a storage device such as an auxiliary storage device 107.
[0070] The segment extraction unit 201 executes the process described in (1-1) above. That is, the segment extraction unit 201 extracts segments for each occupant based on the transfer date and time of the occupant transfer history records stored in the occupant transfer history table.
[0071] The occupied section extraction unit 202 executes the process described in (1-2) above. That is, the occupied section extraction unit 202 extracts the occupied section for each product based on the source ID and destination ID of the occupant transfer history record stored in the occupant transfer history table.
[0072] The segment-specific CO2 emission calculation unit 203 performs the process described in (1-3) above. That is, the segment-specific CO2 emission calculation unit 203 calculates the CO2 emissions for each segment. This can also be described as associating the CO2 emissions for each segment with the CO2 emissions for that segment.
[0073] The segment-specific product unit CO2 emission calculation unit 204 performs the process described in (1-4) above. That is, the segment-specific product unit CO2 emission calculation unit 204 calculates the segment-specific product CO2 emission.
[0074] The CO2 emission calculation unit 205 per occupied section, per product, performs the process described in (1-5) above. That is, the CO2 emission calculation unit 205 per occupied section calculates the CO2 emission per product for each occupied section.
[0075] The visualization unit 206 performs the processes described in (1-6) above. Specifically, the visualization unit 206 visualizes the CO2 emissions per product for each occupied section, the CO2 emissions per product for each segment, and so on.
[0076] The occupant transfer history storage unit 301 stores an occupant transfer history table consisting of given occupant transfer history records (for example, occupant transfer history records for the period from T-ΔT to T, where T is the current date and time and ΔT is a predetermined time interval). These occupant transfer history records are provided, for example, from a logistics traceability system.
[0077] The cumulative CO2 emission storage unit 302 stores the cumulative CO2 emissions for each occupant (for example, the cumulative CO2 emissions for each occupant during the period from T-ΔT to T). The cumulative CO2 emissions for each occupant are provided, for example, by an IoT infrastructure system that manages IoT sensors installed in the space that each occupant temporarily or permanently controls and manages.
[0078] However, for example, time-series CO2 emissions for each occupant may be provided by an IoT infrastructure system or the like. In this case, the cumulative CO2 emissions for each occupant are calculated, for example, by a cumulative CO2 emission calculation unit (not shown) provided in the environmental information management device 10.
[0079] The segment-specific CO2 emission storage unit 303 stores the segments extracted by the segment extraction unit 201, the segment-specific CO2 emissions calculated by the segment-specific CO2 emission calculation unit 203, and the like. Hereinafter, data representing segment-specific CO2 emissions will be referred to as "segment-specific CO2 emission records," and table-format data composed of segment-specific CO2 emission records will be referred to as the "segment-specific CO2 emission table." A segment-specific CO2 emission record represents the CO2 emissions of a certain occupant in a certain segment and the total amount of goods that the occupant simultaneously occupied in that segment. A segment-specific CO2 emission record can be represented in the following data format, for example.
[0080] (Occupant ID, Segment Start Date and Time, Segment End Date and Time, Segment CO2 Emissions, Segment Total Quantity of Goods) Here, the Occupant ID is an identifier that uniquely identifies the occupant. The Segment Start Date and Time is the start date and time of the segment. The Segment End Date and Time is the end date and time of the segment. The Segment CO2 Emissions are the CO2 emissions in the segment (i.e., the segment-specific CO2 emissions for that segment). The Segment Total Merchandise Quantity is the total quantity of merchandise simultaneously occupied by the occupant in the segment. Hereafter, the primary key in the Segment-Specific CO2 Emissions table will be (Occupant ID, Segment Start Date and Time).
[0081] The CO2 emission storage unit 304 for each occupied section and per product stores the occupied sections extracted by the occupied section extraction unit 202, the CO2 emission per occupied section and per product calculated by the CO2 emission calculation unit 205, and so on. Hereinafter, data representing the CO2 emission per occupied section and per product will be referred to as "CO2 emission records for each occupied section and per product," and the table-format data composed of these CO2 emission records for each occupied section and per product will be referred to as the "CO2 emission table for each occupied section and per product." A CO2 emission record for each occupied section and per product represents the CO2 emission of a certain product in a certain occupied section and the quantity of that product. A CO2 emission record for each occupied section and per product will be represented in the following data format, for example.
[0082] (Product ID, Occupant ID, Occupancy Start Date and Time, Occupancy End Date and Time, CO2 Emission per Product, Product Quantity) Here, the individual product ID is an identifier that uniquely identifies a product within the product's supply chain (e.g., a manufacturing-specific number). The occupant ID is an identifier that uniquely identifies the occupant. The occupancy interval start date and time is the start date and time of the occupancy interval. The occupancy interval end date and time is the end date and time of the occupancy interval. The product unit CO2 emission is the CO2 emission of the product within the occupancy interval (i.e., the product unit CO2 emission for that product within that occupancy interval). The product quantity is information that represents the size, quantity, weight, volume, number of units, etc. of the product. Hereafter, the primary key in the product unit CO2 emission per occupancy interval table will be (individual product ID, occupant ID, occupancy interval start date and time).
[0083] <Example of processing flow of the environmental information management device 10 in Example 1> An example of the processing flow of the environmental information management device 10 in Example 1 will be explained with reference to Figure 9. Steps S101 to S106 in Figure 9 are executed repeatedly, for example, at predetermined time intervals.
[0084] The segment extraction unit 201 extracts segments for each occupant based on the transfer date and time of the occupant transfer history records stored in the occupant transfer history table (step S101). This extracts segments in the data format (occupant ID, segment start date and time, segment end date and time, segment total product quantity), for example. In the following, segments are extracted as segment-specific CO2 emission records (occupant ID, segment start date and time, segment end date and time, segment CO2 emission, segment total product quantity) for which segment CO2 emissions are not set. Details of the processing in this step will be described later.
[0085] Next, the occupied section extraction unit 202 extracts occupied sections for each product based on the source ID and destination ID of the occupant transfer history record stored in the occupant transfer history table (step S102). This extracts occupied sections in the data format, for example, (product individual ID, occupant ID, occupied section start date and time, occupied section end date and time, product quantity). Hereafter, it will be assumed that the occupied sections are extracted as product-unit CO2 emission records for each occupied section (product individual ID, occupant ID, occupied section start date and time, occupied section end date and time, product-unit CO2 emission, product quantity) for which the product-unit CO2 emission is not set. Details of the processing in this step will be described later.
[0086] Steps S103 to S105 below are performed, for example, with respect to the segments and occupied sections newly extracted in steps S101 to S102 above.
[0087] Next, the segment-specific CO2 emission calculation unit 203 calculates the segment-specific CO2 emissions (step S103). Specifically, for each segment of each occupant, the segment-specific CO2 emission calculation unit 203 obtains the occupant's cumulative CO2 emissions for the date and time closest to the segment end date and time (first cumulative CO2 emissions) and the occupant's cumulative CO2 emissions for the date and time closest to the segment start date and time (second cumulative CO2 emissions). Then, the segment-specific CO2 emission calculation unit 203 calculates the value obtained by subtracting the second cumulative CO2 emissions from the first cumulative CO2 emissions as the segment CO2 emissions for the segment-specific CO2 emissions record. This results in a segment-specific CO2 emissions record (occupant ID, segment start date and time, segment end date and time, segment CO2 emissions, total segment product quantity). It can also be said that this associates each segment with its own CO2 emissions (i.e., segment CO2 emissions).
[0088] Next, the segment-by-segment product-unit CO2 emission calculation unit 204 calculates the segment-by-segment product-unit CO2 emission (step S104). That is, for example, for each product occupied by a occupant in each segment, the segment-by-segment product-unit CO2 emission calculation unit 204 calculates the segment-by-segment product-unit CO2 emission = (segment CO2 emission included in the segment-by-segment CO2 emission record) × (quantity of the product) / (total quantity of segment products included in the segment-by-segment CO2 emission record).
[0089] Next, the CO2 emission calculation unit 205 for each occupied section calculates the CO2 emission per product for each occupied section (step S105). That is, the CO2 emission calculation unit 205 calculates, for example, the sum of the CO2 emissions per product for each segment of segments that have the same occupant ID as the occupant ID of the occupied section, and that are included between the segment with the closest segment start date and time before the start date and time of the occupied section and the segment with the closest segment end date and time after the end date and time of the occupied section, as the CO2 emission per product for each occupied section of the occupied section. This gives a CO2 emission per product for each occupied section record (individual product ID, occupant ID, occupied section start date and time, occupied section end date and time, CO2 emission per product, product quantity).
[0090] The visualization unit 206 then visualizes (for example, displays on a display) the CO2 emissions per product for each occupied section and the CO2 emissions per product for each segment (step S106). That is, the visualization unit 206 displays at least one of the display fields 1000 and 1100, as shown in Figure 4, on the display device 102.
[0091] <Example of segment extraction process in Example 1> The segment extraction process by the segment extraction unit 201 can be carried out as follows.
[0092] The first unit obtains a unique list of occupant IDs, using the destination ID of the occupant transfer history record stored in the occupant transfer history table as the occupant ID. Next, the segment extraction unit 201 retrieves occupant transfer history records in chronological order of transfer date and time for each occupant ID included in the retrieved list, where the occupant ID is either the source ID or the destination ID. The following processing is then performed on these occupant transfer history records in chronological order of transfer date and time.
[0093] The most recent segment end date and time, and the total quantity of goods at that time, are obtained from the most recent processing result (if this process is started for the first time and there is no recent result, the date and time will be a sufficiently old date and time, the total quantity of goods will be 0, etc., and it will be initialized appropriately). At this time, the next segment to be generated will be: • The start date and time are the end date and time of the most recent segment. • The end date and time are the transfer dates and times for the records being processed sequentially. • The total quantity of goods is the quantity of goods increased (if the possessor is the destination) or decreased (if the possessor is the source) for each sequentially processed record (if there are multiple records for the same date and time, the increase / decrease process is repeated for all relevant records). That's all you need to do.
[0094] However, with this implementation method, if multiple occupancy transfer history records exist within a few seconds or minutes, there is a high probability that fine-grained segments with relatively short time intervals will be generated depending on the multiple occupancy transfer history records. More appropriate processing methods to avoid the generation of such fine-grained segments can be considered.
[0095] One way to avoid this is to round the date and time of the records to an appropriate level before processing. For example, if there are records with "12:00:00" and "12:00:15", truncating the seconds will cause these two records to be considered the same date and time, thus preventing segments of less than one minute from occurring.
[0096] Another workaround is to set a segmentation threshold and connect the history of occupant transfers below this threshold as a single segment. An example of segment extraction processing using this method is described in detail below.
[0097] An example of the segment extraction process in step S101 of Figure 9 will be explained with reference to Figure 10.
[0098] The segment extraction unit 201 uses the destination ID of the occupant transfer history record stored in the occupant transfer history table as the occupant ID to obtain a list of unique occupant IDs (step S201).
[0099] Next, the segment extraction unit 201 repeats steps S211 to S214 for each occupant ID included in the list obtained in step S201 (step S202). Steps S211 to S214 for a certain occupant ID will be described below.
[0100] The segment extraction unit 201 retrieves occupant transfer history records in order of transfer date and time, where the occupant ID is either the source ID or the destination ID (step S211). However, at this time, the segment extraction unit 201 retrieves occupant transfer history records that include a transfer date and time later than the maximum value of the segment start date and time of the segment-specific CO2 emission records stored in the segment-specific CO2 emission table. This is to start segment extraction from where it left off when the segment extraction process was last executed. The maximum value of the date and time refers to the most recent date and time.
[0101] The segment extraction unit 201 sets initial values for the provisional segment start date and time, provisional segment end date and time, and provisional segment total quantity (step S212). The segment extraction unit 201 sets initial values for the provisional segment start date and time, provisional segment end date and time, and provisional segment total quantity as follows. Note that the provisional segment start date and time, provisional segment end date and time, and provisional segment total quantity are all temporary variables used for segment extraction.
[0102] Temporary Segment Start Date and Time: Sets the maximum value of the segment start date and time for the segment-specific CO2 emission record containing the relevant occupant ID, among the segment-specific CO2 emission records stored in the segment-specific CO2 emission table. However, if no segment-specific CO2 emission record containing the relevant occupant ID exists, NULL (empty value) is set.
[0103] Set the temporary segment end date and time to NULL.
[0104] Provisional Segment Product Total Amount: Set the segment product total amount to the CO2 emission record for each segment that has the longest segment start date and time among the CO2 emission records for each segment that include the occupant ID. However, if there is no CO2 emission record for each segment that includes the occupant ID, set it to 0.
[0105] The segment extraction unit 201 repeats steps S221 to S223 with respect to the occupant transfer history records obtained in step S211 above (step S213). Steps S221 to S223 with respect to a certain occupant transfer history record will be described below.
[0106] If the temporary segment start date and time is NULL, the segment extraction unit 201 sets the transfer date and time of the occupant transfer history record to the temporary segment start date and time (step S221). If the temporary segment start date and time is not NULL, this step is not executed.
[0107] The segment extraction unit 201 determines the segment based on whether the difference between the transfer date and time of the occupant transfer history record and the temporary segment end date and time is less than the segmentation determination threshold (step S222). Specifically, the segment extraction unit 201 performs either (3-1) or (3-2) below.
[0108] (3-1) When the temporary segment end date and time is NULL, or when the difference between the transfer date and time of the occupant transfer history record and the temporary segment end date and time is less than the segmentation determination threshold. In this case, the segment extraction unit 201 executes (3-1-1) to (3-1-2).
[0109] (3-1-1) The segment extraction unit 201 sets the transfer date and time of the occupant transfer history record as the temporary segment end date and time.
[0110] (3-1-2) If the possessor transfer history record is the last record relating to the possessor ID in step S213 above, the segment extraction unit 201 executes the following (3-1-2-1) to (3-1-2-3). On the other hand, if the possessor transfer history record is not the last record relating to the possessor ID in step S213 above, the segment extraction unit 201 proceeds to step S223.
[0111] (3-1-2-1) The segment extraction unit 201 increases or decreases the total quantity of provisional segment products depending on whether the possessor ID matches the source ID of the possessor transfer history record. That is, if the possessor ID matches the source ID, the segment extraction unit 201 subtracts the quantity of products in the possessor transfer history record from the total quantity of provisional segment products. On the other hand, if the possessor ID does not match the source ID (i.e., if the possessor ID matches the destination ID of the possessor transfer history record), the segment extraction unit 201 adds the quantity of products in the possessor transfer history record to the total quantity of provisional segment products.
[0112] (3-1-2-2) The segment extraction unit 201 determines the segment for the occupant ID using the current provisional segment start date and time, provisional segment end date and time, and provisional segment total quantity. Specifically, the segment extraction unit 201 determines the segment for the occupant ID (occupant ID, segment start date and time, segment end date and time, segment total quantity) using the current provisional segment start date and time as the segment start date and time, the current provisional segment end date and time as the segment end date and time, and the current provisional segment total quantity as the segment total quantity.
[0113] (3-1-2-3) The segment extraction unit 201 stores the segment information determined in (3-1-2-2) above as segment-specific CO2 emission records in the segment-specific CO2 emission table. That is, the segment extraction unit 201 stores the segment information (occupant ID, segment start date and time, segment end date and time, and total segment product quantity) determined in (3-1-2-2) above as segment-specific CO2 emission records in the segment-specific CO2 emission table. At this time, if a segment-specific CO2 emission record with a matching primary key already exists in the segment-specific CO2 emission table, the segment extraction unit 201 updates the existing segment-specific CO2 emission record; otherwise, it inserts the segment-specific CO2 emission record into the segment-specific CO2 emission table. After that, the segment extraction unit 201 proceeds to step S214.
[0114] (3-2) In cases other than (3-1) above In this case, the segment extraction unit 201 executes the following (3-2-1) to (3-2-4).
[0115] (3-2-1) The segment extraction unit 201 sets the transfer date and time of the occupant transfer history record as the temporary segment end date and time.
[0116] (3-2-2) The segment extraction unit 201 determines the segment for the occupant ID using the current provisional segment start date and time, provisional segment end date and time, and provisional segment total quantity. Specifically, the segment extraction unit 201 determines the segment for the occupant ID (occupant ID, segment start date and time, segment end date and time, segment total quantity) using the current provisional segment start date and time as the segment start date and time, the current provisional segment end date and time as the segment end date and time, and the current provisional segment total quantity as the segment total quantity.
[0117] (3-2-3) The segment extraction unit 201 stores the segment information determined in (3-2-2) above as segment-specific CO2 emission records in the segment-specific CO2 emission table. That is, the segment extraction unit 201 stores the segment information determined in (3-2-2) above (occupant ID, segment start date and time, segment end date and time, and total segment product quantity) as segment-specific CO2 emission records in the segment-specific CO2 emission table. At this time, if a segment-specific CO2 emission record with a matching primary key already exists in the segment-specific CO2 emission table, the segment extraction unit 201 updates the existing segment-specific CO2 emission record; otherwise, it inserts the segment-specific CO2 emission record into the segment-specific CO2 emission table.
[0118] (3-2-4) The segment extraction unit 201 sets the temporary segment end date and time to the temporary segment start date and time.
[0119] The segment extraction unit 201 increases or decreases the total quantity of provisional segment products depending on whether the possessor ID matches the source ID of the possessor transfer history record (step S223). That is, if the possessor ID matches the source ID, the segment extraction unit 201 subtracts the quantity of products from the possessor transfer history record from the total quantity of provisional segment products. On the other hand, if the possessor ID does not match the source ID (i.e., if the possessor ID matches the destination ID of the possessor transfer history record), the segment extraction unit 201 adds the quantity of products from the possessor transfer history record to the total quantity of provisional segment products.
[0120] If, after step S223 is executed, there is a subsequent occupancy transfer history record for the occupant ID, the process returns to step S221, and steps S221 to S222 are repeated for that subsequent occupancy transfer history record. On the other hand, if there is no subsequent occupancy transfer history record for the occupant ID, step S214 is executed.
[0121] The segment extraction unit 201 sets values for the provisional segment start date and time and the provisional segment end date and time, and determines the final segment for this segment extraction process (step S214). Specifically, the segment extraction unit 201 executes the following (4-1) to (4-3).
[0122] (4-1) The segment extraction unit 201 sets the temporary segment start date and time and the temporary segment end date and time as follows.
[0123] Temporary segment start date and time: Set the current temporary segment end date and time.
[0124] Temporary segment end date and time: Set a date and time after the current temporary segment end date and time, for example, the system date and time when this segment extraction process is executed.
[0125] (4-2) The segment extraction unit 201 determines the final segment for the occupant ID in this segment extraction process using the current provisional segment start date and time, provisional segment end date and time, and provisional segment total quantity. That is, the segment extraction unit 201 determines the final segment (occupant ID, segment start date and time, segment end date and time, segment total quantity) for the occupant ID in this segment extraction process using the current provisional segment start date and time as the segment start date and time, the current provisional segment end date and time as the segment end date and time, and the current provisional segment total quantity as the segment total quantity.
[0126] (4-3) The segment extraction unit 201 stores the information of the final segment determined in (4-2) above as a CO2 emission record for each segment in the CO2 emission table for each segment. That is, the segment extraction unit 201 stores the information of the final segment determined in (4-2) above (occupant ID, segment start date and time, segment end date and time, and total amount of segment goods) as a CO2 emission record for each segment in the CO2 emission table for each segment.
[0127] If the next occupant ID exists in the list obtained in step S201, the process returns to step S211, and steps S211 to S214 are repeated for that next occupant ID. On the other hand, if the next occupant ID does not exist in the list obtained in step S201, the segment extraction process is terminated.
[0128] In the segment extraction process described above, the transfer date and time of the occupant transfer history record is set as the segment start date and time. However, for example, the transfer date and time of the occupant transfer history record immediately following the occupant transfer history record in question may be set as the segment start date and time, or the date and time between the transfer date and time of the occupant transfer history record in question and the transfer date and time of the occupant transfer history record related to that occupant transfer history record may be set as the segment start date and time. In this case, the date and time set as the segment end date and time may be changed as appropriate depending on the segment start date and time, and some of the processing in the segment extraction process may be changed as appropriate.
[0129] <Example of occupancy interval extraction process in Example 1> An example of the occupied interval extraction process in step S102 of Figure 9 will be explained with reference to Figure 11.
[0130] The occupancy interval extraction unit 202 obtains a list of unique product individual IDs from the occupancy transfer history records stored in the occupancy transfer history table (step S301).
[0131] Next, the occupied interval extraction unit 202 repeats steps S311 to S313 and step S314 or step S315 for each individual product ID included in the list obtained in step S301 (step S302). Steps S311 to S313 and step S314 or step S315 for a certain individual product ID will be described below.
[0132] The occupied section extraction unit 202 retrieves the occupant transfer history records containing the individual product ID in order of transfer date and time (step S311). However, at this time, the occupied section extraction unit 202 retrieves occupant transfer history records that include a transfer date and time later than the maximum value of the occupied section start date and time of the individual product CO2 emission records for each occupied section stored in the individual product CO2 emission table for each occupied section. If there are no individual product CO2 emission records for each occupied section stored in the individual product CO2 emission table for each occupied section, the occupied section extraction unit 202 retrieves all occupant transfer history records containing the individual product ID in order of transfer date and time.
[0133] The occupied interval extraction unit 202 sets initial values for the temporary occupied interval start date and time and the temporary occupant ID (step S312). The occupied interval extraction unit 202 sets initial values for the temporary occupied interval start date and time and the temporary occupant ID as follows. Note that both the temporary occupied interval start date and time and the temporary occupant ID are temporary variables used for occupied interval extraction.
[0134] Temporary occupancy start date and time: Set the transfer date and time of the occupant transfer history record that was first obtained in step S311 above.
[0135] Temporary Occupant ID: Set the destination ID of the occupant transfer history record initially obtained in step S311 above.
[0136] The occupancy interval extraction unit 202 determines whether there are two or more occupant transfer history records obtained in step S311 (step S313).
[0137] If there are no more than two occupant transfer history records obtained in step S311 above (i.e., if there is only one occupant transfer history record obtained in step S311 above), the occupant interval extraction unit 202 performs occupant interval determination (step S314). That is, the occupant interval extraction unit 202 executes the following (5-1) to (5-2).
[0138] (5-1) The occupancy interval extraction unit 202 determines the occupancy interval for the individual product ID using the provisional occupancy interval start date and time and the provisional occupant ID. That is, the occupancy interval extraction unit 202 determines the occupancy interval (individual product ID, occupant ID, occupancy interval start date and time, occupancy interval end date and time, product quantity) for the individual product ID using the current provisional occupant ID as the occupant ID, the current provisional occupancy interval start date and time as the occupancy interval start date and time, and NULL as the occupancy interval end date and time. However, the product quantity for the occupancy interval is set to the product quantity included in the occupant transfer history record.
[0139] (5-2) The occupied section extraction unit 202 stores the occupied section information determined in (5-1) above as an occupied section-per-product CO2 emission record in the occupied section-per-product CO2 emission table. That is, the occupied section extraction unit 202 stores the occupied section information (product individual ID, occupant ID, occupied section start date and time, occupied section end date and time, and product quantity) determined in (5-1) above as an occupied section-per-product CO2 emission record in the occupied section-per-product CO2 emission table. At this time, if an occupied section-per-product CO2 emission record with a matching primary key already exists in the occupied section-per-product CO2 emission table, the occupied section extraction unit 202 updates the existing occupied section-per-product CO2 emission record; otherwise, it inserts the occupied section-per-product CO2 emission record into the occupied section-per-product CO2 emission table.
[0140] However, if the possessor ID included in the possession interval is an identifier indicating that the goods were originally acquired (produced, manufactured, etc.), or if it is an identifier indicating that the goods have been sold, disposed of, exhausted, etc., and the transfer (transfer of possessor) has been completed, then (5-2) above will not be executed. For example, in the example shown in Figure 1, if the possessor ID is "0x0", then the goods have been produced, manufactured, etc., or the transfer (transfer of possessor) of the goods has been completed, and therefore (5-2) above will not be executed.
[0141] On the other hand, if there are two or more occupancy transfer history records obtained in step S311 above, the occupancy interval extraction unit 202 repeats step S321 sequentially starting from the second occupancy transfer history record (step S321). Step S321 with respect to a certain occupancy transfer history record will be described below.
[0142] The occupied section extraction unit 202 determines the occupied section or generates an error depending on whether the provisional occupant ID matches the source ID of the occupant transfer history record (step S321). That is, the occupied section extraction unit 202 performs (6-1) or (6-2) below.
[0143] (6-1) When the temporary possessor ID matches the source ID of the possessor transfer history record. In this case, the occupied interval extraction unit 202 executes the following (6-1-1) to (6-1-3).
[0144] (6-1-1) The occupancy interval extraction unit 202 determines the occupancy interval for the individual product ID using the provisional occupancy interval start date and time and the provisional occupant ID. That is, the occupancy interval extraction unit 202 determines the occupancy interval (individual product ID, occupant ID, occupancy interval start date and time, occupancy interval end date and time, product quantity) for the individual product ID using the current provisional occupant ID as the occupant ID, the current provisional occupancy interval start date and time as the occupancy interval start date and time, and the occupant transfer history record as the occupancy interval end date and time. However, the product quantity for the occupancy interval is set to the product quantity included in the occupant transfer history record.
[0145] (6-1-2) The occupied section extraction unit 202 stores the occupied section information determined in (6-1-1) above as an occupied section-per-product CO2 emission record in the occupied section-per-product CO2 emission table. That is, the occupied section extraction unit 202 stores the occupied section information (product individual ID, occupant ID, occupied section start date and time, occupied section end date and time, and product quantity) determined in (6-1-1) above as an occupied section-per-product CO2 emission record in the occupied section-per-product CO2 emission table. At this time, if an occupied section-per-product CO2 emission record with a matching primary key already exists in the occupied section-per-product CO2 emission table, the occupied section extraction unit 202 updates the existing occupied section-per-product CO2 emission record; otherwise, it inserts the occupied section-per-product CO2 emission record into the occupied section-per-product CO2 emission table.
[0146] However, if the possessor ID included in the possessed section is an identifier indicating that the goods were originally acquired (produced, manufactured, etc.), or if it is an identifier indicating that the goods have been sold, disposed of, exhausted, etc., and the transfer (transfer of possessor) has been completed, then (6-1-2) above will not be executed. For example, in the example shown in Figure 1, if the possessor ID is "0x0", then the goods have been produced, manufactured, etc., or the transfer (transfer of possessor) of the goods has been completed, and therefore (6-1-2) above will not be executed.
[0147] (6-1-3) The occupied section extraction unit 202 sets the temporary occupied section start date and time and the temporary occupant ID as follows.
[0148] Temporary Occupancy Start Date and Time: Set the transfer date and time of the occupant transfer history record.
[0149] Temporary Occupant ID: Set the destination ID of the occupant transfer history record.
[0150] (6-2) If the temporary possessor ID does not match the source ID of the possessor transfer history record. In this case, the occupied section extraction unit 202 outputs an error as an exception and terminates the occupied section extraction process.
[0151] [Example 2] The following describes Example 2 of this embodiment. In Example 2, we assume that the environmental information is GPS information and describe the environmental information management device 10 that performs the processes (2-1) to (2-3) described above. However, the fact that the environmental information is GPS information is just one example, and Example 2 described below can be similarly applied to point-type environmental information other than GPS information (for example, temperature, humidity, etc.).
[0152] <Example of hardware configuration of the environmental information management device 10 in Example 2> The environmental information management device 10 in Example 1 may be the same as in Example 2. Therefore, in the following description, the hardware configuration of the environmental information management device 10 in Example 2 will be assumed to be the same as in Example 1, and its explanation will be omitted.
[0153] <Example of the functional configuration of the environmental information management device 10 in Example 2> Figure 12 shows an example of the functional configuration of the environmental information management device 10 in Example 2. As shown in Figure 12, the environmental information management device 10 in Example 2 includes a segment extraction unit 201, a segment-by-segment GPS information mapping unit 207, and a visualization unit 206. Each of these units is realized, for example, by processing that one or more programs installed in the environmental information management device 10 cause a processor 108 or the like to execute. The environmental information management device 10 in Example 2 also includes an occupant transfer history storage unit 301, a GPS information storage unit 305, and a segment-by-segment GPS information storage unit 306. Each of these units is realized, for example, by a storage device such as an auxiliary storage device 107.
[0154] The segment extraction unit 201 executes the process described in (2-1) above. That is, the segment extraction unit 201 extracts segments for each occupant based on the transfer date and time of the occupant transfer history record stored in the occupant transfer history table. However, since there is no need to apportion environmental information by the total quantity of goods in the point information type, no processing is required to obtain the information necessary for apportionment during segment extraction.
[0155] The segment-specific GPS information mapping unit 207 performs the process described in (2-2) above. That is, for each segment, the segment-specific GPS information mapping unit 207 acquires GPS information that exists between the segment start date and time and the segment end date and time, and associates this acquired GPS information with the segment.
[0156] The visualization unit 206 performs the process described in (2-3) above. That is, the visualization unit 206 visualizes the GPS information associated with each segment.
[0157] The occupant transfer history storage unit 301 stores an occupant transfer history table consisting of given occupant transfer history records (for example, occupant transfer history records for the period from T-ΔT to T, where T is the current date and time and ΔT is a predetermined time interval). These occupant transfer history records are provided, for example, from a logistics traceability system.
[0158] The GPS information storage unit 305 stores time-series GPS information for each occupant (for example, time-series GPS information for each occupant during the period from T-ΔT to T). The time-series GPS information for each occupant is provided, for example, from an IoT infrastructure system that manages IoT sensors (for example, on-board GPS receivers in trucks, etc.) installed in the space that each occupant temporarily or permanently controls and manages.
[0159] The segment-specific GPS information storage unit 306 stores segment-specific GPS information, which is information obtained by associating segments with GPS information using the segment extraction unit 201 and the segment-specific GPS information association unit 207. Hereinafter, data representing segment-specific GPS information will be referred to as "segment-specific GPS information records," and table-format data composed of segment-specific GPS information records will be referred to as "segment-specific GPS information tables." A segment-specific GPS information record represents time-series GPS information associated with a particular segment of a particular occupant. A segment-specific GPS information record can be represented, for example, in the following data format.
[0160] (Occupant ID, Segment Start Date and Time, Segment End Date and Time, Segment GPS Information) Here, the Occupant ID is an identifier that uniquely identifies the occupant. The Segment Start Date and Time is the start date and time of the segment. The Segment End Date and Time is the end date and time of the segment. The Segment GPS Information is the time-series GPS information associated with the segment. Hereafter, the primary key in the segment-specific GPS information table will be (Occupant ID, Segment Start Date and Time).
[0161] <Example of processing flow of the environmental information management device 10 in Example 2> An example of the processing flow of the environmental information management device 10 in Example 2 will be explained with reference to Figure 13. Steps S401 to S403 in Figure 13 are executed repeatedly, for example, at predetermined time intervals.
[0162] The segment extraction unit 201 extracts segments for each occupant based on the transfer date and time of the occupant transfer history record stored in the occupant transfer history table (step S401). This extracts segments in the data format (occupant ID, segment start date and time, segment end date and time), for example. In the following, segments are extracted as segment-specific GPS information records for which segment GPS information has not been set. Details of the processing in this step will be described later.
[0163] The following step S402 is performed, for example, with respect to the segment newly extracted in step S401 above.
[0164] The segment-specific GPS information mapping unit 207 acquires GPS information that exists between the segment start date and time and the segment end date and time for each segment, and associates this acquired GPS information with the segment as segment GPS information (step S402). This results in a segment-specific GPS information record (occupant ID, segment start date and time, segment end date and time, segment GPS information).
[0165] The visualization unit 206 then visualizes the GPS information associated with each segment (for example, by displaying it on a screen, etc.) (step S403). The visualization unit 206 may, for example, visualize the GPS information associated with a segment specified by the user, or it may visualize the GPS information associated with each segment of an occupant specified by the user.
[0166] <Example of segment extraction process in Example 2> In the segment extraction process in step S401 of Figure 13, processing to obtain the information necessary for the apportionment of environmental information is unnecessary. Specifically, the segment extraction process in Example 2 differs from Example 1 in that the following (a) and (b) are unnecessary.
[0167] (a) "Provisional total volume of segmented goods" and "Total volume of segmented goods" (b) Processing in step S223 Except for (a) and (b) above, the procedure is the same as in Example 1 if you replace "segment-specific CO2 emission record" with "segment-specific GPS information record," "segment-specific CO2 emission table" with "segment-specific GPS information table," and "CO2 emissions" with "GPS information."
[0168] <Summary> As described above, the environmental information management device 10 according to this embodiment introduces segments, which are divided by changes in the total quantity of goods simultaneously occupied by an occupant, and manages environmental information obtained in the logistics supply chain of goods or values calculated from such environmental information for each of these segments. This makes it possible for the environmental information management device 10 according to this embodiment to efficiently associate the occupant relocation history and environmental information in the logistics supply chain. Therefore, regardless of whether the environmental information is of the quantity type or the point type, it is possible to significantly reduce the amount of data when associating the occupant relocation history and environmental information for purposes such as analysis when a malfunction occurs, cost reduction, and operational efficiency improvement. Furthermore, when the environmental information is of the quantity type, it is possible to calculate more accurate environmental information for each product compared to simple apportionment calculations.
[0169] The present invention is not limited to the embodiments specifically disclosed above, and various modifications, changes, and combinations with known technologies are possible without departing from the scope of the claims. [Explanation of Symbols]
[0170] 10 Environmental information management device 101 Input Device 102 Display device 103 External I / F 103a Recording medium 104 Communication I / F 105 RAM 106 ROM 107 Auxiliary storage 108 processors 109 Bus 201 Segment Extraction Unit 202 Occupied section extraction unit 203 CO2 Emission Calculation Unit for Each Segment 204 CO2 emission calculation unit per segment per product 205 CO2 emission calculation unit per occupied section per product 206 Visualization section 207 Segment-by-segment GPS information mapping section 301 Occupant Transfer History Storage Unit 302 Accumulated CO2 Emissions Storage Unit 303 Segment-by-segment CO2 emission storage unit 304 CO2 emission storage unit per occupied section per product 305 GPS information storage unit 306 GPS information storage unit per segment
Claims
1. A segment extraction unit extracts segments representing intervals delimited by changes in the total quantity of goods simultaneously occupied by the possessor, as intervals to associate environmental information of the goods, based on possession transfer data comprising possession transfer history records that represent the transfer history of the possessor of goods in a supply chain and are implemented with non-fungible tokens on a blockchain, wherein the possession transfer history record includes at least the date and time of the transfer of the goods, source identification information indicating the identification information of the source of the transfer of the goods, and destination identification information indicating the identification information of the destination of the goods. For each segment extracted by the segment extraction unit, a matching unit is provided that associates environmental information of objects simultaneously occupied by the occupant in that segment with the segment. It has, The segment extraction unit is A segment extraction device that, for each of the aforementioned destination identification pieces, initializes the start date and time of the segment and the end date and time of the segment, acquires possession transfer history records in order of transfer date and time in which the same identification piece as the destination identification piece is included as the source identification piece or destination identification piece, and updates the end date and time with the transfer date and time included in the acquired possession transfer history records until a predetermined condition is met, thereby extracting the interval from the start date and time to the end date and time as the segment corresponding to the destination identification piece.
2. The segment extraction device according to claim 1, further comprising a visualization unit for visualizing the segment and environmental information associated with the segment.
3. The aforementioned environmental information is point information measured by sensors, where the entire space in which the object exists within the supply chain is treated as a point. The aforementioned correspondence unit is Given a time series of environmental information, the segment extraction device according to claim 1 or 2 associates, for each segment extracted by the segment extraction unit, the time series of environmental information included in the interval represented by the given time series of environmental information with the given segment.
4. A segment extraction procedure for extracting segments that represent intervals demarcated by changes in the total quantity of goods simultaneously possessed by the possessor, as intervals to associate environmental information of the goods, based on possession transfer data comprising possession transfer history records that represent the transfer history of the possessor of goods in a supply chain and are implemented with non-fungible tokens on a blockchain, wherein the possession transfer history record includes at least the date and time of the transfer of the goods, source identification information indicating the identification information of the source of the transfer of the goods, and destination identification information indicating the identification information of the destination of the goods, and a segment that represents intervals demarcated by changes in the total quantity of goods simultaneously possessed by the possessor, For each segment extracted by the segment extraction procedure, a mapping procedure is provided to associate the environmental information of the objects simultaneously occupied by the occupant in that segment with the segment. The computer executes this, The segment extraction procedure described above is: A segment extraction method comprising initializing the start date and time and the end date and time of the segment for each of the aforementioned destination identification information, acquiring occupancy transfer history records in order of transfer date and time in which the same identification information as the destination identification information is included as the source identification information or destination identification information, and updating the end date and time with the transfer date and time included in the acquired occupancy transfer history records until a predetermined condition is met, thereby extracting the interval from the start date and time to the end date and time as the segment corresponding to the destination identification information.
5. A program that causes a computer to function as the interval extraction device described in claim 1 or 2.