Information processing method, program, and information processing apparatus
The method allows users to update IFC files using natural language input, converting it into IFC codes through a language generation model, addressing the need for specialized knowledge and operational burden in current technologies.
Patent Information
- Application Number
- JP2023098000
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-14
- Publication Date
- 2024-12-26
AI Technical Summary
Updating IFC files requires specialized knowledge and is operationally burdensome, as current technologies necessitate precise specification of objects for attribute information updates.
An information processing method that uses a language generation model to convert natural language update information into IFC codes, allowing users to update IFC files without specialized knowledge by inputting text, voice, or image data, and generating IFC codes through a process that divides and edits the information into manageable items.
Enables users to update IFC files efficiently and accurately, reducing the need for specialized knowledge and minimizing operational burden, while ensuring the generated IFC codes reflect intended changes.
Smart Images

Figure 2024179282000001_ABST
Abstract
Description
[Technical field]
[0001] The present disclosure relates to an information processing method, a program, and an information processing device. [Background technology]
[0002] In recent years, before actually constructing structures such as civil engineering structures and architectural structures, 3D (three-dimensional) models of structures are constructed on a computer to prevent design and construction errors and reduce construction man-hours. BIM (Building Information Modeling) models are used as such 3D models. In a BIM model, not only the shape of the structure and the shapes of objects (building material parts, etc.) used in each position (location) of the structure can be stored, but also various attribute information about the objects. In addition to information such as material, size, shape, and model number, attribute information of objects can include information such as the designer, design policy, procurement date, information on the process used, time required for assembly, and price. By using such a BIM model, not only the size and shape of structures and objects that can be known from general drawings, but also the construction man-hours, price, and progress of each process can be grasped.
[0003] The IFC (Industry Foundation Classes) format is used as the file format for saving BIM models. In an IFC file, all information written is linked, so if, for example, the shape of a part of a structure or object is changed, the changes are reflected in drawings such as floor plans, elevations, and sections, and are also automatically reflected in area tables such as building area, site area, and floor area, quantity lists and price lists for objects, and the progress of each process. Therefore, information on the structure can be shared from the design stage to the construction stage, and even in the maintenance stage after construction, making work more efficient at each stage.
[0004] The IFC file is also used for managing the progress status during the construction stage, for example, by being created by a designer during the design stage, and by a contractor during the construction stage performing the construction of each process according to the contents of the IFC file and updating the progress status of each process. For example, Patent Document 1 discloses a technology in which a self-propelled robot acquires data on an object while moving around the object, and updates the attribute information of a BIM stored in a database based on the acquired data. By using such a technology, a user can update the attribute information of a BIM by specifying an object for which attribute information is to be updated and remotely controlling the self-propelled robot. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Patent Publication No. 2022-128846 Summary of the Invention [Problem to be solved by the invention]
[0006] Since an IFC file needs to be written according to prescribed rules, specialized knowledge is required to update the IFC file. Also, in the technology of Patent Document 1, the user needs to properly specify the object whose attribute information should be updated. Therefore, there is a demand for a technology that can update an IFC file without requiring specialized knowledge and with a reduced operational burden on the user.
[0007] In one aspect, an object of the present invention is to provide an information processing method etc. that enables updating of IFC files without requiring specialized knowledge. [Means for solving the problem]
[0008] In one aspect of the information processing method, a computer executes a process of acquiring update information indicating update contents for a 3D model of a civil engineering structure generated using BIM, inputting the acquired update information into a language generation model that generates IFC information related to IFC corresponding to the BIM when the update information is input, and generating IFC information corresponding to the update information. Effect of the Invention
[0009] On the one hand, it allows updates to IFC files without requiring specialized knowledge. [Brief description of the drawings]
[0010] [Figure 1] 1 is a block diagram showing an example of the configuration of an information processing device; [Diagram 2] 13 is a flowchart illustrating an example of an IFC file update processing procedure. [Diagram 3] FIG. 13 is an explanatory diagram showing an example of a screen. [Figure 4] FIG. 13 is an explanatory diagram showing an example of a screen. [Diagram 5] FIG. 13 is an explanatory diagram showing an example of a screen. [Figure 6] FIG. 11 is an explanatory diagram showing an example of the configuration of a learning model of the second embodiment. [Figure 7] 13 is a flowchart showing an example of an IFC file update processing procedure according to the second embodiment. [Figure 8] FIG. 13 is an explanatory diagram showing an example of a screen. [Figure 9] 13 is a flowchart showing an example of an IFC file update processing procedure according to the third embodiment. [Figure 10] FIG. 13 is an explanatory diagram showing an example of a screen. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Hereinafter, an information processing method, a program, and an information processing device according to the present disclosure will be described in detail with reference to the drawings showing embodiments thereof.
[0012] (Embodiment 1) In this embodiment, an information processing device that updates the contents of an IFC file that represents a 3D model (BIM model) of a civil engineering structure such as a bridge or road, generated using BIM, based on an instruction (prompt) in natural language (text data) will be described. In the information processing device of this embodiment, for example, a designer creates (constructs) an IFC file in the design stage of a civil engineering structure, and supports the work of an operator updating the IFC file when the design contents are changed or objects used in the civil engineering structure are changed before or during construction, and when each process is completed during the construction stage. In this embodiment, an example will be described in which Japanese is used as the natural language, but the natural language is not limited to Japanese. FIG. 1 is a block diagram showing an example of the configuration of an information processing device.
[0013] The information processing device 10 is a computer capable of various information processing and transmitting and receiving information, and is a server computer, a personal computer, a general-purpose tablet terminal, or the like. The information processing device 10 includes a control unit 11, a storage unit 12, a communication unit 13, an input unit 14, a display unit 15, a reading unit 16, and the like, and these units are connected to each other via a bus. The control unit 11 is configured using one or more processors such as a CPU (Central Processing Unit), an MPU (Micro-Processing Unit), a GPU (Graphics Processing Unit), an FPGA (Field Programmable Gate Array), a DSP (Digital Signal Processor), or a quantum processor. The control unit 11 executes various information processing and control processing to be performed by the information processing device 10 by appropriately executing a control program P stored in the storage unit 12.
[0014] The storage unit 12 includes a RAM (Random Access Memory), a flash memory, a hard disk, an SSD (Solid State Drive), and the like. The storage unit 12 stores a control program P (program product) executed by the control unit 11 and various data required for executing the control program P. The storage unit 12 also temporarily stores data and the like generated when the control unit 11 executes the control program P. The storage unit 12 also stores a language generation model M. The language generation model M is a general-purpose large-scale language model (LLM: Large Language Models) constructed by performing pre-learning using a large-scale group of sentences and a group of images. The language generation model M has been trained to perform a calculation to generate an IFC code according to the contents of the input data based on the input data when input data including, for example, text data and image data describing information on the contents of an IFC file (IFC code) representing a BIM model in a natural language is input, and to output the generated IFC code as output data. The language generation model M can be configured using algorithms such as GPT (Generative Pre-trained Transformer)-3, GPT-3.5, GPT-4, etc., and may be configured by combining a plurality of algorithms. The language generation model M is not limited to the above-mentioned transformer-based model. The language generation model M is expected to be used as a program module constituting artificial intelligence software. The language generation model M performs a predetermined calculation on input data and outputs the calculation result, and the storage unit 12 stores data such as coefficients and thresholds of functions that define this calculation as the language generation model M. Instead of storing the language generation model M in the storage unit 12, the information processing device 10 may access a language processing server that stores the language generation model M and read it out.
[0015] Furthermore, the storage unit 12 stores the BIM simulator S. The BIM simulator S is software that constructs a 3D model of a civil engineering structure using a known BIM model construction technique. Specifically, the control unit 11 executes the BIM simulator S to generate a 3D model of each object constituting the civil engineering structure based on the IFC code described in the IFC file. For example, the BIM simulator S generates 3D point cloud data indicating the 3D shape of each object based on the IFC code related to a plurality of objects, and generates mesh data from the generated 3D point cloud data to generate a 3D model of each object. The mesh data is data that indicates the three-dimensional shape of the surface of each object by using points included in the point cloud data as vertices and triangular or quadrangular faces combining the vertices. The BIM simulator S also constructs a 3D model of the structure by placing the 3D model of each object at each position. Instead of storing the BIM simulator S in the storage unit 12, the information processing device 10 may access a server that stores the BIM simulator S and use it.
[0016] The communication unit 13 is a communication module for performing processes related to wired or wireless communication, and transmits and receives information to and from other devices via a network. The network may be the Internet or a public telephone line network, or may be a LAN (Local Area Network) constructed in a facility where the information processing device 10 is installed. The input unit 14 accepts an operation input by a user, and sends a control signal corresponding to the operation content to the control unit 11. The input unit 14 includes, for example, a keyboard and a mouse, and a microphone for voice input. The display unit 15 is a liquid crystal display or an organic EL (electroluminescence) display, and displays various information according to instructions from the control unit 11. A part of the input unit 14 and the display unit 15 may be a touch panel configured as an integrated unit.
[0017] The reading unit 16 reads information stored in a portable storage medium 10a including a CD (Compact Disc), a DVD (Digital Versatile Disc), a USB (Universal Serial Bus) memory, an SD (Secure Digital) card, etc. The control program P stored in the storage unit 12 may be read by the control unit 11 from the portable storage medium 10a via the reading unit 16 and stored in the storage unit 12. The control program P may be written in the storage unit 12 during the manufacturing stage of the information processing device 10, or may be downloaded by the control unit 11 from another device via the communication unit 13 and stored in the storage unit 12.
[0018] In this embodiment, the information processing device 10 may be a multi-computer consisting of multiple computers, or may be a virtual machine virtually constructed by software in one device. In addition, when the information processing device 10 is configured as a server computer, the information processing device 10 may be a local server installed in a facility where the information processing device 10 is installed, or may be a cloud server connected to the information processing device 10 via a network such as the Internet. In the following, the information processing device 10 will be described as being one computer. In addition, the control program P may be arranged on a single computer or at one site, or may be distributed across multiple sites and distributed and executed on multiple computers connected to each other via a network. Furthermore, the input unit 14 and the display unit 15 are not essential for the information processing device 10, and the information processing device 10 may be configured to accept operations through a connected computer, or may be configured to output information to be displayed to an external display device. In addition, the storage unit 12 of the information processing device 10 may be configured by multiple storage devices, or may include an external storage device connected to the information processing device 10.
[0019] When updating an IFC file, the information processing device 10 having the above-mentioned configuration receives update information indicating the update contents as text data described in a natural language, such as text data input via the input unit 14, text data converted from voice data spoken in a natural language, and text data generated from an image by an OCR (Optical Character Recognition) function.The information processing device 10 then executes a process of generating an IFC code corresponding to the received update information from the update information, using a language generation model M.In this way, the information processing device 10 of this embodiment uses the language generation model M when generating an IFC code from the update information.
[0020] The language generation model M of this embodiment is generated by machine learning (fine tuning, transfer learning) using training data in which text data describing information on the contents of an IFC file (IFC code) in natural language and an IFC code (correct IFC code) corresponding to the contents indicated by the text data are associated. The text data used for the training data includes information on the work that requires updating the IFC code, such as information on changes in design contents, changes in objects to be used, and completion of each process. The correct IFC code includes the code number and code contents of the IFC code to be updated corresponding to the contents indicated by the text data, and may be the IFC code after updating. The language generation model M has an input layer for receiving input of text data, an output layer for outputting an IFC code estimated based on the input text data, and an intermediate layer for performing arithmetic processing between the input layer and the output layer. When text data included in the training data is input via the input layer, the language generation model M learns to output the correct IFC code included in the training data. Specifically, the language generation model M performs calculations based on the input text data, estimates an IFC code according to the contents of the text data, and outputs the estimation result. Then, the language generation model M compares the output estimation result (IFC code) with the correct IFC code, and optimizes various parameters such as the weights (coupling coefficients) between neurons in the intermediate layer and the coefficients of the activation function by using the steepest descent method, the backpropagation method, or the like so that the two are close to each other. In this way, when text data is input, a language generation model M is obtained that outputs an IFC code according to the contents of the input text data. The language generation model M may be trained by the information processing device 10 or by another learning device. The trained language generation model M that has been trained and generated by the other learning device is downloaded from the learning device to the information processing device 10 via a network or a portable storage medium 10a, for example, and stored in the storage unit 12.
[0021] The process of updating an IFC file by the information processing device 10 of this embodiment will be described below. Fig. 2 is a flowchart showing an example of the IFC file update process procedure, and Figs. 3 to 5 are explanatory diagrams showing example screens. The following process is executed by the control unit 11 of the information processing device 10 in accordance with a control program P stored in the storage unit 12.
[0022] After a civil engineering structure is designed and an IFC file is created, when, for example, before construction or during the construction stage, the design content is changed, or an object used in the civil engineering structure is changed, or when each process is completed during the construction stage, the user (worker) updates the IFC file. In this embodiment, the user inputs update information indicating the update content for the created IFC file, such as a change in the design content, a change in an object, or the completion of each process, to the information processing device 10, and the information processing device 10 executes an update process for the IFC file based on the input update information.
[0023] The control unit 11 of the information processing device 10 acquires the update information input by the user via the input unit 14, and displays it on the display unit 15 (S11). For example, the control unit 11 displays an input screen for update information as shown in FIG. 3A on the display unit 15, and accepts the input of the update information via the input screen. The screen shown in FIG. 3A has an input field A1 for accepting the update information by text input in natural language. The input field A1 is configured to accept the input of the update information not only by text input, but also by voice input and image input via a microphone, and a voice input button A2 and an image input button A3 are provided in association with the input field A1. When inputting the update information by text input, the user inputs the update information including the design change contents, the work contents, the progress status, and the like into the input field A1. The control unit 11 of the information processing device 10 acquires the text data input into the input field A1 as update information, and displays the acquired update information in the input field A1.
[0024] When inputting update information by voice input, the user operates the voice input button A2, and then speaks the update information including the design change contents, the work contents, the progress status, etc. When the voice input button A2 is operated on the screen of FIG. 3A, the control unit 11 of the information processing device 10 collects sound using the microphone of the input unit 14, acquires the voice data uttered by the user, generates text data of the spoken contents by performing voice recognition processing on the acquired voice data, and acquires the generated text data as update information. When the control unit 11 acquires update information from the user's voice, it displays the acquired update information in the input field A1. Note that the voice uttered when inputting update information may not only be the voice uttered by one user, but may also be the voice uttered by multiple users conversing. For example, update information may be input by voice uttered (conversation voice) in a meeting where multiple users (workers) make work reports or business reports at the completion of work in each process, the end of work for the day, etc.
[0025] When inputting update information by image input, the user operates the image input button A3 and then selects an image file to be input. When the image input button A3 is operated on the screen of FIG. 3A, the control unit 11 displays a selection screen (not shown) for selecting an arbitrary image file stored in the storage unit 12 or the like, accepts the selection of an image file containing update information via the selection screen, and acquires the selected image file as update information. The image file here is a file containing an image in which the update contents are described in characters (natural language), and for example, an image file obtained by scanning a paper on which the update contents are handwritten can be used. The image file may also contain text data in addition to the image. When acquiring update information by an image file, the control unit 11 may generate text data from an image included in the image file by an OCR function, and acquire the generated text data as update information. When acquiring update information by image input, the control unit 11 may display the file name of the acquired image file or the contents of the image file (the image itself) in the input field A1, or may display text data generated from the image file by the OCR function in the input field A1. The input field A1 may be configured to accept input of update information in the form of a text file in which the update contents are written as text data, a portable document format (pdf) file, a Word file, a computer aided design (CAD) file, or the like.
[0026] The input field A1 is configured to accept edits to the input and displayed update information. The displayed update information can also be edited (modified) by text input, voice input, or image input. For example, the control unit 11 is configured to accept an insertion position designation by clicking with a mouse on any position of the update information displayed in the input field A1, and accepts contents to be inserted by text input, voice input, or image input, thereby accepting edits to the displayed update information. Thus, the user checks the update information displayed in the input field A1, and if necessary, modifies (edits) the update information as appropriate. The screen in FIG. 3A is provided with an OK button for issuing an instruction to execute a process of generating an IFC code from the input update information, and the user operates the OK button when appropriate update information is displayed in the input field A1.
[0027] The control unit 11 judges whether or not the OK button has been operated (S12), and if it judges that it has not been operated (S12: NO), it returns to step S11 and continues to obtain the input or edited update information (S11). If it judges that the OK button has been operated (S12: YES), the control unit 11 divides the update information input through the input field A1 into each of a plurality of items (items related to IFC) used for creating an IFC code (S13). Hereinafter, each divided update information will be described as divided update information. The control unit 11 displays the divided update information divided into each item on the display unit 15 (S14). For example, as shown in FIG. 3B, the control unit 11 displays the divided update information divided into each item in addition to the display contents of the screen of FIG. 3A. The screen shown in FIG. 3B has a display field A4 that displays the divided update information of each item in association with each item. In the example shown in FIG. 3B, the items of date and time, target structure, target component (target object), target parameter, and change content are displayed as the items by which the update information is divided. The date and time field includes information on the date and time when the IFC code is updated by the update information, such as the date and time when the design content was changed, and the date and time when each process was completed. The target structure field includes information on the civil engineering structure whose IFC code is updated by the update information. The target component field includes information on the object whose IFC code is updated by the update information, such as the information on the object whose design content has been changed. The target parameter field includes information on parameters related to the target object whose IFC code is updated by the update information, and the change content field includes information on specific changes to the target parameters. The target parameters include, for example, the size, material, shape, model number, procurement method, and procurement status of the object to be updated. Note that the types of items into which the update information is divided are not limited to these, and may be configured to be appropriately changed depending on the company, industry, etc. to which the user belongs.
[0028] In the example shown in FIG. 3B, the divided update information for each item is obtained by dividing the update information entered in the input field A1 by item. Specifically, in step S13, the control unit 11 extracts content corresponding to each item from the entered update information, and sets the content as divided update information for each item. For example, the control unit 11 registers keywords, types of keywords, etc. that may appear as information for each item in association with each item, and identifies content (divided update information) corresponding to each item by extracting keywords for each item from the entered update information. The control unit 11 may also make corrections to the extracted divided update information for each item. For example, in the example shown in FIG. 3B, the entered update information does not include date and time information, but the control unit 11 may set the date and time at this time as the divided update information for the date and time item. For other items, the control unit 11 may also make corrections by adding supplementary information as appropriate to the information (wording) extracted from the update information. For example, the control unit 11 may register supplementary information to be added or modified as information of each item in the storage unit 12 in association with each item, and when extracting information (split update information) corresponding to each item from the update information, may specify supplementary information to be added to the extracted information, and may generate (modify) split update information corresponding to each item by adding the specified supplementary information to the extracted information. In the example of FIG. 3B, the control unit 11 extracts "P1" from the update information for the target structure item, and adds "pier" which is a civil engineering structure indicated by the IFC code to be updated to the extracted "P1", to generate "pier P1" as split update information. In addition, the control unit 11 extracts "foundation thickness" from the update information for the target component item, and modifies "foundation thickness" to "footing" from the information registered in association with the extracted "foundation thickness", to generate split update information. Furthermore, when the control unit 11 extracts "change to 2000" from the update information for the change content item, it obtains the foundation thickness of the footing (for example, 1500) from the IFC code before the update, and adds "from 1500 mm" to "change from 1500 mm to 2000 mm" as the divided update information. In this way, by adding supplementary information as appropriate to the information (wording) extracted from the update information, it is possible to set more appropriate divided update information for each item.
[0029] In the screen of FIG. 3B, a modification button for modifying the division update information of each item is provided in association with the display column A4 of each item, and a code creation button for issuing an instruction to execute a process for creating an IFC code based on the division update information of each item displayed in the display column A4 is provided. Each display column A4 is configured to be able to accept editing of the division update information being displayed when the corresponding modification button is operated, and accepts editing such as modification, addition, and deletion of the division update information by, for example, text input. Note that the editing (modification) of the division update information may also be configured to be performed by voice input or image input in addition to text input. Therefore, when a user wants to edit (modify) the division update information being displayed in any of the display columns A4, the user operates the modification button of the item to be edited, and then performs editing of the division update information being displayed in the display column A4 of the item. Note that the modification button does not necessarily have to be provided, and it is sufficient that the display column A4 of each item is configured to accept editing of the division update information being displayed.
[0030] The control unit 11 accepts an operation on any of the modification buttons and judges whether or not an edit has been accepted for the divided update information being displayed in the display field A4 corresponding to the operated modification button (S15). If it is judged that an edit for the divided update information of any of the items has been accepted (S15: YES), the control unit 11 edits the divided update information according to the accepted edit content (S16). The control unit 11 displays the edited divided update information in the display field A4 of each item. If it is judged that an edit for the divided update information has not been accepted (S15: NO), the control unit 11 skips the process of step S16. In the screen of FIG. 3B, the divided update information displayed in the display field A4 of each item is displayed with underlining of the portion (information) that has been added or modified to the information extracted from the input update information, but the added or modified portion may be automatically added or modified when the control unit 11 divides the update information in step S13, or may be manually added or modified by the user in steps S15 to S16.
[0031] The control unit 11 judges whether the code creation button has been operated on the screen of FIG. 3B (S17), and if it is judged that it has not been operated (S17: NO), the process returns to step S15 and continues to accept edits to the division update information displayed in the display field A4 of each item (S15 to S16). If it is judged that the code creation button has been operated (S17: YES), the control unit 11 creates an IFC code (IFC information) based on the division update information displayed in each display field A4 (S18). Here, the control unit 11 inputs the division update information displayed in the display field A4 at this time to the language generation model M, and creates an updated (updated) IFC code updated by the input division update information using the language generation model M. Note that the division update information includes text data, and the control unit 11 generates one piece of text data by associating information (item name) of each item with the division update information of each item, respectively, inputs the generated text data to the language generation model M, and creates an updated IFC code using the language generation model M. The control unit 11 may input the generated text data (split update information for each item) directly to the language generation model M, or may add a message (text data) to the beginning of the input data to control the output result from the language generation model M to the IFC code, such as "Please create an IFC code with the following content," or attribute information of the IFC code to be created (e.g., IFC version information), and then input the data to the language generation model M.
[0032] Furthermore, when the language generation model M is configured to be able to input images and the division update information includes image data, the control unit 11 inputs the division update information including the image to the language generation model M, and creates an updated IFC code by the language generation model M. Note that the control unit 11 may input the image included in the division update information directly to the language generation model M, or may generate text data from the image using an OCR function and input the generated text data to the language generation model M.
[0033] When the control unit 11 creates an IFC code from the division update information of each item, it identifies the update parts by comparing, for example, an IFC file created in the design stage of a civil engineering structure or a most recently updated IFC file with the IFC file of the created IFC code (S19). The update parts include correction parts of existing IFC codes, addition parts (insertion parts) of newly created IFC codes, deletion parts of existing IFC codes, etc.
[0034] The control unit 11 displays the updated IFC file created in step S18 on the display unit 15 (S20). For example, as shown in FIG. 4, the control unit 11 displays the updated IFC file (IFC code) in addition to the display contents of the screen of FIG. 3B. In the screen shown in FIG. 4, a code display field A5 is provided, and the control unit 11 displays each IFC code in the updated IFC file in the code display field A5. At this time, the control unit 11 may highlight the IFC code of the updated part identified in step S19 in the displayed IFC code by underlining it. Note that the control unit 11 may be configured to create the updated IFC code in step S18 without performing step S19, and then display the created IFC code (updated IFC file).
[0035] The language generation model M of the present embodiment outputs a set of updated IFC codes when update information (divided update information for each item) is input, but is not limited to this configuration. For example, the language generation model M may be configured to output an IFC code to be updated for the IFC code before the update based on the input update information. In this case, the language generation model M may be configured to output update information for the IFC code before the update in a file format that allows the BIM model (IFC code) to be modified using, for example, a tool for editing the IFC code or an API (Application Programming Interface) of 3D CAD software such as Revit (registered trademark). In such a configuration, the control unit 11 can be configured to use the information (file) output from the language generation model M to identify an update location to be updated in, for example, an IFC file created in the design stage of a civil engineering structure or an IFC file that has been most recently updated, and update (edit) the IFC code of the identified update location. For example, the control unit 11 creates an updated IFC code by modifying, adding, deleting, or the like the IFC code to be updated in the IFC file before the update. In this case as well, the control unit 11 can display the updated IFC code as shown in FIG. 4, and can also highlight the updated parts.
[0036] In addition, when displaying the updated IFC file in step S20, the control unit 11 may add information on the update date and time (for example, the date and time at this time) and the update type (for example, change, addition, or deletion) to the updated IFC code as update history information. In this case, in step S20, the control unit 11 can add the update history information to the updated IFC file and display it as shown in FIG. 5, for example. In the screen shown in FIG. 5, a history display field A6 is provided in association with the updated IFC code, and the update history information regarding the updated IFC code is displayed in the history display field A6. In the example shown in FIG. 5, for the changed (modified) IFC code, update history information including information indicating that it has been changed ("change") and the change date and time is displayed, for the added IFC code, update history information including information indicating that it has been added ("addition") and the addition date and time is displayed, and for the location where the deleted IFC code was displayed, update history information including information indicating that it has been deleted ("deletion") and the deletion date and time is displayed. Note that the information included in the update history information is not limited to these. For example, the control unit 11 may include in the update history information the update information (divided update information for each item) used to create the updated IFC code. In this case, not only the update status for each IFC code but also the update information that triggered the update of the IFC code can be displayed.
[0037] 4, the code display field A5 is configured to be able to accept edits (modifications) to the IFC code being displayed, and accepts edits such as modification, addition, deletion, etc. to any IFC code by text input via the input unit 14. Note that the IFC code may be edited (modified) by voice input in addition to text input. Therefore, when the user wishes to modify the updated IFC code displayed in the code display field A5, the user edits the IFC code to be modified.
[0038] The control unit 11 judges whether or not editing of the IFC code displayed in the code display field A5 has been accepted (S21), and if it judges that editing has been accepted (S21: YES), it updates the IFC file (IFC code) according to the accepted editing content (S22). If the control unit 11 judges that editing of the IFC code has not been accepted (S21: NO), it skips the process of step S22. The control unit 11 judges whether or not an instruction to end the IFC file update process has been accepted (S23). For example, the screen of FIG. 4 is provided with an end button (not shown) for issuing an instruction to end the IFC file update process, and the control unit 11 accepts an instruction to end the IFC file update process when the end button is operated via the input unit 14. If the control unit 11 judges that an end instruction has not been accepted (S23: NO), it returns to step S21 and continues accepting editing of the IFC code displayed in the code display field A5 (S21 to S22). Thereby, every time an edit is made to the IFC code displayed in the code display field A5, the IFC code is edited and the IFC file is updated. If it is determined that an end instruction has been received (S23: YES), the control unit 11 ends the series of processes. Note that the control unit 11 ends the above-mentioned processes after storing the updated IFC file created in step S18 or the IFC file updated in step S22, for example, in a predetermined area of the storage unit 12. Note that, when the control unit 11 adds update history information to the updated IFC code as shown in Fig. 5, it stores an IFC file in which the update history information is associated with the updated IFC code in the storage unit 12.
[0039] The IFC file updated by the above-mentioned process can be used by the BIM simulator S to construct (generate) a 3D model of the civil engineering structure by BIM. Specifically, the control unit 11 of the information processing device 10 executes the BIM simulator S to construct a 3D model of each object based on the IFC code written in the IFC file, and constructs a 3D model of the civil engineering structure by combining the 3D models of each object. In addition, the control unit 11 can display the constructed BIM model on the display unit 15, and the user can check the BIM model of the civil engineering structure based on the updated IFC file.
[0040] According to the above-mentioned process, in this embodiment, update information including update contents for the IFC file is input by text input, voice input, or image input, and the IFC code in the IFC file is updated based on the input update information. The IFC code after update is generated from the input update information using the language generation model M, so the user only needs to input the update information in, for example, a natural language. Therefore, even a user who does not have specialized knowledge about the IFC code can appropriately update the IFC file. In addition, when creating the IFC code from the update information, the information processing device 10 of this embodiment divides the update information into multiple items in the IFC and creates the IFC code from the divided update information of each item. When creating the IFC code directly from the input update information, it is assumed that an IFC code not intended by the user will be created, so there is a possibility that the user's correction work on the created IFC code will increase. In contrast, in this embodiment, by creating the IFC code from divided update information in which the update information is divided into multiple items, it is expected that the IFC code according to the content intended by the user can be created with fewer corrections. Furthermore, in this embodiment, since the division update information of each item can be edited, the IFC code can be created based on the division update information that has been edited to more appropriate content. Furthermore, since the created IFC code can be edited, if there is an error in the created IFC code, it can be corrected.
[0041] In this embodiment, the process of creating an IFC code from update information (strictly speaking, the divided update information of each item) using the language generation model M is not limited to a configuration in which the information processing device 10 locally performs the process. For example, the process using the language generation model M may be performed by a server that provides the language generation model M. For example, the information processing device 10 may be configured to transmit the divided update information displayed in the display field A4 of each item to the server, and receive the IFC code created from the divided update information of each item at the server. Also, the process of dividing the update information into divided update information of each item may be configured to be executed by another server. In this case, the information processing device 10 may be configured to transmit the update information inputted in the input field A1 to the other server, and receive the divided update information of each divided item at the other server.
[0042] (Embodiment 2) In this embodiment, an information processing device that updates the contents of an IFC file based on images (time-series images) taken of the civil engineering structure to be constructed or objects used in the civil engineering structure before and after work requiring an IFC code update (e.g., change in design content, completion of work, etc.) is performed during the construction of the civil engineering structure, for example. The information processing device of this embodiment has a configuration similar to that of the information processing device 10 of the first embodiment shown in Fig. 1, and therefore a description of the configuration will be omitted.
[0043] 6 is an explanatory diagram showing an example of the configuration of a learning model according to the second embodiment. The learning model M1 according to the present embodiment is trained to receive as input data images of a civil engineering structure to be constructed or an object used in the civil engineering structure before and after work to update the IFC code is performed, and text data expressing the update content of the IFC code in a natural language, perform a calculation to generate (estimate) an IFC code according to the content of the input data based on the input data, and output the generated IFC code. The text data here may be text data converted from voice data spoken in a natural language, text data generated from an image by an OCR function, etc.
[0044] The learning model M1 has a feature extraction layer M2 and a language generation model M3. A captured image input to the learning model M1 is input to the feature extraction layer M2, which extracts and outputs image features of the input captured image. The image features output from the feature extraction layer M2 and text data, which is input data of the learning model M1, are input to the language generation model M3, which performs a calculation to generate (estimate) an IFC code according to the contents of the input data based on the input image features and text data, and outputs the generated IFC code as output data of the learning model M1. The language generation model M3 can be the same as the language generation model M of the first embodiment. The feature extraction layer M2 can be configured using an input layer and an intermediate layer of an image recognition model such as VGG or Efficient Net.
[0045] The learning model M1 of this embodiment is generated by machine learning using training data in which an image of a civil engineering structure to be constructed or an object to be used in the civil engineering structure, text data written in natural language, and an IFC code (correct IFC code) corresponding to the update content of the IFC file are associated with each other. When the image and text data included in the training data are input, the learning model M1 learns to output the correct IFC code included in the training data. Specifically, the learning model M1 extracts image features of the input captured image using the feature extraction layer M2, estimates an IFC code according to the extracted image features and the contents of the input text data using the language generation model M3, and outputs the estimation result. Then, the learning model M1 compares the output estimation result (IFC code) with the correct IFC code, and optimizes various parameters such as weights (coupling coefficients) between neurons in the intermediate layer and feature extraction layer M2 of the language generation model M3 and activation function coefficients using the steepest descent method, backpropagation method, etc. so that the two are close to each other. This provides a learning model M1 that, when a photographed image and text data are input, outputs an IFC code according to the contents of the input photographed image and text data.
[0046] The learning model M1 may be learned by the information processing device 10 or by another learning device. The trained learning model M1 generated by learning by another learning device is downloaded from the learning device to the information processing device 10 via a network or via a portable storage medium 10a and stored in the storage unit 12. The learning model M1 is not limited to the configuration shown in Fig. 6. For example, the learning model M1 may be configured not to include the feature extraction layer M2, and to directly input a captured image in addition to text data to the language generation model M3.
[0047] Fig. 7 is a flowchart showing an example of an IFC file update processing procedure in the second embodiment, and Fig. 8 is an explanatory diagram showing an example screen. The processing shown in Fig. 7 is obtained by adding step S31 before step S11 in the processing shown in Fig. 2, and adding steps S32 to S35 between YES in step S31 and step S18. Explanations of the same steps as in Fig. 2 will be omitted.
[0048] In this embodiment, the control unit 11 of the information processing device 10 judges whether the image input button A3 has been operated on the screen shown in FIG. 3A (S31), and if it is judged that it has not been operated (S31: NO), the process proceeds to step S11. In this case, the control unit 11 executes the same process as in the first embodiment to update the IFC file. If it is judged that the image input button A3 has been operated (S31: YES), the control unit 11 displays an image selection screen for selecting a photographed image of the civil engineering structure to be constructed or an object to be used in the civil engineering structure on the display unit 15 (S32). As shown in FIG. 8, for example, in addition to the display contents of the screen of FIG. 3A, the control unit 11 displays a screen provided with an input field A7 for a photographed image of the civil engineering structure to be constructed or an object to be used in the civil engineering structure before the work to update the IFC code is performed, and an input field A8 for a photographed image after the work is performed. The input fields A7 and A8 are provided with a pull-down menu for selecting any one of the image files of the photographed images stored in the storage unit 12 or the like. On the screen of FIG. 8, a code creation button is provided in association with the image input fields A7 and A8, for issuing an instruction to execute a process for creating an IFC code based on the captured image selected via the input fields A7 and A8.
[0049] The control unit 11 accepts, via the input field A7, a selection of a photographed image taken before the work to update the IFC code was performed (S33), and displays the file name of the selected photographed image in the input field A7 (S34). Similarly, the control unit 11 accepts, via the input field A8, a selection of a photographed image taken after the work to update the IFC code was performed (S33), and displays the file name of the selected photographed image in the input field A8 (S34). The control unit 11 determines whether or not the code creation button has been operated on the screen of Fig. 8 (S35), and if it determines that it has not been operated (S35: NO), the control unit 11 returns to step S33 and continues to accept the selection of photographed images via the input fields A7 and A8 (S33 to S34).
[0050] When it is determined that the code creation button has been operated (S35: YES), the control unit 11 proceeds to step S18 and executes the processes of steps S18 to S23. In step S18, the control unit 11 reads out the photographed images with the file names displayed in the input fields A7 and A8 at this time from the storage unit 12, etc., inputs the two photographed images read out to the learning model M1, and creates an IFC code corresponding to the two photographed images input by the learning model M1. The control unit 11 may input only the image data of the two photographed images directly to the learning model M1, or may add a message for controlling the output result from the learning model M1 (language generation model M3) to the IFC code as text data, such as "Please create an IFC code from this image", and input it to the learning model M1. In addition, a message such as "image before work" or "image after work" may be added as text data in association with each photographed image and input to the learning model M1. Thereafter, the control unit 11 identifies the updated portion in the IFC file based on the created IFC code (S19), and displays the created updated IFC file on the display unit 15 (S20).
[0051] In the example of Figure 8, two captured images taken before and after the work requiring the IFC code to be updated are selected, and the IFC code is updated based on the two captured images, but three or more captured images may also be selected, and the IFC code may be updated based on the three or more captured images.
[0052] By the above-mentioned process, in this embodiment, the IFC code in the IFC file can be updated based on the time-series photographed images taken before and after the work to update the IFC code is performed. Therefore, the user only needs to select a photographed image of a civil engineering structure or object, and even a user without specialized knowledge can appropriately update the IFC file. The configuration of this embodiment is applicable to the information processing device 10 of the above-mentioned embodiment 1, and the same effect can be obtained even when applied to the information processing device 10 of the embodiment 1. In addition, in this embodiment, the IFC code can be updated based on the update information inputted through the input field A1 in addition to the photographed images selected through the input fields A7 and A8. In this case, the IFC code is updated based on the update information inputted by the user and the photographed images of the civil engineering structure or object, so that a more appropriate IFC code can be created. In this embodiment, the modified examples appropriately described in the above-mentioned embodiment 1 can also be applied.
[0053] (Embodiment 3) In this embodiment, an information processing device will be described that, when creating an IFC code from update information input by a user, generates additional information to be added to the update information based on the input update information, and creates an IFC code based on the update information to which the generated additional information has been added. The information processing device of this embodiment has a configuration similar to that of the information processing device 10 of the first embodiment shown in Fig. 1, and therefore a description of the configuration will be omitted.
[0054] Fig. 9 is a flowchart showing an example of an IFC file update processing procedure in the third embodiment, and Fig. 10 is an explanatory diagram showing an example screen. The processing shown in Fig. 9 is obtained by adding steps S41 to S45 between steps S11 and S12 in the processing shown in Fig. 2. Explanations of the same steps as in Fig. 2 will be omitted. Steps S14 to S23 in Fig. 2 are not shown in Fig. 9.
[0055] In this embodiment, the control unit 11 of the information processing device 10 displays an input screen as shown in FIG. 10A on the display unit 15. The screen shown in FIG. 10A has a supplement button for issuing an instruction to execute a process of supplementing additional information to the update information input in the input field A1 in addition to the configuration of the screen in FIG. 3A. The control unit 11 displays the input update information in the input field A1 on the screen shown in FIG. 10A (S11), and then determines whether the supplement button has been operated (S41). If it is determined that the supplement button has been operated (S41: YES), the control unit 11 generates additional information for the update information input in the input field A1 (S42). Here, the control unit 11 inputs the update information displayed in the input field A1 at this point in time into the language generation model M, and generates additional information to be added to the update information by the language generation model M. Note that the control unit 11 may input the input update information as it is into the language generation model M, or may input the input update information into the language generation model M after adding a message (text data) such as "Please add supplementary information to the following content" to the beginning of the update information.
[0056] The control unit 11 displays the generated additional information in the input field A1 (S43). In the example shown in FIG. 10B, when update information "sheet piles were put in for foundation work on P1 this afternoon" is input in the input field A1, the input update information is updated (modified) to "change the value of 'construction phase' from 'before construction' to 'sheet piles were put in for foundation work on pier P1 in the afternoon of June 1, 2023'" and displayed. Note that the language generation model M is configured to output update information after the additional information is added when update information is input, and in this case, the control unit 11 displays the update information to which the additional information has been added, which is output from the language generation model M, in the input field A1. The language generation model M may also be configured to output additional information to be added to the update information, and in this case, the control unit 11 may identify a location to which the additional information should be added to the update information based on the content of the generated additional information, insert the generated additional information into the identified location, and generate update information to which the additional information has been added. Even in such a case, the control unit 11 can highlight the additional information in the added update information by underlining it.
[0057] When it is determined that the supplement button has not been operated (S41: NO), the control unit 11 skips steps S42 to S43. The input field A1 is configured to accept edits to the update information being displayed, and the control unit 11 judges whether or not edits to the update information being displayed in the input field A1 have been accepted (S44). When it is determined that edits to the update information have been accepted (S44: YES), the control unit 11 edits the update information in accordance with the accepted edit content (S45). The control unit 11 displays the edited update information in the input field A1. When it is determined that edits to the update information have not been accepted (S44: NO), the control unit 11 skips step S45. Then, the control unit 11 proceeds to step S12.
[0058] According to the above-described process, in this embodiment, before dividing the update information input by the user into divided update information, additional information is added to the update information using the language generation model M. As a result, when there is information to be added to the update information input by the user, the additional information generated by the language generation model M is added, so that information (update information) required for updating the IFC file can be generated with appropriate content. Therefore, even a user without specialized knowledge can prepare information (update information) required for updating the IFC file, and can appropriately update the IFC file. In addition, since the update information input by the user and the additional information generated by the language generation model M can be edited, a more appropriate IFC code can be created based on the update information edited to more appropriate content.
[0059] In this embodiment, instead of supplementing the update information input by the user with additional information and then dividing it into divided update information for each item to create an IFC code, a configuration may be adopted in which the update information input by the user is divided into divided update information, and then the additional information is supplemented for the divided update information for each item using the language generation model M. Even in such a configuration, the divided update information for each item can be edited to more appropriate content, making it possible to create a more appropriate IFC code.
[0060] The configuration of this embodiment is applicable to the information processing device 10 of the above-mentioned embodiments 1 and 2, and similar effects can be obtained even when applied to the information processing device 10 of embodiments 1 and 2. Furthermore, the modified examples described in the above-mentioned embodiments 1 and 2 can also be applied to this embodiment as appropriate.
[0061] The configurations described in each of the above-mentioned embodiments can assist in updating not only IFC files used in BIM models representing civil engineering structures, but also IFC files used in BIM models representing architectural structures such as houses and buildings.
[0062] The embodiments disclosed herein are illustrative in all respects and should not be considered as limiting. The scope of the present invention is defined by the claims, not by the above meaning, and is intended to include all modifications within the scope and meaning equivalent to the claims.
[0063] The matters described in each of the above embodiments can be combined with each other. In addition, the independent claims and dependent claims described in the claims can be combined with each other in any and all combinations regardless of the citation format. Furthermore, the claims use a format in which a claim cites two or more other claims (multiple claim format), but this is not limited to this. A multiple claim (multi-multi claim) that cites at least one multiple claim may also be used. [Explanation of symbols]
[0064] 10. Information processing device 11 Control section 12 Storage section 13. Communications Department 14 Input section 15 Display M Language Generation Model
Claims
1. Acquire update information indicating update contents for a 3D model of a civil engineering structure generated using BIM (Building Information Modeling), The acquired update information is input to a language generation model that generates IFC information related to IFC (Industry Foundation Classes) corresponding to the BIM when update information is input, and IFC information corresponding to the update information is generated. An information processing method in which processing is performed by a computer.
2. Acquire IFC information relating to the civil engineering structure that has been constructed in advance; The acquired IFC information is updated based on IFC information corresponding to the generated update information. The information processing method according to claim 1 , wherein the processing is executed by the computer.
3. The IFC information corresponding to the generated update information is displayed on a display unit.
3. The information processing method according to claim 1, wherein the processing is executed by the computer.
4. Dividing the acquired update information into items related to IFC; The divided update information divided into each item is input to the language generation model to generate IFC information corresponding to the update information.
3. The information processing method according to claim 1, wherein the processing is executed by the computer.
5. Accept additional information for the split update information divided into each item, The division update information for each item including the received additional information is input to the language generation model, and IFC information corresponding to the update information is generated. The information processing method according to claim 4 , wherein the processing is executed by the computer.
6. inputting the acquired update information into the language generation model to generate additional information for the update information; The update information including the generated additional information is input to the language generation model to generate IFC information corresponding to the update information including the additional information.
3. The information processing method according to claim 1, wherein the processing is executed by the computer.
7. Accepts modifications to the generated IFC information 3. The information processing method according to claim 1, wherein the processing is executed by the computer.
8. The update information includes at least one of text data expressing the update content for the civil engineering structure in natural language and a plurality of images of the civil engineering structure taken in chronological order during the construction of the civil engineering structure.
3. The information processing method according to claim 1 or 2.
9. Based on the updated IFC information, a 3D model of the civil engineering structure is generated using BIM. The information processing method according to claim 2 , wherein the processing is executed by the computer.
10. Output update history information regarding updates to the IFC information The information processing method according to claim 2 , wherein the processing is executed by the computer.
11. Acquire update information indicating update contents for a 3D model of a civil engineering structure generated using BIM; The acquired update information is input to a language generation model that generates IFC information regarding an IFC corresponding to the BIM when the update information is input, and IFC information corresponding to the update information is acquired. A program that causes a computer to carry out processing.
12. An information processing device having a control unit, The control unit is Acquire update information indicating update contents for a 3D model of a civil engineering structure generated using BIM; The acquired update information is input to a language generation model that generates IFC information regarding an IFC corresponding to the BIM when the update information is input, and IFC information corresponding to the update information is acquired. Information processing device.
Citation Information
Patent Citations
Management support method of architectural structure or civil engineering structure, and management support system of architectural structure or civil engineering structure
JP2022128846A
