Graph search device, graph search system, and graph search method
The graph search method enhances accuracy by calculating structural and content similarity between query and existing process graphs and tables, enabling reliable identification of similar manufacturing processes.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- HITACHI LTD
- Filing Date
- 2022-12-16
- Publication Date
- 2026-04-23
AI Technical Summary
Existing graph analysis methods, such as those described in Patent Document 1, do not accurately consider table information associated with graphs, leading to limited accuracy in search results for complex manufacturing processes.
A graph search method that calculates structural and content similarity between query and existing process graphs and tables, using a processor to determine search candidates that meet predetermined similarity thresholds and overall evaluation criteria.
Provides highly accurate search results by considering both graph structure and associated table information, ensuring reliable identification of similar manufacturing processes.
Smart Images

Figure 0007850651000001 
Figure 0007850651000002 
Figure 0007850651000003
Abstract
Description
Technical Field
[0001] The present invention relates to a graph search device, a graph search system, and a graph search method.
Background Art
[0002] In the manufacturing industry, products are manufactured by a process composed of various manufacturing steps. As an example, chemicals manufactured in a chemical plant may be manufactured by a process consisting of manufacturing steps such as raw material processing, mixing, heating, and the like.
[0003] In order to visualize and manage such a process, a graph representation is a useful tool. In the graph representation of a product, each step for manufacturing the product can be represented as a series of connected nodes. Further, such a graph representation may be associated with a table storing information regarding each node in the graph.
[0004] By managing the manufacturing process of a product using the graph and table described above, it is possible to easily grasp the overall flow of the manufacturing processes of various products and information regarding each process in the manufacturing process. Further, by analyzing such a graph, new insights regarding the relationships between nodes in the graph can be obtained.
[0005] As one means for analyzing a graph, for example, there is US Patent Application Publication No. 2022 / 0247662 (Patent Document 1). Patent Document 1 discloses a technique for determining predictions from a graph of a network dataset. The graph of the network dataset may include nodes representing entities and edges representing connections or links between entities. Predictions can be made using a dual-path convolutional network that considers both node connectivity and node topology. Node topology includes an evaluation of the similarity of topological roles between nodes in the graph, even for nodes located in different parts of the graph. Node connectivity and node topology in a dual-path convolution can be aligned using a multi-head attention network. The output from the previous layer of the multi-head attention network may be provided as input to a subsequent layer of the dual-path convolution to mutually reinforce the convolutions that determine node connectivity and node topology toward alignment. [Prior art documents] [Patent Documents]
[0006] [Patent Document 1] U.S. Patent Application Publication No. 2022 / 0247662 [Overview of the Initiative] [Problems that the invention aims to solve]
[0007] In the manufacturing industry described above, it is sometimes desirable to refer to the manufacturing processes of existing products when designing the manufacturing process for a new product. If an existing product whose manufacturing process is similar to that of the new product being designed can be identified, the design of the manufacturing process for the new product can be carried out efficiently by using the manufacturing process of that existing product. Therefore, there is a need for a means to search for existing manufacturing processes of manufactured products, for example, stored in graph format.
[0008] The aforementioned Patent Document 1 relates to making predictions based on a graph of a network dataset related to computer implementation services. For example, if the graph shows the relationships between buyers and sellers in a trading relationship, it is said that the graph analysis means described in Patent Document 1 can be used to predict sellers who are at high risk of revenue loss. Furthermore, the graph analysis method described in Patent Document 1 evaluates the similarity of the graphs.
[0009] To calculate graph similarity with high accuracy, it is desirable to consider various features related to the graph. However, while the graph analysis method described in Patent Document 1 uses graph similarity that takes into account the connectivity between nodes in the graph and the topology (structure) of the graph, it does not envision graph search that takes into account the similarity of information about each node in the graph (for example, table information stored in tables associated with the graph).
[0010] Therefore, for complex graphs, such as those associated with various information about the manufacturing process of a product, the accuracy of the graph analysis and graph similarity methods described in Patent Document 1 may be limited, and reliable search results may not be obtained.
[0011] Therefore, this disclosure aims to provide a highly accurate graph search method that can provide reliable search results by using similarity comparison that takes into account not only the structure of the graph but also the table information stored in the table associated with the graph. [Means for solving the problem]
[0012] To solve the above problems, one representative graph search device of the present invention comprises a processor, memory, and a storage unit, wherein the storage unit includes an existing information database that stores existing information, which includes a set of existing process graphs that show the process flow in graph form, and a set of existing process tables that are associated with the set of existing process graphs and store information about the set of existing process graphs in tabular form, and the memory includes a query data management unit that acquires query data, which is a search query for the existing information, and which includes a query graph and a query table, and calculates the structural similarity between the query graph and the set of existing process graphs by comparing the query graph included in the query data with the set of existing process graphs, and The system includes a structure comparison unit that determines an existing process graph that satisfies a predetermined structural similarity threshold to the query graph from a set of existing process graphs as a first search candidate; a content comparison unit that calculates the content similarity between the query graph and the set of existing process tables by comparing the query table included in the query data with the set of existing process tables, and determines an existing process graph that satisfies a predetermined content similarity threshold to the query table from the set of existing process tables as a second search candidate; and a processing instruction to cause the processor to function as a result management unit that determines and outputs search result data for the query data from among the first and second search candidates based on predetermined overall evaluation criteria. [Effects of the Invention]
[0013] According to this disclosure, by using similarity comparison that takes into account not only the structure of the graph but also the table information stored in the table associated with the graph, it is possible to provide a highly accurate graph search method that can provide reliable search results. Other issues, configurations, and effects will be clarified by the description of the embodiments for carrying out the invention below. [Brief explanation of the drawing]
[0014] [Figure 1] FIG. 1 is a diagram showing a computer system for implementing an embodiment of the present disclosure. [Figure 2] FIG. 2 is a diagram showing an example of the configuration of a graph search system according to an embodiment of the present disclosure. [Figure 3] FIG. 3 is a diagram showing an example of a manufacturing process according to an embodiment of the present disclosure. [Figure 4] FIG. 4 is a diagram showing an example of query data and existing information according to an embodiment of the present disclosure. [Figure 5] FIG. 5 is a diagram showing the correspondence between a graph and a table according to an embodiment of the present disclosure. [Figure 6] FIG. 6 is a diagram showing an example of various databases stored in a storage unit according to an embodiment of the present disclosure. [Figure 7] FIG. 7 is a diagram showing an example of the overall flow of a manufacturing process in which graph search means according to an embodiment of the present disclosure is used. [Figure 8] FIG. 8 is a diagram showing an example of the flow of graph search processing according to an embodiment of the present disclosure. [Figure 9] FIG. 9 is a diagram showing an example of the flow of structural similarity comparison processing according to an embodiment of the present disclosure. [Figure 10] FIG. 10 is a diagram showing an example of the flow of content similarity comparison processing according to an embodiment of the present disclosure. [Figure 11] FIG. 11 is a diagram showing an example of a query data setting screen according to an embodiment of the present disclosure. [Figure 12] FIG. 12 is a diagram showing an example of a search result confirmation screen according to an embodiment of the present disclosure.
MODE FOR CARRYING OUT THE INVENTION
[0015] Hereinafter, embodiments of the present invention will be described with reference to the drawings. Note that the present invention is not limited by this embodiment. Also, in the description of the drawings, the same parts are denoted by the same reference numerals. Also, terms such as "first," "second," "third," etc. may be used in this disclosure to describe various elements or components, but it will be understood that these elements or components should not be limited by these terms. These terms are only used to distinguish one element or component from another. Thus, the first element or component discussed below could also be referred to as the second element or component without departing from the teachings of the inventive concept.
[0016] First, referring to FIG. 1, a computer system 100 for implementing embodiments of the present disclosure will be described. The mechanisms and devices of the various embodiments disclosed herein may be applied to any suitable computing system. The main components of the computer system 100 include one or more processors 102, a memory 104, a terminal interface 112, a storage interface 113, an I / O (input / output) device interface 114, and a network interface 115. These components may be interconnected via a memory bus 106, an I / O bus 108, a bus interface unit 109, and an I / O bus interface unit 110.
[0017] The computer system 100 may include one or more general-purpose programmable central processing units (CPUs) 102A and 102B collectively referred to as the processor 102. In certain embodiments, the computer system 100 may comprise multiple processors, and in other embodiments, the computer system 100 may be a single CPU system. Each processor 102 executes instructions stored in the memory 104 and may include an on-board cache.
[0018] In some embodiments, memory 104 may include a random-access semiconductor memory, storage device, or storage medium (either volatile or non-volatile) for storing data and programs. Memory 104 may store all or some of the programs, modules, and data structures that perform the functions described herein. For example, memory 104 may store a graph search application 150. In some embodiments, the graph search application 150 may include instructions or descriptions that perform the functions described later on the processor 102.
[0019] In some embodiments, the graph search application 150 may be implemented in hardware via semiconductor devices, chips, logic gates, circuits, circuit cards, and / or other physical hardware devices, instead of, or in addition to, a processor-based system. In some embodiments, the graph search application 150 may include data other than instructions or descriptions. In some embodiments, a camera, sensor, or other data input device (not shown) may be provided to communicate directly with the bus interface unit 109, the processor 102, or other hardware of the computer system 100.
[0020] The computer system 100 may include a bus interface unit 109 for communication between a processor 102, memory 104, a display system 124, and an I / O bus interface unit 110. The I / O bus interface unit 110 may be connected to an I / O bus 108 for transferring data to and from various I / O units. The I / O bus interface unit 110 may communicate via the I / O bus 108 with a plurality of I / O interface units 112, 113, 114, and 115, also known as I / O processors (IOPs) or I / O adapters (IOAs).
[0021] The display system 124 may include a display controller, a display memory, or both. The display controller can provide video, audio, or both data to the display device 126. The computer system 100 may also include one or more devices such as sensors configured to collect data and provide that data to the processor 102.
[0022] For example, the computer system 100 may include biometric sensors that collect heart rate data and stress level data, environmental sensors that collect humidity data, temperature data, pressure data, etc., and motion sensors that collect acceleration data, movement data, etc. Other types of sensors can also be used. The display system 124 may be connected to a display device 126 such as a standalone display screen, television, tablet, or portable device.
[0023] The I / O interface unit has the function of communicating with various storage or I / O devices. For example, the terminal interface unit 112 can be fitted with user I / O devices 116 such as user output devices like video display devices and speaker televisions, and user input devices such as keyboards, mice, keypads, touchpads, trackballs, buttons, light pens, or other pointing devices. The user may use the user interface to operate the user input device to input data and instructions to the user I / O device 116 and the computer system 100, and to receive output data from the computer system 100. The user interface may be displayed on a display device, played back by a speaker, or printed via a printer, for example, through the user I / O device 116.
[0024] The storage interface 113 allows for the mounting of one or more disk drives or direct-access storage devices 117 (typically magnetic disk drive storage devices, but may be arrays of disk drives configured to appear as a single disk drive or other storage devices). In some embodiments, the storage device 117 may be implemented as any secondary storage device. The contents of memory 104 may be stored in the storage device 117 and read from the storage device 117 as needed. The I / O device interface 114 may provide an interface to other I / O devices such as printers and fax machines. The network interface 115 may provide a communication path so that the computer system 100 and other devices can communicate with each other. This communication path may be, for example, a network 130.
[0025] In one embodiment, the computer system 100 may be a device that receives requests from other computer systems (clients) that do not have a direct user interface, such as a multi-user mainframe computer system, a single-user system, or a server computer. In another embodiment, the computer system 100 may be a desktop computer, a portable computer, a laptop computer, a tablet computer, a pocket computer, a telephone, a smartphone, or any other suitable electronic device.
[0026] Next, with reference to Figure 2, a graph search system according to an embodiment of this disclosure will be described.
[0027] Figure 2 shows an example of the configuration of a graph search system 200 according to an embodiment of this disclosure. The graph search system 200 is a system for searching for graphs that have a high similarity to a predetermined process represented in graph format and providing them to the user. As shown in Figure 2, the graph search system 200 consists of a graph search device 210, a communication network 250, and a user terminal 260. In the graph search system 200, the graph search device 210 and the user terminal 260 may be connected to each other via the communication network 250.
[0028] The graph search device 210 is a device that searches for graphs corresponding to processes with a high degree of similarity to a predetermined process represented in graph format, and as shown in Figure 2, mainly includes a memory 220, a storage unit 230, a processor 244, and an input / output unit 246. In one embodiment, the graph search device 210 may be implemented by the computer system 100 shown in Figure 1.
[0029] The memory 220 may be a memory for storing a graph search application 150 for performing the functions of the graph search means according to the embodiment of this disclosure. This graph search application 150 may include processing instructions for performing the functions of software modules such as a query data management unit 222, a structure comparison unit 224, a content comparison unit 226, and a result management unit 228, as shown in Figure 2.
[0030] The query data management unit 222 is a functional unit for acquiring and managing query data that indicates search queries for existing information stored in the existing information database 232, which will be described later. This query data may be information for searching for graphs that have a high similarity to a predetermined process represented in graph format, and may be input by a user via the user terminal 260, which will be described later. This query data may also include a query graph that shows the predetermined process in graph format and a query table that shows information about the query graph in tabular format.
[0031] The structural comparison unit 224 is a functional unit for calculating the structural similarity between a query graph included in the query data acquired by the query data management unit 222 and a set of existing process graphs included in the existing information stored in the existing information database 232, which will be described later. In this disclosure, "structural similarity" means similarity that takes into account structural features such as the positions of nodes constituting the graph, the connection relationships between nodes, and paths in the graph. In some embodiments, the structural similarity in this disclosure may be calculated by a predetermined graph analysis method or a predetermined natural language processing method.
[0032] The content comparison unit 226 is a functional unit for calculating the content similarity between a query table included in the query data acquired by the query data management unit 222 and a set of existing process tables included in the existing information stored in the existing information database 232, which will be described later. In this disclosure, "content similarity" means similarity that takes into account the syntactic and semantic features of table information that stores graph-related information in tabular form. In one embodiment, the content similarity in this disclosure may be calculated by a predetermined natural language processing method.
[0033] The result management unit 228 is a functional unit that determines search result data for query data acquired by the query data management unit 222 based on the similarity comparison performed by the structure comparison unit 224 and the content comparison unit 226 described above. In one embodiment, the result management unit 228 may determine the search result data by evaluating the search candidates determined by the structure comparison unit 224 and the content comparison unit 226 based on a predetermined comprehensive evaluation criterion.
[0034] The storage unit 230 is a storage area that houses a database (hereinafter referred to as "DB") for storing various types of information according to the embodiments of this disclosure, and may include a process DB 231, an existing information DB 232, a graph similarity information DB 233, and a search result DB 234, as shown in Figure 2.
[0035] Process DB231 is a database that stores information about existing processes.
[0036] The existing information DB232 is a database that stores existing information that is searched based on query data, and as described later, it includes the existing process graph DB620 and the existing process table DB630.
[0037] The graph similarity information DB233 is a database that stores information related to similarity comparisons (structural similarity and content similarity) according to the embodiments of this disclosure.
[0038] Search Results DB234 is a database that stores information about the search results for query data.
[0039] The processor 244 is a processing unit for executing processing instructions that define the functions of each functional part of the graph search application 150 stored in the memory 220.
[0040] The input / output unit 246 is a functional unit that receives information input to the graph search device 210 and outputs information such as search result data generated by the graph search device 210. In one embodiment, the input / output unit 246 may display a query data setting screen G01 that receives information from the user for setting query data, and a search result data confirmation screen G02 that displays search result data for the query data, via the user terminal 260. In another embodiment, the input / output unit 246 may include, for example, a keyboard, a mouse, a display that shows a GUI (Graphical User Interface), etc.
[0041] The communication network 250 may include, for example, a local area network (LAN), a wide area network (WAN), a satellite network, a cable network, a Wi-Fi network, or any combination thereof.
[0042] The user terminal 260 is a terminal device available to users of the graph search device 210. Using the user terminal 260, users can, for example, use a GUI provided by the input / output unit 246 to input query data and request graph searches from the graph search device 210, or to view search result data output from the graph search device 210. As an example, the user terminal 260 may include, but is not particularly limited to, a smartphone, smartwatch, tablet, or personal computer. Note that, for the sake of explanation, Figure 2 illustrates a configuration including one user terminal 260 as an example, but the number of user terminals 260 is not particularly limited.
[0043] According to the graph search system 200 described above, by using similarity comparison that takes into account not only the structure of the graph but also the table information stored in the table associated with the graph, it is possible to provide a highly accurate graph search method that can reliably deliver search results.
[0044] Next, with reference to Figure 3, an example of a process according to the embodiment of this disclosure will be described.
[0045] Figure 3 shows an example of a manufacturing process 300 according to an embodiment of the present disclosure. As described above, in the manufacturing industry, for example, products are manufactured by a process consisting of various manufacturing steps. In this disclosure, “process” means a process consisting of a series of steps.
[0046] Figure 3 shows a manufacturing process 300 for a chemical product manufactured in a chemical plant, for example, as an example of a process according to the embodiment of this disclosure. As shown in Figure 3, the manufacturing process 300 consists of a step S301 for obtaining a first raw material, a step S302 for obtaining a second raw material, a step S303 for mixing the first and second raw materials, a step S304 for freezing the output of step S303, a step S305 for grinding the output of step S304, a step S306 for heating the output of step S305, a step S307 for polishing the output of step S306, and a step S308 for cleaning the output of step S307.
[0047] As described above, a process like the manufacturing process 300 shown in Figure 3 can be represented in graph form. In this case, each step that constitutes the manufacturing process 300, such as raw material acquisition, raw material mixing, freezing, grinding, heating, polishing, and cleaning, can be represented as connected nodes. Furthermore, each node representing one of these steps may be associated with a table that stores information about that step. For example, the "freezing" step may be associated with a table that stores information such as the temperature used in the freezing process and the time until freezing.
[0048] Figure 3 shows, for example, a manufacturing process 300 for chemicals produced in a chemical plant, but the disclosure is not limited thereto, and the graph search means according to the embodiments of this disclosure may be appropriately applied to any industry or field.
[0049] Next, with reference to Figure 4, graphs and tables according to the embodiments of this disclosure will be described.
[0050] As described above, one aspect of this disclosure relates to searching for graphs that are highly similar to a given process represented in graph form. More specifically, the graph search device 210 according to an embodiment of this disclosure uses query data indicating a user's search query to search an existing information database that stores existing information, including a set of existing process graphs that show the flow of an existing process in graph form and a set of existing process tables that are associated with the existing process graphs and store information about the set of existing process graphs in tabular form, and determines search result data for the query data.
[0051] Figure 4 shows an example of query data 410 and existing information 420 according to the embodiment of this disclosure. The query data 410 is information indicating a user's search query and may include a query graph 412 that shows a predetermined process in graph format and a query table 414 that shows information related to the query graph 412 in tabular format. In one embodiment, a user (for example, a user of user terminal 260) may set the query data 410 by defining the query graph 412 and the query table 414 using the query data setting screen G01 described later.
[0052] The existing information 420 is information on which a search is performed based on the query data 410, and may include a set of existing process graphs consisting of a first existing process graph 422 and a second existing process graph 426 that show the flow of an existing process in graph form, and a set of existing process tables consisting of a first existing process table 424 and a second existing process table 428 that store information about the first existing process graph 422 and the second existing process graph 426, respectively, in tabular form.
[0053] As shown in Figure 4, the query graph 412, the first existing process graph 422, and the second existing process graph 426 are each composed of multiple connected nodes (X, Y, Z, A, B, C, etc.). Each node contains node name information indicating the name of that node. In addition, the query table 414, the first existing process table 424, and the second existing process table 428 store tabular information about each node in the query graph 412, the first existing process graph 422, and the second existing process graph 426 in one or more columns.
[0054] Each column stored in the first existing process table 424 and the second existing process table 428 includes column name information indicating the name of the column and table information stored in that column. For the sake of explanation, Figure 4 illustrates an example where the first existing process table 424 and the second existing process table 428 each contain one column for each node in the first existing process graph 422 and the second existing process graph 426. However, this disclosure is not limited to this example, and in practice, the first existing process table 424 and the second existing process table 428 may store multiple columns for each node in the first existing process graph 422 and the second existing process graph 426.
[0055] As described later, the graph search device according to the embodiment of this disclosure calculates the structural similarity between the query graph 412 and a set of existing process graphs consisting of a first existing process graph 422 and a second existing process graph 426, and calculates the content similarity between the query table 414 and a set of existing process tables consisting of a first existing process table 424 and a second existing process table 428. Based on the calculated structural similarity and content similarity, the device can determine the search result data for the query data 410.
[0056] Next, with reference to Figure 5, the correspondence between the graphs and tables according to the embodiments of this disclosure will be described.
[0057] Figure 5 shows the correspondence between graphs and tables according to the embodiments of this disclosure. As described above, a process graph (for example, a manufacturing process for producing a product) may include a plurality of nodes representing steps in the process, and each node may be associated with a process table that stores information about that node.
[0058] For example, as shown in Figure 5, a given process graph 500 includes nodes R1, R2, M1, F1, G1, H1, B1, and C1. In this case, node R1 may be associated with process table 531, node R2 with process table 532, node M1 with process table 533, node F1 with process table 534, node G1 with process table 535, node H1 with process table 536, node B1 with process table 537, and node C1 with process table 538. In this disclosure, the names of the nodes, such as "R1, R2, M1," are referred to as "node names," and each column in the process table associated with each node is referred to as a "column name."
[0059] Next, with reference to Figure 6, various databases stored in the storage unit according to the embodiment of this disclosure will be described.
[0060] Figure 6 shows an example of various databases stored in the storage unit 230 according to the embodiment of this disclosure. As shown in Figure 6, the storage unit 230 according to the embodiment of this disclosure may include a process DB 231, an existing information DB 232, a query graph DB 233, a graph similarity information DB 233, and a search results DB 234.
[0061] Process DB231 is a database that stores information about existing processes, and may include information such as a process ID 611 to identify a specific process, a process sequence 612 indicating the order of the steps that make up the process, and a process name 613 indicating the name of the process.
[0062] The existing information DB232 is a database that stores existing information on which searches are performed based on query data, and includes the existing process graph DB620 which stores existing process graphs, and the existing process table DB630 which stores information about existing process graphs in tabular format.
[0063] The existing process graph DB620 is a database that stores existing process graphs and may include information such as a graph ID621 that identifies a specific existing process graph, a node ID622 that identifies each node in the graph, an edge ID623 that identifies each edge that connects the nodes in the graph, a start node ID624 that identifies the start node in the graph, and an end node ID625 that identifies the end node in the graph.
[0064] The existing process table DB630 is an existing process table that stores information about existing process graphs stored in the existing process graph DB620 in a tabular format, and may include information such as a node ID 631 that identifies a specific node in a particular existing process graph, a table ID 632 that identifies the table associated with that node, and columns 633 included in that table.
[0065] The graph similarity information DB233 is a database that stores information regarding similarity comparisons (structural similarity and content similarity) according to the embodiments of this disclosure, and may include a process ID 651 that identifies a predetermined process (for example, a process stored in process DB231), an existing process graph ID 642 that identifies a specific existing process graph used for comparison, a query graph ID 643 that identifies a specific query graph used for comparison, and a similarity score 644 that indicates the similarity between the existing process graph and the query graph. The similarity score 644 may indicate the structural similarity of the compared graphs and the content similarity of the tables associated with these graphs.
[0066] The search result DB234 is a database that stores information about the search results for query data, and may include information such as an existing process graph ID 651 that identifies a specific existing process graph used for comparison, a query graph ID 652 that identifies a specific query graph used for comparison, the maximum similarity of these graphs (for example, the highest similarity among structural similarity and content similarity) 653, and a selection graph 654 that shows the process graph selected as the search result (an existing process graph selected as the search result).
[0067] Next, with reference to Figure 7, the overall flow of the manufacturing process in which the graph search means according to the embodiment of this disclosure is used will be described.
[0068] As described above, in manufacturing, it is sometimes desirable to refer to the manufacturing processes of existing products when designing the manufacturing process for a new product. If an existing product whose manufacturing process is similar to that of the new product under design can be identified, the design of the manufacturing process for the new product can be efficiently carried out by using the manufacturing process of that existing product. Accordingly, one aspect of this disclosure relates to a graph search means for accurately identifying graphs corresponding to the manufacturing processes of existing products whose manufacturing processes are similar to those of a new product under design. Figure 7 shows an example of the overall flow of a manufacturing process 700 in which the graph search means according to the embodiment of this disclosure is used.
[0069] First, in step S702, the manufacturer designs a new product. For example, the manufacturer may design the product by defining its performance, function, mechanism, structure, etc., and by planning the materials, shape, dimensions, processing methods, and processes to be used. The manufacturer may also present all or part of the manufacturing process of the product in graph or tabular format. In one embodiment, the manufacturer may send the provisional manufacturing process shown in graph format as query data from the user terminal shown in Figure 2 to the graph search device 210.
[0070] Next, in step S704, the graph search device 210 according to the embodiment of this disclosure performs a graph search process according to the embodiment of this disclosure based on the query data received from the manufacturer in step S702, and determines whether there is an existing process graph that satisfies a predetermined similarity criterion for the manufacturing process defined in the query data. Details of the graph search process according to the embodiment of this disclosure will be described later with reference to Figure 8, so the explanation is omitted here.
[0071] Next, in step S706, if an existing process graph that satisfies a predetermined similarity criterion for the manufacturing process defined in the query data was identified in step S704, the process proceeds to step S708. On the other hand, if an existing process graph that satisfies a predetermined similarity criterion for the manufacturing process defined in the query data was not identified in step S704, the process returns to step S702 and adjusts the design of the manufactured product.
[0072] Next, in step S708, an evaluation is performed on the search results identified in step S704. Here, the manufacturer or the graph search device 210 determines whether the manufacturing process shown in the existing process graph included in the identified search results meets predetermined efficiency criteria for time, cost, or quality. These efficiency criteria may be determined, for example, based on the specifications of the product or the manufacturer's requirements. In some embodiments, this evaluation may be performed by a predetermined simulation method or modeling method.
[0073] Next, in step S710, if it is determined that the search results identified in step S704 meet the efficiency criteria for evaluation performed in step S708, the process proceeds to step S712. On the other hand, if it is determined that the search results identified in step S704 do not meet the efficiency criteria for evaluation performed in step S708, the process returns to step S704, and the graph search is performed again.
[0074] Next, in step S712, the manufacturer manufactures the product based on the existing process graph included in the search results that were determined to meet the efficiency criteria of the evaluation performed in step S708.
[0075] Next, in step S714, the manufacturer monitors the products manufactured in step S712 and performs quality inspections.
[0076] Next, in step S716, the manufacturer determines whether or not the product is defective based on the results of the monitoring and quality inspection in step S714. If it is determined that the product is defective, the process proceeds to step S718. If it is determined that the product is not defective, the process proceeds to step S720.
[0077] Next, in step S718, the manufacturer determines whether a process control to suppress the occurrence of defects is applicable to the product that has been determined to have defects. If it is determined that a process control to suppress the occurrence of defects is applicable, the manufacturer applies the process control and resumes manufacturing in step S712. On the other hand, if it is determined that a process control to suppress the occurrence of defects is not applicable, the process returns to step S704 and performs the graph search again.
[0078] Next, in step S720, the manufacturer outputs the manufactured product.
[0079] According to the manufacturing process 700 described above, by using the graph search process according to the embodiment of this disclosure, it is possible to identify an existing process graph corresponding to the manufacturing process of an existing product that is similar to the manufacturing process of a new product under design, and by using the process graph of this existing manufacturing process with a high degree of similarity, it becomes possible to efficiently proceed with the design of the manufacturing process for the new product.
[0080] Next, with reference to Figure 8, the graph search process according to the embodiment of this disclosure will be described.
[0081] Figure 8 shows an example of the flow of the graph search process 800 according to the embodiment of this disclosure. The graph search process 800 according to the embodiment of this disclosure is a process for searching for graphs that have a high similarity to a predetermined process represented in graph format and providing them to the user, and is carried out by each functional unit stored in the graph search device 210 shown in Figure 2.
[0082] First, in step S802, the query data management unit 222 obtains query data that indicates a search query for existing information stored in the existing information database 232 described above. As described above, this query data may be information for searching for process graphs that have a high similarity to a predetermined process represented in graph format, and may be input by a user via the user terminal 260 described later. Furthermore, this query data may include a query graph that shows a predetermined process in graph format, and a query table that is associated with the query graph and shows information about the query graph in tabular format.
[0083] Next, in step S804, the structural comparison unit 224 calculates the structural similarity between the query graph included in the query data acquired by the query data management unit 222 in step S802 and the set of existing process graphs stored in the existing process graph DB 620. The structural comparison unit 224 may store the structural similarity calculated here in the graph similarity information DB 233 described above. Details of the process for calculating structural similarity will be explained later in Figure 9, so the explanation is omitted here.
[0084] Next, in step S806, the structure comparison unit 224 determines, based on the structural similarity comparison in step S804, whether or not there is an existing process graph in the set of existing process graphs that satisfies a predetermined structural similarity threshold for the query graph included in the query data. If the structure comparison unit 224 determines that there is an existing process graph in the set of existing process graphs that satisfies a predetermined structural similarity threshold for the query graph included in the query data, the process proceeds to step S808. On the other hand, if the structure comparison unit 224 determines that there is no existing process graph in the set of existing process graphs that satisfies a predetermined structural similarity threshold for the query graph included in the query data, the process returns to step S802, and the query data management unit 222 adjusts or reacquires the query data.
[0085] Next, in step S808, the structure comparison unit 224 determines that an existing process graph that satisfies a predetermined structural similarity threshold with respect to the query graph included in the query data is designated as the first search candidate. Here, the "first search candidate" refers to an existing process graph that has a high structural similarity (satisfies the structural similarity threshold) with respect to the query graph included in the query data, and is one of the candidate search results for the query data. Furthermore, the first search candidate here is not limited to a single existing process graph, but may be multiple existing process graphs that satisfy the structural similarity with respect to the query graph.
[0086] Next, in step S810, the content comparison unit 226 calculates the content similarity between the query table included in the query data acquired by the query data management unit 222 in step S802 and the set of existing process tables stored in the existing process table DB630. The content comparison unit 226 may store the content similarity calculated here in the graph similarity information DB233 described above. Details of the process for calculating content similarity will be explained later in Figure 10, so the explanation is omitted here.
[0087] Next, in step S812, the content comparison unit 226 determines, based on the content similarity comparison in step S810, whether or not there is an existing process table in the set of existing process tables that satisfies a predetermined content similarity threshold for the query table included in the query data. If the content comparison unit 226 determines that there is an existing process table in the set of existing process graphs that satisfies a predetermined content similarity threshold for the query table included in the query data, the process proceeds to step S814. On the other hand, if the content comparison unit 226 determines that there is no existing process table in the set of existing process tables that satisfies a predetermined content similarity threshold for the query table included in the query data, the process returns to step S802, and the query data management unit 222 adjusts or reacquires the query data.
[0088] Next, in step S814, the content comparison unit 226 identifies existing process graphs associated with existing process tables that it has determined satisfy a predetermined content similarity threshold with respect to the query table included in the query data as second search candidates. Here, "second search candidates" refers to existing process graphs associated with existing process tables that have a high content similarity to the query table included in the query data, and is one of the candidate search results for the query data. Furthermore, the second search candidates here are not limited to a single existing process graph, but may include multiple existing process graphs that satisfy the content similarity threshold with respect to the query graph.
[0089] Next, in step S816, the results management unit 228 selects a search candidate that satisfies a predetermined overall evaluation criterion from among the first search candidate determined by structural similarity comparison and the second search result determined by content similarity comparison. The overall evaluation criterion here refers to information used to determine the appropriateness of the search candidate to the query data. In one embodiment, this overall evaluation criterion may define a predetermined similarity threshold (for example, 70% or 80%). In another embodiment, this overall evaluation criterion may define "select the search candidate with the highest similarity to the query data among the first search candidate and the second search result." In yet another embodiment, the overall evaluation criterion may define "select the search candidate with the highest average value of structural similarity and content similarity among the first search candidate and the second search result." Here, the results management unit 228 may select any number of search candidates that satisfy the overall evaluation criteria.
[0090] As an example, the results management unit 228 may refer to the graph similarity information DB 233 mentioned above, compare the structural similarity calculated for the first search candidate with the content similarity calculated for the second search candidate, and select the search candidate that satisfies the similarity threshold specified in the overall evaluation criteria (or the search candidate with the highest similarity).
[0091] Next, in step S818, the results management unit 228 evaluates the search candidates selected in step S816. Here, the results management unit 228 determines whether the processes shown in the existing processing graphs included in the search candidates selected in step S816 meet predetermined efficiency criteria related to time, cost, or quality. These efficiency criteria may be determined, for example, based on the specifications of the product or the manufacturer's requirements. In some embodiments, this evaluation may be performed by predetermined simulation or modeling methods. This step substantially corresponds to step S708 in the manufacturing process 700 shown in Figure 7.
[0092] Next, in step S820, if it is determined that the search candidates evaluated in step S818 meet the evaluation criteria described above (for example, the efficiency criteria described above), the process proceeds to step S822. On the other hand, if it is determined that the search results evaluated in step S818 do not meet the evaluation criteria described above (for example, the efficiency criteria described above), the process returns to step S802 to adjust or re-acquire the query data.
[0093] Next, in step S822, the results management unit 228 determines that the search candidates that meet the evaluation criteria described above are search result data for the query data and sends the query data to the user terminal 260 of the user who set it. Here, the results management unit 228 may output the existing process graph that it determines meets the evaluation criteria and the process table associated with the existing process graph as search result data.
[0094] According to the graph search process 800 of the embodiment of this disclosure described above, it is possible to obtain a process graph corresponding to a process with a high degree of similarity to any process represented in graph format. In the graph search process 800 of the embodiment of this disclosure, in addition to structural similarity based on the configuration of nodes in the graph, a search is performed that takes into account content similarity based on table information stored in tables associated with each node in the graph, thereby providing an existing process graph with higher accuracy as a search result for the process defined in the query.
[0095] Next, with reference to Figure 9, the structural similarity comparison process according to the embodiment of this disclosure will be described.
[0096] Figure 9 shows an example of the flow of the structural similarity comparison process 900 according to the embodiment of this disclosure. The structural similarity comparison process 900 is a process for calculating the structural similarity between a query graph included in query data obtained from a user and each existing process graph included in a set of existing process graphs, and is performed by the structural comparison unit 224 of the graph search device 210 shown in Figure 2.
[0097] As described above, "structural similarity" in this disclosure refers to similarity that takes into account structural features such as the positions of nodes constituting the graph, the connection relationships between nodes, and the paths in the graph. As will be described later, in the structural similarity comparison process 900, the structural similarity between the query graph and the existing process graph is calculated based on natural language information about the nodes constituting each graph.
[0098] First, in step S902, the structure comparison unit 224 uses a predetermined graph analysis method to determine the set of paths present in each existing process graph included in the existing process graph DB620. Here, "path" refers to the route used to move from the starting node to the ending node of an existing process graph. For example, referring to the first existing process graph 422 shown in Figure 4, there are four paths in the existing process graph 422: [A, B, C, D, E, O in that order], [A, B, C, M, E, O in that order], [A, N, C, D, E, O in that order], and [A, N, C, M, E, O in that order]. Here, the structure comparison unit 224 may, for example, use a so-called Hamiltonian algorithm to analyze each existing process graph included in the existing process graph DB620 and determine the set of paths present in each existing process graph.
[0099] Next, in step S904, the structure comparison unit 224 determines, for each existing process graph, a first node name information indicating the node name of each node included in each path determined in step S902. Here, the structure comparison unit 224 may determine the first node name information indicating the node name of each node by using a predetermined natural language processing method. For example, by applying a predetermined natural language processing method to the first existing process graph 422 shown in Figure 4, the first node name information indicating the node name of each node included in each path in the first existing process graph 422 may be determined to be [A, B, C, D, E, O], [A, B, C, M, E, O], [A, N, C, D, E, O], and [A, N, C, M, E, O].
[0100] Next, in step S906, the structure comparison unit 224 determines second node name information indicating the node names of nodes in the query graph included in the query data obtained from the user. Here, the structure comparison unit 224 may determine the second node name information by applying the natural language processing method used in step S904 to the query graph. Also, if the query graph includes multiple paths, the structure comparison unit 224 may, similar to step S902, identify each path in the query graph using the Hamilton algorithm and then determine the second node name information for each identified path. For example, by applying a predetermined natural language processing method to the query graph 412 shown in Figure 4, [X, Y, Z] and [X, P, Z] may be determined as second node name information indicating the node names of each node included in each path in the query graph 412.
[0101] Next, in step S908, the structure comparison unit 224 compares the first node name information determined in step S904 and the second node name information determined in step S906 using a predetermined natural language processing method to calculate the structural similarity between the query graph and each existing process graph included in the set of existing process graphs for each path, and obtains the structural similarity value (probability value) of the query graph to each path in each existing process graph. For example, if the existing process graph contains paths 1, 2, 3, and 4, the structure comparison unit 224 may determine that the structural similarity of the query graph to path 1 is "0.8", the structural similarity of the query graph to path 2 is "0.7", the structural similarity of the query graph to path 3 is "0.6", and the structural similarity of the query graph to path 4 is "0.5".
[0102] Here, any existing natural language processing method may be used to compare the first node name information and the second node name information, and is not particularly limited in this disclosure. The structural similarity value calculated here may be stored, for example, in the graph similarity information DB233.
[0103] Next, in step S910, the structure comparison unit 224 determines from the set of existing process graphs an existing process graph that satisfies a predetermined structural similarity threshold with respect to the query graph as a first search candidate. This predetermined structural similarity threshold is information that specifies the lower limit of the structural similarity threshold with respect to the query graph (for example, 0.8 or higher), and may be set according to the degree of similarity to be sought. In one embodiment, the structure comparison unit 224 may determine an existing process graph having a path that satisfies the similarity threshold with respect to the query graph (for example, the path with the highest similarity to the query graph) as a first search candidate. In one embodiment, the structural comparison unit 224 may calculate an average similarity for each existing process graph using the structural similarity calculated for each path in the existing process graph, and determine existing process graphs whose average similarity satisfies the similarity threshold for the query graph as first search candidates.
[0104] According to the structural similarity comparison process 900 described above, based on natural language information about the nodes constituting the query graph and the existing process graph, an existing process graph with a high structural similarity to the query graph can be identified as a search candidate.
[0105] Next, with reference to Figure 10, the content similarity comparison process according to the embodiment of this disclosure will be described.
[0106] Figure 10 shows an example of the flow of the content similarity comparison process 1000 according to the embodiment of this disclosure. The content similarity comparison process 1000 is a process for calculating the content similarity between a query table included in query data obtained from a user and each existing process table included in a set of existing process tables, and is performed by the content comparison unit 226 of the graph search device 210 shown in Figure 2. As described above, "content similarity" in this disclosure refers to similarity that takes into account the syntactic and semantic characteristics of table information that stores graph-related information in tabular format. As will be described later, in the content similarity comparison process 1000, the structural similarity between the query table and the existing process table is calculated based on the table information stored in each table.
[0107] First, in step S1002, the content comparison unit 226 uses a predetermined natural language processing method to determine, for each existing process table, a first column name information indicating the column names of the columns present in each existing process table included in the existing process table DB630. Here, "column" refers to a column that constitutes an existing process table in tabular form. For example, referring to the process table 531 shown in Figure 6, the first column name information indicating the column names of the process table 531 may be determined to be [X1, Y1, P1, Z1].
[0108] Next, in step S1004, the content comparison unit 226 uses a predetermined natural language processing method to determine second column name information that indicates the column names of the columns present in the query table. Here, the content comparison unit 226 may use the same natural language processing method as in step S1002.
[0109] Next, in step S1006, the content comparison unit 226 calculates the content similarity between the first column name information determined for each existing process table and the second column name information determined for the query table, and obtains a value (probability value) of the content similarity of the query table to each existing process table. Here, any existing means may be used as a natural language processing method for comparing the first column name information and the second column name information, and is not particularly limited in this disclosure. The content similarity value calculated here may be stored in, for example, the graph similarity information DB 233. The natural language processing method used in this process is a method for determining similarity based on syntactic and semantic features of natural language information such as column name information and table information, and is not particularly limited in this disclosure. In this way, it is possible to identify columns with similar names between the query table and each existing process table.
[0110] Next, in step S1008, the content comparison unit 226 determines, based on the content similarity between the first column name information and the second column name information calculated in step S1006, that process graphs associated with existing process tables that satisfy predetermined content similarity criteria are selected from among the existing process tables as second search candidates.
[0111] More specifically, the content comparison unit 226 identifies a set of first columns from each existing process table that satisfies a predetermined content similarity threshold for a specific set of columns included in the query table (referred to as the second set of columns). The content comparison unit 226 then compares the first table information stored in the first set of columns identified from each existing process table with the second table information stored in the second set of columns included in the query table to determine the content similarity between the first table information and the second table information for each existing process table. Subsequently, the content comparison unit 226 may determine from the set of existing process tables that an existing process graph associated with an existing process table containing first table information that satisfies a predetermined content similarity threshold for the second table information is a second search candidate.
[0112] As a result, the content comparison unit 226 can identify an existing process table that contains columns with high content similarity to the columns included in the query table, based on the content similarity comparison in step S1006, and then determine the process graph associated with that existing process table as a second search candidate.
[0113] According to the content similarity comparison process 1000 described above, by comparing the table information stored in the query table and the existing process table, an existing process graph associated with an existing process table that has a high content similarity to the query table can be identified as a search candidate.
[0114] Next, with reference to Figure 11, the query data setting screen according to the embodiment of this disclosure will be described.
[0115] Figure 11 shows an example of a query data setting screen G01 according to an embodiment of this disclosure. The query data setting screen G01 is a user interface screen for setting query data according to an embodiment of this disclosure, and may be provided to the user, for example, via the user terminal 260 shown in Figure 2.
[0116] As shown in Figure 11, the query data setting screen G01 includes a graph ID setting window 1110, a table ID 1120, a node ID setting window 1130, a similarity threshold setting window 1140, a search button 1150, and a cancel button 1160.
[0117] The Graph ID Setting Window 1110 is an input window for specifying the process graph to be used as the query graph in the query data. Users can set the query graph by entering a graph ID that identifies a pre-created graph to be used as the query graph into the Graph ID Setting Window 1110.
[0118] The Table ID Setting Window 1120 is an input window for specifying the process table to be used as the query table in the query data. The user can set the query table by entering a table ID that identifies a pre-created table to be used as the query table (for example, the table ID of the table associated with the query graph set in the Graph ID Setting Window 1110) into the Table ID Setting Window 1120.
[0119] The Node ID Setting Window 1130 is an input window for specifying each node in the query graph specified in the Graph ID Setting Window 1110 and the query table specified in the Table ID Setting Window 1120. Users can configure the nodes that make up the query graph and query table by entering the node IDs that identify each node in the query graph and query table into the Node ID Setting Window 1130.
[0120] The similarity threshold setting window 1140 is an input window for setting the similarity threshold requested by the user. By entering a predetermined similarity value into the similarity threshold setting window 1140, the user can set the similarity threshold used in the structural similarity comparison and content similarity comparison described above.
[0121] The search button 1150 is a button used to perform a graph search on query data according to the conditions set by the user.
[0122] The Cancel button 1160 is used to clear the data entered in the query data setting screen G01 and cancel the graph search.
[0123] Next, with reference to Figure 12, the search result confirmation screen according to the embodiment of this disclosure will be described.
[0124] Figure 12 shows an example of a search result confirmation screen G02 according to an embodiment of this disclosure. The search result confirmation screen G02 is a user interface screen for confirming similarity information and search results according to an embodiment of this disclosure, and may be provided to the user via, for example, the user terminal 260 shown in Figure 2.
[0125] As shown in Figure 12, the search results confirmation screen G02 includes a similarity comparison results table 1210 and a search results data table 1220.
[0126] The similarity comparison result table 1210 is a table that shows search candidates determined by a similarity comparison between predetermined query data and existing information stored in the existing information DB 232. As shown in Figure 12, the similarity comparison result table 1210 may include a graph ID 1211 of the process graph that is a search candidate for the query data, a node ID 1212 that identifies the nodes included in each process graph, a structural similarity 1213 of the process graph to the query graph, a content similarity 1214 of the process table associated with the graph to the query table, and a table ID that identifies the table associated with the process graph.
[0127] The search results data table 1220 is a table that shows information about a specific search candidate (for example, a process graph selected as search results data for query data) from among the search candidates shown in the similarity comparison results table 1210. As shown in Figure 12, the search results data table 1220 may include a graph ID 1221 that identifies the selected graph, a node ID 1222 that identifies each node in the process graph, a table ID 1223 that identifies the process table associated with the process graph, and table information 1224 stored in each column of the process table.
[0128] As described above, one aspect of the graph search means according to the embodiments of this disclosure relates to the structure of a process graph and a similarity comparison that takes into account the table information stored in a table associated with the process graph. More specifically, by identifying the node name information of nodes included in a process graph and comparing the node name information of different process graphs using natural language processing techniques, it is possible to identify existing process graphs with similar structures that contain nodes similar to a given process graph (e.g., a query graph). Furthermore, by comparing table information stored in process tables associated with different process graphs using natural language processing techniques, it is possible to identify existing process tables with similar content that store information similar to a given process table (e.g., a query table), and the process graphs associated with those existing process tables.
[0129] In this way, by performing graph searches based on multiple perspectives, including structural similarity and content similarity, reliable search results can be provided even when complex graphs are used that are associated with various information related to the manufacturing process of a product. For example, according to the graph search means of the embodiment of this disclosure, it is possible to provide search results that include process graphs that do not contain similar nodes (i.e., are not structurally similar) but have similar content.
[0130] As described above, the graph search means according to the embodiments of this disclosure includes the following aspects.
[0131] (Aspect 1) A graph search device, It comprises a processor, memory, and storage unit. The aforementioned storage unit is Includes an existing information database that stores existing information, which includes a set of existing process graphs that show the flow of a process in graph format, and a set of existing process tables that are associated with the set of existing process graphs and store information about the set of existing process graphs in tabular format. The aforementioned memory is A query data management unit that retrieves query data, including query graphs and query tables, which are search queries for the aforementioned existing information, A structural comparison unit calculates the structural similarity between the query graph included in the query data and the set of existing process graphs by comparing them, and determines from the set of existing process graphs an existing process graph that satisfies a predetermined structural similarity threshold to the query graph as a first search candidate. A content comparison unit calculates the content similarity between the query graph and the set of existing process tables by comparing the query table and the set of existing process tables included in the query data, and determines from the set of existing process tables an existing process graph associated with an existing process table that satisfies a predetermined content similarity threshold for the query table as a second search candidate. Based on predetermined comprehensive evaluation criteria, the results management unit determines and outputs the search result data for the query data from among the first and second search candidates. A graph search device characterized by including processing instructions for causing the processor to function as such.
[0132] (Aspect 2) The aforementioned structural comparison section is By analyzing the set of existing process graphs using a predetermined graph analysis method, the set of paths present in each existing process graph included in the set of existing process graphs is determined. By using a predetermined natural language processing method, for each path included in the set of paths that have been determined, first node name information indicating the node name of each node included in that path is determined for each existing process graph, By using a predetermined natural language processing method, a second node name information indicating the node name of each node included in the query graph is determined, By comparing the first node name information and the second node name information determined for each existing process graph using a predetermined natural language processing method, the structural similarity between the query graph and the set of existing process graphs is calculated, and from the set of existing process graphs, an existing process graph that satisfies a predetermined structural similarity threshold with respect to the query graph is determined as the first search candidate. A graph search device according to embodiment 1, characterized in that...
[0133] (Aspect 3) The aforementioned content comparison unit is, By using a predetermined natural language processing method, first column name information indicating the column names of columns present in each existing process table included in the set of existing process tables is determined for each existing process table, By using a predetermined natural language processing method, a second column name information indicating the column names of the columns included in the query table is determined, By comparing the first column name information and the second column name information determined for each existing process table using a predetermined natural language processing method, the content similarity between the first column name information and the second column name information is calculated, and from each existing process table, a set of first columns that satisfies a predetermined content similarity threshold for the set of second columns included in the query table is identified. By comparing the first table information stored in the set of first columns identified from each existing process table with the second table information stored in the set of second columns included in the query table, the content similarity between the first table information and the second table information is determined for each existing process table, and from the set of existing process tables, an existing process graph associated with an existing process table containing the first table information that satisfies a predetermined content similarity threshold for the second table information is determined as a second search candidate. A graph search device according to embodiment 1 or 2, characterized by the above.
[0134] (Aspect 4) The aforementioned results management unit, The structural similarity calculated for the first search candidate and the content similarity calculated for the second search candidate are compared, and the search candidates that satisfy the overall evaluation criteria are determined to be the search result data. A graph search device according to any one of embodiments 1 to 3, characterized by the above.
[0135] (Aspect 5) The aforementioned results management unit, Of the first and second search candidates, the search candidate that satisfies predetermined efficiency criteria regarding time, cost, or quality is determined to be the search result data. A graph search device according to any one of embodiments 1 to 4, characterized by the above.
[0136] (Aspect 6) The aforementioned results management unit, The following are displayed as result data on the user interface screen: a graph ID that identifies a specific existing process graph that is a search candidate satisfying the aforementioned overall evaluation criteria; a table ID that identifies an existing process table associated with the specific existing process graph; a node ID that identifies a node included in the specific existing process graph; the structural similarity calculated for the specific existing process graph; and the content similarity calculated for the specific existing process graph. A graph search device according to any one of embodiments 1 to 5, characterized by the above.
[0137] Although embodiments of the present invention have been described above, the present invention is not limited to the embodiments described above, and various modifications are possible without departing from the spirit of the present invention. [Explanation of Symbols]
[0138] 150 Graph Search Applications 200 Graph Search System 210 Graph Search Device 220 memory 222 Query Data Management Department 224 Structure comparison section 226 Content comparison section 228 Results Management Department 230 Storage section 231 Process DB 232 Existing Information Database 233 Graph Similarity Information Database 234 Search Results Database 244 processors 246 Input / output section 250 Communication Networks 260 user terminals
Claims
1. A graph search device, It comprises a processor, memory, and storage unit, The aforementioned storage unit is Includes an existing information database that stores existing information, which includes a set of existing process graphs that show the flow of a process in graph format, and a set of existing process tables that are associated with the set of existing process graphs and store information about the set of existing process graphs in tabular format. The aforementioned memory is A query data management unit that retrieves query data, including query graphs and query tables, which are search queries for the aforementioned existing information, A structural comparison unit calculates the structural similarity between the query graph included in the query data and the set of existing process graphs by comparing them, and determines from the set of existing process graphs an existing process graph that satisfies a predetermined structural similarity threshold to the query graph as a first search candidate. A content comparison unit calculates the content similarity between the query graph and the set of existing process tables by comparing the query table and the set of existing process tables included in the query data, and determines from the set of existing process tables an existing process graph associated with an existing process table that satisfies a predetermined content similarity threshold to the query table as a second search candidate. Based on predetermined comprehensive evaluation criteria, the results management unit determines and outputs the search result data for the query data from among the first and second search candidates. A graph search device characterized by including processing instructions for causing the processor to function as such.
2. The aforementioned structural comparison section is By analyzing the set of existing process graphs using a predetermined graph analysis method, the set of paths present in each existing process graph included in the set of existing process graphs is determined. By using a predetermined natural language processing method, for each path included in the set of paths that have been determined, first node name information indicating the node name of each node included in that path is determined for each existing process graph, By using a predetermined natural language processing method, a second node name information indicating the node name of each node included in the query graph is determined, By comparing the first node name information and the second node name information determined for each existing process graph using a predetermined natural language processing method, the structural similarity between the query graph and the set of existing process graphs is calculated, and from the set of existing process graphs, an existing process graph that satisfies a predetermined structural similarity threshold with respect to the query graph is determined as the first search candidate. The graph search device according to claim 1, characterized in that
3. The aforementioned content comparison unit is, By using a predetermined natural language processing method, a first column name information indicating the column names of columns present in each existing process table included in the set of existing process tables is determined for each existing process table, By using a predetermined natural language processing method, a second column name information indicating the column names of the columns included in the query table is determined, By comparing the first column name information and the second column name information determined for each existing process table using a predetermined natural language processing method, the content similarity between the first column name information and the second column name information is calculated, and from each existing process table, a set of first columns that satisfies a predetermined content similarity threshold for the set of second columns included in the query table is identified. By comparing the first table information stored in the set of first columns identified from each existing process table with the second table information stored in the set of second columns included in the query table, the content similarity between the first table information and the second table information is determined for each existing process table, and an existing process graph associated with an existing process table containing the first table information that satisfies a predetermined content similarity threshold for the second table information is determined as the second search candidate from the set of existing process tables. The graph search device according to claim 1, characterized in that
4. The aforementioned results management unit, The structural similarity calculated for the first search candidate and the content similarity calculated for the second search candidate are compared, and the search candidates that satisfy the overall evaluation criteria are determined to be the search result data. The graph search device according to claim 1, characterized in that
5. The aforementioned results management unit, Of the first and second search candidates, the search candidate that satisfies predetermined efficiency criteria regarding time, cost, or quality is determined to be the search result data. The graph search device according to claim 1, characterized in that
6. The aforementioned results management unit, The user interface screen displays the following as search result data: a graph ID that identifies a specific existing process graph that is a search candidate satisfying the aforementioned overall evaluation criteria; a table ID that identifies an existing process table associated with the specific existing process graph; a node ID that identifies a node included in the specific existing process graph; the structural similarity calculated for the specific existing process graph; and the content similarity calculated for the specific existing process graph. The graph search device according to claim 1, characterized in that
7. A graph search device that performs graph searches, In a graph search system connected to a user terminal via a communication network, The aforementioned graph search device is It comprises a processor, memory, and storage unit, The aforementioned storage unit is Includes an existing information database that stores existing information, which includes a set of existing process graphs that show the flow of a process in graph format, and a set of existing process tables that are associated with the set of existing process graphs and store information about the set of existing process graphs in tabular format. The aforementioned memory is A query data management unit that obtains query data, including a query graph and a query table, from the user terminal, which is a search query for the aforementioned existing information. A structural comparison unit calculates the structural similarity between the query graph included in the query data and the set of existing process graphs by comparing them, and determines from the set of existing process graphs an existing process graph that satisfies a predetermined structural similarity threshold to the query graph as a first search candidate. A content comparison unit calculates the content similarity between the query graph and the set of existing process tables by comparing the query table and the set of existing process tables included in the query data, and determines from the set of existing process tables an existing process graph associated with an existing process table that satisfies a predetermined content similarity threshold to the query table as a second search candidate. Based on predetermined comprehensive evaluation criteria, the results management unit determines the search result data for the query data from among the first and second search candidates and transmits it to the user terminal. A graph search system characterized by including processing instructions for causing the processor to function as described above.
8. A computer system including a memory for storing processing instructions and a processor, wherein the processing instructions stored in the memory are: A step of configuring an existing information database that stores existing information, which includes a set of existing process graphs that show the flow of a process in graph format, and a set of existing process tables that are associated with the set of existing process graphs and store information about the set of existing process graphs in tabular format. The process involves obtaining query data, which includes a query graph and a query table, that is a search query for the aforementioned existing information. The steps include: analyzing the set of existing process graphs using a predetermined graph analysis method to determine the set of paths present in each existing process graph included in the set of existing process graphs; The process involves determining, for each existing process graph, a first node name information indicating the node name of each node included in the determined set of paths, using a predetermined natural language processing method, A step of determining second node name information that indicates the node name of each node included in the query graph by using a predetermined natural language processing method, The process involves comparing the first node name information and the second node name information determined for each existing process graph using a predetermined natural language processing method to calculate the structural similarity between the query graph and the set of existing process graphs, and determining from the set of existing process graphs that satisfy a predetermined structural similarity threshold with respect to the query graph as a first search candidate. A step of determining, for each existing process table, a first column name information indicating the column name of a column present in each existing process table included in the set of existing process tables by using a predetermined natural language processing method, A step of determining second column name information that indicates the column names of the columns included in the query table by using a predetermined natural language processing method, The process involves comparing the first column name information determined for each existing process table with the second column name information using a predetermined natural language processing method to calculate the content similarity between the first column name information and the second column name information, and identifying from each existing process table a set of first columns that satisfies a predetermined content similarity threshold for the set of second columns included in the query table. The process involves comparing the first table information stored in the set of first columns identified from each existing process table with the second table information stored in the set of second columns included in the query table to determine the content similarity between the first table information and the second table information for each existing process table, and then determining from the set of existing process tables an existing process graph associated with an existing process table containing the first table information that satisfies a predetermined content similarity threshold for the second table information as a second search candidate. A step of determining and outputting search result data for the query data from among the first and second search candidates based on predetermined comprehensive evaluation criteria, A graph search method characterized by causing the processor to execute the above.
Citation Information
Patent Citations
Business process creation method, business process creation device and business process creation program
JP2008310566A
Business process model comparison method, and device and program thereof
JP2009245117A
Device for evaluating similarity between business task processes, and method thereof
JP2010176288A
ETL workflow recommendation device, ETL workflow recommendation method and ETL workflow recommendation system
JP2022065502A
Executing graph path queries
US10176220B2