Apparatus for automating plant construction and method of controlling the apparatus

The plant construction automation device uses a transformer model with attention algorithms to optimize component placement in a virtual space, addressing interrelationship challenges and enhancing productivity.

KR103044806B1Active Publication Date: 2026-11-05김대섭
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
KR1020240112249
Authority / Receiving Office
KR · KR
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-08-21
Publication Date
2026-11-05
Estimated Expiration
2044-08-21

AI Technical Summary

Technical Problem

Existing plant construction methods face challenges in efficiently arranging components due to their interrelationships, volume, and weight, requiring manual placement that does not consider comprehensive connection relationships, leading to suboptimal productivity.

Method used

A plant construction automation device using a transformer model with attention algorithms to automatically place components in a virtual space, considering connections within and across procedures, by generating attention variables and tensors to determine optimal placement locations.

Benefits of technology

Automatically arranges plant components with optimal efficiency by comprehensively considering connection relationships, enhancing productivity and efficiency in plant construction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 112024091395568-PAT00002_ABST
    Figure 112024091395568-PAT00002_ABST
Patent Text Reader

Abstract

An automated plant construction device according to an embodiment of the present invention comprises: an input unit that receives information of a three-dimensional space where components of a plant are to be placed, information of loops, and unique information of entities of each loop; a grid setting unit that converts the three-dimensional space where the plant is to be placed into a grid and assigns unique information to each grid cell on the grid; an input tensor generation unit that generates a matrix based on the unique information of entities of each loop and the statistical probability of existence of entities of each loop in each grid cell on the grid, and generates a tensor for attention calculation based on the generated matrix and the number of entities of each loop; a memory in which previously learned attention weights are stored; an attention unit that calculates attention variables of each loop based on the input tensor of each loop and the attention weights of each loop, performs attention calculation based on the attention variable query (Q) value and key (K) value calculated in relation to the result value of the preceding loop, and the attention variable result (V) value calculated from the current loop, and calculates an entity placement result; and the entity It is characterized by including a control unit that detects the grid with the highest probability of existence of each entity from the placement result and determines the placement location of a plant component corresponding to each entity within the three-dimensional space.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The present invention relates to a plant construction automation device that automatically places each component constituting a plant in the appropriate place. Background Technology

[0002] In a plant, interconnected components must be organically linked, and the plant's production efficiency can vary depending on how these components are connected. Furthermore, since there are components that cannot be placed adjacent to each other due to their interrelationships, the arrangement of plant components can be one of the most critical issues in plant construction.

[0003] However, since these components often have significant volume and weight, there is a problem in that it is difficult to change their location once they are placed within the plant space. Furthermore, as there are components that can be placed after the preceding components have been determined, research has been conducted to find a more efficient placement structure before placing the components.

[0004] As part of this research, construction simulations have emerged that pre-arrange plant components using computer systems. These construction simulations have the advantage of allowing the most efficient component layout structure to be obtained at a low cost by changing the location of each plant component and calculating efficiency for each layout.

[0005] However, even if efficiency can be verified by virtually arbitrarily placing each component of the plant through such construction simulation, there is a problem that the user of the construction simulation must place each component of the plant individually. In other words, while the construction simulation can only virtually place the components of the plant, there is a problem that the actual placement must rely on the user's personal experience or knowledge.

[0006] Furthermore, in the case of a plant, there are preceding and succeeding procedures, and components deployed in succeeding procedures may be influenced by components deployed in preceding procedures. For example, pipes and power lines connecting individual components may be placed according to the correlation between the components after the components according to the plant's production process have been deployed. In this case, the placement of the pipes and power lines may be determined based on the location or order in which the components according to the production process are deployed. Moreover, the productivity of the plant may vary not only depending on the placement of components according to the production process but also on the placement location, order, or form of the pipes and power lines.

[0007] Accordingly, in order to arrange the components of a plant, the connection relationships between any one component and other components connected to it must be comprehensively considered. However, it is practically difficult for a person to arrange optimized components by considering all these connection relationships between components. Consequently, research on plant construction automation, which automatically arranges each component of a plant within a virtual space by reflecting the connection relationships with other components connected within the same procedure or with other components connected in different procedures, is currently being actively conducted. The problem to be solved

[0008] The present invention aims to solve the aforementioned problems and other problems by providing a plant construction automation device and a control method thereof that can automatically place each component of a plant in a virtual plant space by reflecting the connection relationships with other components connected within the same procedure or with other components connected within a different procedure.

[0009] Furthermore, the present invention provides a plant construction automation device and a control method thereof that can automatically place each component of a plant in a virtual plant space using an attention algorithm that analyzes the connection relationships between tokens distinguished by words within a sentence to reflect the connection relationships with other components connected within the same procedure or other components connected within a different procedure. means of solving the problem

[0010] According to one aspect of the present invention for achieving the above or other purposes, a plant construction automation device according to an embodiment of the present invention comprises: an input unit receiving information of a three-dimensional space in which components of a plant are to be placed, information of loops which are procedures according to a preset order for plant construction, and unique information of entities which are components of the plant to be placed in each loop; a grid setting unit that converts the three-dimensional space in which the plant is to be placed into a grid which is a three-dimensional grid-type phase space formed by a plurality of three-dimensional grids, and assigns unique information to each grid on the grid; an input tensor generation unit that, for each loop, generates a grid-entity matrix based on the unique information of entities of each loop and the statistical probability of existence for each grid in which entities of each loop exist in each grid, and generates an input tensor which is a three-dimensional numerical array for attention operations of a transformer model corresponding to each loop based on the grid-entity matrix and the number of entities of each loop; and, corresponding to each loop and learned from a plurality of prior plant construction cases, A memory storing attention weights for calculating attention variables; an attention unit that calculates attention variables corresponding to each loop based on an input tensor generated for each loop and an attention weight corresponding to each loop, and performs attention operations based on an attention variable query (Q) value and a key (K) value calculated in relation to the result of a preceding loop in which an attention operation was performed prior to the current loop in which the attention operation is performed, and an attention variable result (V) value calculated from the current loop, thereby producing an entity placement result of the current loop reflecting the entity placement result of the preceding loop; and an input tensor generation unit that controls the input tensor generation unit to generate the grid-entity matrix for each loop by calculating the statistical probability of existence of each entity for each grid on the grid from multiple preceding plant construction cases for each entity of each loop.It is characterized by including a control unit that determines the placement location of a plant component corresponding to each entity within the three-dimensional space by detecting the grid with the highest probability of existence of each entity from the entity placement result of the current loop, which reflects the entity placement result of the preceding loop.

[0011] In one embodiment, the control unit generates a combined tensor by combining the attention results of each preceding loop when there are multiple preceding loops of the current loop in which the attention operation is performed, and the attention variable query (Q) value and key (K) value calculated in relation to the result value of the preceding loop are the attention variable query (Q) value and key (K) value for the combined tensor, which are formed based on the attention weights learned for the combined tensor and the combined tensor.

[0012] In one embodiment, the combined tensor is a combination of tensors produced as attention results of each preceding loop, and is characterized in that a grid-entity matrix is ​​formed by overlapping the unique information of entities produced as attention results of each preceding loop and the statistical probability of existence of each entity of each preceding loop in each grid on the grid, with the total number of entities of the combined preceding loops.

[0013] In one embodiment, the attention operation is characterized by being composed of a query transpose matrix calculated for an attention variable query (Q) value calculated by the input tensor of the preceding loop and the attention query (Q) weight, a softmax function result of the matrix product of an attention variable key (K) value calculated by the input tensor of the preceding loop and the attention key (K) weight, and an attention variable result (V) value calculated by the input tensor of the current loop and the attention result (V) weight.

[0014] In one embodiment, the attention operation is characterized by being composed of a query transpose matrix calculated for an attention variable query (Q) value calculated by the input tensor of the current loop and the attention query (Q) weights when there is no preceding loop, a result of a softmax function on the matrix product of an attention variable key (K) value calculated by the input tensor of the current loop and the attention key (K) weights, and a matrix product of an attention variable result (V) value calculated by the input tensor of the current loop and the attention result (V) weights.

[0015] In one embodiment, the input tensor of each loop is formed by overlapping a grid-entity matrix, in which the unique information of the entity for each loop is the first axis and the probability of existence for each entity on each grid cell is the second axis, as many times as the number of entities, and is characterized by having a three-dimensional size according to the number of entities in each loop, an embedding size according to the unique information of the entities, and the number of grid cells.

[0016] In one embodiment, the unique information of the entity is information in which codes representing different attributes of each entity are merged, and the embedding size is characterized by having a size according to the number of each code merged in the unique information of the entity.

[0017] In one embodiment, the control unit is characterized by including a control unit that, when an attention operation is performed based on an attention variable query (Q) value and a key (K) value related to the result value of the preceding loop and an attention variable result (V) value calculated from the current loop, performs a self-attention operation to input the attention result back into the attention unit as the input tensor a predetermined number of times, and outputs the self-attention result repeated a predetermined number of times as the final entity placement result of the current loop that reflects the entity placement result of the preceding loop.

[0018] In one embodiment, the control unit is characterized by combining a tensor calculated according to the attention result and a combined tensor of the tensors calculated as attention results of each preceding loop when the attention operation for the final loop according to a preset order for plant construction is completed, and performing normalization on the combined final result tensor using a preset normalization weight tensor.

[0019] In one embodiment, the plant construction automation device further comprises an artificial intelligence unit that learns attention weights for calculating attention variables for each loop for plant construction based on statistical probabilities of each loop entity existing in each grid on the grid from a plurality of preceding plant construction cases, and learns attention weights for calculating attention variables for each combined tensor in which the results of the preceding loops of each loop are combined.

[0020] In one embodiment, the loops are composed of a first loop in which the attention operation is performed first, a second loop in which the attention operation is performed following the first loop, and a third loop in which the attention operation is performed following the second loop, wherein the first loop is a process loop in which production equipment according to the production process of the plant is arranged in the three-dimensional space, the second loop is a power loop in which power devices for supplying power to entities according to the process loop are arranged, and the third loop is a structure loop in which structures for forming a structure in which each component of the plant is supported and connected are arranged.

[0021] According to one aspect of the present invention for achieving the above or other purposes, a control method for a plant construction automation device according to an embodiment of the present invention comprises: receiving information of a three-dimensional space in which components of a plant are to be placed, information of loops which are procedures according to a preset sequence for plant construction, and unique information of entities which are components of the plant to be placed in each loop; converting the three-dimensional space in which the plant is to be placed into a grid which is a three-dimensional grid-type phase space formed by a plurality of three-dimensional grids, and assigning unique information to each grid on the grid; for each entity of each loop for each loop, calculating a statistical probability of existence for each entity in each grid on the grid from a plurality of prior plant construction cases; for a first loop among the loops, generating a grid-entity matrix based on the unique information of the entities of the first loop and the statistical probability of existence for each grid in which the entities of each loop exist in each grid on the grid, and based on the grid-entity matrix and the number of entities of each loop, a method corresponding to the first loop A step of generating an input tensor, which is a three-dimensional numerical array for an attention operation of a transformer model; a step of calculating attention variables corresponding to the first loop based on the input tensor of the first loop and attention weights previously learned for the first loop; a step of determining whether there is a preceding loop for which an attention operation has been performed prior to the current loop in which the attention operation is being performed; if there is no preceding loop, performing an attention operation based on the attention variable query (Q) value and key (K) value of the current loop and the attention variable result (V) value calculated from the current loop, and if there is a preceding loop, performing an attention operation based on the attention variable query (Q) value and key (K) value calculated in relation to the result value of the preceding loop and the attention variable result (V) value calculated from the current loop; and for the next loop among the loops,The method is characterized by comprising the steps of: repeating the steps of generating the input tensor, calculating the attention variables, determining whether there is a preceding loop, and performing the attention operation; and, when the attention operation for the final loop among the loops is completed, detecting the grid with the highest probability of existence for each entity of each loop from a combined tensor formed by combining the tensor calculated according to the attention result of the final loop and the tensors calculated according to the attention result of each preceding loop, and determining the placement location of the plant component corresponding to each entity within the three-dimensional space.

[0022] In one embodiment, the step of performing the attention operation further includes the step of performing a self-attention operation a predetermined number of times by inputting the result of the attention operation into the input tensor and performing the attention operation again. The self-attention operation is characterized in that, when there is no preceding loop, the attention result according to the attention variable query (Q) value and key (K) value of the current loop and the attention variable result (V) value is input into the input tensor to recalculate the attention variables and perform the attention operation again based on the recalculated attention variables, and when there is a preceding loop, the attention result according to the attention variable query (Q) value and key (K) value related to the result value of the preceding loop and the attention result according to the attention variable result (V) value calculated from the current loop is input into the input tensor to recalculate the attention variables and perform the attention operation again based on the recalculated attention variables.

[0023] In one embodiment, the attention operation comprises, when there is no preceding loop, the result of a softmax function on the matrix product of a query transpose matrix calculated for an attention variable query (Q) value calculated by the input tensor of the current loop and the attention query (Q) weights, a key transpose matrix calculated for an attention variable key (K) value calculated by the input tensor of the current loop and the attention key (K) weights, and a matrix product of an attention variable result (V) value calculated by the input tensor of the current loop and the attention result (V) weights; and when there is a preceding loop, a softmax function on the matrix product of a query transpose matrix calculated for an attention variable query (Q) value calculated by the input tensor of the preceding loop and the attention query (Q) weights, and a key transpose matrix calculated for an attention variable key (K) value calculated by the input tensor of the preceding loop and the attention key (K) weights. It is characterized by being composed of the result of the function and the matrix product of the attention variable result (V) value calculated by the input tensor of the current loop and the attention result (V) weight.

[0024] In one embodiment, the step of determining whether there is a leading loop further comprises: determining whether there are multiple leading loops when there is a leading loop; when there are multiple leading loops, combining the attention results of each leading loop to generate a leading combined tensor; and calculating attention variable query (Q) values ​​and key (K) values ​​for the leading combined tensor, which are formed based on the attention weights learned for the leading combined tensor and the leading combined tensor. Effects of the invention

[0025] According to at least one of the embodiments of the present invention, the present invention has the effect of automatically arranging each component of a plant within a virtual plant space by comprehensively considering the connection relationships with other components connected within the same procedure or with other components connected within a different procedure.

[0026] In addition, according to at least one embodiment of the present invention, the present invention has the effect of determining the placement location of each component by considering the relationship between other components in the same procedure as well as components placed in different procedures through a self-attention algorithm and an encoding-decoding attention algorithm, thereby enabling the placement of each component at a location that has optimal efficiency not only in a specific procedure but also for all of multiple different procedures that are related to each other. Brief explanation of the drawing

[0027] FIG. 1 is a block diagram illustrating the configuration of a plant construction automation device according to an embodiment of the present invention. FIG. 2 is a conceptual diagram illustrating the process of a transformer model determining the placement location of each entity in a plant construction automation device according to an embodiment of the present invention. FIG. 3a is a flowchart illustrating the operation process of calculating a virtual plant model including the optimal placement location of each entity through attention calculation in a plant construction automation device according to an embodiment of the present invention. FIG. 3b illustrates an example of a grid, which is a three-dimensional grid-type phase space formed according to an embodiment of the present invention. Figure 4 is a flowchart illustrating the process of determining the placement locations of entities in the first loop, that is, the process loop, which is the first procedure among the pre-set placement procedures for building the plant in the operation process of Figure 3a, through attention operations. FIG. 5 is an illustrative diagram showing an example of a grid existence probability-entity unique information matrix according to an embodiment of the present invention. FIG. 6 is a conceptual diagram illustrating an example of an input tensor of a process loop according to an embodiment of the present invention. Figure 7 is a conceptual diagram illustrating an example of attention variables calculated according to the input tensor of Figure 6 and the previously learned weight tensors. Figure 8 is a conceptual diagram showing the dimensions of attention variables calculated according to the weight tensors. Figure 9 is a conceptual diagram showing the dimension size of the process sequence tensor produced as a result of the process loop according to the operation process of Figure 4. FIG. 10 is a flowchart illustrating the process of determining the placement locations of power loop entities through attention operations among the pre-set placement procedures for plant construction in the operation process of FIG. 3a. FIG. 11 is a conceptual diagram illustrating an example of an input tensor of the power loop generated according to the operation process of FIG. 10. Figure 12 is a conceptual diagram illustrating an encoding-decoding attention operation that calculates a power sequence tensor based on attention variables calculated in the process loop and attention variables calculated in the power loop. FIGS. 13 and 14 are flowcharts illustrating the operation process of generating a process-power sequence tensor by combining the process sequence tensor and the power sequence tensor, and conceptual diagrams showing the dimension size of each tensor generating the process-power sequence tensor. FIG. 15 is a flowchart illustrating the process of determining the placement locations of entities of a structural loop through attention operations among the pre-set placement procedures for building a plant during the operation process of FIG. 3a. FIG. 16 is a conceptual diagram showing the dimension size of the structure sequence tensor calculated from the structure loop, the process-power sequence tensor, and the process-power-structure sequence tensor calculated according to the structure sequence tensor and the process-power sequence tensor. Figure 17 is a conceptual diagram showing the dimensionality of the process-power-structure tensor normalized through normalization weights. Specific details for implementing the invention

[0028] It should be noted that technical terms used in this specification are used merely to describe specific embodiments and are not intended to limit the invention. Additionally, singular expressions used in this specification include plural expressions unless the context clearly indicates otherwise. The suffixes "module" and "part" for components used in the following description are assigned or used interchangeably solely for the ease of drafting the specification and do not inherently possess distinct meanings or roles.

[0029] In this specification, terms such as "composed of" or "comprising" should not be interpreted as necessarily including all of the various components or steps described in the specification, and should be interpreted as potentially excluding some of the components or steps, or including additional components or steps.

[0030] In addition, when describing the technology disclosed in this specification, if it is determined that a detailed description of related prior art could obscure the essence of the technology disclosed in this specification, such detailed description is omitted.

[0031] In addition, the attached drawings are intended only to facilitate understanding of the embodiments disclosed in this specification, and the technical concept disclosed in this specification is not limited by the attached drawings; it should be understood that they include all modifications, equivalents, and substitutions that fall within the concept and technical scope of the present invention. Furthermore, not only each of the embodiments described below, but also combinations of embodiments may fall within the concept and technical scope of the present invention as modifications, equivalents, and substitutions that fall within the concept and technical scope of the present invention.

[0032] Hereinafter, embodiments disclosed in this specification will be described in detail with reference to the attached drawings.

[0033] First, to explain the gist of the present invention, the present invention enables the determination of the optimal positions of each component of a plant using a deep learning model, specifically a transformer model. A transformer model is a neural network model that learns context and meaning by tracking relationships within sequential data, such as words in a sentence; it is an artificial intelligence model that primarily captures the relationships between words in a sentence and understands the meaning of the sentence. As described above, such a transformer model can be used to analyze the relationships between input words according to a pre-set order, analyze the meanings accordingly, and estimate a sentence composed of the most suitable words based on the analyzed meanings. Here, when the pre-set order is used as a procedure for arranging each component of the plant and the words are used as the components of the plant to be arranged within each procedure, the analyzed meaning of each of the words can correspond to the association between the components of the plant, and the sentence composed of suitable words output as the result of the transformer model can correspond to an arrangement structure in which each component in each sequentially performed procedure is appropriately arranged according to their mutual associations.

[0034] In order to determine the placement locations of plant components using such a transformer model, the present invention converts the locations of each plant component calculated in a preceding procedure into locations in a plant virtual space according to a subsequent procedure using the encoding-decoding operation of the transformer model, and determines the locations of the components according to the subsequent procedure based on the converted locations of the components in the preceding procedure, thereby enabling the determination of locations that consider the interrelationships between the plant components according to each procedure.

[0035] However, the Transformer model is a seq2seq deep learning model that transforms one sequence into another, and it is a model frequently used in the field of Natural Language Processing (NLP), such as machine translation, question answering, and text summarization. Furthermore, while the Transformer model follows the encoder-decoder structure of the aforementioned seq2seq model, it can be a model implemented using only attention operations without using a Recurrent Neural Network (RNN).

[0036] Meanwhile, in natural language processing, the aforementioned attention operation refers to the entire input sentence from the encoder at every time step when the decoder predicts an output word, and focuses attention on the parts of the input words associated with the word to be predicted at that time. To detect such related words, that is, the association between words, the attention operation divides the sentence into multiple components, assigns an index corresponding to the position value to each divided component (e.g., word), or token, and performs a token embedding process that converts the index corresponding to each token into a vector, which is a numeric matrix. Then, the data types of the attention model for the above vector values—namely, the attention variables such as the Query value (Q), Key value (K), and Value value (V)—are calculated, and an operation based on the attention function (hereinafter referred to as the attention operation) is performed on the calculated attention variables to produce a vector corresponding to the result.

[0037] As such, the Transformer model involves an attention operation, and a token embedding process is required to vectorize each token of the input sentence for the attention operation. Accordingly, the present invention can form a virtual space in which each component of a plant is to be placed as a three-dimensional grid-type phase space (hereinafter referred to as the grid). In this case, each grid within the grid may have a unique number, and the unique number may correspond to an index on the token embedding.

[0038] Meanwhile, grids each having a unique number that form a virtual space in which the aforementioned virtual plant components are to be placed may be locations where the plant components can be placed. In this case, the unique number of each grid serves as the location value of that grid, and the difference between the unique number of a specific grid and the unique number of another grid may represent the relative distance based on the association between the grids.

[0039] In this way, by forming a virtual space in which plant components can be placed as a three-dimensional grid-type topological space, the position values ​​of the components placed in each grid can form a tensor that is a three-dimensional array at the placement location. Then, for the three-dimensional array tensor, attention variables that are data types of the attention model, namely the query (Q) value, the key (K) value, and the result (V) value, are calculated, and by performing attention operations on the calculated attention variables, self-attention and encoding-decoding attention can be achieved.

[0040] FIG. 1 is a block diagram illustrating the configuration of a plant construction automation device (10) according to an embodiment of the present invention.

[0041] Referring to FIG. 1, a plant construction automation device (10) according to an embodiment of the present invention may be configured to include a control unit (100), a grid setting unit (110) connected to the control unit (100) and controlled by the control unit (100), an input tensor generation unit (120), an attention unit (130), a memory (140), an artificial intelligence unit (150), an input unit (170), and an output unit (160).

[0042] First, the input unit (170) can receive user input for operating the plant construction automation device (10). Here, the user input may include information about the actual area where the plant components are to be placed.

[0043] In addition, the user input may include information regarding the components of each procedure for plant construction. Here, each procedure is a procedure performed sequentially for plant construction, and different plant components may be arranged for each procedure. Accordingly, information regarding different plant components for each procedure may be entered as user input.

[0044] Meanwhile, the transformer model performs an attention operation, and the attention operation may include a self-attention operation that converts its own output into an input and performs the attention operation again. Meanwhile, the plant construction automation device (10) according to an embodiment of the present invention performs self-attention multiple times for each procedure for plant construction, so the attention operation for each procedure for plant construction can form a loop in which the output value is input again as an input value. Accordingly, in the following description, each procedure performed sequentially for plant construction will be named as a loop according to each procedure so that it can be distinguished according to the attention operation that constitutes the loop.

[0045] In addition, in the following description, each component of a plant placed within a virtual plant space may refer to an entity placed within the virtual plant space. Accordingly, in the following description, each component of a plant that can be placed within the virtual plant space will be referred to as an entity.

[0046] Here, the information of entities input by the user can determine hyperparameters that determine the dimension size of a 3-dimensional matrix, i.e., a tensor, based on the input or output of the transformer model.

[0047] For example, the number of grids (Lg) constituting a 3D grid-type phase space, which is a virtual space where the above-mentioned plant components can be placed, the entity embedding size (Ld) representing the number of digits of unique information assigned to each entity according to the constraints and attributes of each entity, and the sequence size (Ls) per loop representing the number of entities per loop can be determined. These hyperparameters can determine the dimension size of the tensor that is input or output to the attention operation of the above-mentioned transformer model.

[0048] Meanwhile, the entities placed in the virtual space may differ for each loop. For example, if the plant is a chemical plant that produces a specific substance, the tasks to be performed in sequence according to the production process for producing the specific substance may be determined. In this case, production equipment, etc., for performing each task may be the plant components, i.e., entities, corresponding to each task. Accordingly, the production equipment that can be placed in the virtual plant space according to the production process, i.e., the process loop, may be determined as the entities corresponding to the process loop.

[0049] Meanwhile, when entities according to the above process loop are placed, power devices for supplying power to each entity on the process loop may be placed. In this case, the placement procedure for placing the power devices can be distinguished from the process loop as it can be performed after the entities according to the above process loop are placed. Hereinafter, the procedure for placing power devices to supply power to entities according to the above process loop will be referred to as the power loop. And the power devices that can be placed on the power loop may be determined as the entities according to the power loop.

[0050] And when entities are placed according to the power loop, structures to form a structure that supports and connects each entity, such as structures to support each entity and pipes for organic connection between each entity, may be placed. To distinguish the procedure of placing such structures from the process loop and power loop, it shall be called a structure loop. And the structures that can be placed on the structure loop may be determined as entities according to the structure loop.

[0051] Meanwhile, for the sake of convenience of explanation, the following description assumes that the process loop, power loop, and structural loop are formed sequentially to arrange the components within the plant. However, it is understood that depending on the characteristics or type of the plant, procedures different from the process loop, power loop, and structural loop may precede or follow, or may exist between the process loop, power loop, and structural loop. In other words, the present invention is not limited to the process loop, power loop, and structural loop described below, and it is understood that any number of additional loops may be added or inserted.

[0052] In addition, the unique information of the entities in the following description can be distinguished according to the constraints and attributes of each entity. Here, the aforementioned constraints and attributes are unique characteristics possessed by each entity and may represent the entity's size and weight, power consumption, performance, shape characteristics, etc.

[0053] Here, unique codes corresponding to different characteristics of each entity can be merged into a pre-specified number to generate unique information corresponding to each entity. For example, the first two digits of the unique information of the entity may be a unique code corresponding to the size of the entity. In this case, entities with the same first two-digit unique code may be entities of the same size within a pre-set error range.

[0054] And among the above unique information, the next two digits may be a unique code corresponding to weight, the next two digits may be a unique code corresponding to power consumption, and the next two digits may be a unique code corresponding to the unique performance of the entity. And the next two digits may be a unique code corresponding to the shape characteristics of the entity. In this case, 10 unique digits of merged unique information, each of which corresponds to the characteristics of different entities, can generate the unique information of each entity.

[0055] Meanwhile, the above entity may represent a virtual object that does not actually exist. For example, in the case of a wall or a column, a representative point corresponding to the shape of the wall or column, etc., may be included as the entity. In this case, walls or columns that are combined with each other may form a single structure, and each representative point representing the combined structures may be included as a single entity.

[0056] Meanwhile, the grid setting unit (110) can form a virtual plant space in which virtual plant components, i.e., entities, are placed according to an embodiment of the present invention. Here, the virtual plant space can generate a three-dimensional grid-type phase space, i.e., a grid, consisting of a plurality of grids formed in three dimensions as described above. In this case, each grid forming the grid can be formed to occupy a space of the same size in the virtual plant space, and unique information such as a serial number can be assigned through indexing.

[0057] In this case, the grid may be a virtual space having a size and shape corresponding to the actual area where plant components are to be placed. It may also be a virtual space having the same constraints as those of the actual area. For example, it may be a virtual space where the number or location of inlets or outlets is set identically.

[0058] Meanwhile, in the above-mentioned three-dimensional grid-type phase space, that is, in each three-dimensional grid constituting the grid, the probability of existence of each entity can be set. Here, for each grid within the grid, the probability of existence of each entity according to the constraints within the virtual plant space may be a statistical probability of existence calculated according to the statistical values ​​based on the preceding plant configuration layouts.

[0059] In this case, the statistical probability of existence for each plant component in each grid within the grid may be a probability of existence learned based on the placement of components of a plurality of actual plants selected as training data. That is, for each of a plurality of prior cases in which the components of each plant are placed in an area having the same or similar size or shape as the target area, the components placed on each grid of the grid formed in the target area are detected, and based on each detected component, the probability of existence of a specific component being placed on each grid can be calculated, and learning can be performed according to the calculated probability of existence.

[0060] For example, if there are 10 cases among 100 prior cases where plant component A is placed at a location on the target area corresponding to grid number 10, the statistical probability of component A existing at grid number 10 may be 10%. On the other hand, if there are 50 cases where plant component A is placed at a location on the target area corresponding to grid number 20, the statistical probability of component A existing at grid number 20 may be 50%. In this way, for each component on the plant, the statistical probability of existence at each grid on the grid can be learned using the aforementioned multiple prior cases as training data. And the grid setting unit (110) can determine the statistical probability of existence for each component on the plant, i.e., the entity, at each grid of the grid formed for the target area according to the control of the control unit (100).

[0061] Meanwhile, the above statistical probability of existence may reflect constraints within the virtual plant space. For example, the virtual plant space may include structural feature points corresponding to the entrance or exit, pillars, or walls of the target area where the actual plant is to be constructed. Furthermore, based on each of the structural feature points, constraints set for each entity, such as distance constraints based on the entrance or exit, may be reflected to set the probability of existence of each entity for each grid.

[0062] Here, the above constraint may be set directly by the user. That is, when a constraint is set for a specific type of entity, the grid setting unit (110) can set the probability of existence of an entity reflecting the set constraint in each grid cell according to the control of the control unit (100).

[0063] For example, if a constraint is input that a specific piece of equipment A must be located at a position separated from the entrance by a certain distance or more, the control unit (100) can control the grid setting unit (110) to remove from the preceding cases in which equipment identical or similar to the specific piece of equipment A, that is, equipment with similar performance but different, is placed within a certain distance from the entrance. In this case, the statistical probability of the specific piece of equipment A identical or similar to the specific piece of equipment A, that is, equipment with similar performance but different, being placed within a certain distance from the entrance becomes 0%, and the statistical probability of the existence of each entity on each grid according to the preceding cases in which the specific piece of equipment A is placed at a position separated from the entrance by a certain distance can be calculated.

[0064] And the input tensor generation unit (120) can generate an input tensor that is an input for attention operations in each process of the transformer model. Here, the input tensor corresponds to a vector embedded from a token for attention operations in the natural language processing process, and the input tensor generation unit (120) can perform embedding for entities placed in each loop for each loop that is sequentially carried out in the plant. For example, as described above, if the plant construction consists of a process loop, a power loop, and a structure loop, the input tensor generation unit (120) can generate a process loop input tensor to be used for attention operations of the process loop according to the unique information of entities to be placed in the process loop and the probability of existence of each entity to be placed in the process loop for each grid cell of the grid, under the control of the control unit (100). In addition, a power loop input tensor to be used for an attention operation of the power loop can be generated based on the unique information of entities to be placed in the power loop and the probability of existence of each entity to be placed in the power loop for each grid cell of the grid. In addition, a structure loop input tensor to be used for an attention operation of the structure loop can be generated based on the unique information of entities to be placed in the structure loop and the probability of existence of each entity to be placed in the structure loop for each grid cell of the grid.

[0065] Here, the existence probability for each grid cell may be a statistical existence probability for each entity learned according to a number of prior cases as described above. In addition, the input tensor of each loop may be formed as a three-dimensional array having a size based on the unique information of each entity, the existence probability for each grid cell of the grid, and the number of entities to be placed in each loop.

[0066] Meanwhile, the attention unit (130) can perform attention operations for each loop. Here, the attention operations may include a weight operation that calculates the data type of the attention model, i.e., attention variables, for the input tensor for each loop, and self-attention and encoding-decoding attention calculated according to the attention variables.

[0067] Here, the weight operation may be a process of calculating the attention variables by reflecting pre-set attention weights corresponding to each attention variable for each input tensor of each loop. Here, the attention variables include a query value (Q), a key value (K), and a result value (V). The weight operation may include an operation of reflecting a pre-set query (Q) weight to calculate the query value (Q) to the input tensor of each loop, an operation of reflecting a pre-set key (K) weight to calculate the key value (K) to the input tensor of each loop, and an operation of reflecting a pre-set result (V) weight to calculate the result value (V) to the input tensor of each loop. In this case, since the input value of the weight operation is a tensor having a 3-dimensional array, the query (Q) weight, the key (K) weight, and the result (V) weight may also be tensors having a 3-dimensional array, and the result of the weight operation may also be a tensor having a 3-dimensional array. To this end, the attention unit (130) may be provided with a weight calculation unit (131) for performing the weight calculation.

[0068] Meanwhile, the attention unit (130) may include an attention operation unit (132) that performs self-attention operations and encoding-decoding attention based on attention variables calculated by the weight operation unit (131). In this case, the attention operation unit (132) may perform attention operations based on a softmax function based on attention variables calculated by the weight operation unit (131). In this case, the attention operation may be an operation that calculates the inner product of the existence probabilities of different entities for each grid in a three-dimensional grid-type phase space, i.e., a grid.

[0069] Here, the self-attention operation is an operation that receives the result value as an input value and performs attention again, and may be an operation that receives the output result of the attention operation as an input value again. That is, the self-attention operation may be a process of receiving the output value of the attention operation as an input tensor of the corresponding loop, recalculating the attention variables through the weight operation unit (131), and performing the attention operation again on the recalculated attention variables.

[0070] Meanwhile, the encoding-decoding operation is a combination of the encoder operation and the decoder operation. Here, the encoder refers to a process of converting an input tensor of arbitrary size into a tensor of a size for an attention operation of a specific loop. It may refer to a process of converting the result of self-attention, which is generated a preset number of times in a preceding loop, according to the size of the input tensor of a subsequent loop, that is, a loop where a new attention operation is to be performed. Meanwhile, the decoder is a process of generating a desired output through a softmax function based on the output tensor of the encoder, and may include an attention operation based on the softmax. That is, unlike the self-attention operation which receives its own output as input, the encoding-decoding operation may be a process of receiving the output from another loop as its own input and performing an attention operation using a softmax function. To perform such self-attention operations and encoding-decoding attention operations, the attention unit (130) may be configured to include an attention operation unit (132).

[0071] Meanwhile, the query (Q) weight, key (K) weight, and result (V) weight used in the attention unit (130) may be weights determined through learning by the artificial intelligence unit (150).

[0072] Here, the artificial intelligence unit (150) performs the role of processing information based on artificial intelligence technology and may include one or more modules that perform at least one of learning information, reasoning information, perception of information, and processing natural language.

[0073] The artificial intelligence unit (150) can perform at least one of learning, inferring, and processing a vast amount of information (big data) using machine learning technology.

[0074] Here, learning can be achieved through the aforementioned machine learning technology. The machine learning technology is a technique that collects and learns large-scale information based on at least one algorithm, and judges and predicts information based on the learned information. Information learning is the operation of identifying the characteristics, rules, and judgment criteria of information, quantifying the relationships between information, and predicting new data using the quantified patterns.

[0075] The algorithms used by these machine learning technologies can be based on statistics and include, for example, decision trees that use a tree structure as a predictive model, neural networks that mimic the structure and function of biological neural networks, genetic programming based on biological evolutionary algorithms, clustering that distributes observed examples into subsets called clusters, and the Monte Carlo method that calculates function values ​​as probabilities using randomly extracted numbers.

[0076] As a field of the aforementioned machine learning technology, deep learning is a technology that uses artificial neural network algorithms to perform at least one of learning, judging, or processing information. An artificial neural network can have a structure that connects layers (hidden layers) to each other and transmits data between layers. This deep learning technology can learn a vast amount of information through artificial neural networks by utilizing a CPU (Central Processing Unit) optimized for parallel processing.

[0077] For example, in the present invention, the artificial intelligence unit (150) can learn attention weights for calculating attention variables for each loop for plant construction based on statistical probabilities of existence for each grid where the entity of each loop exists in each grid on the grid from a plurality of preceding plant construction cases. In addition, for each loop for plant construction, for each loop having a plurality of preceding loops, for example, loops after the third loop, attention weights for calculating attention variables for each combined tensor where the results of the preceding loops are combined can be learned.

[0078] Meanwhile, in this specification, the artificial intelligence unit (150) and the control unit (100) may be understood as the same component. In this case, the function performed by the control unit (100) described in this specification may be expressed as being performed by the artificial intelligence unit (150), and the control unit (100) may be named as the artificial intelligence unit (150), or conversely, the artificial intelligence unit (150) may be named as the control unit (100).

[0079] Alternatively, in this specification, the artificial intelligence unit (150) and the control unit (100) may be understood as separate components. In this case, the artificial intelligence unit (150) and the control unit (100) can perform various controls for plant construction automation through data exchange with each other. Additionally, the control unit (100) can perform at least one of the functions executable in the plant construction automation device (10) or control at least one of the components of the plant construction automation device (10) based on the results derived from the artificial intelligence unit (150). Furthermore, the artificial intelligence unit (150) may be operated under the control of the control unit (100).

[0080] Meanwhile, the above-mentioned query (Q) weight, key (K) weight, and result (V) weight may be learned weights determined by the learning of the artificial intelligence unit (150). To this end, the artificial intelligence unit (150) can calculate the query (Q) weight, key (K) weight, and result (V) weight for each loop of each of the preceding plant construction cases based on a number of preceding plant construction cases input as learning data. Then, based on the calculated weights for each preceding plant construction case, the query (Q) weight, key (K) weight, and result (V) weight for each loop of similar plant construction cases can be learned.

[0081] For example, the artificial intelligence unit (150) can classify the training data based on at least one of the characteristics of the area where the plant is built, such as size or shape, or at least one of the characteristics of constraints. Then, according to the classified training data, it can learn query (Q) weights, key (K) weights, and result (V) weights for each loop. Thus, the artificial intelligence unit (150) can learn weights for each loop differently depending on the characteristics of the area where the plant is built, i.e., the target area.

[0082] Accordingly, when information about a plant target area is input through the input unit (170), the artificial intelligence unit (150) can determine pre-learned query (Q) weights, key (K) weights, and result (V) weights for each loop corresponding to at least one of the features of the target area. Then, under the control of the control unit (100), by providing the determined query (Q) weights, key (K) weights, and result (V) weights for each loop to the attention unit (130), attention operations can be performed according to the query (Q) weights, key (K) weights, and result (V) weights for each loop learned from the training data according to the features of the target area.

[0083] Meanwhile, the memory (140) can store data that supports various functions of the plant construction automation device (10). The memory (140) can store a number of applications or applications running on the plant construction automation device (10), data and commands for the operation of the plant construction automation device (10), and data for the operation of the artificial intelligence unit (150) (e.g., at least one algorithm information for updating or learning a machine learning or prediction model).

[0084] Additionally, input data for plant construction automation can be stored in the memory (140). For example, information regarding requirements for plant construction automation input by a user can be stored. In this case, the requirements can be reflected as constraints on entities placed on a target area or each loop. Additionally, the memory (140) can store information on the target area input by the user and information on entities corresponding to each loop. Here, the information on the target area may include feature information such as the size and shape of the target area and information on constraints, and the information on the entities may include information including the name and unique information of the entities.

[0085] Additionally, the memory (140) may store information for data and algorithms for generating a grid corresponding to the target area for the grid setting unit (110). Furthermore, the memory (140) may store information for the grid setting unit (110) to calculate the statistical probability of existence for each grid for each entity. For example, the memory (140) may store prior cases classified into multiple groups according to the characteristics of the target area, and result data in which the probability of existence for each grid of the grid is calculated for each entity included in the prior cases. Furthermore, each entity included in the prior cases may be classified by identical or similar entities. That is, the probability of existence for each grid of the grid may be the statistical probability of existence of identical or similar entities for each grid. In this case, the classification of the entities may be based on the unique information of each entity.

[0086] Accordingly, the grid setting unit (110) can first detect one group of preceding cases based on feature information of the target area. Then, from the detected group, the probability of existence of each entity in each grid can be calculated statistically. In this case, in each preceding case of each detected group, identical or similar entities can be distinguished as identical entities.

[0087] And the grid setting unit (110) can determine the entities of the preceding cases of the detected group that are identical or similar to the input entity based on the unique information of each entity input by the user. Accordingly, the probability of existence per grid calculated for the entities of the preceding cases of the detected group that are identical or similar to the input entity can be determined as the probability of existence per grid for the entity input by the user.

[0088] In addition, the memory (140) can store various data for attention operations. For example, information on learned weights provided by the artificial intelligence unit (150) and results according to the attention operations of each loop can be stored.

[0089] Meanwhile, the control unit (100) controls each connected component and can control the overall operation of the plant construction automation device (10).

[0090] First, the control unit (100) can enable the grid setting unit (110) to generate a grid corresponding to the target area based on the characteristics of the target area input through the input unit (170). Then, the artificial intelligence unit (150) can be controlled to determine pre-learned attention weights according to the characteristics of the target area.

[0091] Additionally, the control unit (100) can set the probability of existence on each grid of the grid according to the entities corresponding to each loop for each loop based on the entity information for each loop input by the user, and the grid setting unit (110). Then, by controlling the input tensor generation unit (120), the control unit can generate an input tensor for each loop based on the number of entities corresponding to each loop, the unique information of the entities, and the statistical probability of existence of each entity on each grid. Then, the attention unit (130) can be controlled to perform weight calculations, self-attention, and encoding-decoding attention. Then, the output value, i.e., the output tensor calculated according to the results of the weight calculations, self-attention, and encoding-decoding attention calculated for each loop, is generalized based on the pre-set generalized weights, and the grid with the highest probability of existence for each entity can be detected based on the generalized output tensor. And by placing each entity for each detected grid, a virtual plant model can be obtained in which the components of the plant entered by the user, i.e., the entities, are placed at optimal locations within the target area entered by the user.

[0092] When a virtual plant model is obtained in this manner, the control unit (100) can control the output unit (160) to output information of the obtained virtual plant model. In this case, if the entity is a 3D model, the control unit (100) can output an image of the virtual plant model in which entities composed of 3D models are arranged through the output unit (160). Alternatively, the control unit (100) can control the output unit (160) to selectively output information regarding the location of a specific entity according to user input. To this end, the output unit (160) may be configured to include a display capable of outputting visual information.

[0093] Meanwhile, FIG. 2 is a conceptual diagram illustrating the process of a transformer model determining the placement position of each entity in a plant construction automation device (10) according to an embodiment of the present invention.

[0094] Referring to FIG. 2, the transformer model of the plant construction automation device (10) according to an embodiment of the present invention may include a plurality of transformer calculation processes. In this case, each transformer calculation process may be performed for each loop for the plant construction, and when the entity placement procedure for the plant construction, i.e., the loop, consists of three stages, three stages of transformer calculation processes may be performed as shown in FIG. 2.

[0095] Referring to FIG. 2, when a requirement is input from a user, i.e., a client, the control unit (100) of the plant construction automation device (10) according to an embodiment of the present invention can perform a first transformer operation (201) that performs an attention operation based on the number of entities according to a pre-set first loop (201), unique information of the entities, statistical existence probabilities for each grid of each entity, and attention variables pre-learned for the first loop.

[0096] In this case, if the first loop (201) is a process loop, the output result (process & utility facility) of the first transformer operation (210) can be calculated as the existence probabilities for each grid cell within the grid of entities according to the process loop. And the output result of the first transformer operation (210) can be calculated as a three-dimensional array (tensor) having a size according to the number of entities in the process loop (PRSd), the entity embedding size (Ld) according to the number of unique information digits of the entities, and the number of grid cells (Lg) of the grid.

[0097] Meanwhile, the output result of the first transformer operation (210) can be applied as an input to the second transformer operation (220). In this case, the second transformer operation (220) may include an encoding-decoding attention operation that encodes the output result of the first transformer operation (210) as an input to the second transformer operation (220) and decodes it as an output to the second transformer operation (220).

[0098] In this case, if the second loop (202) is a power loop, the output result (architecture) of the second transformer operation (220) can be calculated through an attention operation on an attention variable (V value) calculated from an input tensor derived from the number of entities and unique information according to the power loop (202) and the existence probabilities for each grid of each entity according to the power loop (202). In this case, the output result of the second transformer operation (220) can be calculated as a 3D array (tensor) having a size according to the number of entities (POSd) of the power loop (202), an entity embedding size (Ld) according to the number of unique information digits of the entities, and the number of grid cells (Lg) of the grid.

[0099] And the result of the first transformer operation (210) and the result of the second transformer operation (220) can be concatenated to produce the result of the operation (225) of the preceding loop. And the result of the operation of the preceding loop can be applied as an input to the third loop (203).

[0100] In this case, the third transformer operation (230) may include an encoding-decoding attention operation that encodes the result of the operation (225) of the preceding loop as the input of the third transformer operation (230) and decodes it as the output of the third transformer operation (230).

[0101] In this case, if the third loop (203) is a structure loop, the output result (structure & foundation) of the third transformer operation (230) can be calculated through an attention operation on an attention variable (V value) calculated from an input tensor calculated from the number of entities and unique information according to the structure loop (203) and the existence probabilities for each grid of each entity according to the structure loop (203). In this case, the output result of the third transformer operation (230) can be calculated as a 3D array (tensor) having a size according to the number of entities (STSd) of the structure loop (203), the entity embedding size (Ld) according to the number of unique information digits of the entities, and the number of grid cells (Lg) of the grid.

[0102] And the result of the operation of the preceding loop (225) and the result of the third transformer operation (230) can be combined (concatenate) to produce the final loop operation result (235). In this case, based on the final loop operation result (235), the control unit (100) can determine the grid with the highest probability of existence on the grid for each entity as the location of each entity. In this case, by displaying a 3D object corresponding to each entity centered on the grid determined for each entity, the control unit (100) can output a 3D model, which is a virtual plant model, as the result of automatic plant construction.

[0103] Meanwhile, FIG. 3a is a flowchart illustrating the operation process of calculating a virtual plant model including the optimal placement position of each entity through attention calculation in a plant construction automation device (10) according to an embodiment of the present invention. FIG. 3b illustrates an example of a grid, which is a three-dimensional grid-type phase space generated according to an embodiment of the present invention.

[0104] For the convenience of explanation, the following description assumes that the layout procedure for plant construction consists of three stages: a process loop, a power loop, and a structural loop. However, this is merely an example of the present invention and is not limited thereto. For instance, it is obvious that at least one additional loop may be performed after the structural loop. Conversely, it is also obvious that the layout procedure for plant construction may be carried out using only a two-stage loop structure instead of the three-stage loop structure described above.

[0105] First, referring to FIG. 3a, the control unit (100) of the plant construction automation device (10) according to an embodiment of the present invention can generate a virtual plant space corresponding to the target area based on information of the target area input by the user. Then, the generated virtual plant space can be converted into a three-dimensional grid-type phase space consisting of grids of a preset size, and a unique number can be assigned to each grid through indexing according to a preset order. Thus, a three-dimensional grid-type phase space, i.e., a grid, consisting of grids to which each unique number is assigned can be generated (S300).

[0106] Figure 3b illustrates an example of a grid, which is a three-dimensional grid-like phase space generated in step S300.

[0107] Referring to FIG. 3b, FIG. 3b (a) illustrates an example of a grid (350) consisting of grids of a predetermined size formed in a virtual plant space corresponding to the target area. Each grid of the grid may be sequentially assigned a unique number according to indexing in a predetermined order as described above. Therefore, when arranging each grid in a row according to the unique number, the grids may be arranged in a row as shown in FIG. 3b (b) according to the unique number assigned to each grid.

[0108] When a grid is generated as described in (b) of FIG. 3b above, the control unit (100) can detect entities for each loop according to design constraints from user input information (S302). In this case, if the placement procedure for plant construction consists of three stages, such as a process loop, a power loop, and a structure loop, as described above, the control unit (100) can detect information of entities placed on the process loop among the entity information input by the user and classify them as process entities, detect information of entities placed on the power loop and classify them as power entities, and detect information of entities placed on the structure loop and classify them as structure entities. In this case, the information of each classified entity may include unique information of each entity.

[0109] Meanwhile, when information of entities for each loop is detected from input information input by the user, the control unit (100) first performs an attention operation for the first loop that is performed first according to the placement procedure for plant construction, and can calculate an output value that is produced as a result of the attention operation (S304).

[0110] In this case, if the first loop executed first according to the above batch procedure is a process loop, the control unit (100) can generate an input tensor for attention operations of the process loop from the information of entities corresponding to the process loop among the entities for each loop detected in step S302. Then, based on the generated input tensor and the attention weights previously learned for the first loop, i.e., the process loop, namely the attention weights Q, K, and V, attention variables Q, K, and V can be calculated. Then, self-attention can be performed on the calculated attention variables. In this case, the first loop is the first loop executed, and since there is no preceding loop, only self-attention can be performed a predetermined number of times without encoding-decoding attention.

[0111] Meanwhile, as a result of the self-attention operation set a number of times, the attention operation result for the first loop, i.e., the process loop, can be produced. In this case, a 3D array (tensor) having a size according to the number of entities (PRSd) of the process loop, the entity embedding size (Ld) according to the unique information digits of the entities, and the grid number (Lg) can be produced as a process sequence tensor, which is the result value of the process loop. And the attention operation result for the process loop may be the output result of the first transformer operation (210) in FIG. 2.

[0112] Below, we will examine in more detail the operation process in which attention operations for the power loop are performed in step S304 above, with reference to Figures 4 to 9 below.

[0113] Meanwhile, in step S304 above, when the attention operation for the process loop corresponding to the first loop, which is the first loop, is completed, the control unit (100) performs an attention operation for the second loop that follows the first loop according to the batch procedure for plant construction, and can calculate an output value that is calculated as the result of the attention operation (S306).

[0114] Here, if the second loop is a power loop, the control unit (100) can generate an input tensor for attention operations of the power loop from the information of entities corresponding to the power loop among the entities for each loop detected in step S302. Then, based on the generated input tensor and the attention weights previously learned for the second loop, i.e., the power loop, namely the attention weight Q, K, and V values, attention variables Q, K, and V values ​​can be calculated. In this case, the attention weights and attention variables may all be tensors having a three-dimensional numeric array.

[0115] And the control unit (100) can perform an encoding-decoding attention operation by encoding the process sequence tensor, which is the attention operation output value of the first loop, i.e., the process loop, which is the preceding loop of the power loop, as input, and performing an attention operation (decoding) of the second loop. To this end, the control unit (100) can perform an attention operation on the attention variable Q value and K value calculated during the attention operation process of the first loop, i.e., the process loop, and the attention variable V value calculated during the operation process of the second loop, i.e., the power loop.

[0116] Additionally, the control unit (100) can input the output value calculated as a result of the encoding-decoding attention operation as an input value to the power loop to recalculate the attention variables Q, K, and V, and perform self-attention based on the recalculated attention variables again according to the softmax function a predetermined number of times.

[0117] Meanwhile, as a result of the self-attention operation set a number of times, the attention operation result for the second loop, i.e., the power loop, can be produced. In this case, a three-dimensional array (tensor) having a size according to the number of entities (POSd) of the power loop, the entity embedding size (Ld) according to the unique information digits of the entities, and the grid number (Lg) can be produced as a power sequence tensor, which is the result value of the power loop. And the attention operation result for the power loop may be the output result of the second transformer operation (220) in FIG. 2.

[0118] Below, we will examine in more detail the operation process in which the attention operation for the power loop is performed in step S306 above, with reference to Fig. 10 below.

[0119] Meanwhile, in steps S304 and S306 above, when attention operations for the first loop and the second loop are completed, the control unit (100) can generate an output value of a preceding loop to be encoded as an input value of the third loop before performing an attention operation for the third loop. In this case, since the preceding loop of the third loop is a plurality of first loops and second loops, the control unit (100) can combine the output values ​​of the first loop and the second loop to generate a combined input tensor.

[0120] Here, since the first loop is a process loop and the second loop is a power loop, the control unit (100) can produce a process-power sequence tensor by combining the process sequence tensor, which is the output value of the process loop, i.e., a 3D array (tensor) having a size according to the number of entities of the process loop (PRSd), the entity embedding size according to the number of unique information digits of the entities (Ld), and the grid number (Lg) of the grid, with the power sequence tensor, which is the output value of the power loop, i.e., a 3D array (tensor) having a size according to the number of entities of the power loop (POSd), the entity embedding size according to the number of unique information digits of the entities (Ld), and the grid number (Lg) of the grid.

[0121] And for the process-power sequence tensor produced, attention variables Q, K, and V can be produced based on previously learned attention weights, that is, attention weights Q, K, and V that were previously learned for the process-power sequence tensor (S308).

[0122] Below, we will examine in more detail, with reference to Fig. 13, the operation process of generating a process-power sequence tensor by combining the output value of the process loop and the output value of the power loop in step S308 above, and the operation process of calculating attention variables from the process-power sequence tensor.

[0123] And when the control unit (100) calculates a sequence tensor in which the outputs of the first loop and the second loop, which are preceding loops, are combined in step S308, the control unit (100) performs an attention operation for the third loop that follows the second loop according to the placement procedure for plant construction, and can calculate an output value that is calculated as a result of the attention operation (S310).

[0124] Here, if the third loop is a structure loop, the control unit (100) can generate an input tensor for an attention operation of the structure loop from the information of entities corresponding to the structure loop among the entities for each loop detected in step S302. Then, based on the generated input tensor and the attention weights learned for the third loop, i.e., the structure loop, namely the attention weights Q, K, and V, attention variables Q, K, and V can be calculated.

[0125] And the control unit (100) can perform an encoding-decoding attention operation by encoding the combined output value of the first loop and the second loop, which are the preceding loops of the structure loop, as input and performing an attention operation (decoding) of the third loop. To this end, the control unit (100) can perform an attention operation on the attention variable Q value and K value calculated according to the sequence tensor of the combined outputs of the first loop and the second loop, and the attention variable V value calculated during the operation process of the third loop, i.e., the structure loop.

[0126] Additionally, the control unit (100) can input the output value calculated as a result of the encoding-decoding attention operation as an input value to the structure loop to recalculate the attention variables Q, K, and V, and perform self-attention based on the recalculated attention variables again according to the softmax function a predetermined number of times.

[0127] Meanwhile, as a result of the self-attention operation set a number of times, the attention operation result for the third loop, i.e., the structure loop, can be produced. In this case, a 3D array (tensor) having a size according to the number of entities (STSd) of the structure loop, the entity embedding size (Ld) according to the unique information digits of the entities, and the grid number (Lg) can be produced as a structure sequence tensor, which is the result value of the structure loop. And the attention operation result for the structure loop may be the output result of the third transformer operation (230) in FIG. 2.

[0128] Below, we will examine in more detail the operation process in which attention operations for the structure loop are performed in step S310 above, with reference to Fig. 15 below.

[0129] Meanwhile, in step S310 above, when the attention operation for the third loop, which is the last loop, is completed, the control unit (100) can calculate the total result value for the first to third loops by combining the result value of the loop preceding the third loop and the result value of the third loop. To do this, the control unit (100) can combine the output combined value of the first loop and the second loop with the result value of the third loop (S312). In this case, since the first loop is a process loop, the second loop is a power loop, and the third loop is a structure loop, step S312 may be a process of combining the process-power sequence tensor and the structure sequence tensor to generate a process-power-structure sequence tensor.

[0130] Then, the control unit (100) can normalize the process-power-structure sequence tensor generated in step S312 by multiplying it by a preset normalization weight (S314).

[0131] According to the description above, the present invention is configured to receive entities for each loop from a user and calculate the probability of existence of each entity for each grid cell on the grid for each loop entity. Accordingly, the process-power-structure sequence tensor calculated according to the calculation result of the present invention may be in a state that includes only some entities selected by the user for plant placement among entity databases for various entities.

[0132] Accordingly, the normalization weights may be intended to expand the dimension size corresponding to the number of entities in the process-power-structure sequence tensor according to the total number of entities included in the entity database, so as to be universally applicable in each case of determining the entities used in each loop using the entity database.

[0133] Meanwhile, when the process-power-structure sequence tensor is normalized through generalization weights in step S314, the control unit (100) can determine the grid having the highest probability of existence among the statistical probabilities of existence of each grid within the grid corresponding to each entity as the location of each entity based on the normalized process-power-structure sequence tensor. Then, a virtual plant model can be generated and output based on the determined location (S316).

[0134] Accordingly, the plant construction automation device (10) according to an embodiment of the present invention can determine the optimal location of each entity learned from a plurality of prior plant construction cases and provide a virtual plant model in which entities are placed at the determined location as a result of the user input, simply by inputting information of the target area to be built for the plant and information of entities for each loop according to the placement procedure for plant construction.

[0135] Meanwhile, FIG. 4 is a flowchart illustrating in more detail step S304 of FIG. 3a, which determines the placement positions of entities in the first loop, i.e., the process loop, through attention operations, which is the first procedure among the pre-set placement procedures for building a plant during the operation process of FIG. 3a. FIG. 5 is an example of a grid existence probability-entity unique information table according to an embodiment of the present invention, FIG. 6 is an example of an input tensor of a process loop according to an embodiment of the present invention, FIG. 7 is an example of attention variables calculated according to the input tensor of FIG. 6 and pre-learned weight tensors, FIG. 8 is the dimensions of the attention variables calculated according to the weight tensors, and FIG. 9 is the dimension size of the process sequence tensor calculated as a result of the process loop according to the operation process of FIG. 4.

[0136] First, referring to FIG. 4, the control unit (100) of the plant construction automation device (10) according to an embodiment of the present invention can perform an attention operation based on the statistical probability of existence for each grid on the grid for each entity of the process loop, which is the first loop, when step S304 of FIG. 3a is performed, and can calculate an output value calculated as the result of the attention operation. To this end, the control unit (100) can first control the grid setting unit (110) to calculate the statistical probability of existence for each grid on the grid for each entity of the process loop, that is, process entities (400).

[0137] In this case, for each entity of the process loop, statistical probabilities of existence for each grid cell on the grid can be calculated. For example, if the grid is formed of 100 grid cells, each entity can correspond to the statistical probabilities of existence set for each of the 100 grid cells for each entity. In this case, the control unit (100) can match each entity with the statistical probabilities of existence for each grid cell on the grid corresponding to each entity to form a table containing the probabilities of existence on the grid for each grid cell for all entities of the process loop (S402).

[0138] In this case, each of the information of the above entities may include unique information. Therefore, the above table may be a table in which the unique information of an entity and the statistical probabilities of existence of each grid cell of that entity are matched through the entity. Hereinafter, the table in which the unique information of the above entity and the probability of existence for each grid cell are matched will be referred to as the grid existence probability-entity unique information table.

[0139] FIG. 5 is an illustrative diagram showing an example of a grid existence probability-entity unique information table according to an embodiment of the present invention. In FIG. 5, the 'Entity Embedding tensor' (500) may represent unique information in which codes representing different attributes of each entity are merged. In this case, each of the codes may form different items. For example, if each of the codes is formed as a single digit, items may be distinguished by each digit of the entity unique information, as shown in FIG. 5.

[0140] Additionally, the 'Entity presence probability tensor' (550) may represent the presence probabilities of each entity in each grid cell. Accordingly, the 'Entity presence probability tensor' (550) may include items corresponding to the total number of grid cells.

[0141] Meanwhile, in the above S402 step, when a grid existence probability-entity unique information table for the entities of the process loop is formed, the control unit (100) can control the input tensor generation unit (120) to generate a two-dimensional numerical array, i.e., a matrix, consisting of the entity's unique information and the existence probability for each grid cell on the grid, for each entity. For example, the control unit (100) can generate a matrix in which the entity's unique information is the first axis and the existence probability for each grid cell on the grid is the second axis. Such a matrix can be generated for each entity. Hereinafter, a matrix in which the entity's unique information is the first axis and the existence probability for each grid cell on the grid is the second axis will be referred to as a grid-entity matrix.

[0142] When the grid-entity matrix is ​​generated for each entity of each process loop, the control unit (100) can superimpose the grid-entity matrix generated for each of all entities of the process loop based on the first axis and the second axis. Accordingly, the input tensor generation unit (120) can generate a 3-dimensional numerical array, i.e., a tensor, in which the grid-entity matrix is ​​superimposed as many times as the total number of entities of the process loop (S404). The tensor generated by the superposition of the grid-entity matrix can be input as an input for attention operations in the process loop, i.e., as a process loop input tensor (PRSEEI).

[0143] FIG. 6 is a conceptual diagram illustrating an example of an input tensor (PRSEEI) of a process loop according to an embodiment of the present invention.

[0144] As shown in FIG. 6, the process loop input tensor (PRSEEI) can be generated by sequentially overlapping the grid-entity matrix (600) generated for each entity of the process loop according to the serial number of each entity. Thus, the process loop input tensor (PRSEEI) may be a tensor in which the first axis is composed of each code constituting the unique information of the entity and the second axis is composed of the existence probabilities for each grid cell on the grid, and the matrix is ​​overlaid as many times as the number of entities of the process loop.

[0145] Therefore, as seen in FIG. 5, when the number of entities in the process loop is 16, the unique information of the entities consists of 6 codes, and the grid consists of 100 grid cells, a 3-dimensional numerical array having dimensions of [16, 6, 100] can be formed as the process loop input tensor (PRSEEI), as shown in FIG. 6. Accordingly, the process loop input tensor (PRSEEI) can be generated as a 3-dimensional array (tensor) having a size of [PRSd, Ld, Lg] depending on the number of entities in the process loop (PRSd), the entity embedding size (Ld) according to the number of unique information digits of the entities, and the number of grid cells (Lg).

[0146] Meanwhile, when a process loop input tensor (PRSEEI) is generated in step S404, the control unit (100) can control the attention unit (130) to perform an attention operation on the process loop input tensor (PRSEEI). To do this, the control unit (100) can first calculate attention variables Q, K, and V for the process loop input tensor (PRSEEI) based on previously learned attention weights, namely weight Q, weight K, and weight V (S406).

[0147] Here, the attention weights Q, K, and V may be weights learned through the learning of the artificial intelligence unit (150) according to the arrangement structure of process entities in a number of preceding plant cases. In this case, the control unit (100) can detect process loop attention weight values ​​suitable for constraints input by the user among the previously learned process loop attention weight values ​​of different types. For example, the control unit (100) can detect process loop attention weight values ​​learned from preceding cases suitable for the size and shape of the target area and at least one requirement set by the user.

[0148] When the previously learned process loop attention weight values ​​are determined, the control unit (100) can multiply the process loop input tensor (PRSEEI) calculated in step S404 by the previously learned process loop attention weight values, namely the weight Q value, the weight K value, and the weight V value, respectively. In this case, the previously learned process loop attention weight values ​​may be a 3D array (tensor) having a size of [Ld, Lg, Lg] in which a matrix formed with a first axis and a second axis according to the grid number (Lg) is overlapped by the entity embedding size (Ld) according to the unique information digits of the entities.

[0149] FIG. 7 is a conceptual diagram showing examples of attention variables calculated according to the input tensor of FIG. 6 and previously learned weight values, i.e., weight tensors, and FIG. 8 is a conceptual diagram showing the dimensions of the attention variables calculated according to the weight tensors.

[0150] First, referring to FIG. 7, the tensor (600), that is, the three-dimensional numerical array shown on the left side of FIG. 7, may be the input tensor (PRSEEI) of the process loop examined in FIG. 6. The process loop input tensor (PRSEEI) can be multiplied by the previously learned attention weight values, Q, K, and V, respectively, to produce the attention variables Q, K, and V.

[0151] In this case, the attention variables Q, K, and V can be tensors having dimensions of the same size as the input tensor. That is, the Q, K, and V can each form a tensor having a 3-dimensional numeric array, and can generate a Query tensor (Q.prsee), a Key tensor (K.prsee), and a Value tensor (V.prsee), as shown in the right diagram of FIG. 7.

[0152] Meanwhile, FIG. 8 shows examples of weight tensors, namely the weight Q tensor (Wqprsee), weight K tensor (Wkprsee), and weight V tensor (Wvprsee), which are attention variables of the process loop that are reflected in the process loop input tensor (PRSEEI) and have dimensions of the same size as the input tensor.

[0153] Referring to FIG. 8, the process loop Q tensor (Q.prsee), process loop K tensor (K.prsee), and process loop V tensor (V.prsee) can be generated by multiplying the process loop input tensor (PRSEEI) by the weight Q tensor (Wqprsee), the weight K tensor (Wkprsee), and the weight V tensor (Wvprsee), respectively. In this case, the process loop Q tensor (Q.prsee), process loop K tensor (K.prsee), and process loop V tensor (V.prsee) can each have a size of [PRSd, Ld, Lg] according to the number of entities in the process loop (PRSd), the entity embedding size (Ld) based on the unique information digits of the entities, and the grid number (Lg), just like the process loop input tensor (PRSEEI).

[0154] Meanwhile, the weight Q tensor (Wqprsee), weight K tensor (Wkprsee), and weight V tensor (Wvprsee) may have a first dimension and a second dimension corresponding to the number of grid cells (Lg) of the grid, and a third dimension [Ld, Lg, Lg] corresponding to the entity embedding size (Ld) based on the number of unique information digits of the entities. And when the process loop input tensor (PRSEEI) and each of the weight tensors are matrix multiplied, each attention variable (Q.prsee, K.prsee, V.prsee) having the same dimension size [PRSd, Ld, Lg] as the process loop input tensor (PRSEEI) can be produced.

[0155] Meanwhile, as seen in FIGS. 7 and 8 above, when each attention variable (Q.prsee, K.prsee, V.prsee) is calculated, the control unit (100) can perform an attention operation using a softmax function for each attention variable of the process loop (S408).

[0156] In this case, the above attention operation can be performed by calculating a transpose matrix for each of the attention variables, such as the query value Q and the key value K, as shown in Equation 1 below, and multiplying the result of the softmax function operation on the product of the calculated transpose matrices by the result value V among the attention variables.

[0157]

[0158] Here, the current process loop is the first loop to be executed, and since there is no loop executed prior to it, it can perform the attention operation based on itself, that is, the attention variables calculated from the process loop. Accordingly, in Equation 1, the attention variable Q value may be the process loop Q tensor (Q.prsee), and in Equation 1, the attention variable K value may be the process loop K tensor (K.prsee). Also, in Equation 1, the attention variable V value may be the process loop V tensor (V.prsee).

[0159] As a result of the attention operation of step S408 according to the above mathematical formula 1, the control unit (100) can obtain a tensor having a dimension size [PRSd, Ld, Lg] according to the number of entities of the process loop (PRSd), the entity embedding size according to the number of unique information digits of the entities (Ld), and the grid number (Lg) of the grid, as shown in FIG. 9, as an attention result of the process loop.

[0160] Meanwhile, when the attention result of the process loop is obtained through the above S408 step, the control unit (100) can check whether self-attention has been performed a preset number of times (S410). Here, self-attention may refer to an operation that performs an attention operation by receiving its own output as input again. Here, the number of times self-attention is specified in advance by the user or is set in advance during the design of the plant construction automation device (10) according to an embodiment of the present invention, and can be determined as an arbitrary number determined by a plurality of experiments conducted in relation to the present invention. Preferably, the number of times self-attention can be set to 6 times.

[0161] If, as a result of the check in step S410 above, self-attention is not performed for a preset number of times, the control unit (100) can input the currently calculated attention result of the process loop back into step S406 as the input tensor (PRSEEI) of the process loop. Then, step S406, which calculates attention variables, can be performed again. Accordingly, new attention variables (Q tensor (Q.prsee), Q tensor (Q.prsee), and V tensor (V.prsee)) can be calculated by multiplying the attention result of the process loop calculated in step S408 above by each previously learned weight tensor, weight Q tensor (Wqprsee), weight K tensor (Wkprsee), and weight V tensor (Wvprsee), respectively. Then, proceeding again to step S408, attention operations according to the above mathematical formula 1 can be performed on the newly calculated attention variables (Q tensor (Q.prsee), Q tensor (Q.prsee), and V tensor (V.prsee)). Whenever an attention operation is performed by receiving its own output as its own input in this way, the control unit (100) can check that self-attention has been performed once.

[0162] Then, the control unit (100) can proceed to step S410 again to check whether self-attention has occurred a preset number of times. If the number of times self-attention has occurred does not reach the preset number, it can proceed to step S412 to input the attention result of the currently calculated process loop back into the input tensor (PRSEEI) of the process loop, and repeat the process from step S406 to step S408. Accordingly, the self-attention process from step S406 to step S412 can be repeated.

[0163] However, if the check result of step S410 above indicates that self-attention has been performed a preset number of times, the control unit (100) can output the attention result calculated in step S408 above as the attention operation result of the process loop (S414). Hereinafter, the final output result of the process loop calculated through the preset number of self-attentions will be referred to as the process sequence tensor (PRSEEP).

[0164] Meanwhile, as seen in FIG. 4 above, when the process sequence tensor (PRSEEP) is calculated through step S304 during the operation process of FIG. 3a, the control unit (100) can perform an attention operation of the loop corresponding to the second procedure among the pre-set placement procedures for the construction of the plant. In this case, if the placement procedure that follows the first loop, the process loop, i.e., the second loop, is a power loop in which power devices for supplying power to each entity on the process loop are placed, the control unit (100) can perform step S306 of FIG. 3a, which determines the placement location of the entities of the power loop through an attention operation.

[0165] FIG. 10 is a flowchart illustrating in more detail the operation process of step S306, which determines the placement positions of entities of the power loop through an attention operation during the operation process of FIG. 3a. FIG. 11 is a conceptual diagram illustrating an example of an input tensor of the power loop generated according to the operation process of FIG. 10. FIG. 12 is a conceptual diagram showing an encoding-decoding attention operation that calculates a power sequence tensor based on attention variables calculated in the process loop and attention variables calculated in the power loop.

[0166] First, referring to FIG. 10, when the final output result of the process loop in step S304 of FIG. 3a is calculated as a process sequence tensor (PRSEEP), the control unit (100) of the plant construction automation device (10) according to an embodiment of the present invention can control the grid setting unit (110) to calculate the statistical probability of existence for each grid on the grid for each entity of the second loop, the power loop, i.e., each of the power entities (S1000).

[0167] Then, for each power entity, statistical probabilities of existence for each grid on the grid can be calculated. In this case, if the grid is formed with 100 grids as in the process loop described above, statistical probabilities of existence for each power entity for each of the 100 grids can be calculated. In this case, the control unit (100) can match each power entity with the statistical probabilities of existence for each grid on the grid corresponding to each power entity to form a grid existence probability-entity unique information table containing the probability of existence on the grid for each grid for all power entities (S1002).

[0168] In this case, the grid presence probability-entity unique information table calculated for the power entities may have a form similar to the grid presence probability-entity unique information table generated for the process entities illustrated in FIG. 5. That is, the grid presence probability-entity unique information table of the power loop may be formed by including an 'Entity Embedding tensor' column representing unique information in which codes representing different attributes of each entity are merged, and an 'Entity presence probability tensor' column representing the presence probabilities for each grid cell of each entity.

[0169] When the grid existence probability-entity unique information table of the power loop is formed in this manner, the control unit (100) can control the input tensor generation unit (120) to generate a two-dimensional numerical array, i.e., a matrix, consisting of the entity's unique information and the existence probability for each grid cell on the grid, for each entity. In this case, the control unit (100) can generate a matrix in which the entity's unique information is the first axis and the existence probability for each grid cell on the grid is the second axis, just as in the case of the process loop. And for each entity, a grid-entity matrix can be generated in which the entity's unique information is the first axis and the existence probability for each grid cell on the grid is the second axis.

[0170] When a grid-entity matrix is ​​generated for each entity of the power loop, the control unit (100) can superimpose the grid-entity matrix generated for each of all entities of the power loop based on the first axis and the second axis. Accordingly, the input tensor generation unit (120) can generate a power loop input tensor (POSEEI) in which the grid-entity matrix is ​​superimposed as many times as the total number of entities of the power loop (S1004).

[0171] In this case, the power loop input tensor (POSEEI) can be generated by sequentially overlapping grid-entity matrices created for each entity of the power loop according to the serial number of each entity. Thus, the power loop input tensor (POSEEI) may be a tensor in which a matrix, in which the first axis consists of codes constituting the unique information of the entity and the second axis consists of existence probabilities for each grid cell on the grid, is overlapped as many times as the number of entities of the power loop.

[0172] Here, the unique information of the entity has the same number of codes and the target area is also the same, so the number of codes of the unique information of the entity and the number of grid cells can be the same as in the case of the process loop. Therefore, it can be composed of 6 codes and 100 grid cells. Thus, when the number of entities in the power loop is 14, the power loop input tensor (POSEEI) can be formed as a 3-dimensional numeric array having dimensions of [14, 6, 100]. That is, as shown in FIG. 11, the power loop input tensor (POSEEI) can have a dimension size of [POSd, Ld, Lg] depending on the number of entities in the power loop (POSd), the entity embedding size according to the number of unique information digits of the entities (Ld), and the number of grid cells (Lg).

[0173] Meanwhile, when a power loop input tensor (POSEEI) is generated in step S1004, the control unit (100) can control the attention unit (130) to perform an attention operation on the power loop input tensor (POSEEI). To do this, the control unit (100) can first calculate attention variables Q tensor (Q.posee), K tensor (K.posee), and V tensor (V.posee) for the power loop input tensor (POSEEI) based on the previously learned power loop attention weight Q tensor (Wqposee), weight K tensor (Wkposee), and weight V tensor (Wvposee) (S1006).

[0174] Here, the weight Q tensor (Wqposee), weight K tensor (Wkposee), and weight V tensor (Wvposee) may be weights learned through the learning of the artificial intelligence unit (150) according to the arrangement structure of power entities in a number of prior plant construction cases. In this case, the control unit (100) can detect power loop attention weight values ​​suitable for constraints input by the user among different types of previously learned power loop attention weight values. For example, the control unit (100) can detect power loop attention weight values ​​learned from prior cases suitable for the size and shape of the target area and at least one requirement set by the user.

[0175] When the previously learned power loop attention weight values ​​are determined, the control unit (100) can multiply the power loop input tensor (POSEEI) calculated in step S1004 by the power loop attention weight Q tensor (Wqposee), the weight K tensor (Wkposee), and the weight V tensor (Wvposee), respectively. In this case, the previously learned power loop attention weight values ​​may be a tensor having a size of [Ld, Lg, Lg] in which a matrix formed with a first axis and a second axis according to the grid number (Lg) is overlapped by an entity embedding size (Ld) according to the unique information digits of the entities.

[0176] And when the power loop input tensor (POSEEI) and each weight tensor are matrix multiplied, each attention variable (Q.posee, K.posee, V.posee) having the same dimension size [POSd, Ld, Lg] as the power loop input tensor (POSEEI) can be produced.

[0177] Meanwhile, when each attention variable (Q.posee, K.posee, V.posee) of the power loop is calculated, the control unit (100) can perform an attention operation using a softmax function on each attention variable of the power loop (S1008).

[0178] In this case, the above attention operation calculates a transpose matrix for each of the attention variables, namely the query value Q and the key value K, as shown in Equation 1 above, and the calculated transpose matrices (Q T , K T This can be achieved by multiplying the result of the softmax function operation for the product of ) by the result value V among the attention variables of the power loop.

[0179] However, in the case of the power loop mentioned above, unlike the process loop, there exists an attention operation result according to the preceding batch procedure, that is, an attention operation result of the process loop. Accordingly, the attention operation performed in step S1008 may be an encoding-decoding attention operation that encodes the attention operation result calculated in the first loop, i.e., the process loop, which was performed before the second loop, the power loop, as an input to the current loop, i.e., the power loop, and decodes it as a result for the power loop.

[0180] To perform such encoding-decoding attention operations, the control unit (100) may receive the Q value and K value, which output the sequence tensor resulting from the preceding loop, as the Q value and K value of Equation 1. Accordingly, in step S1008, for each of the Q tensor (Q.prsee) and K tensor (K.prsee) used to output the process sequence tensor in the process loop, which is the preceding loop, i.e., the result of the last self-attention, transpose matrices (Q T , K T Calculate ) and the calculated transpose matrices (Q T , K TThe result of the operation of the softmax function for the product of ) may be a step of performing an attention operation by multiplying the attention variable V tensor (V.posee) calculated by the power loop weight tensor (Wvposee) and the power loop input tensor (POSEEI) in step S1006.

[0181] FIG. 12 is a conceptual diagram illustrating each tensor on which the encoding-decoding attention operation is performed and an example of the encoding-decoding attention operation.

[0182] First, referring to FIGS. 12(a) and (b), FIGS. 12(a) is the transpose matrix (Q) of the Q tensor (Q.prsee), which is the attention variable of the process loop. T ) is represented, and FIG. 12(b) is the transpose matrix (K) for the K tensor (K.prsee), which is the attention variable of the process loop. T This represents ). As shown in Figures 12 (a) and (b), the transpose matrix (Q) of the Q tensor (Q.prsee), which is the attention variable of the process loop, is shown. T In the case of ), it was originally composed of [PRSd (1st dimension), Ld (2nd dimension), Lg (3rd dimension)], but the 3rd and 1st dimensions are transposed, so it can have a size of [Lg, Ld, PRSd]. On the other hand, the transpose matrix (K) for the K tensor (K.prsee), which is the attention variable of the process loop, T In the case of ), it was composed of [PRSd (1st dimension), Ld (2nd dimension), Lg (3rd dimension)], but the 1st and 2nd dimensions can be transposed to have a size of [Ld, PRSd, Lg].

[0183] Meanwhile, the above transpose matrices (Q T , K TWhen the value of the softmax function for the product of ) is calculated, a matrix can be formed in which the first axis and the second axis each consist of the grid number (Lg) as shown in FIG. 12 (c). Then, the control unit (100) [calculates] the transposed matrices (Q T , K T The matrix [Lg, Lg], which is the value of the softmax function for the product of ), and the matrix product of the attention variable V tensor (V.posee) produced by the power loop input tensor (POSEEI) can be produced as the result of the encoding-decoding attention operation. Accordingly, as shown in (c) of FIG. 12, a tensor having a dimension size [POSd, Ld, Lg] according to the number of entities (POSd) of the power loop, the entity embedding size (Ld) according to the unique information digits of the entities, and the grid number (Lg) of the grid, identical to the power loop input tensor (POSEEI), can be obtained as the result of the power loop attention, i.e., the encoding-decoding attention operation.

[0184] Meanwhile, when the attention result of the power loop is obtained through the above S1008 step, the control unit (100) can check whether self-attention has been performed a preset number of times (S1010). Here, self-attention may refer to an operation that performs an attention operation by receiving its own output as input again. Preferably, the number of times self-attention is set to 6 times, similar to the case of the process loop.

[0185] If the check result of step S1010 above indicates that self-attention has not been performed for a preset number of times, the control unit (100) can input the attention result of the power loop currently calculated back into step S1006 as the input tensor (POSEEI) of the power loop. Then, step S1006, which calculates attention variables, can be performed again. Accordingly, new attention variables (Q tensor (Q.posee), Q tensor (Q.posee), and V tensor (V.posee)) can be calculated by multiplying the attention result of the power loop calculated in step S1008 above by each previously learned weight tensor, weight Q tensor (Wqposee), weight K tensor (Wkposee), and weight V tensor (Wvposee), respectively.

[0186] Then, proceeding back to step S1008, the encoding-decoding attention operation can be performed again on the newly calculated attention variables (Q tensor (Q.posee), Q tensor (Q.posee), and V tensor (V.posee)). Whenever the attention operation, which is performed by receiving its own output as its own input, is performed once in this way, the control unit (100) can check that self-attention has been performed once.

[0187] Then, the control unit (100) can proceed again to step S1010 to check whether self-attention has occurred a preset number of times. If the number of times self-attention has occurred does not reach the preset number, it can proceed to step S1012 to input the attention result of the power loop currently calculated as the input tensor (POSEEI) of the power loop again, and repeat the process from step S1006 to step S1008. Accordingly, the self-attention process from step S1006 to step S1012 can be repeated.

[0188] However, if the check result of step S1010 above indicates that self-attention has been performed a preset number of times, the control unit (100) may output the attention result calculated in step S1008 above as the attention operation result of the power loop (S1014). Hereinafter, the final output result of the power loop calculated through the preset number of self-attentions will be referred to as the power sequence tensor (POSEEP).

[0189] Meanwhile, as seen in FIG. 4 above, when a power sequence tensor (POSEEP) is calculated through step S306 during the operation process of FIG. 3a, the control unit (100) can perform an attention operation of a loop corresponding to the next procedure among the pre-set placement procedures for the construction of a plant. In this case, if the placement procedure that follows the second loop, the power loop, i.e., the third loop, is a structure loop in which structures are placed to form a structure in which each entity is supported and connected, the control unit (100) can perform an attention operation on the placement positions of the entities of the structure loop.

[0190] However, as seen in the second loop described above, the attention operation according to the embodiment of the present invention, when there is a result value of the preceding loop, performs an encoding-decoding attention operation using attention variables corresponding to the result value of the preceding loop, namely Q and K values, and can accept the operation result of the preceding loop as input through this encoding-decoding attention operation.

[0191] However, if the attention operation for the first loop and the second loop is completed as in step S306 above, there may be multiple result values ​​of the preceding loop of the loop currently to be executed. Accordingly, the control unit (100) can detect whether there are multiple preceding loops before performing the attention operation for the loop according to the pre-set order, and if there are multiple preceding loops, perform the process of combining the result values ​​of the preceding loops before the attention operation for the loop. Accordingly, when the result value, the power sequence tensor, for the second loop, the power loop is calculated in step S306, the control unit (100) of the plant construction automation device (10) can detect whether there are multiple preceding loops, and if there are multiple preceding loops, perform step S308 of FIG. 3a, which combines the result values ​​of the preceding loops.

[0192] In this case, the loops performed prior to step S308 are a process loop and a power loop, and the result of the attention operation of the preceding loop may be a process sequence tensor and a power sequence tensor. Figures 13 and 14 below illustrate the operation process of generating a process-power sequence tensor by combining the process sequence tensor and the power sequence tensor in step S308 of Figure 3a, and the dimension size of each tensor generating the process-power sequence tensor.

[0193] First, referring to FIG. 13, the control unit (100) can calculate a process-power sequence tensor (PPSEEP) by concatenating a process sequence tensor (PRSEEP) having a size according to the number of entities in the process loop (PRSd), the entity embedding size (Ld) according to the unique information digits of the entities, and the grid number (Lg) of the grid, and a power sequence tensor (POSEEP) having a size according to the number of entities in the power loop (POSd), the entity embedding size (Ld) according to the unique information digits of the entities, and the grid number (Lg) of the grid (S1300).

[0194] In this case, the process-power sequence tensor (PPSEEP) may be a three-dimensional numeric array formed by combining dimensions that differ from each other based on dimensions having the same size in the process sequence tensor (PRSEEP) and the power sequence tensor (POSEEP), as shown in FIG. 14. That is, the process sequence tensor (PRSEEP) and the power sequence tensor (POSEEP) both generate a tensor by overlapping a matrix [Ld, Lg] of a common size according to the entity embedding size (Ld) based on the unique information digits of the entities and the grid number (Lg) of the grid, by the number of entities in the process loop or by the number of entities in the power loop, so the size of the overlapping matrix [Ld, Lg] may be common. Accordingly, as shown in FIG. 14, the power sequence tensor (POSEEP) and the process sequence tensor (PRSEEP) are superimposed based on a matrix [Ld, Lg] having a common size, so that the process-power sequence tensor (PPSEEP) can be calculated.

[0195] In this case, as shown in Fig. 14, the size [Ld, Lg] of the reference matrix is ​​the same, but the number of entities can correspond to the sum of the number of entities in the power loop (POSd) and the number of entities in the process loop (PRSd) (PPLd). That is, the process-power sequence tensor (PPSEEP) can have the sum of the number of entities in the power loop (POSd) and the number of entities in the process loop (PRSd) (PPLd), the entity embedding size (Ld) according to the number of unique information digits of the entities, and the size [PPLd, Ld, Lg] according to the number of grid cells (Lg).

[0196] Then, the control unit (100) can calculate attention variables Q tensor (Q.pplee), K tensor (K.pplee), and V tensor (V.pplee) based on previously learned attention weights for the calculated process-power sequence tensor (PPSEEP), namely, attention weight Q tensor (Wqplee), weight K tensor (Wkplee), and weight V tensor (Wvplee) that were previously learned for the process-power sequence tensor (PPSEEP) (S1302). In this case, the attention variables (Q.pplee, K.pplee, V.pplee) can be calculated by the product of the process-power sequence tensor (PPSEEP), the attention weight Q tensor (Wqplee) and weight K tensor (Wkplee) learned for the process-power sequence tensor (PPSEEP), and the weight V tensor (Wvplee), i.e., by matrix multiplication.

[0197] Meanwhile, as seen in FIG. 13 above, when the process-power sequence tensor (PPSEEP) is calculated through step S308 during the operation process of FIG. 3a, the control unit (100) can perform an attention operation of the loop corresponding to the third procedure among the pre-set placement procedures for the construction of the plant. In this case, if the third loop is the structure loop, the control unit (100) can perform step S310 of FIG. 3a, which performs an attention operation on the placement positions of the entities of the structure loop.

[0198] FIG. 15 is a flowchart illustrating in more detail the operation process of step S310, which determines the placement positions of entities of the structure loop through an attention operation during the operation process of FIG. 3a.

[0199] Referring to FIG. 15, when the process-power sequence tensor (PPSEEP) is calculated in step S308 of FIG. 3a, the control unit (100) of the plant construction automation device (10) according to an embodiment of the present invention can control the grid setting unit (110) to calculate the statistical probability of existence for each grid on the grid for each entity of the structural loop, which is the third loop, i.e., each of the structural entities (S1500).

[0200] Then, for each structural entity, statistical probabilities of existence for each grid on the grid can be calculated. In this case, if the grid is formed with 100 grids as in the process loop and power loop described above, statistical probabilities of existence for each structural entity for each of the 100 grids can be calculated. In this case, the control unit (100) can match each structural entity with the statistical probabilities of existence for each grid on the grid corresponding to each structural entity to form a grid existence probability-entity unique information table containing the probability of existence on the grid for each grid for all structural entities (S1502).

[0201] Here, the grid presence probability-entity unique information table calculated for the above-mentioned structural entities may have a form similar to the grid presence probability-entity unique information table generated for the process entities illustrated in FIG. 5. That is, the grid presence probability-entity unique information table of the above-mentioned structural loop may be formed by including an 'Entity Embedding tensor' column representing unique information in which codes representing different attributes of each entity are merged, and an 'Entity presence probability tensor' column representing the presence probabilities for each grid cell of each entity.

[0202] When the grid existence probability-entity unique information table of the structural loop is formed in this manner, the control unit (100) can control the input tensor generation unit (120) to generate a two-dimensional numerical array, i.e., a matrix, consisting of the entity's unique information and the existence probability for each grid cell on the grid, for each entity. In this case, the control unit (100) can generate a matrix in which the entity's unique information is the first axis and the existence probability for each grid cell on the grid is the second axis, just as in the case of the process loop and the power loop. And for each entity, a grid-entity matrix can be generated in which the entity's unique information is the first axis and the existence probability for each grid cell on the grid is the second axis.

[0203] When a grid-entity matrix is ​​generated for each entity of the structure loop, the control unit (100) can superimpose the grid-entity matrix generated for each of all entities of the structure loop based on the first axis and the second axis. Accordingly, the input tensor generation unit (120) can generate a structure loop input tensor (STSEEI) in which the grid-entity matrix is ​​superimposed as many times as the total number of entities of the structure loop (S1504).

[0204] In this case, the structure loop input tensor (STSEEI) can be generated by sequentially overlapping grid-entity matrices created for each entity of the structure loop according to the serial number of each entity. Here, since the unique information of the entities has the same number of codes and the target area is also the same, the number of codes of the unique information of the entities and the number of grid cells can be the same as in the case of the process loop and power loop. Therefore, it can consist of 6 codes and 100 grid cells. Thus, when the number of entities in the structure loop is 16, the structure loop input tensor (STSEEI) can be formed as a tensor that is a 3-dimensional numeric array having dimensions of [16, 6, 100]. That is, the structure loop input tensor (POSEEI) can have dimensions of [STSd, Ld, Lg] depending on the number of entities in the structure loop (STSd), the entity embedding size (Ld) based on the unique information digits of the entities, and the grid grid number (Lg).

[0205] Meanwhile, when a structure loop input tensor (STSEEI) is generated in step S1504, the control unit (100) can control the attention unit (130) to perform an attention operation on the structure loop input tensor (STSEEI). To do this, the control unit (100) can first calculate attention variables Q tensor (Q.stsee), K tensor (K.stsee), and V tensor (V.stsee) for the structure loop input tensor (STSEEI) based on the previously learned structure loop attention weight Q tensor (Wqstsee), weight K tensor (Wkstsee), and weight V tensor (Wvstsee) (S1006).

[0206] Here, the weight Q tensor (Wqstsee), weight K tensor (Wkstsee), and weight V tensor (Wvstsee) may be weights learned through the learning of the artificial intelligence unit (150) according to the arrangement structure of structural entities in a number of prior plant construction cases. In this case, the control unit (100) can detect structural loop attention weight values ​​suitable for constraints input by the user among different types of previously learned structural loop attention weight values. For example, the control unit (100) can detect structural loop attention weight values ​​learned from prior cases suitable for the size and shape of the target area and at least one requirement set by the user.

[0207] When the previously learned structure loop attention weight values ​​are determined, the control unit (100) can multiply the structure loop input tensor (STSEEI) calculated in step S1504 by the structure loop attention weight Q tensor (Wqstsee), the weight K tensor (Wkstsee), and the weight V tensor (Wvstsee), respectively. In this case, the previously learned structure loop attention weight values ​​may be a tensor having a size of [Ld, Lg, Lg] in which a matrix formed with a first axis and a second axis according to the grid number (Lg) is overlapped by an entity embedding size (Ld) according to the unique information digits of the entities.

[0208] And when the matrix multiplication of the structure loop input tensor (STSEEI) and each of the weight tensors is performed, each attention variable (Q.stsee, K.stsee, V.stsee) having the same dimension size [STSd, Ld, Lg] as the structure loop input tensor (STSEEI) can be produced.

[0209] Meanwhile, when each attention variable (Q.stsee, K.stsee, V.stsee) of the structure loop is calculated, the control unit (100) can perform an attention operation using a softmax function on each attention variable of the structure loop (S1508).

[0210] In this case, the above attention operation calculates a transpose matrix for each of the attention variables, namely the query value Q and the key value K, as shown in Equation 1 above, and the calculated transpose matrices (Q T , K T This can be achieved by multiplying the result of the softmax function operation on the product of ) by the result value V among the attention variables of the structure loop.

[0211] However, in the case of the above structure loop, there exists a process loop and a power loop as preceding loops. Accordingly, the attention operation performed in step S1508 may be an encoding-decoding attention operation that encodes a process-power sequence tensor, which is a tensor combining the attention operation results calculated in the first loop and the second loop—i.e., the process loop and the power loop—that was performed before the third loop, the structure loop, as an input to the current loop, i.e., the structure loop, and decodes it as a result for the structure loop.

[0212] To perform such encoding-decoding attention operations, the control unit (100) may receive the attention variables Q tensor (Q.pplee) and K tensor (K.pplee), calculated for the combined tensor, i.e., the process-power sequence tensor, calculated in step S308 of FIG. 3, as the Q value and K value of Equation 1, respectively. Accordingly, the control unit (100) receives transpose matrices (Q) for each of the attention variables Q tensor (Q.pplee) and K tensor (K.pplee), calculated for the process-power sequence tensor. T , K T Calculate ) and the calculated transpose matrices (Q T , K TThe result of the softmax function operation for the product of ) can be multiplied by the attention variable V tensor (V.stsee) calculated by the weight tensor (Wvstsee) of the structure loop and the structure loop input tensor (STSEEI) in step S1506 to perform the attention operation of step S1508.

[0213] Meanwhile, when the attention result of the structure loop is obtained through the above S1508 step, the control unit (100) can check whether self-attention has been performed a preset number of times (S1510). Preferably, the number of times self-attention is set to 6 times, similar to the case of the process loop.

[0214] If, as a result of the check in step S1510 above, self-attention is not performed for a preset number of times, the control unit (100) can input the attention result of the structure loop currently calculated back into step S1506 as the input tensor (STSEEI) of the structure loop. Then, step S1506, which calculates attention variables, can be performed again. Accordingly, new attention variables (Q tensor (Q.stsee), Q tensor (Q.stsee), and V tensor (V.stsee)) can be calculated by multiplying the attention result of the structure loop calculated in step S1508 above by each previously learned weight tensor, weight Q tensor (Wqstsee), weight K tensor (Wkstsee), and weight V tensor (Wvstsee), respectively.

[0215] Then, proceeding back to step S1508, the encoding-decoding attention operation can be performed again on the newly calculated attention variables (Q tensor (Q.stsee), Q tensor (Q.stsee), and V tensor (V.stsee)). Whenever the attention operation, which is performed by receiving its own output as its own input, is performed once in this way, the control unit (100) can check that self-attention has been performed once.

[0216] Then, the control unit (100) can proceed again to step S1510 to check whether self-attention has occurred a preset number of times. If the number of times self-attention has occurred does not reach the preset number, the control unit can proceed to step S1512 to input the attention result of the currently calculated structure loop as the input tensor (STSEEI) of the structure loop, and repeat the process from step S1506 to step S1508. Accordingly, the self-attention process from step S1506 to step S1512 can be repeated.

[0217] However, if the check result of step S1510 above indicates that self-attention has been performed a preset number of times, the control unit (100) may output the attention result calculated in step S1508 above as the attention operation result of the structure loop (S1514). Hereinafter, the final output result of the structure loop calculated through the preset number of self-attentions will be referred to as the structure sequence tensor (STSEEP).

[0218] Meanwhile, as seen in FIG. 4 above, when the structural sequence tensor (STSEEP) is calculated through step S310 during the operation process of FIG. 3a, the control unit (100) can perform an attention operation of the loop corresponding to the next procedure among the pre-set placement procedures for building the plant.

[0219] Meanwhile, as seen in FIGS. 13 and 14 described above, the control unit (100) according to an embodiment of the present invention can combine the result values ​​of the preceding loops when there are multiple result values ​​of the preceding loops. The combined result values ​​of the preceding loops can be used as inputs for the attention operation of the next loop.

[0220] Accordingly, when the result value for the third loop, the structure loop, is calculated in step S310, the control unit (100) of the above-mentioned plant construction automation device (10) can combine the result values ​​of the loops calculated so far. In this case, since the result values ​​of the first loop and the second loop, that is, the process loop and the power loop, have already been combined to generate a process-power sequence tensor, the control unit (100) can proceed to step S312 of FIG. 3a and further combine the structure sequence tensor (STSEEP) with the process-power sequence tensor (PPSEEP) generated in step S308 of FIG. 3a to combine the result values ​​for each loop for which attention operations have been performed so far.

[0221] In this case, the structure sequence tensor (STSEEP) can be combined with the process-power sequence tensor (PPSEEP) in a manner similar to how the process sequence tensor (PRSEEP) and the power sequence tensor (POSEEP) are combined with each other. That is, the control unit (100) can combine dimensions that differ from each other based on dimensions that have the same size in the process-power sequence tensor (PPSEEP) and the structure sequence tensor (STSEEP).

[0222] FIG. 16 is a conceptual diagram showing the dimension size of the structure sequence tensor calculated from the structure loop, the process-power sequence tensor, and the process-power-structure sequence tensor calculated according to the structure sequence tensor and the process-power sequence tensor.

[0223] As shown in FIG. 16, the process-power sequence tensor (PPSEEP) may be a tensor created by overlapping a matrix [Ld, Lg] of a common size based on the entity embedding size (Ld) based on the unique information digits of the entities and the grid number (Lg) of the grid, by the number of entities in the process loop and the number of entities in the power loop. The structure sequence tensor (STSEEP) may be a tensor created by overlapping a matrix [Ld, Lg] of a common size based on the entity embedding size (Ld) based on the unique information digits of the entities and the grid number (Lg) of the grid, by the number of entities in the structure loop. Therefore, the size of the overlapping matrix [Ld, Lg] may be common. Consequently, the structure sequence tensor (STSEEP) and the process-power sequence tensor (PPSEEP) can be overlapped based on the matrix [Ld, Lg] having a common size. Hereinafter, the tensor formed by combining the process sequence tensor (PRSEEP), the power sequence tensor (POSEEP), and the structure sequence tensor (STSEEP) as described above will be referred to as the process-power-structure sequence tensor (TOPOSTI).

[0224] In this case, as shown in FIG. 16, the process-power-structure sequence tensor (TOPOSTI) has the same size [Ld, Lg] of the reference matrix, but the number of entities can correspond to the sum of the number of entities in the power loop (POSd) and the number of entities in the process loop (PRSd) (PPLd) plus the number of entities in the structure loop (STSd). That is, the process-power-structure sequence tensor (TOPOSTI) can have the number of entities in the structure loop (STSd), the sum of the number of entities in the power loop (POSd) and the number of entities in the process loop (PRSd) (TOPOSTd), the entity embedding size (Ld) according to the number of unique information digits of the entities, and the size [TOPOSTd, Ld, Lg] according to the number of grid cells (Lg).

[0225] Then, the control unit (100) can check whether there is a loop to be performed next. And if there is another loop to be performed next, attention variables Q tensor, K tensor, and V tensor can be calculated based on previously learned attention weights for the currently calculated process-power-structure sequence tensor (TOPOSTI), that is, attention weight Q tensor, weight K tensor, and weight V tensor learned for the process-power-structure sequence tensor (TOPOSTI). And when attention variables Q tensor, K tensor, and V tensor are calculated, attention operation for the next loop, that is, encoding-decoding attention operation, can be performed.

[0226] However, if there is no loop to be performed in the next step, that is, if attention operations have been performed for all loops, the control unit (100) can output a combined tensor of the result of the attention operation of the currently calculated loop as the result of the attention operation for all loops, i.e., pre-set batch procedures for building the plant. Therefore, if the batch procedures for building the plant of the present invention are composed of three loops, such as the first loop (process loop), the second loop (power loop), and the third loop (structure loop), the control unit (100) can have the process-power-structure sequence tensor (TOPOSTI) calculated in step S312 of FIG. 3a as the result of the attention operation for all loops for building the plant. In this case, if there are other loops, the control unit (100) can input attention variables (Q value, K value) calculated from the process-power-structure sequence tensor (TOPOSTI) into the encoding-decoding attention operation of the other loop. And when the encoding-decoding attention operation and self-attention operation of the other loop are completed, the process of combining the result of that loop with the process-power-structure sequence tensor (TOPOSTI) can be performed again.

[0227] Meanwhile, for the sake of convenience of explanation, assuming that the plant placement procedure consists of three loops—a process loop, a power loop, and a structure loop—as described above, the process-power-structure sequence tensor (TOPOSTI) can be calculated as the result of attention operations for all loops for the construction of the plant.

[0228] Then, the control unit (100) can proceed to step S314 of FIG. 3a to normalize the generated attention operation result, i.e., the process-power-structure sequence tensor (TOPOSTI), by multiplying it by a preset normalization weight.

[0229] Here, the normalization weight may be intended to expand the dimension size corresponding to the number of entities in the process-power-structure sequence tensor (TOPOSTI) according to the total number of entities included in the entity database.

[0230] Figure 17 is a conceptual diagram showing the dimensionality of the process-power-structure tensor normalized through normalization weights as described above.

[0231] As described above, it was assumed that there are 15 process entities, 14 power entities, and 16 structure entities. In this case, the process-power-structure sequence tensor (TOPOSTI) may include a total of 45 entities (15+14+16). That is, the process-power-structure sequence tensor (TOPOSTI) calculated according to the operation result of the present invention may be in a state that includes only some entities selected by the user for plant placement among entity databases for various entities.

[0232] In this case, if the number of entities included in the entity database is 1000 (LL), the normalization weight may be a tensor having a 3-dimensional numeric array [LL, Ld, Lg] filled with numbers, for example '0' or '1', to fill the digits corresponding to the 1000 entities in a plane consisting of the number of codes (Ld) and the number of grid cells (Lg) according to the unique information of the entities, identical to the process-power-structure sequence tensor (TOPOSTI). Accordingly, when the process-power-structure sequence tensor (TOPOSTI) and the normalization weight are multiplied, a normalized result tensor (TOPOST) can be generated, as shown in FIG. 17, which consists of the size of the total number of entities included in the entity database (LL), the number of codes (Ld) according to the unique information of the entities, and the number of grid cells (Lg) in a 3-dimensional numeric array. In this case, the normalized result tensor (TOPOST) may be a tensor in which the existence probability for each grid cell of the grid is calculated significantly for each code according to a unique number, only for the entities corresponding to the process-power-structure sequence tensor (TOPOSTI) among the 1000 entities.

[0233] Then, the control unit (100) proceeds to step S316 of FIG. 3a and, based on the normalized result tensor (TOPOST), can determine the grid having the highest probability of existence among the statistical probabilities of existence of each grid within the grid corresponding to each entity as the location of each of the process entity, power entity, and structure entity.

[0234] For example, the control unit (100) may determine the grid having the highest probability of existence among the statistical probabilities of existence of each grid within the grid corresponding to each entity as the location of a specific part of the corresponding entity. That is, the control unit (100) may determine the grid location having the highest probability of existence for a specific entity as a location corresponding to the center of gravity of the specific entity. Alternatively, the control unit (100) may determine the grid location having the highest probability of existence for a specific entity as a location of any one of the upper end, lower end, or front / rear / left / right end of the specific entity. And the control unit (100) may display a 3D model corresponding to each entity corresponding to the determined location through the output unit (160).

[0235] Accordingly, the plant construction automation device (10) according to an embodiment of the present invention can automatically generate and output a virtual plant model in which components according to each plant placement procedure, i.e., entities for each loop, are placed in optimal positions according to the learning results according to a prior plant construction case.

[0236] Meanwhile, although specific embodiments have been described in the above description of the present invention, various modifications may be made without departing from the scope of the present invention. In particular, the embodiments of the present invention have been described using the case where the plant placement procedure consists of three loops as an example, but it goes without saying that the present invention is not limited thereto. That is, it goes without saying that the plant placement procedure may consist of as many loops as possible or more loops.

[0237] For example, if the plant placement procedure consists only of process loops and power loops, a process-power sequence tensor, which is the result of the process loop, and a power sequence tensor, which is the result of the power loop, can be combined and produced as the result of an attention operation for all loops for the construction of the plant. In this case, the control unit (100) can normalize the process-power sequence tensor and automatically determine the locations of each entity based on the statistical probability of existence on the grid corresponding to each entity.

[0238] On the other hand, if the plant placement procedure consists of four or more loops, the control unit (100) can generate a combined tensor by combining the results of the preceding loops whenever a self-attention operation for any one loop is completed. The attention variables produced from the combined tensor can be used as inputs for the encoding-decoding attention operation of the next loop. This process can be repeated. When the attention operation for all loops is completed, a result tensor formed by combining all the results of the attention operation can be produced as the result of the attention operation for all loops for plant construction. The produced result tensor can be normalized, and the locations of each entity can be automatically determined through the normalized result tensor.

[0239] Meanwhile, in the above description, the artificial intelligence unit (150) was described as having a configuration that performs learning, inference, etc. by a CPU. However, the above CPU refers to a control device that performs control of the artificial intelligence unit, and it is obvious that the above artificial intelligence unit (150) can be implemented not only by a CPU but also by a GPU (Graphics Processing Unit) or DPU (fata Processing Unit), etc., which can function as a control and computation device.

[0240] The above-described invention may be implemented as computer-readable code on a medium on which a program is recorded. A computer-readable medium includes all types of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable media include HDD (Hard Disk Drive), SSD (Solid State Disk), SSD (Silicon Disk Drive), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc., and also include implementation in the form of a carrier wave (e.g., transmission over the Internet). Furthermore, the computer may include a control unit (100) of a terminal. Accordingly, the above detailed description should not be interpreted restrictively in all respects and should be considered exemplary. The scope of the invention should be determined by a reasonable interpretation of the appended claims, and all modifications within the equivalent scope of the invention are included within the scope of the invention.

Claims

Claim 1 An input unit that receives information of a three-dimensional space where the components of a plant are to be placed, information of loops which are procedures according to a pre-set sequence for plant construction, and unique information of entities that are components of the plant to be placed in each loop; a grid setting unit that converts the three-dimensional space where the plant is to be placed into a grid, which is a three-dimensional grid-type phase space formed by a plurality of three-dimensional grids, and assigns unique information to each grid on the grid; and an input tensor generation unit that, for each loop, generates a grid-entity matrix based on the unique information of the entities of each loop and the statistical probability of existence for each grid where the entities of each loop exist in each grid on the grid, and generates an input tensor, which is a three-dimensional numerical array for attention operations of a transformer model corresponding to each loop, based on the grid-entity matrix and the number of entities of each loop. A memory storing attention weights for calculating attention variables, which correspond to each loop and are learned from multiple prior plant construction cases; an attention unit that calculates attention variables corresponding to each loop based on an input tensor generated for each loop and attention weights corresponding to each loop, and performs an attention operation based on an attention variable query (Q) value and a key (K) value calculated in relation to the result of a prior loop in which an attention operation was performed prior to the current loop in which the attention operation is performed, and an attention variable result value (V) calculated from the current loop, to produce an entity placement result of the current loop that reflects the entity placement result of the prior loop;A plant construction automation device comprising: a control unit that, for each entity of each loop, calculates the statistical probability of existence of each entity in each grid cell on the grid from a plurality of prior plant construction cases and generates the grid-entity matrix for each loop; and a control unit that determines the placement location of a plant component corresponding to each entity within the three-dimensional space by detecting the grid cell with the highest probability of existence of each entity from the entity placement result of the current loop reflecting the entity placement result of the prior loop; wherein the input tensor of each loop is formed by overlapping a grid-entity matrix, in which the unique information of the entity is the first axis and the probability of existence of each entity in each grid cell on the grid is the second axis, as many times as the number of entities, and has the number of entities in each loop, an embedding size according to the unique information of the entities, and a three-dimensional size according to the number of grid cells. Claim 2 A plant construction automation device according to claim 1, wherein the control unit generates a combined tensor by combining the attention results of each preceding loop when there are multiple preceding loops of the current loop in which an attention operation is performed, and the attention variable query (Q) value and key (K) value calculated in relation to the result value of the preceding loop are the attention variable query (Q) value and key (K) value for the combined tensor formed based on the attention weights previously learned for the combined tensor and the combined tensor. Claim 3 A plant construction automation device according to claim 2, wherein the combined tensor is a combination of tensors produced as attention results of each preceding loop, and a grid-entity matrix formed by overlapping the unique information of entities produced as attention results of each preceding loop and the statistical probability of existence of each entity of each preceding loop in each grid on the grid for each grid is formed by overlapping as many times as the total number of entities of the combined preceding loops. Claim 4 A plant construction automation device according to claim 1, wherein the attention operation comprises a query transpose matrix calculated for an attention variable query (Q) value calculated by the input tensor of the preceding loop and the attention query (Q) weight, a softmax function result for the matrix product of an attention variable key (K) value calculated by the input tensor of the preceding loop and the attention key (K) weight, and a matrix product of an attention variable result value (V) calculated by the input tensor of the current loop and the attention weight. Claim 5 A plant construction automation device according to claim 4, wherein the attention operation is characterized by comprising, in the case where there is no preceding loop, a result of a softmax function for the matrix product of an attention variable query (Q) value calculated by the input tensor of the current loop and the attention query (Q) weight, a key transpose matrix calculated by the input tensor of the current loop and the attention key (K) weight, and an attention variable result value (V) calculated by the input tensor of the current loop and the attention weight. Claim 6 delete Claim 7 A plant construction automation device according to claim 1, wherein the unique information of the entity is information in which codes representing different attributes of each entity are merged, and the embedding size has a size according to the number of each code merged in the unique information of the entity. Claim 8 A plant construction automation device according to claim 2, wherein the control unit performs a self-attention operation a preset number of times in which the attention result is input back into the attention unit as an input tensor when an attention operation is performed according to an attention variable query (Q) value and a key (K) value related to the result value of the preceding loop and an attention variable result value (V) calculated from the current loop, and outputs the self-attention result repeated a preset number of times as the final entity placement result of the current loop reflecting the entity placement result of the preceding loop. Claim 9 A plant construction automation device according to claim 1, wherein the control unit, when an attention operation for a final loop according to a preset order for plant construction is completed, combines a tensor calculated according to the attention result with a combined tensor of tensors calculated as attention results of each preceding loop, and performs normalization on the combined final result tensor using a preset normalization weight tensor. Claim 10 The plant construction automation device according to claim 1 further comprises an artificial intelligence unit that learns attention weights for calculating attention variables for each loop for plant construction based on statistical probabilities of existence for each grid on the grid from a plurality of preceding plant construction cases, and learns attention weights for calculating attention variables for each combined tensor in which the results of the preceding loops of each loop are combined. Claim 11 A plant construction automation device according to claim 1, wherein the loops comprise a first loop in which the attention operation is performed first, a second loop in which the attention operation is performed following the first loop, and a third loop in which the attention operation is performed following the second loop, wherein the first loop is a process loop in which production equipment according to the production process of the plant is arranged in the three-dimensional space, the second loop is a power loop in which power devices for supplying power to entities according to the process loop are arranged, and the third loop is a structure loop in which structures for forming a structure in which each component of the plant is supported and connected. Claim 12 A step of receiving input information of a three-dimensional space where the components of a plant are to be placed, information of loops which are procedures according to a pre-set sequence for plant construction, and unique information of entities that are components of the plant to be placed in each loop; a step of converting the three-dimensional space where the plant is to be placed into a grid, which is a three-dimensional grid-type phase space formed by a plurality of three-dimensional grids, and assigning unique information to each grid on the grid; a step of calculating, for each entity of each loop for each loop, the statistical probability of existence of each entity in each grid on the grid from a plurality of prior plant construction cases; and for a first loop among the loops, generating a grid-entity matrix based on the unique information of the entities of the first loop and the statistical probability of existence of each loop entity in each grid on the grid, and generating an input tensor, which is a three-dimensional numerical array for attention operations of a transformer model corresponding to the first loop, based on the grid-entity matrix and the number of entities of each loop. Step; calculating attention variables corresponding to the first loop based on the input tensor of the first loop and attention weights previously learned for the first loop; determining whether there is a preceding loop for which an attention operation has been performed prior to the current loop in which the attention operation is being performed; if there is no preceding loop, performing an attention operation based on the attention variable query (Q) value and key (K) value of the current loop and the attention variable result value (V) calculated from the current loop, and if there is a preceding loop, performing an attention operation based on the attention variable query (Q) value and key (K) value calculated in relation to the result value of the preceding loop and the attention variable result value (V) calculated from the current loop; repeating the steps of generating the input tensor, calculating the attention variables, determining whether there is a preceding loop, and performing the attention operation for the next loop among the loops;A control method for an automated plant construction device, comprising the step of determining the placement location of a plant component corresponding to each entity within the three-dimensional space by detecting the grid with the highest probability of existence for each entity of each loop from a combined tensor formed by combining the tensor calculated according to the attention result of the final loop among the above loops and the tensors calculated according to the attention result of each preceding loop, when the attention operation for the final loop among the above loops is completed; wherein the input tensor of each loop is formed by overlapping a grid-entity matrix, in which the unique information of the entity for each loop is the first axis and the probability of existence for each entity on the grid is the second axis, as many times as the number of entities, and having the number of entities of each loop, an embedding size according to the unique information of the entities, and a three-dimensional size according to the number of grid cells. Claim 13 In claim 12, the step of performing the attention operation further includes the step of performing a self-attention operation a predetermined number of times by inputting the result of the attention operation into the input tensor and performing the attention operation again, wherein the self-attention operation is characterized in that, in the case where there is no preceding loop, the attention variable query (Q) value and key (K) value of the current loop and the attention result according to the attention variable result value (V) are input into the input tensor to recalculate the attention variables and perform the attention operation again based on the recalculated attention variables, and in the case where there is a preceding loop, the attention variable query (Q) value and key (K) value related to the result value of the preceding loop and the attention result according to the attention variable result value (V) calculated from the current loop are input into the input tensor to recalculate the attention variables and perform the attention operation again based on the recalculated attention variables. Claim 14 In claim 12, the attention operation comprises, in the absence of the preceding loop, the result of a softmax function on the matrix product of the attention variable query (Q) value calculated by the input tensor of the current loop and the attention query (Q) weights, the key transpose matrix calculated by the input tensor of the current loop and the attention variable key (K) value calculated by the attention key (K) weights, and the attention variable result value (V) calculated by the input tensor of the current loop and the attention weights; and in the presence of the preceding loop, the result of a softmax function on the matrix product of the attention variable query (Q) value calculated by the input tensor of the preceding loop and the attention query (Q) weights, and the key transpose matrix calculated by the input tensor of the preceding loop and the attention variable key (K) value calculated by the attention key (K) weights. A control method for a plant construction automation device characterized by comprising a result and a matrix multiplication of an attention variable result value (V) calculated by the input tensor of the current loop and the attention weight. Claim 15 A control method for a plant construction automation device according to claim 12, wherein the step of determining whether there is a preceding loop further comprises: a step of determining whether there are multiple preceding loops if there is a preceding loop; a step of generating a preceding combined tensor by combining the attention results of each preceding loop if there are multiple preceding loops; and a step of calculating an attention variable query (Q) value and a key (K) value for the preceding combined tensor, which are formed based on the attention weights learned for the preceding combined tensor and the preceding combined tensor.

Citation Information

Patent Citations

  • Method and apparatus for cad based industrial plant and semiconductor facility design

    KR102021980B1

  • Attention-based sequence transduction neural networks

    US20180341860A1