Engineering log generation method and system and program product
Through log template acquisition and data integration based on project information, the log template is filled with log templates to generate project logs, solving the problems of traditional logging inefficient efficiency and poor permission control, and achieving intelligent and secure project log generation.
Patent Information
- Application Number
- CN202510522051.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-24
- Publication Date
- 2025-05-30
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Traditional engineering logging methods are inefficient, lack effective authority control, and the source of log data is complex, making it difficult to truly reflect the actual situation on the construction site.
Based on the relevant information of the project, the target log template is obtained, and the data collected by the target data source is obtained through the data integration module. The log template is filled based on this data to generate the project log.
It realizes intelligent and secure automatic generation of project logs, dynamically adapts to different construction scenarios, realizes the logical and refined management of log data and permission control, and improves the adaptability and data accuracy of project logs.
Smart Images

Figure CN120068837A_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the technical field of construction, and particularly to a method, system, and program product for generating engineering logs. Background Art
[0002] Currently, traditional methods for recording engineering logs rely on manual input, resulting in low efficiency. Additionally, there is a lack of effective control and management over the access rights of different roles to the log content. Meanwhile, the sources of log data are complex, and there is a lack of correlation between data, making it difficult to truly reflect the actual situation at the construction site and causing difficulties in subsequent construction management and data traceability.
[0003] In view of this, embodiments of this specification provide a method for generating engineering logs, which can achieve intelligent and secure automatic generation of engineering logs. It can not only dynamically adapt to the requirements of different construction scenarios but also realize logical log data, refined management of permission control, and efficient data filling and verification, thereby enhancing the adaptability and data accuracy of engineering logs. Summary of the Invention
[0004] One or more embodiments of this specification provide a method for generating engineering logs. The method includes: obtaining a target log template based on the target log type, target project phase, target user position, and target project type related to the engineering project; obtaining target data collected by the target data source during the target project phase; and generating an engineering log by filling the target log template based on the target data.
[0005] One or more embodiments of this specification provide an engineering log generation system. The system includes: a template generation module configured to obtain a target log template based on the target log type, target user position, and target project type related to the engineering project; a data integration module configured to obtain target data collected by the target data source during the target project phase; and a data filling module configured to generate a construction log by filling the target log template based on the target data.
[0006] One or more embodiments of this specification provide a computer program product, including a computer program that, when executed by a processor, implements the engineering log generation method described in any of the foregoing items.
[0007] Based on the log type, project phase, user position, and project type, the present invention obtains a target log template and target data, and then fills the target log template to generate an engineering log, which is beneficial to ensuring that the target log template automatically adapts to different project requirements, thereby improving the generation efficiency and business adaptability of construction logs and engineering logs. Brief Description of the Drawings
[0008] This specification will be further described by way of exemplary embodiments, which will be described in detail with reference to the accompanying drawings. These embodiments are not restrictive. In these embodiments, the same reference numerals represent the same structures, where: Figure 1 is a schematic diagram of an application scenario of an engineering log generation method according to some embodiments of this specification; Figure 2 is an exemplary module diagram of an engineering log generation system according to some embodiments of this specification; Figure 3 is an exemplary flowchart of an engineering log generation method according to some embodiments of this specification; Figure 4 is an exemplary flowchart of determining a target data source according to some other embodiments of this specification. Detailed implementation manners
[0009] To more clearly illustrate the technical solutions of the embodiments of this specification, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings in the following description are only some examples or embodiments of this specification. For those of ordinary skill in the art, without creative efforts, this specification can also be applied to other similar scenarios based on these drawings. Unless obvious from the language context or otherwise stated, the same reference numerals in the figures represent the same structures or operations.
[0010] It should be understood that the "system", "unit" and / or "module" used herein is a way to distinguish different components, elements, parts, portions or assemblies at different levels. However, if other words can achieve the same purpose, the said words can be replaced by other expressions.
[0011] As shown in this specification and the claims, unless the context clearly indicates an exception, words such as "a", "an", "one" and / or "the" are not specifically singular and may also include the plural. Generally speaking, the terms "comprising" and "including" only indicate the inclusion of the clearly identified steps and elements, and these steps and elements do not constitute an exclusive list. The method or device may also include other steps or elements.
[0012] Flowcharts are used in this specification to illustrate the operations performed by the systems according to the embodiments of this specification. It should be understood that the operations before or after may not necessarily be executed precisely in sequence. On the contrary, the steps can be executed in reverse order or simultaneously. At the same time, other operations can also be added to these processes, or one or several steps can be removed from these processes.
[0013] Figure 1It is a schematic diagram of the application scenario of the engineering log generation system shown in some embodiments of this specification.
[0014] An engineering log refers to a true comprehensive record of construction activities and on-site situation changes in aspects such as construction organization management, construction technology, project progress, and project decision-making processes during various project phases of an engineering project. For example, an engineering log can include project overview, time and weather, participants, activities and progress, problems and obstacles, decisions and discussions, resource usage, risk management, next steps, appendices, and reference materials, etc.
[0015] As Figure 1 shown, the application scenario 100 of the engineering log generation system can include a processing device 110, a network 120, a terminal 130, a storage device 140, and a data source 150.
[0016] The processing device 110 can process data and / or information obtained from the terminal 130, the storage device 140, and / or the data source 150. In some embodiments, the processing device 110 can obtain a target log template based on the log type, project type, project phase, and / or user position related to the engineering project (i.e., the log type, project type, project phase, and user position corresponding to the current engineering project); obtain target data collected by the target data source during the project phase, and fill the target log template based on the target data to generate an engineering log.
[0017] In some embodiments, the processing device 110 can be a single server or a server group. In some embodiments, the processing device 110 can be local or remote. The processing device 110 can be directly connected to the terminal 130 and the storage device 140 to access the stored or obtained information and / or data. In some embodiments, the processing device 110 can be implemented on a cloud platform. By way of example only, the cloud platform can include private cloud, public cloud, hybrid cloud, community cloud, distributed cloud, internal cloud, multi-layer cloud, etc. or any combination thereof. In some embodiments, the processing device 110 can be a distributed server group, which can include multiple server nodes.
[0018] The network 120 can include any suitable network for information and / or data exchange in the application scenario 100. In some embodiments, one or more components of the application scenario 100 (e.g., the terminal 130, the processing device 110, the storage device 140) can transmit information and / or data to one or more other components of the application scenario 100 via the network 120. For example, the processing device 110 can obtain relevant information from the storage device 140 via the network 120.
[0019] In some embodiments, network 120 can be any one or more of a wired network or a wireless network. In some embodiments, the network can be of various topologies such as point-to-point, shared, centralized, etc., or a combination of multiple topologies.
[0020] Terminal 130 can include mobile device 130-1, tablet computer 130-2, laptop computer 130-3, etc., or any combination thereof. In some embodiments, terminal 130 can interact with other components in application scenario 100 via network 120. For example, terminal 130 can receive information and / or instructions input by a user and send the received information and / or instructions to processing device 110 via network 120.
[0021] In some embodiments, application scenario 100 further includes a preset client application, which can be software or an application program installed on terminal 130. For example, the client application can be a mobile phone application installed on mobile device 130-1, a desktop application installed on laptop computer 130-3, etc. In some embodiments, the client application can implement interaction with the user. For example, the target log template determined by processing device 110 can be displayed in the interface of the client application (i.e., the user interaction interface), and the user can browse, edit, change, etc. the target log template. Also for example, the project log generated by processing device 110 can be in the interface of the client application for the user to browse, edit, change, etc. the project log. Additionally, for example, the target data source or candidate data source determined by processing device 110 can be displayed in the interface of the client application, and the user can determine the target data source. The user can include personnel from units such as the general contractor, subcontractor, and work team of a construction project. In some embodiments, the user can perform relevant operations through the client application installed on terminal 130 to cooperate with the data processing and / or instruction execution of processing device 110, and implement the engineering log generation method.
[0022] Storage device 140 can store data and / or instructions. In some embodiments, storage device 140 can store data obtained from processing device 110 and terminal 130, such as log templates, data collected from data sources, and / or generated project logs. For example, storage device 140 can store data obtained from terminal 130, etc.
[0023] In some embodiments, the storage device 140 may store data and / or instructions for the processing device 110 to execute the exemplary methods described in some embodiments of this specification. For example, the storage device 140 may store instructions for the processing device 110 to execute the methods shown in the respective flowcharts. In some embodiments, the storage device 140 may include a mass storage device, a removable storage device, a volatile read-write memory, a read-only memory (ROM), etc., or any combination thereof. In some embodiments, the storage device 140 may be implemented on a cloud platform. In some embodiments, the storage device 140 may be a part of the processing device 110.
[0024] The data source 150 refers to the source from which the processing device 110 obtains data. For example, the data source may include a monitoring system, an attendance device, sensors and detection devices, construction machinery and equipment, digital platforms and mobile applications, a supply chain, an inventory management system, external APIs and systems, etc. The sensors and detection devices may include measuring instruments (e.g., total stations, laser rangefinders, etc.), environmental sensors (e.g., sensors for detecting temperature, humidity, wind speed, etc.). The construction machinery and equipment may record the operating data of the construction equipment, such as time, load, fuel consumption, etc. The monitoring system may include on-site monitoring cameras, drones, voice input devices, etc. The digital platforms and mobile applications may include building information modeling platforms, mobile application programs, etc. The mobile application programs may be used by on-site workers and managers to report problems, update work progress, view construction drawings and documents, etc. The supply chain and inventory management system may include a material management system. The external APIs and systems may include third-party services, such as weather services, location services, etc.
[0025] The above scenarios are only examples, and various forms of transformations may occur in applications.
[0026] It should be noted that the application scenario 100 of the engineering log generation method is provided only for illustrative purposes and is not intended to limit the scope of the present invention. For those of ordinary skill in the art, various modifications or changes can be made according to the description of the present invention. However, these changes and modifications will not depart from the scope of the present invention.
[0027] Figure 2 is an exemplary module diagram of an engineering log generation system shown in some embodiments of this specification. As Figure 2 shown, the engineering log generation system 200 may include a template generation module 210, a data integration module 220, a data filling module 230, a permission detection module 240, and an exception detection module 250.
[0028] In some embodiments, the template generation module 210 is configured to obtain a log template based on the log type, project phase, user position, and / or project type related to the engineering project. For example, the template generation module 210 may generate multiple candidate log templates based on different log types, different user positions, different project phases, and / or different project types in the engineering project. Each candidate log template may correspond to a log type, a user position, a project phase, and a project type. The template generation module 210 may determine, from the multiple candidate templates, a candidate log template corresponding to the target log type, target project phase, target user position, and / or target project type as the target log template. As another example, the template generation module 210 may generate a target log template based on the target log type, target user position, target project phase, and / or target project type corresponding to the engineering project.
[0029] In some embodiments, the template generation module 210 may also be configured to generate an initial log template based on one or more of the target log type, target project phase, and target user position related to the engineering project; and optimize the initial log template based on the target project type to obtain the target log template.
[0030] In some embodiments, the template generation module 210 may also be configured to determine the field priorities of each initial field in the initial log template and / or the initial fields corresponding to the target project type based on the target project type; and optimize the initial log template based on the field priorities to obtain the target log template.
[0031] In some embodiments, the template generation module 210 may also be configured to obtain the historical engineering logs corresponding to the historical engineering projects of the target project type; determine the field importance of each initial field in the initial log template and / or the initial fields corresponding to the target project type based on the historical engineering logs; and determine the field priorities based on the dependencies and field importance of each initial field in the initial log template and / or the initial fields corresponding to the target project type.
[0032] In some embodiments, the data integration module 220 is configured to obtain the target data collected by the target data source during the project phase.
[0033] In some embodiments, the data integration module 220 may also be configured to obtain multiple candidate data sources; determine the real-time index and accuracy index of each candidate data source among the multiple candidate data sources; determine the target index of each candidate data source based on the real-time index, accuracy index, target weight of the real-time index, and target weight of the accuracy index; and determine the target data source based on the target index of each candidate data source.
[0034] In some embodiments, the data integration module 220 may also be configured to obtain log feedback data of historical engineering logs, where the log feedback data includes filling delay, filling accuracy rate, and filling exception rate; based on the log feedback data, adjust the initial weight of the real-time metric to obtain the target weight of the real-time metric and / or adjust the initial weight of the accuracy metric to obtain the target weight of the accuracy metric.
[0035] The data filling module 230 is configured to fill the target log template with target data to generate engineering logs.
[0036] In some embodiments, the permission detection module 240 is configured to obtain an access permission model of engineering logs, where the access permission model includes the access permissions of different users for different log areas and / or different fields of engineering logs; obtain a user operation, where the user operation includes the user accessing a target area or a target field in the engineering logs; and based on the access permission model and the user operation, determine the access permission of the user for the target area or the target field.
[0037] In some embodiments, the anomaly detection module 250 is configured to perform anomaly detection on the data filled in each field of the target log template based on a sliding window algorithm to determine the anomaly detection result of the engineering logs; the window size of the sliding window algorithm is dynamically adjusted based on the data fluctuation condition of the engineering logs within the window, and the anomaly detection result includes no anomaly, anomaly data with anomalies, and corresponding anomaly fields. For example, if it is detected that the material usage suddenly surges, the anomaly detection module 250 can mark it as an anomaly and point out the specific field.
[0038] In some embodiments, the anomaly detection module 250 may also be configured to determine the log area where the anomaly data is located; and adjust the access permission of the user for the log area where the anomaly data is located.
[0039] In some embodiments, the anomaly detection module 250 may also be configured to determine an anomaly data source based on the target data source corresponding to the anomaly data; adjust the target metrics of the anomaly data source, where the target metrics are determined based on the real-time metrics and accuracy metrics of the anomaly data source; and based on the adjusted target metrics, re-determine the target data source for filling the target log template.
[0040] In some embodiments, the anomaly detection module 250 may also be configured to adjust the field priorities of the fields in the target log template based on the anomaly fields; and based on the adjusted field priorities, re-adjust the target log template.
[0041] It should be noted that the above description of the engineering log generation system 200 and its modules is only for convenience of description and does not limit this specification within the scope of the exemplified embodiments. It can be understood that for those skilled in the art, after understanding the principle of the system, they may, without departing from this principle, make any combination of the various modules, or form a subsystem and connect it with other modules. In some embodiments, Figure 2 the template generation module 210, data integration module 220, data filling module 230, permission detection module 240, and exception detection module 250 disclosed in Figure 2 may be different modules in a system, or a module may implement the functions of two or more of the above modules. For example, the various modules may share a storage module, or each module may have its own storage module. Such variations are all within the protection scope of this specification.
[0042] Figure 3 is an exemplary flowchart of an engineering log generation method according to some embodiments of this specification. In some embodiments, process 300 may be executed by a processor of the engineering log generation system. As Figure 3 shown, process 300 includes the following steps: In some embodiments, the processor obtains a target log template based on the log type related to the engineering project (which may also be referred to as the target log type), project phase (which may also be referred to as the target project phase), user position (which may also be referred to as the target user position), and target project type, obtains target data collected by the target data source during the project phase, and fills the target log template based on the target data source to generate an engineering log.
[0043] Step 310, obtaining a target log template based on the target log type, target project phase, target user position, and target project type related to the engineering project. It should be noted that the target log type, target project phase, target user position, and target project type refer to a certain specific log type, specific project phase, specific user position, and specific project type. For example, when an engineering project of a specific project type is in a certain specific project phase, a user in a specific user position needs to obtain an engineering log of a specific log type based on the current project, then the specific project phase, specific user position, specific log type, and specific project type can be respectively regarded as the target project phase, target user position, target log type, and target project type.
[0044] The log type refers to the type of log corresponding to different work records. The log types involved in an engineering project may include construction logs, project logs, quality logs, supervision logs, safety logs, meeting change record logs, etc.
[0045] The project phase refers to the stage at which the progress of the engineering project is. For example, the project phase may include preparatory work, construction progress stage, adjustment and correction stage, completion and handover stage, acceptance and settlement stage, etc. Further for example, if the project is a construction project, the project phase may include the planning and conceptualization stage, design stage, tendering and contract signing stage, construction preparation stage, construction progress stage, supervision and inspection stage, completion and delivery stage, after-sales service stage, etc.
[0046] The user position refers to the role that the user related to the engineering project plays in the engineering project. For example, the user position may include project manager, design engineer, construction manager (or site manager), construction worker, safety officer, financial specialist, supervision engineer, cost engineer, contract administrator, environmental engineer, etc.
[0047] The project type is the type of the engineering project. For example, the project type may include civil engineering projects (such as bridge construction, road construction, tunnel construction, etc.), construction projects (such as residential buildings, commercial buildings, etc.), infrastructure projects (such as communication facilities, drainage projects, power supply projects, etc.), transportation projects (such as airport construction, railway construction, etc.).
[0048] The log template is a structured framework used to guide and standardize the process of information recording. The log template can provide a consistent format and standard for log entries. A log entry is the type of data and information that needs to be filled in the log. In some embodiments, the log entry can be defined by specific fields. The fields can clarify the type of information to be recorded, and each field can represent a specific type of data. For example, date, time, event description, responsible person, weather, etc. The format of the log template can include the arrangement (such as order and position) of the fields in different areas of the log template, and the organization form of the fields (such as list or table, etc.).
[0049] The target log template refers to the log template corresponding to the current log type, project phase, user position, and project type (i.e., target log type, target project phase, target user position, and target project type).
[0050] In some embodiments, different log types, different project phases, different user positions, and different project types correspond to different log templates. In some embodiments, the processor may determine a target log template from multiple candidate log templates based on the target log type, target project phase, target user position, and target project type. For example, each candidate log template among the multiple candidate log templates may correspond to a log type, project phase, user position, and project type. The candidate log template that matches the target log type, target project phase, target user position, and target project type can be determined by matching the target log type, target project phase, target user position, and target project type with the log type, project phase, user position, and project type corresponding to each candidate log template, and it can be designated as the target log template. Further for example, when the processor receives a log generation request sent by the user from the terminal, it can obtain the target log type, target project phase, target user position, and target project type related to the user, and select one from multiple candidate log templates as the target log template based on the target log type, target project phase, target user position, and target project type.
[0051] In some embodiments, the processor may determine an initial log template from multiple candidate log templates based on the target log type, target project phase, and target user position, and optimize the initial log template based on the target project type to determine the target log template.
[0052] The target log type, target project phase, target user position, and target project type can be input by the user through the terminal or the processor can directly obtain the target log type, target project phase, target user position, and target project type according to the user identity information. For example, the user identity information may include the user position, then the processor can directly obtain the target user position, target log type, and target project type according to the user identity information. Further for example, if the target user position is a safety officer, the processor can determine that the target log type is a safety log. Another example, if the target user position is a supervision engineer, the processor can determine that the target log type is a supervision log. In some embodiments, the processor can also further determine the target project phase based on the target user position. For example, if the target user position is a design engineer, the processor can determine that the target project phase is the design phase. Another example, if the target user position is a supervision engineer, the processor can determine that the target project phase is the construction progress phase.
[0053] In some embodiments, the processor may generate a target log template in real time online based on one or more of a target log type, a target project phase, a target user position, and a target project type. For example, when the processor receives a log generation request sent by a user from a terminal, the processor may obtain the target log type, the target project phase, the target user position, and the target project type related to the user, and generate a target log template based on the log template generation method described in the embodiments in the specification. The target log template is similar to the candidate log template generation method. For example, an initial log template may be generated based on different candidate log types, candidate project phases, and candidate user positions, and the candidate log template may be optimized based on the candidate project type to generate the candidate log template. The following embodiments are described by taking the generation of the target log template as an example, and the detailed steps for generating the candidate log template are not repeated in this specification.
[0054] In some embodiments, the processor may generate an initial log template based on a target log type, a target project phase, and a target user position related to an engineering project; and optimize the initial log template based on a target project type related to the engineering project to obtain a target log template.
[0055] The initial log template refers to the pre-log template for generating the target log template. An initial log template may include initial fields corresponding to a specific log type, a specific project phase, and / or a specific user position.
[0056] In some embodiments, the processor may generate an initial log template based on a preset relationship between a log type, a project phase, and / or a user position and the initial fields. The preset relationship between the log type, the project phase, and / or the user position and the initial fields may be used to provide the initial fields corresponding to different log types, project phases, and / or user positions. In some embodiments, the preset relationship between the log type, the project phase, and / or the user position and the initial fields may include a first relationship, a second relationship, and a third relationship.
[0057] The first relationship may be used to provide the initial fields corresponding to different log types. For example, if the log type is a safety log, the initial fields may include date and time, recorder, event type, event location, event description, involved personnel, injury and hazard situation, cause analysis, measures taken, inspection content, decision and action items, review and signature, etc. For another example, if the log type is a supervision log, the initial fields may include project name, project location, weather condition, supervision engineer information, construction unit information, construction content, quality control, equipment and materials, supervision suggestions, etc.
[0058] The second relationship can be used to provide initial fields corresponding to different project phases. For example, if the project phase is the preparation phase, the initial fields may include project name, project location, start and end time of the project, project duration, project budget, supplier selection, risk assessment, project responsible person, etc. Another example is that if the project phase is the construction progress phase, the initial fields may include project name, project duration, date and time, completed construction task volume, project expenditure, number of project inspections, event type, event location, event description, involved personnel, etc. Still another example is that if the project phase is the supervision and inspection phase, the initial fields may include project name, inspection time, inspection content, abnormal event content, abnormal event type, involved personnel, cause analysis, decision and action items, project duration delay analysis, review and signature, etc.
[0059] The third relationship can be used to provide initial fields corresponding to different user positions. For example, if the user position is a project manager, the initial fields may include project name, project location, preset project duration, preset cost, project progress, key decision records, risk management plan, team performance evaluation, etc. Another example is that if the user position is a safety officer, the initial fields may include date and time, recorder, event type, event location, event description, involved personnel, injury and hazard situation, cause analysis, measures taken, inspection content, decision and action items, review and signature, etc.
[0060] In some embodiments, since there is a correlation between user positions, project phases, and log types, the preset relationship between the log type, project phase, and / or user position and the initial fields can be the corresponding relationship between the initial fields and the log type, project phase, and user position, that is, this corresponding relationship can provide the initial fields corresponding to the log type, project phase, and user position. For example, if the user position is a safety officer, the log type is a safety log, and the project phase can be the construction progress phase, the corresponding initial fields may include date and time, recorder, event type, event location, event description, involved personnel, injury and hazard situation, cause analysis, measures taken, inspection content, decision and action items, review and signature, etc.
[0061] In some embodiments, the preset relationship can be stored in a storage device. For example, the preset relationship can be stored in the storage device in the form of a table.
[0062] In some embodiments, the processor may determine an initial log template by using the preset relationships between the log type, project phase, and / or user position and the initial fields, as well as the target log type, target project phase, and / or target user position. For example, the processor may determine the log type, project phase, and user position that match the target log type, target project phase, and target user position in the preset relationships, and use the initial fields corresponding to the matching log type, project phase, and user position as the initial fields in the initial log template. As another example, the processor may use a first relationship and a second relationship to generate a basic template framework based on the target log type (construction log, supervision log, or safety log) and the target project phase, and further use a third relationship to optimize the fields of the basic template framework based on the target user position (such as project manager, safety officer) to determine the initial log template. As yet another example, the processor may use the first relationship and the third relationship to generate a basic template framework based on the target log type (construction log, supervision log, or safety log) and the target user position, and further use the second relationship to optimize the fields of the basic template framework based on the target project phase to determine the initial log template. Still another example, the processor may use the second relationship and the third relationship to generate a basic template framework based on the target project phase and the target user position, and further use the first relationship to optimize the fields of the basic template framework based on the target log type to determine the initial log template.
[0063] Since the initial fields corresponding to the first relationship, the second relationship, and the third relationship may be repeated or different, the fields can be optimized to remove the repeated fields or add the missing fields.
[0064] In some embodiments, the preset relationships between the log type, project phase, and / or user position and the initial fields may include a first relationship and a second relationship. The first relationship may be used to provide the initial fields corresponding to any two of the log type, project phase, and / or user position; the second relationship may be used to provide the initial fields corresponding to the remaining one of the log type, project phase, and / or user position. The processor may use the first relationship to determine the basic template framework and use the second relationship to optimize the basic template framework to determine the initial log.
[0065] In some embodiments, the processor may determine the preset relationships between the initial fields based on user settings or statistical analysis of historical log data.
[0066] In some embodiments, the processor may determine the field priorities of each initial field in the initial log template and / or the initial fields corresponding to the target project type based on the target project type; and optimize the initial log template based on the field priorities to obtain the target log template. For example, if the field priority of an initial field in the initial log template is greater than the priority threshold, the initial field may be retained to obtain the target log template; if the field priority of an initial field in the initial log template is less than or equal to the priority threshold, the initial field may be deleted to obtain the target log template. Another example, if the field priority of the initial field corresponding to the target project type is greater than the priority threshold, the initial field may be added to the initial log template to obtain the target log template; if the field priority of the initial field corresponding to the target project type is less than or equal to the priority threshold, the initial field may not be added to the initial log template to obtain the target log template.
[0067] The initial fields corresponding to the target project type can be obtained based on a preset relationship (which can also be referred to as the fourth relationship) between the project type and the initial fields. The fourth relationship can provide the initial fields corresponding to different project types. In some embodiments, the processor may match the target project type with the project types in the fourth relationship to obtain the initial fields corresponding to the target project type. For example, if the project type is a construction project, the initial fields may include date and time, project name, project location, project responsible person, building energy efficiency, building materials, etc. Another example, if the project type is a civil engineering project, the initial fields may include date and time, project name, project location, project responsible person, geological exploration situation, engineering material specifications, etc. Another example, if the project type is a transportation project, the initial fields may include date and time, project name, project location, project responsible person, traffic flow prediction, traffic safety standards, infrastructure design, etc.
[0068] A field refers to the attribute or column name of data. For example, in the target log template, if there is weather condition data for a period of time under the column of "weather", then "weather" is the field in the target log template used to represent the need to fill in weather condition data.
[0069] The field priority is used to represent the probability of filling the field into the target log template. The greater the field priority, the greater the probability that the initial field is filled into the target log template.
[0070] In some embodiments, the processor may obtain the historical engineering logs corresponding to the historical engineering projects of the same type as the target project type; determine the field importance of each initial field in the initial log template and / or the initial fields corresponding to the target project type based on the historical engineering logs; and determine the field priority based on the dependencies and field importance of each initial field in the initial log template and / or the initial fields corresponding to the target project type.
[0071] A historical engineering project refers to an engineering project that has been completed. The project type of the historical engineering project is the same as the current target project type.
[0072] A historical engineering log refers to the engineering logs generated in a historical engineering project, such as historical safety logs, historical supervision logs, historical construction logs, etc.
[0073] In some embodiments, the processor may, based on the target project type, search in the storage device for a historical engineering project with the same project type as the target project type (i.e., the project type of the historical engineering project is the same as the target project type), and extract the historical engineering logs corresponding to the historical engineering project.
[0074] Field importance is used to indicate the importance level of each initial field in the initial log template.
[0075] In some embodiments, the field importance of the initial field may be calculated by the term frequency-inverse document frequency algorithm. For example, the initial fields in the initial log template and the initial fields corresponding to the target project type may form a field set F = {f1, f2, …, fn}, and the field importance may be determined by the following formula (1): (1)
[0076] Where, represents the field importance of the initial field , represents the frequency of the initial field appearing in the historical engineering logs under a specific project type (e.g., the target project type), N represents the total number of historical engineering logs in the historical engineering projects with the same project type as the target project type, represents the number of historical engineering logs containing the initial field . The frequency of the initial field under a specific project type may be determined by the ratio between the number of times the initial field appears in the historical engineering days and the number of all fields in the historical engineering logs.
[0077] In some embodiments, the field importance of the initial field may be determined by algorithms such as the information gain algorithm, the latent semantic analysis algorithm, the topic model (e.g., Dirichlet distribution), the lexical divergence algorithm, etc.
[0078] Dependency refers to a parameter that characterizes the logical dependency relationship between each initial field (e.g., the fields in the field set F = {f1, f2, …, fn}).
[0079] In some embodiments, the processor may determine the dependency degrees of the respective initial fields based on historical engineering logs. For example, the processor may represent the dependency degrees of the initial fields by establishing a field dependency graph. The field dependency graph is a visualization tool for representing the dependency relationships between fields (columns). The field dependency graph may include multiple nodes and multiple edges. Each node represents a field. Each edge is used to represent the dependency relationship between the two fields connected by the edge. In some embodiments, each edge has a direction, and the direction of the edge points from the dependent field to the field being depended on, which may be represented by an arrow. For example, if the edge connecting two fields A and B points from A to B, it means that field B depends on field A.
[0080] In some embodiments, the dependency degrees between the initial fields may be determined by data statistics and analysis methods, association rule mining methods (e.g., Apriori algorithm), machine learning models (e.g., importance measure algorithms of random forests, LASSO regression algorithms, etc.), causal inference and graph models (e.g., graphical models such as Bayesian networks, Markov random fields, etc.). For example, to determine the dependency degree between initial fields A and B using data statistics and analysis methods, the frequency of the combination of initial fields A and B in historical engineering logs may be counted. If the frequency is greater than a certain threshold, it can be considered that there is a dependency relationship between initial fields A and B. Further, the dependency relationship and the dependency degree between initial fields A and B may be added to the dependency graph. Another example is that using the association rule mining method, the stability of the combination of initial fields A and B can be evaluated by calculating the support and confidence. If initial fields A and B always appear together, it can be identified that there is a dependency relationship between initial fields A and B, and the dependency relationship between initial fields A and B may be added to the dependency graph. Further, for example, if the initial field A is "the arrival time of construction workers" and the initial field B is "the start time of construction", through data statistics and analysis methods, it can be determined that the initial field B and the initial field A always appear together. Therefore, it can be determined that there is a dependency relationship between "the arrival time of construction workers" and "the start time of construction" and the dependency degree can be further determined.
[0081] In some embodiments, the dependency relationships between each initial field and other fields may be quantified by the dependency degrees. The dependency degree may represent the strength of the dependency relationship between the initial field and other fields. For example, the dependency degree between initial fields A and B may be further determined based on the frequency of the combination of initial fields A and B in historical engineering logs. The greater the frequency of the combination of initial fields A and B in historical engineering logs, the greater the dependency degree between initial fields A and B.
[0082] In some embodiments, the dependency degrees between each initial field and other fields in the field set may be further counted.
[0083] In some embodiments, the processor may determine the field priority by weighted summation based on the dependencies and field importance levels of the initial fields in the initial log template and / or the initial fields corresponding to the target project type. The field priority is directly proportional to the dependency and directly proportional to the field importance. For example, the field priority may be determined by the following formula (2): (2)
[0084] Wherein, represents the priority of the initial field , represents the dependency of the initial field , and are the weight coefficients of the field importance and the dependency, and are respectively used to control the influence of the field importance and the dependency. represents the total dependency between the initial field and other fields in the field set, or the maximum value of the dependencies between the initial field and other fields in the field set, or the average value of the dependencies between the initial field and other fields in the field set.
[0085] In some embodiments, the processor may adjust and using the gradient descent method. For example, the processor may, based on the loss function, iteratively adjust the parameters and using the gradient descent method multiple times until the result of the loss function converges.
[0086] In some embodiments of this specification, determining the field importance of the initial fields based on historical engineering logs and determining the field priority based on the dependencies and field importance of the initial fields helps to ensure the accuracy and logical consistency of the generation of the target log template and maximize the adaptability of the target log template to the project type. By establishing a field dependency graph, the system determines the logical relationships between fields, enabling the fields in the log template to be arranged both in logical order and adaptively according to the priority.
[0087] In some embodiments, the target log template determined after optimizing the initial log template based on the field priority includes multiple target fields. In some embodiments, the processor may simultaneously optimize the initial log template based on the dependency threshold and the field priority to obtain the target log template.
[0088] The dependency threshold is used to constrain the number of templates in the target log. Through the dependency threshold, initial fields in the initial fields of the initial log template whose dependency is greater than the dependency threshold and whose field priority is greater than the priority threshold can be retained in the target log template, and initial fields with a dependency less than the dependency threshold or initial fields with a priority less than the priority threshold can be deleted. For example, when there are dependency relationships among initial fields 1, 2, 3, ……, n-1, n, assuming there is a dependency relationship between initial fields 1 and 2, a dependency relationship between initial fields 3 and 4, and a dependency relationship between initial fields n and n-1, initial fields in initial fields 1, 2, 3, ……, n whose dependency is greater than the dependency threshold and whose field priority is greater than the priority threshold can be retained in the target log template, and initial fields with a dependency less than the dependency threshold can be deleted. Further, for example, if the dependency between initial fields n and n-1 is less than the dependency threshold, initial field n-1 can be deleted from the initial log template. Another example is that when there are dependency relationships among initial fields 1, 2, 3, ……, n-1, n, and the dependency threshold is p, where p is less than n, the processor can retain the p initial fields with the highest dependencies in initial fields 1, 2, 3, ……, n in the target log template.
[0089] In some embodiments, the dependency threshold and / or the priority threshold can be set by the system default.
[0090] In some embodiments, the processor can optimize the initial fields in the initial log template based on the dependency threshold, using the dependency and the priority to generate the target fields in the target log template. Further, constraint conditions can be set based on the dependency threshold to maximize the sum of the priorities of the target fields in the target log template. That is, when maximizing the sum of the priorities of the target fields in the target log template, it is necessary to satisfy that the sum of the dependencies of the target fields in the target log template exceeds the dependency threshold. For example, the processor can determine the target fields of the target log template through the following formula (3): (3)
[0091] where, represents the set of fields in the target log template that conform to the target project type, target log type, target project phase, and target user position, represents a field in the set of fields, represents the dependency threshold, represents the field dependency, represents the field priority. Through formula (3), the initial fields of the initial log template can be combined to generate the set of fields in the target log template (for example, the set of fields ), in the process of maximizing the sum of the field priorities in the field set, the sum of the field dependencies in the field set is made greater than the dependency threshold, so as to determine the target fields in the target log template.
[0092] In some embodiments of the present specification, based on the target project type, the field priorities of the initial fields are determined, and then the initial log template is optimized to obtain the target log template, which is beneficial to strengthening the front-back logical association between the control fields and ensuring the rationality of the business logic.
[0093] In some embodiments of the present specification, an initial log template is generated based on the target log type, target project phase, and target user position related to the engineering project, and the initial log template is optimized based on the target project type to obtain the target log template, which is beneficial to improving the adaptability of the target log template to different project requirements. Through the dynamic template generation technology based on log type, project phase, and user role, it is ensured that the template automatically adapts to different project requirements, greatly improving the generation efficiency and business adaptability of the construction log.
[0094] Step 320, obtain the target data collected by the target data source in the target project phase.
[0095] The target data source refers to a data source whose real-time performance and accuracy meet the requirements.
[0096] The data sources in the project engineering can include sensors and monitoring devices, engineering machinery and equipment, monitoring systems, digital platforms and mobile applications, supply chain and inventory management systems, attendance systems, external APIs and systems, etc. The sensors and monitoring devices can include measuring instruments (such as total stations, laser rangefinders, etc.), environmental sensors (such as sensors for monitoring temperature, humidity, wind speed, etc.), and structural health monitoring sensors (such as sensors for detecting the stress, vibration, etc. of buildings). The engineering machinery and equipment can record the operation data of the equipment, such as time, load, fuel consumption, etc. The monitoring system can include on-site monitoring cameras, drones, voice input devices, etc. The digital platforms and mobile applications can include building information modeling platforms, mobile application programs, etc. The mobile application programs can be used for on-site workers and managers to report problems, update work progress, view construction drawings and documents, etc. The supply chain and inventory management systems can include material management systems. The external APIs and systems can include third-party services, such as weather services, geographical location services, etc.
[0097] In some embodiments, the processor can obtain multiple candidate data sources; determine the real-time performance index and accuracy index of each candidate data source among the multiple candidate data sources; based on the real-time performance index and accuracy index, determine the target index of the candidate data source by weighting; based on the target indexes of the candidate data sources, determine the target data source.
[0098] For more information on how to obtain the target data source, real-time metrics, and accuracy metrics, please refer to Figure 4 and its related descriptions.
[0099] Target data refers to the data collected or stored by the target data source. Target data can include personnel attendance data, weather data, audio data, image data, etc.
[0100] In some embodiments, the processor may determine the target data source based on the real-time metrics and accuracy metrics of the candidate data sources, and obtain the target data collected or stored by the target data source. For more information on determining the target data source, please refer to Figure 4 and its related descriptions.
[0101] In the log generation scenario, the data source weights are adjusted through real-time and accuracy metrics, and high-quality data sources are preferentially selected to ensure the accuracy and timeliness of data filling. This optimization mechanism makes data filling more intelligent and reduces the uncertainty of data acquisition.
[0102] Step 330, fill the target log template with the target data to generate an engineering log.
[0103] In some embodiments, the processor may fill the target data into the target log template to obtain an engineering log.
[0104] In some embodiments, the processor may obtain the access permission model of the engineering log; obtain the user operation; and, based on the access permission model and the user operation, determine the user's access permission to the target area and / or target field.
[0105] The log area refers to the area composed of different attribute fields in the engineering log. For example, the log area may include a security area, a progress area, a budget area, etc.
[0106] The access permission model refers to the model used to restrict the user's access permission to different log areas and / or fields in the engineering log. The access permission model includes the access permissions of different users to different log areas and / or different fields in the engineering log. In some embodiments, the access permission model may be represented as a matrix, and the elements in the matrix indicate whether the user has access permission to different log areas and / or different fields. For example, for the matrix , where A represents the matrix corresponding to the permission model, represents the element in the matrix, The value of is 1 or 0; 1 indicates that the user has access permission to the log area or the field, and 0 indicates that the user has access permission to the log area or the field, or the field does not have access rights.
[0107] User operations refer to the operations performed by the user on the log area in the engineering log. User operations include the user's access to the target area or target field in the engineering log. Among them, access can include operations such as viewing or browsing, confirmation, editing, modification, addition, etc. For example, the user can view the specific content corresponding to the field in the target area by clicking on the target area in the log.
[0108] The target area refers to the log area corresponding to the user operation, and the target field refers to the field in the log corresponding to the user operation.
[0109] In some embodiments, the processor can obtain user operations through the terminal device.
[0110] In some embodiments, the processor can determine the user's access rights to the target area and / or target field based on the user operation and the access right model. For example, the processor can look up the element value at the corresponding position in the access right model based on the user identity information (e.g., user ID) and the target area and / or target field that the user is operating on. If the element value is 1, the user has access rights to the target area or target field. If the element value is 0, the user does not have access rights to the target area or target field.
[0111] In some embodiments, the processor can display the engineering log according to the log access right model. For example, the processor can determine whether to display the specific data or content of different log areas and / or different fields according to the user's access rights to different log areas and / or different fields in the log access right model. Further, for example, when the user does not have access rights to a certain log area and / or field in the engineering log, the processor can hide or blur the specific data or content corresponding to the log area and / or field on the user terminal.
[0112] In some embodiments, the access right model can be preset by the user or set by the system default. For example, the access right model can be determined according to the association between the user's position and different fields. Further, for example, the fields corresponding to different user positions can be different. Set the access rights of the fields corresponding to the user position to be accessible, and set the fields not corresponding to the user position to be inaccessible, so as to establish a permission association between the user position and the field.
[0113] For example, the fields corresponding to a safety officer include date and time, recorder, event type, event location, time description, involved personnel, injuries and hazards, cause analysis, measures taken, inspection content, decision and action items, review and signature, etc. If the user's position is a safety officer, then the user has access rights to fields such as date and time, recorder, event type, event location, event description, involved personnel, injuries and hazards, cause analysis, measures taken, inspection content, decision and action items, review and signature, etc. In the access rights model, the access rights corresponding to the above fields are 1. Another example, the fields corresponding to a supervisor can include project name, project location, weather conditions, information of the supervision engineer, information of the construction unit, construction content, quality control, equipment and materials, supervision suggestions, etc. If the user's position is a supervisor, then the user has access rights to fields such as project name, project location, weather conditions, information of the supervision engineer, information of the construction unit, construction content, quality control, equipment and materials, supervision suggestions, etc. In the access rights model, the access rights corresponding to the above fields are 1.
[0114] Furthermore, for example, the processor can establish a permission association between the major hazard rectification fields and the safety officer role. For example, the major hazard rectification fields include involved personnel in the event, injuries and hazards, cause analysis, measures taken, etc. Establish a permission association between the budget amount field and the budget clerk.
[0115] In some embodiments, the access rights model can be dynamically adjusted based on the project phase. For example, when the project phase is in the early stage of the project, such as the design phase, project phase, etc., the access rights model can focus on the progress area. Further, for example, the access rights of each field in the progress area can be set, and the access rights of specific fields in other areas are not set, only the access rights of the area are set. When the project phase is in the later stage of the project, such as the delivery and acceptance phase, the access rights model can focus on the safety area. For example, the access rights of each field in the safety area can be set, and the access rights of specific fields in other areas are not set, only the access rights of the area are set.
[0116] Furthermore, for example, the access rights of the same user to the same area in different project phases can be different. Adjusting the user's access rights according to the project phase can improve the security of user data. Further, for example, the access rights of the same user in different project phases to the progress area and the safety area in the access rights model can be adjusted. For example, if the user is a safety officer, in the early stage of the project, the user's access rights to the safety area can be set to 0; when in the later stage of the project, the user's access rights to the safety area can be set to 1.
[0117] In some embodiments of the present specification, determining the access rights of a user to a target area or a target field based on an access rights model and user operations is beneficial to dynamically adjust the access rights based on project progress, project risk level, user position, etc., thereby making the access rights model more adaptable to project changes and achieving the flexibility and security of access rights control.
[0118] In some embodiments, the processor may perform anomaly detection on the data filled in each field of the target log template based on the sliding window algorithm to determine the anomaly detection result of the engineering log. During the generation process of the engineering log, the processor may obtain data from the target data source in real time through the API interface and fill the obtained data into the corresponding fields in the target log template after processing.
[0119] The sliding window algorithm refers to an algorithm for analyzing data changes over a period of time.
[0120] Anomaly detection refers to the detection of the situation where target data is filled into target fields. In some embodiments, the processor may perform anomaly detection by calculating the mean value of the data within the window and the standard deviation of the data within the window through the sliding window algorithm. For example, assuming the data sequence within the window is {x 1 ,x 2 ,…,x n}, the standard deviation and mean value of the data within the window can be calculated through formulas (4) and (5) respectively: (4) (5)
[0121] where, represents the data at time i in the data sequence, n represents the number of data in the data sequence, represents the mean value of the data within the window, represents the standard deviation of the data within the window. The data sequence refers to the data sequence composed of all data from time 1 to time n within the window.
[0122] The anomaly detection result includes at least one of no anomaly, anomaly data with anomaly, and the corresponding anomaly field.
[0123] In some embodiments, in response to the new data exceeding the anomaly detection threshold, the processor may determine the new data as anomaly data. The new data refers to the data whose data collection time is after the data collection time of the data sequence. For example, the processor may determine the anomaly data based on the mean value and standard deviation of the data within the window through the following formula (6): (6)
[0124] where, represents the new data, represents the anomaly detection sensitivity coefficient, represents the mean value of the data within the window, represents the standard deviation of the data within the window. When the new data satisfies formula (6), it can be determined that the new data is anomalous data, that is, when the difference between the new data and the mean value of the data within the window is greater than the product of the anomaly detection sensitivity coefficient and the standard deviation of the data within the window, it can be considered that the new data is anomalous data. The product of the anomaly detection sensitivity coefficient and the standard deviation of the data within the window is also referred to as the anomaly detection threshold.
[0125] In some embodiments, the processor can dynamically adjust the anomaly detection sensitivity coefficient based on data fluctuations. For example, when the data fluctuations are small, the processor can increase the anomaly detection sensitivity coefficient; when the data fluctuations are large, the processor can decrease the anomaly detection sensitivity coefficient. The data fluctuations can be represented based on the standard deviation of the data within the window and / or the mean value of the data within the window. For example, the larger the standard deviation of the data within the window, the greater the data fluctuations; the smaller the standard deviation of the data within the window, the smaller the data fluctuations. In some embodiments, there is a corresponding relationship between the standard deviation of the data within the window and the anomaly detection sensitivity coefficient. Each value of the standard deviation of the data within the window can correspond to a value of the anomaly detection sensitivity coefficient, and the anomaly detection sensitivity coefficient can be determined based on this corresponding relationship and the value of the standard deviation of the data within the window. Another example is that when the change in the mean value of the data within the window is small (e.g., less than the mean threshold), it represents that the data fluctuation situation is small; if the change in the mean value of the data within the window is large (e.g., greater than the mean threshold), it represents that the data fluctuation situation is large.
[0126] In some embodiments, the sliding window algorithm can detect the data fluctuation situation based on a window of a fixed size. Among them, the window size is inversely proportional to the mean value of the data within the window and directly proportional to the standard deviation of the data within the window. For example, the processor can determine the window size based on the following formula (7): (7)
[0127] where k represents the window size, , , has the same meaning as in formulas (4) and (5), and the relevant content can be referred to the previous description.
[0128] In some embodiments, the processor may dynamically adjust the window size based on the data fluctuation condition. The data fluctuation condition may be represented by the mean value and the standard deviation of the data within the window. When the change in the mean value of the data within the window is small (e.g., less than the mean threshold), it represents that the data fluctuation condition is small; if the change in the mean value of the data within the window is large (e.g., greater than the mean threshold), it represents that the data fluctuation condition is large; if the standard deviation of the data is large (e.g., greater than the standard deviation threshold), it represents that the data fluctuation condition is large; if the standard deviation of the data is small, it represents that the data fluctuation condition is small (e.g., less than the standard deviation threshold). For example, when the data fluctuation is small (e.g., the personnel attendance data generally has small fluctuations), the processor may reduce the window size to quickly capture anomalies; when the data fluctuation is large (e.g., the device status data generally has large fluctuations), the processor may increase the window size to reduce false alarms. The mean threshold and the standard deviation threshold may be set according to the actual application scenario or user experience.
[0129] In some embodiments, there is a preset relationship between the window size and the standard deviation of the data within the window and / or the range of the mean value of the data within the window, and the window size may be determined based on this preset relationship. For example, different standard deviation ranges may correspond to different window sizes, and the window size may be determined based on the determined standard deviation of the data and the preset relationship.
[0130] In some embodiments, the processor may adjust or update the access permission, the target data source, and / or the target log template based on the anomaly detection result. In some embodiments, in response to the anomaly detection module finding that the data of a certain field exceeds the detection threshold (e.g., the sliding window algorithm detects an abnormal data fluctuation), the processor may record, mark, and classify the abnormal data. For example, when the sliding window algorithm detects an abnormal data fluctuation, the processor may store information such as the specific value of the abnormal data, the field name, the associated log area, and the detection time into the abnormal data log, and at the same time record the abnormal type of the abnormal data (e.g., out of range, logical conflict, missing value, etc.). The processor may also highlight the field corresponding to the abnormal data in the engineering log generation interface, and attach an anomaly description to prompt the user to pay attention to the relevant problem. The processor may also classify the abnormal data into different categories based on the abnormal type of the abnormal data (e.g., real-time anomaly, logical anomaly, accuracy anomaly, etc.) to provide a basis for subsequent processing.
[0131] In some embodiments, the processor may determine the log area and / or field where the abnormal data is located; adjust the access permission of the user to the log area and / or field where the abnormal data is located. In some embodiments, the processor may determine the abnormal field corresponding to the abnormal data based on the abnormal data, and determine the log area corresponding to the abnormal field based on the abnormal field.
[0132] In some embodiments, the processor may adjust the access permission of the log area based on the risk level of the abnormal data. The risk levels include low risk (e.g., date, weather, etc.) and high risk (e.g., security inspection, major equipment status anomaly, etc.). The processor may determine the risk levels of different abnormal data based on default settings or manually based on experience. For example, the processor may obtain the risk level of the abnormal data. When the risk level of the log area is high risk, the access permission of this log area in the access permission model is adjusted to be accessible only by some user positions (e.g., project manager, safety officer, etc.).
[0133] In some embodiments, the operation log of the access permission adjustment (e.g., adjustment time, adjustment reason, access permissions before and after adjustment, abnormal data triggering the permission adjustment, etc.) may be stored in a storage device. In some embodiments, when the abnormal detection result is eliminated (e.g., the abnormal data is corrected, the abnormal data is verified to be error-free, etc.), the processor may adjust the access permission of the log area based on the original configuration of the access permission model and restore it to the access permission of the corresponding log area in the access permission model.
[0134] In some embodiments of this specification, determining the log area where the abnormal data is located; adjusting the user's access permission to the log area and / or fields where the abnormal data is located is beneficial to improving the security and compliance of the data in the engineering log.
[0135] In some embodiments, the processor may determine the abnormal data source based on the target data source corresponding to the abnormal data; adjust the target metrics of the abnormal data source; and, based on the adjusted target metrics, re-determine the target data source for filling the target log template.
[0136] The abnormal data source refers to the target data source for collecting or obtaining the abnormal data.
[0137] In some embodiments, the processor may determine the abnormal data source based on the frequency of abnormal occurrences of the data provided by the target data source in a field. For example, the processor may count the number of abnormal occurrences when the data of the target data source is filled into the corresponding field of the target log template within a preset time period. When the number of abnormal occurrences reaches the frequency threshold, the target data source corresponding to the abnormal data is determined as the abnormal data source. Abnormalities may include excessive filling delay (e.g., greater than the delay threshold), large data deviation (e.g., the deviation between the abnormal data and the reference data is greater than the deviation threshold), then it can be considered that the filled data in this field is abnormal. The delay threshold and / or the deviation threshold may be set by the system default or by the user according to the actual application scenario and experience.
[0138] In some embodiments, the processor may re-determine the target metrics of the target data source based on the real-time metrics and accuracy metrics of the target data source. Among them, the preset time period and frequency threshold may be set by the processor based on the default settings. The preset time period is greater than or equal to the data update period of the target data source.
[0139] In some embodiments, the processor may re-determine the target data source based on the adjusted target metrics. For example, the processor may adjust the weights of the real-time metrics and accuracy metrics based on the filling delay, filling accuracy rate, and filling exception rate corresponding to the historical engineering logs in the historical data of the target data source, and then adjust the target metrics. Then, the processor may re-select the data in the data source with relatively high target metrics, cross-verify the data with the data in the current engineering log, and select the data with a smaller error to fill into the target log template.
[0140] In some embodiments of this specification, determining the abnormal data source based on the target data source corresponding to the abnormal data, and then re-determining the target data source based on the adjusted target metrics is beneficial to ensuring the quality of the future engineering log data source and improving the accuracy of the data source.
[0141] In some embodiments, the processor may adjust the field priorities of the fields in the target log template based on the abnormal fields; and re-adjust the target log template based on the adjusted field priorities.
[0142] For example, the processor may re-determine the priorities of the abnormal fields and the target fields that have a dependency relationship with them based on the field dependency graph and the abnormal fields. The priorities of the target fields that have a dependency relationship with the abnormal fields may be adjusted, for example, increasing the priorities of the target fields, so that these target fields can be filled preferentially during the log generation process. Further, for example, if the "construction worker arrival time" field frequently appears abnormal, the processor may preferentially fill the target fields related to it (such as "construction start time"), and verify and correct the abnormal data according to the logical relationships of the related fields.
[0143] Among them, the processor may also automatically generate data filling suggestions based on the business logic of the initial fields. For example, when the data of the initial fields is missing, the processor may predict the data that should be filled into the initial fields based on the historical data and send data filling suggestions to the user.
[0144] In some embodiments of this specification, adjusting the field priorities of the fields in the target template based on the abnormal fields and re-adjusting the target log template is beneficial to ensuring the quality of the future engineering log data filled into the initial fields and improving the accuracy of data filling.
[0145] In some embodiments of this specification, anomaly detection is performed on data based on a sliding window algorithm or other detection algorithms to determine the anomaly detection results of engineering logs, record, mark, store, and display the anomalous data, dynamically adjust the access permissions of relevant areas based on the anomaly type and risk level, analyze the source of the anomalous data at the same time, dynamically adjust the target metrics and initial field priorities of candidate data sources, and then verify and correct the anomalous data, regenerate the engineering logs and remove the anomaly marks, and restore the user permissions of relevant areas and the configuration of the target data source, which is conducive to linking anomaly detection, permission control, and data optimization, ensuring that the anomalous data can be corrected and verified in a timely manner, and ensuring the normal operation of the business process and the continuous reliability and security of the data.
[0146] It should be noted that the above description of process 300 is only for illustration and explanation, and does not limit the scope of application of this specification. For those skilled in the art, various modifications and changes can be made to the process under the guidance of this specification. However, these modifications and changes are still within the scope of this specification.
[0147] Figure 4 It is an exemplary flowchart of a method for determining a target data source according to some embodiments of this specification. In some embodiments, process 400 can be executed by a processor of an engineering log generation system. The filled data of the same field in the target log template can be obtained from different candidate data sources. However, the accuracy and real-time performance of different candidate data sources are different. Therefore, the candidate data sources can be screened through the process shown in process 400 to determine the target data source for filling each field. Process 400 takes the screening of the target data source corresponding to a certain field (hereinafter referred to as the target field) in the target log template as an example, and the determination method of the target data source corresponding to other fields can also be referred to process 400.
[0148] As Figure 4 shown, process 400 includes the following steps: Step 410, obtain multiple candidate data sources.
[0149] Candidate data sources may include sensors and monitoring devices, construction machinery and equipment, monitoring systems, digital platforms and mobile applications, supply chain and inventory management systems, attendance systems, external APIs and systems, etc. Sensors and monitoring devices may include measuring instruments (e.g., total stations, laser rangefinders, etc.), environmental sensors (e.g., sensors for monitoring temperature, humidity, wind speed, etc.), and structural health monitoring sensors (e.g., for detecting stress, vibration, etc. of buildings). Construction machinery and equipment may record operation data of the equipment, such as time, load, fuel consumption, etc. Monitoring systems may include on-site monitoring cameras, drones, voice input devices, etc. Digital platforms and mobile applications may include building information modeling platforms, mobile applications, etc. Mobile applications may be used by on-site workers and managers to report problems, update work progress, view construction drawings and documents, etc. Supply chain and inventory management systems may include material management systems. External APIs and systems may include third-party services, such as weather services, location services, etc.
[0150] Step 420, determine the real-time index and accuracy index of each candidate data source among the multiple candidate data sources.
[0151] The real-time index refers to an index used to measure the data update frequency and timeliness of candidate data sources. In some embodiments, the real-time index may be represented by the data update frequency. For example, if it is updated once per minute, the real-time index may be 1; if it is updated twice per minute, the real-time index may be 2.
[0152] In some embodiments, the processor may, through the API interface, monitor in real time the response time of the candidate data source and the time interval for the data source to update or collect data, and determine the real-time index of the candidate data source based on the response time of the candidate data source and the time interval for the candidate data source to update or collect data. For example, the processor may determine the real-time index of the candidate data source according to formula (8): (8)
[0153] Wherein, represents the real-time index of the candidate data source, represents the response time of the candidate data source, represents the time interval from the most recent update of the candidate data source to the current time.
[0154] An accuracy metric refers to a metric used to measure the accuracy and deviation of data in a candidate data source. In some embodiments, the accuracy metric can be determined by comparing historical data provided by the candidate data source for populating target fields in a target log template with abnormal fields in the target fields of historical engineering logs. For example, for each candidate data source, the processor can obtain historical data collected during a historical time period, where the historical data is used to populate target fields in historical engineering logs. The processor can further count the number of fields with errors or anomalies in the target fields of historical engineering logs populated with the historical data provided by the candidate data source, and determine the accuracy metric based on the number of fields with errors or anomalies. Further, the processor can determine the accuracy metric of the candidate data source according to formula (9): (9)
[0155] wherein, represents the accuracy metric corresponding to the data source for collecting data to populate a certain target field in the historical engineering log, the number of abnormal fields represents the number of fields with errors or anomalies in the target fields of the historical engineering log populated with the historical data provided by the candidate data source, and the total number of fields represents the total number of fields to be populated in the historical engineering log. In some embodiments, for any candidate data source, the processor can obtain multiple historical engineering logs, count the abnormal fields with errors in the data collected by the candidate data source populated into the multiple historical engineering logs, and determine it as the accuracy metric of the candidate data source.
[0156] Step 430, determine the target metric of each candidate data source based on the real-time metric, the accuracy metric, the target weight corresponding to the real-time metric, and the target weight corresponding to the accuracy metric.
[0157] In some embodiments, the processor can determine the target metric in various ways. For example, the target metric is positively correlated with the real-time metric and the accuracy metric. The processor can determine the target metric through the following formula (10): (10)
[0158] wherein, represents the target metric, represents the weight of the real-time metric, represents the weight of the accuracy metric, represents the real-time metric, represents the accuracy metric.
[0159] In some embodiments, when determining the target data source during the current engineering log generation process, the weights of the real-time metric and the accuracy metric can be the same as those used to evaluate the candidate data sources during the previous engineering log generation process.
[0160] In some embodiments, when determining the target data source during the current engineering log generation process, the processor can determine the initial weights of the real-time metric and the accuracy metric; and adjust the initial weights based on historical engineering logs to determine the weights of the real-time metric and the accuracy metric. The initial weights of the real-time metric and the accuracy metric can be the same or different. For example, the initial weights of the real-time metric and the accuracy metric can both be 0.5. In some embodiments, the processor can determine the weights of the real-time metric and the accuracy metric used to evaluate the candidate data sources during the previous engineering log generation process as the initial weights of the real-time metric and the accuracy metric.
[0161] In some embodiments, the processor can adjust the initial weights of the real-time metric and the accuracy metric based on the real-time metric and the accuracy metric to determine the target weights of the real-time metric and the accuracy metric. For example, if the response speed of the candidate data source is fast (i.e., the real-time metric is high), but the data accuracy is low (i.e., the accuracy metric is small), the weight of the accuracy metric should be appropriately reduced to avoid affecting the overall quality of log generation; if the data accuracy of the candidate data source is high (i.e., the accuracy metric is large), but the response speed is slow (i.e., the real-time metric is small), the weight of the real-time metric can be increased.
[0162] In some embodiments, the processor can obtain the log feedback data of the historical engineering logs, and adjust the initial weights of the real-time metric and the accuracy metric based on the log feedback data.
[0163] The log feedback data is related to the filled data of the target fields in the historical engineering logs. In some embodiments, the log feedback data can include fill latency, fill accuracy rate, fill exception rate, etc.
[0164] The fill latency refers to the time required to obtain data from the candidate data source and fill it into the target fields in the historical engineering logs during the historical engineering log generation process. In some embodiments, for multiple historical engineering logs, the processor can count the time required to obtain data from the candidate data source and fill it into the target fields in each historical engineering log generation process, calculate the average value of the times corresponding to the multiple historical engineering logs, and use the average value as the fill latency in the log feedback data.
[0165] The filling accuracy rate can represent the correctness of field filling in historical engineering logs. The filling accuracy rate can be represented by the ratio of the number of fields correctly filled in the target fields of multiple historical engineering logs to the total number of target fields. For any candidate data source, the filling accuracy rate can be determined by counting the number of correctly filled fields in the target fields filled with the data collected by this candidate data source in historical engineering logs. For example, if the data collected by the candidate data source is used to fill fields A, B, and C in historical engineering logs, then the number of times fields A, B, and C are correctly filled and the total number of times fields A, B, and C appear in historical engineering logs can be counted, and the ratio of the two is determined as the filling accuracy rate.
[0166] The filling anomaly rate can represent the anomaly situation of field filling in historical engineering logs. The filling anomaly rate can be represented by the ratio of the number of fields with filling anomalies in the target fields of multiple historical engineering logs to the total number of target fields. For any candidate data source, the filling anomaly rate can be determined by counting the number of anomaly fields in the target fields filled with the data collected by this candidate data source in historical engineering logs. For example, if the data collected by the candidate data source is used to fill fields A, B, and C in historical engineering logs, then the number of times fields A, B, and C have filling anomalies and the total number of times fields A, B, and C appear in historical engineering logs can be counted, and the ratio of the two is determined as the filling anomaly rate.
[0167] In some embodiments, the processor can adjust the initial weights of the real-time metric and the accuracy metric based on the filling latency and the filling accuracy rate (or the filling anomaly rate). The weight of the filling latency and the real-time metric is inversely proportional, and the weight of the filling accuracy rate and the accuracy metric is directly proportional. For example, when the filling latency in the log feedback data is relatively high (e.g., the filling period is once a week), the processor can reduce the value of the weight of the real-time metric; when the value of the filling accuracy rate in the log feedback data is relatively low (e.g., the filling accuracy rate is lower than 60%) or the anomaly rate is relatively high, the processor can reduce the value of the weight of the accuracy metric; when the filling latency in the log feedback data is relatively high and the filling accuracy rate is relatively low, the processor can significantly reduce the weights corresponding to the real-time metric and the accuracy rate metric, or the processor can delete this candidate data source.
[0168] In some embodiments, the adjustment of the real-time index and the accuracy index can be in a way of gradual optimization. Gradual optimization means that the adjustment is carried out gradually during multiple log generation processes, avoiding a too large one-time adjustment amplitude that may lead to an imbalance in weight distribution. For example, log generation based on the target log template can include generating N engineering logs continuously for N days. The processor can obtain the quality of the log after each engineering log is generated. When the change in log quality is small, the weights of the real-time index and the accuracy index can be finely adjusted. When the change in log quality is large, the real-time index and the accuracy index can be adjusted significantly. The adjusted weights of the real-time index and the accuracy index are used to screen the candidate data sources for the next log generation. The log quality can be represented by log feedback data. For example, the log quality can be represented by the filling accuracy rate. The change in log quality can be represented by the difference in the filling accuracy rate between two adjacent logs or the variance of the filling accuracy rate between two adjacent logs. For example, when the variance between the filling accuracy rates of two adjacent logs is less than or equal to the variance threshold, a small adjustment is made to the weights of the real-time index and the accuracy index; when the variance between the filling accuracy rates of two adjacent logs is greater than the variance threshold, a large adjustment is made to the weights of the real-time index and the accuracy index.
[0169] In some embodiments, there is a preset relationship between the change in log quality and the adjustment amplitude, and the specific adjustment amplitude can be determined based on the preset relationship.
[0170] In some embodiments of this specification, adjusting the initial weights of the real-time index and the accuracy index through log feedback data is beneficial to the real-time dynamic optimization of the target index, selecting the optimal target data source, improving the overall quality of log generation, and ensuring the accuracy of engineering log data.
[0171] Step 440: Determine the target data source based on the target index of each candidate data source.
[0172] In some embodiments, the processor can determine the target data source based on the target index of each candidate data source. For example, for each target field, the processor can determine the candidate data source with the highest target index as the target data source for filling the target field.
[0173] In some embodiments of this specification, determining the target index based on the real-time index, the accuracy index, the target weight corresponding to the real-time index, and the target weight corresponding to the accuracy index, and then determining the target data source, is beneficial to ensuring that the selection of the target data source is more in line with the actual business requirements.
[0174] One or more embodiments of this specification provide a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, it implements an engineering log generation method. The method includes obtaining a target log template based on a target log type, a target project type, a target project phase, and / or a target user position related to an engineering project (i.e., the log type, project type, project phase, and user position corresponding to the current engineering project), obtaining target data collected by a target data source during a project phase, and filling the target log template based on the target data to generate an engineering log.
[0175] The basic concepts have been described above. Obviously, for those skilled in the art, the above detailed disclosure is only an example and does not constitute a limitation to this specification. Although not explicitly stated here, those skilled in the art may make various modifications, improvements, and corrections to this specification. Such modifications, improvements, and corrections are suggested in this specification, so such modifications, improvements, and corrections still fall within the spirit and scope of the exemplary embodiments of this specification.
[0176] At the same time, this specification uses specific terms to describe the embodiments of this specification. Such as "one embodiment", "an embodiment", and / or "some embodiments" mean a certain feature, structure, or characteristic related to at least one embodiment of this specification. Therefore, it should be emphasized and noted that "an embodiment" or "one embodiment" or "an alternative embodiment" mentioned twice or more at different positions in this specification does not necessarily refer to the same embodiment. In addition, certain features, structures, or characteristics in one or more embodiments of this specification can be appropriately combined.
[0177] In addition, unless clearly stated in the claims, the order of the processing elements and sequences described in this specification, the use of numbers and letters, or the use of other names are not used to limit the order of the processes and laminar flow hoods in this specification. Although some currently considered useful invention embodiments are discussed through various examples in the above disclosure, it should be understood that such details only serve the purpose of explanation. The appended claims are not limited to the disclosed embodiments. On the contrary, the claims are intended to cover all modifications and equivalent combinations that conform to the essence and scope of the embodiments of this specification. For example, although the system components described above can be implemented by hardware devices, they can also be implemented only through software solutions, such as installing the described system on an existing server or mobile device.
[0178] Similarly, it should be noted that, in order to simplify the description disclosed in this specification and thus help the understanding of one or more embodiments of the invention, in the foregoing description of the embodiments of this specification, multiple features are sometimes grouped into one embodiment, drawing, or description thereof. However, this disclosure method does not mean that the features required by the subject matter of this specification are more than those mentioned in the claims. In fact, the features of the embodiments are fewer than all the features of the individual embodiments disclosed above.
[0179] In some embodiments, numbers are used to describe components and the quantity of attributes. It should be understood that such numbers used for the description of embodiments are modified by the modifiers "about", "approximate", or "substantially" in some examples. Unless otherwise stated, "about", "approximate", or "substantially" indicate that the said numbers allow a variation of ±20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximate values, and such approximate values may vary according to the characteristics required by individual embodiments. In some embodiments, the numerical parameters should consider the specified significant digits and adopt the method of retaining the general number of digits. Although the numerical ranges and parameters used in some embodiments of this specification to confirm the breadth of their scope are approximate values, in specific embodiments, such numerical settings are as precise as possible within the feasible range.
[0180] For each patent, patent application, patent application publication, and other materials cited in this specification, such as articles, books, specifications, publications, documents, etc., their entire contents are hereby incorporated into this specification by reference. Except for the application history documents that are inconsistent with or conflict with the content of this specification, and also except for the documents that limit the broadest scope of the claims of this specification (currently or subsequently appended to this specification). It should be noted that if there are inconsistencies or conflicts between the descriptions, definitions, and / or uses of terms in the attached materials of this specification and the content described in this specification, the descriptions, definitions, and / or uses of terms in this specification shall prevail.
[0181] Finally, it should be understood that the embodiments described in this specification are only used to illustrate the principles of the embodiments of this specification. Other variations may also fall within the scope of this specification. Therefore, by way of example and not limitation, alternative configurations of the embodiments of this specification can be considered to be in accordance with the teachings of this specification. Accordingly, the embodiments of this specification are not limited to the embodiments explicitly introduced and described in this specification.
Claims
1. A method for generating an engineering log, characterized in that: include: Obtain a target log template based on the target log type, target project phase, target user position, and target project type related to the engineering project; Acquire target data collected by the target data source during the target project phase; as well as, The target log template is filled based on the target data to generate a project log.
2. The method according to claim 1, characterized in that The target log template is obtained based on the target log type, target project phase, target user position and target project type related to the engineering project, including: generating an initial log template based on the target log type, the target project phase, and the target user position; and, The initial log template is optimized based on the target project type to obtain the target log template.
3. The method according to claim 2, characterized in that The optimizing the initial log template based on the target project type to obtain the target log template includes: Based on the target item type, determining the field priority of each initial field in the initial log template and / or the initial field corresponding to the target item type; and, The initial log template is optimized based on the field priority to obtain the target log template.
4. The method according to claim 3, characterized in that The determining, based on the target project type, the field priority of each initial field in the initial log template and / or the initial field corresponding to the project type includes: Obtain historical engineering logs corresponding to historical engineering projects of the same type as the target project; Based on the historical engineering log, determining the field importance of each initial field in the initial log template and / or the initial field corresponding to the target project type; and, The field priority is determined based on the dependency of each initial field in the initial log template and / or the initial field corresponding to the target project type and the field importance.
5. The method according to claim 1, characterized in that The method for determining the target data source includes: Obtain multiple candidate data sources; Determining a real-time index and an accuracy index for each of the plurality of candidate data sources; Determining a target indicator for each candidate data source based on the real-time indicator, the accuracy indicator, the target weight corresponding to the real-time indicator, and the target weight corresponding to the accuracy indicator; and The target data source is determined based on the target indicator of each candidate data source.
6. The method according to claim 5, characterized in that The method further comprises: Obtain log feedback data of historical engineering logs, wherein the log feedback data includes filling delay, filling accuracy, and filling abnormality rate; and, Based on the log feedback data, the initial weight of the real-time indicator is adjusted to obtain the target weight of the real-time indicator and / or the initial weight of the accuracy indicator is adjusted to obtain the target weight of the accuracy indicator.
7. The method according to claim 1, characterized in that The method further comprises: Acquire an access permission model for the engineering log, wherein the access permission model includes access permissions for different users to different log areas and / or different fields of the engineering log; Acquiring a user operation, wherein the user operation includes a user accessing a target area or a target field in the project log; and, Based on the access permission model and the user operation, the user's access permission to the target area or the target field is determined.
8. The method according to claim 1, characterized in that The method further comprises: Based on the sliding window algorithm, anomaly detection is performed on the data filled in each field in the target log template to determine the anomaly detection result of the engineering log; the window size of the sliding window algorithm is dynamically adjusted based on the data fluctuation of the engineering log in the window, and the anomaly detection result includes at least one of the absence of anomaly, the presence of anomaly, abnormal data or corresponding abnormal fields.
9. The method according to claim 8, characterized in that The method further comprises: Determine the log area and / or field where the abnormal data is located; and, Adjust the user's access rights to the log area and / or field where the abnormal data is located.
10. The method according to claim 8, characterized in that The method further comprises: Determine the abnormal data source based on the target data source corresponding to the abnormal data; adjusting a target indicator of the abnormal data source, wherein the target indicator is determined based on a real-time indicator and an accuracy indicator of the abnormal data source; and, Based on the adjusted target indicator, a target data source for filling the target log template is re-determined.
11. The method according to claim 8, characterized in that The method further comprises: Based on the abnormal field, adjusting the field priority of each field in the target log template; and, Based on the adjusted field priorities, the target log template is adjusted.
12. A system for generating engineering logs, characterized in that: include: The template generation module is configured to obtain a target log template based on a target log type, a target project phase, a target user position, and a target project type related to the engineering project; A data integration module is configured to obtain target data collected by a target data source during the target project phase; as well as, The data filling module is configured to fill the target log template based on the target data to generate a project log.
13. The system of claim 12, wherein: The system further comprises a permission detection module, wherein the permission detection module is configured to: Acquire an access permission model for the engineering log, wherein the access permission model includes access permissions for different users to different log areas and / or different fields of the engineering log; Acquiring a user operation, wherein the user operation includes a user accessing a target area and / or a target field in the project log; and, Based on the access permission model and the user operation, the user's access permission to the target area and / or the target field is determined.
14. The system of claim 12, wherein: The system further comprises an anomaly detection module, wherein the anomaly detection module is configured to: Based on the sliding window algorithm, anomaly detection is performed on the data filled in each field in the target log template to determine the anomaly detection result of the engineering log; the window size of the sliding window algorithm is dynamically adjusted based on the data fluctuation of the engineering log in the window, and the anomaly detection result includes at least one of the abnormal data with no abnormality, the abnormal data with an abnormality, and the corresponding abnormal field.
15. A computer program product, characterized in that The invention comprises a computer program which, when executed by a processor, implements the method according to any one of claims 1 to 11.
Citation Information
Patent Citations
Performance index abnormity detection method and device
CN109587001A
Railway engineering management method and system
CN115147062A
Industrial data table storage and query method and equipment
CN116186067A
Report generation method and report generation system
CN118820327A
Data acquisition method and device, electronic equipment and storage medium
CN119718637A