TWI821019B - Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction - Google Patents

Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction Download PDF

Info

Publication number
TWI821019B
TWI821019B TW111143737A TW111143737A TWI821019B TW I821019 B TWI821019 B TW I821019B TW 111143737 A TW111143737 A TW 111143737A TW 111143737 A TW111143737 A TW 111143737A TW I821019 B TWI821019 B TW I821019B
Authority
TW
Taiwan
Prior art keywords
data
construction
schedule
machine learning
data sets
Prior art date
Application number
TW111143737A
Other languages
Chinese (zh)
Other versions
TW202322004A (en
Inventor
森蒂爾 馬尼卡瓦斯加姆 庫馬爾
Original Assignee
美商斯拉特科技公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US17/683,858 external-priority patent/US11531943B1/en
Application filed by 美商斯拉特科技公司 filed Critical 美商斯拉特科技公司
Publication of TW202322004A publication Critical patent/TW202322004A/en
Application granted granted Critical
Publication of TWI821019B publication Critical patent/TWI821019B/en

Links

Abstract

Techniques to generate a digitally optimized schedule for a construction activity to meet a construction objective(s) of a construction project are disclosed. An artificial intelligence system receives a plurality of input data sets that impact the construction project. Each of the plurality of input data sets is processed to achieve the construction objective(s). The artificial intelligence system processes the plurality of input data sets using a respective ensemble of machine learning models. The artificial intelligence system generates machine learning validated intermediate output data sets corresponding to each of the plurality of input data sets. The artificial intelligence system implements a supervisory machine learning model to generate an optimized schedule for the construction activity based on the machine learning validated intermediate output data sets and the construction objective(s).

Description

用於智能施工的多因素日程表優化和資源建議的智慧驅 動方法和系統 Smart drive for multi-factor schedule optimization and resource recommendations for smart construction Dynamic methods and systems

本發明所屬技術領域之一為人工智慧和機器學習。本發明特別涉及使用機器學習來優化用於建築、工程、營造(Architecture,Engineering,and Construction,AEC)規劃和執行的日程表安排、資源分配和工作排序。本發明亦涉及利用機器學習智慧、認知、自我學習,以及可訓練系統和方法的組合,優化AEC的資源分配、日程表生成和管理。 One of the technical fields to which the present invention belongs is artificial intelligence and machine learning. The invention particularly relates to the use of machine learning to optimize scheduling, resource allocation and work sequencing for Architecture, Engineering, and Construction (AEC) planning and execution. The present invention also relates to the use of machine learning intelligence, cognition, self-learning, and a combination of trainable systems and methods to optimize resource allocation, schedule generation and management of AEC.

建築、工程與營造(簡稱AEC)的規劃會利用多個流程及實施方式,包括生成和管理全部或部分代表的施工設計、相關工程,以及人力和物資的分配和管理。其涉及施工設計的數位分身的創建,以及施工計劃各方面的模擬,例如施工日程表,包括工作包、工作命令、所需材料的次序及時間、採購計劃、採購時間與來源等。其他因素包括勞工、持續時間、對生態系統因素的依賴、施工區域的位相關係(topology)、天氣模式,以及周圍交通狀況等也被考慮在內。另外,成本參數、期程、對法規流程的瞭解和遵守以及環境因素等,在AEC規劃 中亦佔有重要地位。AEC軟體涵蓋了建設案從設計概念到執行階段的整體,還包括施工後的活動。負責建造、營運及維護各種實體基礎設施的組織和個人會使用這類AEC軟體,用於從水路到公路及港口、房屋、公寓、學校、商店、辦公空間、工廠、商業建築等的相關工作。 Architecture, Engineering and Construction (AEC) planning utilizes multiple processes and implementation methods, including the generation and management of all or part of the representative construction design, related works, and the allocation and management of labor and materials. It involves the creation of a digital avatar of the construction design, as well as the simulation of various aspects of the construction plan, such as the construction schedule, including work packages, work orders, the order and timing of required materials, procurement plans, procurement timing and sources, etc. Other factors including labor, duration, dependence on ecosystem factors, construction area topology, weather patterns, and surrounding traffic conditions are also considered. In addition, cost parameters, schedules, understanding and compliance with regulatory processes, and environmental factors, etc., are important in AEC planning. It also occupies an important position in. AEC software covers the entire construction project from design concept to execution, including post-construction activities. This type of AEC software is used by organizations and individuals responsible for building, operating and maintaining a variety of physical infrastructure, from waterways to highways and ports, houses, apartments, schools, shops, office spaces, factories, commercial buildings and more.

從規劃到設計再到施工,流程中的每個步驟都需要AEC軟體。藉由AEC軟體的使用,使用者可瞭解各種情況下建築物、建築材料和其他系統之間的關係,並嘗試在決策過程中將該等關係納入考量。然而,目前的AEC軟體只是一個孤立框架,一旦面臨來自本地甚至全球事件的多重輸入因素,該等軟體無法即時或近乎即時地適應或做出決定以將施工案的動態性質納入考量。 From planning to design to construction, AEC software is required for every step in the process. Through the use of AEC software, users can understand the relationships between buildings, building materials and other systems in various situations and try to take these relationships into consideration in the decision-making process. However, the current AEC software is just an isolated framework. Once faced with multiple input factors from local or even global events, the software cannot adapt or make decisions instantly or near-instantly to take into account the dynamic nature of the construction case.

AEC領域中的典型系統會依賴手動和基於規則的方式來生成基於特定情境的結果。然而,這些系統無法理解輸入資料或動態差異,還可能無法提供任何有意義的見解或行動引導。此外,該等系統沒有後續行動的追蹤機制,也無法驗證其引導是否有益於使用者。 Typical systems in the AEC space rely on manual and rules-based approaches to generate context-specific results. However, these systems cannot understand input data or dynamic differences and may not be able to provide any meaningful insights or guidance for action. In addition, these systems have no tracking mechanism for follow-up actions, and there is no way to verify whether their guidance is beneficial to users.

這個問題在AEC領域中更為嚴峻,因為影響施工日程表的因素繁雜,即使知道會出現,但在這些因素某種程度上確定將發生或可能發生之前欲進行預測、計劃及調整,是近乎不切實際的。 This problem is even more severe in the AEC field because there are many factors that affect the construction schedule. Even if you know that they will occur, it is almost impossible to predict, plan and adjust before these factors are certain to occur or may occur to some extent. Realistic.

因此,有必要針對上述需求及現有技術效率不彰的問題提出技術解決方案。 Therefore, it is necessary to propose technical solutions to the above needs and the inefficiency of existing technologies.

本申請案依據美國專利法(35 U.S.C.)第119(e)條,主張於2021年11月18日所提出的美國第63/280,881號臨時申請案「利用人機認知用於智能施工 的多因素日程表優化和資源建議的方法和系統」的權益,該案之全部內容均以引用方式併入本說明書。 This application is based on Section 119(e) of the U.S. Patent Law (35 U.S.C.) and claims the U.S. Provisional Application No. 63/280,881 "Using Human-Machine Cognition for Intelligent Construction" filed on November 18, 2021 "Methods and Systems for Multi-Factor Schedule Optimization and Resource Recommendation", the entire content of which is incorporated into this specification by reference.

以下為本發明揭示的一些實施例的總結,以提供對所揭示發明各方面的基本理解。以下總結並非本發明揭示內容的廣泛概述,無意呈現本發明揭示內容的關鍵或重要元素,亦無意界定揭示內容的範圍。其唯一目的是以簡化形式呈現本發明揭示內容的一些實施例,引出後續更詳盡的實施方式的說明。 The following is a summary of some embodiments disclosed in the present invention to provide a basic understanding of various aspects of the disclosed invention. The following summary is not an extensive overview of the disclosure. It is intended to present key or critical elements of the disclosure or to delineate the scope of the disclosure. Its sole purpose is to present some embodiments of the present disclosure in a simplified form as a prelude to the subsequent more detailed description of the embodiments.

在一示例性實施例中揭示一種人工智慧系統,其就施工專案中涉及的活動提供且動態實施一用於優化日程表及資源分配的數位印記,以達到一或多個施工目標的集合。施工目標的達成有助於成本優化、人力資源優化、任務優化、材料優化和永續性因素等。該人工智慧系統被設計成可接收複數個輸入資料集並衍生可能對施工案具有一潛在影響的複數個第一中間資料集(其為認知的、統計的及/或基於時間的)。該系統會針對該複數個輸入資料集的每一者進行處理,以達成一或多個施工目標之集合。該人工智慧系統進一步被配置為利用推理性和認知性機器學習模型各自的一或多個集成來處理該複數個輸入資料集。個別的機器學習模型集成是基於關聯目標及一輸入資料集而確定,該資料集可以是一可取得的、經預測的或推理的資料集。該人工智慧系統被配置為在處理過複數累積資料、受訓練/獲得知識,並採用人類智慧進行準確性驗證之後,生成機器知識驗證的決策集(例如,第一中間資料集)和建議。該人工智慧系統進一步被配置為實施一監督式機器學習模型,藉此基於累積的知識、經驗證的學習、資料集和配對來為施工活動生成優化建議,以符合指定的施工目標。 In an exemplary embodiment, an artificial intelligence system is disclosed that provides and dynamically implements a digital signature of activities involved in a construction project for optimizing schedules and resource allocation to achieve a set of one or more construction goals. Achieving construction goals contributes to cost optimization, human resource optimization, task optimization, material optimization and sustainability factors, etc. The artificial intelligence system is designed to receive a plurality of input data sets and derive a plurality of first intermediate data sets (which are cognitive, statistical and/or time-based) that may have a potential impact on the construction project. The system processes each of the plurality of input data sets to achieve one or more sets of construction goals. The artificial intelligence system is further configured to process the plurality of input data sets utilizing one or more ensembles of each of inferential and cognitive machine learning models. Individual machine learning model ensembles are determined based on associating objectives with an input data set, which may be an available, predicted, or inferred data set. The artificial intelligence system is configured to generate a machine knowledge-verified decision set (e.g., a first intermediate data set) and recommendations after processing the plurality of accumulated data, being trained/acquired, and using human intelligence for accuracy verification. The artificial intelligence system is further configured to implement a supervised machine learning model to generate optimization recommendations for construction activities based on accumulated knowledge, validated learning, datasets, and pairings to meet specified construction goals.

該等輸入資料集可包括(但不限於),經過分析的進行中及事後的品質指標。機器學習模型的集合可與下列相關:即時氣候和天氣預報、太空天 氣模式、小氣候因素;位相關係分析、結構分析;品質分析;庫存利用率和預估量;法令遵循;勞工和效率指標以及全球事件影響指標;供應鏈;設備和物聯網指標;以及勞工效能。系統認知則可能是在多種情境以及鏡像模擬結果下對人類決策過程、輸入及行動建立模型的衍生物。系統建議可能針對結果效率進行評估,並針對實際情況進行校準。 Such input data sets may include, but are not limited to, analyzed ongoing and ex post quality metrics. Collections of machine learning models can be related to: real-time climate and weather forecasts, space astronomy Weather patterns, microclimate factors; phase relationship analysis, structural analysis; quality analysis; inventory utilization and estimates; legal compliance; labor and efficiency indicators and global event impact indicators; supply chain; equipment and Internet of Things indicators; and labor effectiveness. System cognition may be a derivative of modeling human decision-making processes, inputs, and actions under multiple scenarios and mirror simulation results. System recommendations may be evaluated for resulting efficiency and calibrated to real-world conditions.

在一方面,本發明提供一種用於智能施工的多因素日程表優化和資源建議的電腦實施方法。該方法包含:接收一施工專案的一施工活動的一日程表請求,該日程表請求指明至少一施工目標;存取複數個輸入資料集;將複數個機器學習模型集成應用於該複數個輸入資料集中的每一者,以生成複數個中間資料集,每一中間資料集指明影響該施工專案的因素,其中該複數個機器學習模型集成中的每一機器學習模型集成會根據各自機器學習模型集成的功能目標,生成一中間資料集;基於該等中間資料集,使用一圖表模型判定任務資料;基於該任務資料,生成該施工活動的一日程表,該日程表會達成該至少一施工目標;以及表示該日程表以回應該日程表請求。在一實施例中,該日程表經由一圖形使用者介面、語音及訊息其中的至少一者表示。 In one aspect, the present invention provides a computer-implemented method for multi-factor schedule optimization and resource recommendations for smart construction. The method includes: receiving a schedule request for a construction activity of a construction project, the schedule request specifying at least one construction goal; accessing a plurality of input data sets; and applying a plurality of machine learning models to the plurality of input data. Each of the collections is used to generate a plurality of intermediate data sets, each of which specifies factors that affect the construction project, wherein each machine learning model ensemble in the plurality of machine learning model ensembles will be integrated according to the respective machine learning model ensemble. The functional goal is to generate an intermediate data set; based on the intermediate data set, use a chart model to determine task data; based on the task data, generate a schedule of the construction activity, which schedule will achieve the at least one construction goal; and representing the schedule in response to the schedule request. In one embodiment, the schedule is represented through at least one of a graphical user interface, voice, and messaging.

在一實施例中,該方法進一步包含:將一隨機模型應用於該複數個中間資料集,以判定影響該施工專案的該等因素的關聯資料;以及將該圖表模型應用於該關聯資料與租戶資料,以生成組合資料。 In one embodiment, the method further includes: applying a stochastic model to the plurality of intermediate data sets to determine correlation data of the factors affecting the construction project; and applying the graph model to the correlation data and tenants data to generate combined data.

在一實施例中,該方法進一步包含:接收有關該施工專案相關問題的回饋資料;使用該回饋資料修改該隨機模型;以及更新該施工專案的日程表。在一實施例中,該回饋資料係經由一圖形使用者介面作為使用者輸入被接收。在一實施例中,接收該回饋資料係之方式為:接收來自一施工現場的一即時 攝影機饋送;從該即時攝影機饋送中判定與該施工專案有關的效率問題資料;以及從該效率問題資料中生成該回饋資料。 In one embodiment, the method further includes: receiving feedback data on issues related to the construction project; using the feedback data to modify the stochastic model; and updating the schedule of the construction project. In one embodiment, the feedback data is received as user input via a graphical user interface. In one embodiment, the feedback data is received by receiving a real-time data from a construction site. a camera feed; determining efficiency issue data related to the construction project from the real-time camera feed; and generating the feedback data from the efficiency issue data.

在一實施例中,生成一日程表包含:基於該日程表,判定實際施工與預期施工之間的差異資料;以及使用該差異資料改進該日程表。 In one embodiment, generating a schedule includes: determining discrepancy data between actual construction and expected construction based on the schedule; and using the discrepancy data to improve the schedule.

在一實施例中,該複數個機器學習模型集成包含以下至少一者:一氣候分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析天氣模式;一結構分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析品質與設計;一品質分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析進度;一庫存分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析庫存;一法規模組,其經配置以基於要求,從該複數個輸入資料集的至少一輸入資料集中分析完工準時性;一全球事件影響模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析全球事件;一供應鏈分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析供貨與交貨;一設備健康和物聯網(IoT)指標分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析設備需求與採購因素;以及一勞工效率模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析勞工可取得性與技能。 In one embodiment, the plurality of machine learning model ensembles includes at least one of the following: a climate analysis module configured to analyze weather patterns from at least one input data set of the plurality of input data sets; a structural analysis module a group configured to analyze quality and design from at least one input data set of the plurality of input data sets; a quality analysis module configured to analyze progress from at least one input data set of the plurality of input data sets; an inventory analysis module configured to analyze inventory from at least one input data set of the plurality of input data sets; a method group configured to analyze inventory from at least one input data set of the plurality of input data sets based on a request Centralized analysis of on-time completion; a global event impact module configured to analyze global events from at least one input data set of the plurality of input data sets; a supply chain analysis module configured to analyze global events from the plurality of input data sets; At least one input data set of the data set analyzes supply and delivery; a device health and Internet of Things (IoT) indicator analysis module configured to analyze device demand and delivery from at least one input data set of the plurality of input data sets. sourcing factors; and a labor efficiency module configured to analyze labor availability and skills from at least one input data set of the plurality of input data sets.

100:聯網電腦系統/系統 100: Networked computer systems/systems

102:網路 102:Internet

104:客戶端電腦 104:Client computer

106:伺服器電腦 106:Server computer

112:模型集成 112:Model integration

114:控制器 114:Controller

116:通知器 116: Notifier

118:監視器 118:Monitor

120:修改器 120:Modifier

130:資料儲存庫 130:Data repository

132:資料饋送資料庫 132: Data feed database

134:施工目標資料庫 134: Construction target database

136:模型配置資料庫 136:Model configuration database

138:訓練資料資料庫 138:Training data database

140:建議資料庫 140: Suggested database

202:氣候分析模組 202:Climate Analysis Module

204:結構分析模組 204: Structural analysis module

206:品質分析模組 206:Quality analysis module

208:庫存分析模組 208:Inventory analysis module

210:法規模組 210:Legal Group

212:全球事件影響模組 212:Global event impact module

214:供應鏈分析模組 214: Supply chain analysis module

216:設備健康和物聯網指標分析模組 216: Device health and IoT indicator analysis module

218:勞工效率模組 218:Labor Efficiency Module

220:分析聚合器 220:Analytical Aggregator

222:關聯分析器 222:Association Analyzer

224:組合式分析知識和語義圖表模型 224: Combined Analytical Knowledge and Semantic Graph Models

226:日程表建議器 226:Schedule Suggestor

300:流程圖 300:Flowchart

302:回饋 302:Feedback

350:流程圖 350:Flowchart

352:效能指標分析模組 352: Performance indicator analysis module

354:承包商執行模組 354: Contractor Execution Module

356:日程表差異模組 356:Schedule difference module

400:方法 400:Method

402~410:步驟 402~410: Steps

500:電腦系統/計算裝置/裝置 500:Computer systems/computing devices/devices

502:輸出入子系統 502: Input and output subsystem

504:處理器 504: Processor

506:記憶體 506:Memory

508:唯讀記憶體 508: Read-only memory

510:儲存器 510:Storage

512:輸出裝置 512:Output device

514:輸入裝置 514:Input device

516:控制裝置 516:Control device

518:通訊介面 518: Communication interface

520:網路鏈路 520:Network link

522:網路 522:Internet

524:主機 524:Host

526:網際網路服務供應商(ISP) 526:Internet Service Provider (ISP)

528:網際網路 528:Internet

530:伺服器 530:Server

600:軟體系統 600:Software system

602A~602N:應用程式 602A~602N: Application

610:作業系統 610:Operating system

615:圖形使用者介面 615: Graphical user interface

620:裸硬體 620: Naked Hardware

630:虛擬機器監視器 630:Virtual Machine Monitor

本發明之進一步優勢將藉由參考較佳實施例之詳細說明並同時考慮附圖而趨於明朗。 Further advantages of the present invention will become apparent by referring to the detailed description of the preferred embodiments while considering the accompanying drawings.

第1圖顯示一聯網電腦系統示例,其可用以執行本發明各實施例。 Figure 1 shows an example of a networked computer system that can be used to implement various embodiments of the present invention.

第2A圖顯示根據本發明一實施例的一模型集成示例。 Figure 2A shows an example of model integration according to an embodiment of the present invention.

第2B圖顯示根據本發明一實施例的一控制器示例。 Figure 2B shows an example of a controller according to an embodiment of the invention.

第3A圖及第3B圖分別顯示根據本發明一實施例的一人工智慧平台流程圖示例。 Figures 3A and 3B respectively show an example of an artificial intelligence platform flow chart according to an embodiment of the present invention.

第4A圖顯示根據本發明一實施例生成一動態日程表的方法示例。 Figure 4A shows an example of a method for generating a dynamic schedule according to an embodiment of the present invention.

第4B圖顯示根據本發明一實施例的一日程表示例。 Figure 4B shows an example of a schedule according to an embodiment of the present invention.

第5圖顯示一計算裝置的方塊圖,本發明的示例性實施例可在該計算裝置中實現。 Figure 5 shows a block diagram of a computing device in which exemplary embodiments of the invention may be implemented.

第6圖顯示根據本發明一實施例,用於控制計算裝置操作的一基本軟體系統的方塊圖。 Figure 6 shows a block diagram of a basic software system for controlling the operation of a computing device according to an embodiment of the present invention.

以下實施方式旨在協助所屬技術領域具通常知識者製造和使用本發明所揭示之系統和方法。出於解釋目的,本文提供具體細節以幫助對本發明的理解。然而,本發明所屬領域具有通常知識者應顯見,實施本發明所提供之實施例並未需要該等具體細節。特定應用的實施方式僅作為代表性示例。本發明所述實施例的各種修改對於所屬領域具有通常知識者應為顯而易見,且本發明所定義之一般原理可應用至其他實施例和應用而不背離本發明的範圍。本發明並未限受限於所揭示之實施例,而是應在最廣泛的可能範圍內解釋本發明所揭示之原理和特徵。 The following embodiments are intended to assist those of ordinary skill in the art in making and using the systems and methods disclosed in the present invention. For purposes of explanation, specific details are provided herein to assist in the understanding of the invention. However, it will be apparent to one of ordinary skill in the art that these specific details are not required to practice the embodiments provided by the present invention. Application-specific embodiments are provided as representative examples only. Various modifications to the embodiments described herein will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the scope of the invention. The present invention is not limited to the disclosed embodiments, but the disclosed principles and features are to be interpreted in the broadest possible scope.

本發明實施例將按以下大綱分節說明: The embodiments of the present invention will be described in sections according to the following outline:

1.0 總覽 1.0 Overview

2.0 結構概述 2.0 Structure Overview

3.0 功能概述 3.0 Functional Overview

3.1 模型集成 3.1 Model integration

3.2 控制器 3.2 Controller

3.2.1 分析聚合器及關聯分析器 3.2.1 Analysis aggregator and correlation analyzer

3.2.2 圖表模型 3.2.2 Chart model

3.2.3 日程表建議器 3.2.3 Schedule Suggestor

3.2.3.1 效能指標分析模組 3.2.3.1 Performance indicator analysis module

3.2.3.2 日程表差異模組 3.2.3.2 Schedule Difference Module

3.2.3.3 承包商執行模組 3.2.3.3 Contractor Execution Module

3.3 通知器 3.3 Notifier

3.4 監視器 3.4 Monitor

3.5 修改器 3.5 Modifiers

4.0 流程示例 4.0 Process Example

5.0 程序概述 5.0 Program Overview

6.0 硬體概述 6.0 Hardware Overview

7.0 軟體概述 7.0 Software Overview

8.0 本發明之其他面向 8.0 Other aspects of the invention

1.0 總覽 1.0 Overview

本發明揭示一種人工智慧系統,其提供用於一施工活動的一電子優化日程表,以符合一施工項目的施工目標。施工活動的示例包括:清理、整地、挖掘、鑽地基、混凝土澆築、木工、系統改造等。施工目標的示例包括:時間目 標、預算/成本目標、品質目標、健康目標等。該人工智慧系統被配置為接收複數個可影響施工專案的輸入資料集。該複數個輸入資料集的每一者會經過處理以達成施工目標。該人工智慧系統被配置為使用一或多個不同的機器學習模型集成來處理該複數個輸入資料集。一機器學習模型的集成會生成一機器學習驗證資料集(例如,第一中間資料集)。該人工智慧系統進一步被配置為從一或多個機器學習驗證資料集來判定任務資料集(例如,第二中間資料集)。該人工智慧系統進一步被配置為基於至少該等任務資料集和施工目標,實施一監督式機器學習模型來生成一用於施工活動的優化日程表。 The present invention discloses an artificial intelligence system that provides an electronically optimized schedule for a construction activity to meet the construction goals of a construction project. Examples of construction activities include: clearing, site preparation, excavation, foundation drilling, concrete pouring, carpentry, system modifications, etc. Examples of construction goals include: Time goals targets, budget/cost targets, quality targets, health targets, etc. The artificial intelligence system is configured to receive multiple input data sets that can affect the construction project. Each of the plurality of input data sets is processed to achieve construction goals. The artificial intelligence system is configured to process the plurality of input data sets using an ensemble of one or more different machine learning models. The ensemble of a machine learning model generates a machine learning validation data set (eg, a first intermediate data set). The artificial intelligence system is further configured to determine the task data set (eg, the second intermediate data set) from the one or more machine learning validation data sets. The artificial intelligence system is further configured to implement a supervised machine learning model to generate an optimized schedule for construction activities based on at least the task data set and construction goals.

在一實施例中,該複數個輸入資料集其中一者的一施工目標,可獨立於該複數個輸入資料集中的各個其他輸入資料集。 In one embodiment, a construction target for one of the plurality of input data sets may be independent of each other of the plurality of input data sets.

在一實施例中,該人工智慧系統被配置為接收關於施工活動優化日程表的回饋。該回饋可由使用者藉由一手動施工監視器的輸入介面(例如,一圖形使用者介面)以手動方式提供予該人工智慧系統,或經由一自動化施工監視器自動提供,或兩者兼行。 In one embodiment, the artificial intelligence system is configured to receive feedback regarding an optimized schedule of construction activities. The feedback may be provided manually by the user to the artificial intelligence system through an input interface of a manual construction monitor (e.g., a graphical user interface), automatically provided by an automated construction monitor, or both.

在一實施例中,該人工智慧系統進一步被配置為基於系統建議和指引判定實際施工進度和預期施工進度之間的差異,並基於所判定之差異來為施工活動制定進一步的日程安排與資源分配改善細節。一修訂後的規劃會將該差異納入考量,並展望接下來的預定週數(例如,六週),以檢視並查看是否需要在目前差異下考慮任何其他因素。 In one embodiment, the artificial intelligence system is further configured to determine the difference between the actual construction progress and the expected construction progress based on the system recommendations and guidance, and formulate further schedules and resource allocations for the construction activities based on the determined differences. Improve details. A revised plan will take this difference into account and look ahead to the next scheduled number of weeks (e.g., six weeks) to review and see if any additional factors need to be considered given the current difference.

在一實施例中,該人工智慧系統進一步被配置為實施一閉環式效能分析機器學習模型的集成,該等模型可利用新的訓練資料(包括回饋)來自我 調整及/或自我訓練。該閉環式效能分析機器學習模型可包括本文所述機器學習模型的其中一者或全部。 In one embodiment, the artificial intelligence system is further configured to implement an integration of closed-loop performance analysis machine learning models that can leverage new training data (including feedback) to self-generate Adjustment and/or self-training. The closed-loop performance analysis machine learning model may include one or all of the machine learning models described herein.

其他實施例、面向和特徵將隨本發明的其他揭示內容趨於明朗。 Other embodiments, aspects, and features will become apparent from the remainder of this disclosure.

2.0 結構概述 2.0 Structure Overview

第1圖顯示一聯網電腦系統100,可使用該系統實施本發明的各個實施例。為求清楚解釋示例,第1圖所示為一簡化示意圖,而其他實施例可能包括較多、較少或不同的組成構件。第1圖與其他圖式,連同本發明所有揭示內容及請求項,旨在呈現、揭露並尋求保護一種技術系統與多種技術方法,該等系統與方法包括經特殊程式編寫的電腦,其係利用一特殊目的分散式電腦的系統設計與指令,該等指令被編寫成可執行所述功能。該等組成構件可執行過去不可行的功能,提供計算技術的一個實際應用,以解決AEC規劃與執行相關的日程表優化、資源分配和工作排序問題。藉由這種方式,本發明係針對一技術問題提供一技術解決方案;任何將本發明揭示內容或請求項視為不具專利適格性之解釋,例如視本發明為抽象概念、心智過程、組織人類活動的方法或數學演算法,均不受本說明書所支持且是錯誤的解釋。 Figure 1 illustrates a networked computer system 100 that may be used to implement various embodiments of the present invention. For clear explanation of the example, Figure 1 shows a simplified schematic diagram, and other embodiments may include more, fewer or different components. Figure 1 and the other drawings, together with all disclosures and claims of the present invention, are intended to present, disclose and seek to protect a technical system and various technical methods, including specially programmed computers, which utilize A system design and instructions for a special purpose distributed computer programmed to perform the functions described. These components can perform functions that were not feasible in the past and provide a practical application of computing technology to solve schedule optimization, resource allocation and work sequencing issues related to AEC planning and execution. In this way, the present invention provides a technical solution to a technical problem; any interpretation that deems the disclosure or claims of the present invention to be ineligible for patents, such as treating the present invention as an abstract concept, mental process, or organization of human beings The activity methods or mathematical algorithms are not supported by this manual and are incorrect interpretations.

在一些實施例中,該聯網電腦系統100包括:一客戶端電腦104、一伺服器電腦106、一資料儲存庫130,上述組成構件藉由一網路102直接或間接通訊耦接。在一實施例中,該伺服器電腦106廣義地代表一或多台電腦,譬如一或多台桌上型電腦、伺服器電腦、一伺服器農場、一雲端運算平台(如亞馬遜EC2、谷歌雲、容器編排(Kubernetes、Docker等)),或一平行運算電腦、在公有或私有資料中心的虛擬運算實例,及/或基於一伺服器應用的實例。 In some embodiments, the networked computer system 100 includes: a client computer 104, a server computer 106, and a data repository 130. The above components are directly or indirectly connected through a network 102. In one embodiment, the server computer 106 broadly represents one or more computers, such as one or more desktop computers, server computers, a server farm, a cloud computing platform (such as Amazon EC2, Google Cloud , container orchestration (Kubernetes, Docker, etc.)), or a parallel computing computer, a virtual computing instance in a public or private data center, and/or an instance based on a server application.

該伺服器電腦106包括一或多個電腦程式或程式指令序列,該等程式或指令序列被編寫來實施人工智慧/機器學習演算法,以生成關於一施工專案中的考量因素、控制功能、通知功能、監視功能及修改功能的資料。經此方式編寫以實施考量因素資料生成功能的程式或指令序列在本文可被稱為一模型集成112;經此方式編寫以實施控制功能的程式或指令序列在本文可被稱為一優化工程和施工排程器監督控制器114;經此方式編寫以實施通知功能的程式或指令序列在本文可被稱為一通知器116;經此方式編寫實施以監視功能的程式或指令序列在本文可被稱為一效能分析及流程監視器118;經此方式編寫以實施修改功能的程式或指令序列在本文可被稱為一修改器120。 The server computer 106 includes one or more computer programs or sequences of program instructions written to implement artificial intelligence/machine learning algorithms to generate considerations, control functions, notifications regarding a construction project Information about functions, monitoring functions and modifying functions. The program or instruction sequence written in this way to implement the consideration data generation function may be referred to as a model integration 112 in this article; the program or instruction sequence written in this way to implement the control function may be referred to as an optimization project and Construction scheduler supervisory controller 114; a program or instruction sequence written in this manner to implement a notification function may be referred to herein as a notifier 116; a program or instruction sequence written in this manner to implement a monitoring function may be referred to herein as It is called a performance analysis and process monitor 118; the program or instruction sequence written in this way to implement the modification function may be called a modifier 120 herein.

模型集成112、控制器114、通知器116、監視器118及/或修改器120可為伺服器電腦106所實施的一人工智慧(AI)平台的一部分。在一些實施例中,該伺服器電腦106的一或多個組成構件可包括一處理器,該處理器被配置為執行儲存在非暫態電腦可讀媒體中的指令。 Model integration 112 , controller 114 , notifier 116 , monitor 118 and/or modifier 120 may be part of an artificial intelligence (AI) platform implemented on server computer 106 . In some embodiments, one or more components of the server computer 106 may include a processor configured to execute instructions stored on non-transitory computer-readable media.

在一些實施例中,該模型集成112包括複數個模組,每個模組經程式編寫為可接收一資料饋送,並基於與各別模組的功能目標有關的資料饋送的相關區段判定一中間資料集,該中間資料集包含一施工專案中的考量因素。該資料饋送包括資料饋送初始部分的元資料或標籤,該等元資料或標籤會識別區段與相應的資料類型。或者,該等元資料或標籤會被混合在資料饋送中。例如,每個資料區段可包括指示該資料區段所屬資料類型的元資料。若該資料類型與各相關模組的功能目標一致,則各相關模組將處理該資料區段。例如,一微氣候分析模組針對一資料饋送,將只處理其中與該微氣候分析模組的功能目標(例如,天氣分析、預測、判定、建議等)相關的的資料區段。換句話說,該微氣候分析 模組會識別並處理那些具有指示天氣資料類型的元資料的資料區段。若一資料饋送只包括天氣資料,則該微氣候分析模組將會處理整個資料饋送。若一資料饋送並未包括任何天氣資料,則該微氣候分析模組將不會處理該資料饋送。 In some embodiments, the model integration 112 includes a plurality of modules, each module programmed to receive a data feed and determine a data feed based on relevant sections of the data feed related to the functional goals of the respective module. An intermediate data set containing considerations in a construction project. The data feed includes metadata or tags for the initial portion of the data feed that identify the segment and corresponding data type. Alternatively, the metadata or tags may be mixed in the data feed. For example, each data section may include metadata indicating the data type to which the data section belongs. If the data type is consistent with the functional goal of each relevant module, each relevant module will process the data section. For example, a microclimate analysis module will only process data sections of a data feed that are relevant to the functional goals of the microclimate analysis module (eg, weather analysis, prediction, determination, recommendations, etc.). In other words, this microclimate analysis The module identifies and processes data segments that have metadata indicating the type of weather data. If a data feed only includes weather data, the microclimate analysis module will process the entire data feed. If a data feed does not include any weather data, the microclimate analysis module will not process the data feed.

在一些實施例中,該控制器114經程式編寫為基於模型集成112所判定的因素(例如,第一中間資料集)而生成一用於施工專案的優化日程表。該優化日程表可基於來自監視器118的回饋而進一步優化或更新。 In some embodiments, the controller 114 is programmed to generate an optimized schedule for the construction project based on factors determined by the model ensemble 112 (eg, the first intermediate data set). The optimization schedule may be further optimized or updated based on feedback from monitor 118 .

在一些實施例中,通知器116經程式編寫為向使用者傳達通知,例如一優化的日程表和其他建議。例如,通知可在一使用者介面(例如,一圖形使用者介面)中或藉由語音或簡訊表示。通知器116可從控制器114和資料儲存庫130接收該等通知。 In some embodiments, notifier 116 is programmed to communicate notifications to the user, such as an optimized schedule and other suggestions. For example, the notification may be presented in a user interface (eg, a graphical user interface) or by voice or text message. Notifier 116 may receive such notifications from controller 114 and data repository 130 .

在一些實施例中,監視器118經程式編寫為接收可被用來在控制器114(例如在控制器114的一分析聚合器處)進行校正和修改的回饋。示例回饋可透過一輸入介面(例如,圖形使用者介面)以手動方式提供關於施工狀態、延宕等主題和問題的回饋,或藉由監視器118自動判定。監視器118也經程式編寫為可從一或多個外部來源(例如現場感測器或影片)接收資料饋送,並將該等資料饋送儲存在資料儲存庫130中。 In some embodiments, monitor 118 is programmed to receive feedback that can be used to make corrections and modifications at controller 114 (eg, at an analytics aggregator of controller 114). Example feedback may provide feedback on construction status, delays, and other topics and issues manually through an input interface (eg, a graphical user interface), or automatically through monitor 118 . Monitor 118 is also programmed to receive data feeds from one or more external sources, such as field sensors or video, and store the data feeds in data repository 130 .

在一些實施例中,修改器120經程式編寫為接收修改資料以更新在系統100中的現有人工智慧模型,並添加新的人工智慧模型到系統100中。修改資料可由使用者經由一輸入介面(例如,圖形使用者介面)輸入。 In some embodiments, the modifier 120 is programmed to receive modification data to update existing artificial intelligence models in the system 100 and to add new artificial intelligence models to the system 100 . Modification data may be input by the user via an input interface (eg, graphical user interface).

在一些實施例中,為了符合模組化和功能分離的健全軟體工程原則,該等模型集成112、控制器114、通知器116、監視器118以及修改器120各自被實施為邏輯上獨立的程式、程序或程式庫。 In some embodiments, in order to comply with sound software engineering principles of modularization and separation of functions, the model integration 112 , the controller 114 , the notifier 116 , the monitor 118 and the modifier 120 are each implemented as logically independent programs. , program or library.

本文所述電腦可執行指令可以是一CPU指令集的機器可執行碼,並可能已基於Python、JAVA、C、C++、OBJECTIVE-C或任何其他人類可讀程式語言或環境之中所寫的原始碼進行編譯,可以是獨立編寫或與JAVASCRIPT、其他腳本語言(scripting language)和其他程式原始文本等腳本一併編寫。在另一個實施例中,程式指令還可代表一或多個檔案或原始碼專案,其以數位方式儲存在第1圖所示系統或一獨立儲存系統內的大容量儲存設備(例如,不變性隨機存取記憶體或磁碟儲存器)之中,於編譯或解譯時會生成可執行指令,而該等可執行指令被執行時,會導致電腦參考該等指令而執行本文所述功能或操作。換言之,第1圖可表示程式人員或軟體開發人員組織及安排原始碼的方式,以便未來編譯成一可執行檔或解譯成位元組碼或其等效物,供伺服器電腦106執行。 The computer-executable instructions described herein may be machine executable code of a CPU instruction set, and may have been based on original code written in Python, JAVA, C, C++, OBJECTIVE-C, or any other human-readable programming language or environment. Code is compiled and can be written independently or in conjunction with scripts such as JAVASCRIPT, other scripting languages, and other program source text. In another embodiment, the program instructions may also represent one or more files or source code projects that are digitally stored on a mass storage device (e.g., a non-volatile storage device) within the system shown in Figure 1 or an independent storage system. Random access memory or disk storage), executable instructions will be generated when compiling or interpreting, and when these executable instructions are executed, they will cause the computer to refer to these instructions to perform the functions described in this article or operate. In other words, Figure 1 may represent the way a programmer or software developer organizes and arranges source code for future compilation into an executable file or interpretation into bytecode or its equivalent for execution by the server computer 106 .

該伺服器電腦106可耦接到資料儲存庫130,該資料儲存庫130包括一資料饋送資料庫132、一施工目標資料庫134、一模型配置資料庫136、一訓練資料資料庫138以及一建議資料庫140。 The server computer 106 may be coupled to a data repository 130 that includes a data feed database 132, a construction target database 134, a model configuration database 136, a training data database 138, and a recommendations Database 140.

在一些實施例中,該資料饋送資料庫132儲存從各種來源(例如,一工程網站或AEC網站、第三方的付費或商業資料庫,以及即時饋送如RSS等)蒐集而來的複數個資料饋送。一資料饋送可包括與即時氣候和天氣預測資料、結構分析資料、施工中和施工後資料相關的資料區段,例如品質資料的模組分析、庫存利用及預測資料、法規資料、全球事件影響資料、供應鏈分析資料、設備和物聯網指標分析資料、勞工/效率資料,及/或其他按照各施工目標而提供給該模型集成112的資料。一資料饋送可包括關於施工專案的其他活動、其他施工專案或兩者的租戶資料。每個資料區段可包括指示該資料區段所屬資料類型的元資 料。如本文所述,即時資料、近乎即時資料及整理後的資料是由監視器118所接收,並由伺服器電腦106的各組成構件進行處理。 In some embodiments, the data feed database 132 stores a plurality of data feeds collected from various sources (eg, an engineering website or AEC website, third-party paid or commercial databases, and real-time feeds such as RSS, etc.) . A data feed may include data segments related to real-time climate and weather forecast data, structural analysis data, in-construction and post-construction data, such as modular analysis of quality data, inventory utilization and forecast data, regulatory data, global event impact data , supply chain analysis data, equipment and IoT indicator analysis data, labor/efficiency data, and/or other data provided to the model integration 112 according to each construction goal. A data feed may include tenant information about other activities on the construction project, other construction projects, or both. Each data section may include a metadata indicating the data type to which the data section belongs. material. As described herein, real-time data, near-real-time data, and collated data are received by the monitor 118 and processed by various components of the server computer 106 .

例如,由監視器118接收的一資料饋送會被儲存在資料饋送資料庫132中,並由模型集成112的不同模組處理,每個模組會生成第一中間資料集,該等資料集透過控制器114被提供於人工智慧平台內以生成動態日程表。例如,由監視器118接收的另一資料饋送會被儲存在資料饋送資料庫132中,並由控制器114(例如,第3A圖和第3B圖所示的控制器114的日程表建議器226)處理,以判定實際施工和預期施工之間的差異而進一步優化日程表。例如,由監視器118接收的又一資料饋送會被儲存在資料饋送資料庫132中,並由控制器114(例如,第3A圖和3B所示的控制器114的組合式分析知識和語義圖224)處理,以存取對施工專案或施工活動相關因素的影響。 For example, a data feed received by the monitor 118 is stored in the data feed database 132 and processed by different modules of the model integration 112. Each module generates a first intermediate data set through The controller 114 is provided within the artificial intelligence platform to generate dynamic schedules. For example, another data feed received by the monitor 118 may be stored in the data feed database 132 and used by the controller 114 (e.g., the schedule suggester 226 of the controller 114 shown in FIGS. 3A and 3B ) processing to determine the difference between actual construction and expected construction to further optimize the schedule. For example, further data feeds received by the monitor 118 may be stored in the data feed database 132 and analyzed by the controller 114 (e.g., the combined knowledge and semantic graph of the controller 114 shown in FIGS. 3A and 3B 224) processing to access the impact on factors related to construction projects or construction activities.

在一些實施例中,施工目標資料庫134包括複數個施工目標。在資料饋送資料庫132中的該複數個施工目標中的每一者都會被處理,以達成施工目標資料庫134中的複數個施工目標中的一或多個。施工目標是不同的使用者要求、專案要求、法規要求、技術要求等的集合。施工目標可在施工活動開始前建立,並可在施工階段期間進行調整以考慮變動條件。施工目標會在每個施工專案和施工階段被定義。施工目標的資料定義會據以定義規範化的施工目標。資料定義包括,例如,用於優化施工日程表以滿足時間目標的參數、優化成本目標的參數、優化碳足跡目標的參數,該等參數會被規範化以考量工人健康、將現場工人降至最少,並將品質問題降到最低。一或多個施工目標可被認定為一施工專案的施工活動的日程表請求的一部分。 In some embodiments, construction target database 134 includes a plurality of construction targets. Each of the plurality of construction goals in the data feed database 132 is processed to achieve one or more of the plurality of construction goals in the construction goal database 134 . Construction goals are a collection of different user requirements, project requirements, regulatory requirements, technical requirements, etc. Construction objectives can be established before construction activities begin and can be adjusted during the construction phase to account for changing conditions. Construction objectives are defined for each construction project and construction phase. The data definition of construction goals will be used to define standardized construction goals. Data definitions include, for example, parameters for optimizing construction schedules to meet time targets, parameters for optimizing cost targets, parameters for optimizing carbon footprint targets, which are normalized to account for worker health, minimizing on-site workers, and minimize quality issues. One or more construction goals may be identified as part of a schedule request for construction activities for a construction project.

請參考下列情境說明。假設在一情境中,施工目標是將成本維持在預算金額以內。施工階段的資料饋送會送入系統中所蒐集和生成的資料。該系統會根據既定目標檢查資料饋送,並優化指引以符合既定目標。例如,倘若傳入的資料饋送顯示施工完成日可能超過給定的結束日,則系統分析可透過智慧代理指示:增加額外的施工人手,並以更高的成本從鄰近供應商採購材料以將運輸時間降到最低,如此可協助達成目標完成日。由於期望的目標是維持成本不高於所分配的預算程度,系統的建議將會是按目前的任務,以目前的速度繼續工作。該系統建議會在給出建議前,先就施工目標資料庫134及所有法律承諾進行確認。在另一不同的情境,若施工目標是遵守設定的施工完成日期,則該系統建議可能為:增加額外的施工人手,從鄰近供應商採購材料等。系統建議的詳情將於以下進一步討論。 Please refer to the following scenario description. Consider a scenario where the construction goal is to keep costs within budget amounts. Data feeds from the construction phase feed into the data collected and generated in the system. The system checks data feeds against established goals and optimizes guidance to align with established goals. For example, if an incoming data feed indicates that the construction completion date may exceed the given end date, system analysis can indicate through the smart agent: add additional construction labor and purchase materials from nearby suppliers at a higher cost to transport them. Time is reduced to a minimum, which can help achieve the target completion date. Since the desired goal is to keep costs below the allocated budget, the system's recommendation will be to continue working on the current task at the current pace. The system's recommendations will confirm the construction target database 134 and all legal commitments before giving recommendations. In another different scenario, if the construction goal is to comply with the set construction completion date, the system suggestions may be: adding additional construction manpower, purchasing materials from nearby suppliers, etc. Details of system recommendations are discussed further below.

在一些實施例中,模型配置資料庫136包括配置資料如參數、梯度、權重、偏差及/或其他屬性,該等資料需要在完成人工智慧模型的訓練後才能使人工智慧模型運作。 In some embodiments, the model configuration database 136 includes configuration data such as parameters, gradients, weights, biases, and/or other attributes that are required to enable the artificial intelligence model to operate after the training of the artificial intelligence model is completed.

在一些實施例中,訓練資料資料庫138包括用來訓練系統100的一或多個人工智慧模型的訓練資料。該訓練資料資料庫138會藉由系統100及/或外部來源取得的更多訓練資料不斷更新。訓練資料包括歷史客戶資料以及專門為測試本文所述不同人工智慧模型效能而設計的綜合演算生成資料。該綜合資料可被編寫以測試多個系統效能係數。其可包括偽陽(false positive)與偽陰(false negative)的建議率、模型彈性和模型建議準確度指標。訓練資料集的一個示例可包括一承包商比一預計時間進度還早完成任務的相關資料。另一個訓練資料集的示例可包括該承包商就相同任務所完成工作的品質問題相關資料。 In some embodiments, training data database 138 includes training data used to train one or more artificial intelligence models of system 100 . The training data database 138 is continuously updated with more training data obtained from the system 100 and/or external sources. The training data includes historical customer data as well as synthetic algorithm-generated data specifically designed to test the performance of the different artificial intelligence models described in this article. This comprehensive profile can be compiled to test multiple system performance factors. It may include false positive (false positive) and false negative (false negative) recommendation rates, model elasticity, and model recommendation accuracy indicators. An example of a training data set may include data about a contractor completing a task ahead of an estimated schedule. Another example of a training data set could include data related to quality issues in work performed by the contractor on the same task.

在一些實施例中,建議資料庫140包括建議資料,如控制器114生成的優化日程表。一施工日程表的示例包括按優先次序排列的所有任務、分組任務(又稱為工作包),以及任務的分配資源。日程表優化包括:達成施工目標的最短路徑;選擇性工作包則包括:供應商建議(基於鄰近程度、品質和成本)以及承包商建議。如本文中所述,日程表優化是動態的,並且會將目前的日程表進度、預期的阻抗,以及因品質問題和供應限制而造成的影響等因素納入考量。 In some embodiments, the advice library 140 includes advice material, such as an optimization schedule generated by the controller 114 . An example of a construction schedule includes all tasks in order of priority, grouped tasks (also called work packages), and assigned resources to the tasks. Schedule optimization includes: the shortest path to achieve construction goals; optional work packages include: supplier recommendations (based on proximity, quality and cost) and contractor recommendations. As discussed in this article, schedule optimization is dynamic and takes into account current schedule progress, expected impedance, and the impact of quality issues and supply constraints.

該資料儲存庫130可包括其他資料庫,其儲存有伺服器電腦106可使用的資料。各資料庫132、134、136、138和140的實施可利用記憶體,例如RAM、EEPROM、快閃記憶體、硬碟機、光碟機、固態記憶體,或適用於資料庫儲存的任何類型的記憶體。 The data repository 130 may include other databases that store data that can be used by the server computer 106 . Each database 132, 134, 136, 138, and 140 may be implemented using memory such as RAM, EEPROM, flash memory, hard drive, optical drive, solid state memory, or any type of memory suitable for database storage. memory.

網路102廣義地代表一或多個區域網路(LAN)、廣域網路(WAN)、都會網路(MAN)、全球聯網(如公共網路)或前述網路的組合。前述各網路均可使用或執行儲存程式,該等程式會根據例如下列標準實施網際網路協定:開放系統互連(OSI)多層網路模型,包括但不限於傳輸控制協定(TCP)或用戶資料元協定(UDP)、網際網路協定(IP)、超文本傳輸協定(HTTP)等。本文所述之所有電腦均可被配置成與網路102連接,且本發明揭示內容係假設第1圖所有組成構件均可以通訊方式與網路102耦接。第1圖所示各組成構件也可透過直接通訊線路(為簡化而未顯示)相互通訊。 Network 102 broadly represents one or more local area networks (LANs), wide area networks (WANs), metropolitan networks (MANs), global networks (such as public networks), or a combination of the foregoing. Each of the aforementioned networks may use or execute stored programs that implement Internet protocols according to standards such as the Open Systems Interconnection (OSI) multi-layer networking model, including but not limited to Transmission Control Protocol (TCP) or User Data Element Protocol (UDP), Internet Protocol (IP), Hypertext Transfer Protocol (HTTP), etc. All computers described herein can be configured to connect to the network 102, and the present disclosure assumes that all components of Figure 1 can be communicatively coupled to the network 102. The components shown in Figure 1 may also communicate with each other through direct communication lines (not shown for simplicity).

該伺服器電腦106可經網路102存取客戶端電腦104,以請求一日程表或一資源建議。客戶端電腦104可包括桌上型電腦、膝上型電腦、平板電腦、智慧型手機,或任何允許存取伺服器電腦106的其他類型計算裝置。第1圖所示組 成構件旨在表示一個可行的實施例,但無意拘束或限制用於其他實施例的組成構件數量。 The server computer 106 can access the client computer 104 via the network 102 to request a schedule or a resource suggestion. Client computer 104 may include a desktop computer, laptop computer, tablet computer, smartphone, or any other type of computing device that allows access to server computer 106 . The group shown in Figure 1 The component parts are intended to represent one possible embodiment and are not intended to limit or limit the number of component parts for other embodiments.

3.0 功能概述 3.0 Functional Overview

該伺服器電腦106之中包括模型集成112、控制器114、通知器116、監視器118、修改器120以及資料儲存庫130,上述組成構件會根據使用要求,利用程式編寫以非傳統方式相互運作,以生成日程表和資源建議。 The server computer 106 includes a model integration 112, a controller 114, a notifier 116, a monitor 118, a modifier 120, and a data repository 130. The above components will operate with each other in non-traditional ways through programming according to usage requirements. , to generate schedules and resource recommendations.

3.1 模型集成 3.1 Model integration

在一實施例中,第1圖的模型集成112包括複數個相互通訊的模組。該複數個模組中的每個模組可包括由一或多個機器學習模型構成的一集成。 In one embodiment, the model integration 112 of Figure 1 includes a plurality of modules that communicate with each other. Each module in the plurality of modules may include an ensemble of one or more machine learning models.

機器學習模型可包括適當的分類器和機器學習方法。部分機器學習演算法包括:(1)作為監督式學習的一部分的多層感知器(Multilayer Perceptron)、支持向量機器(Support Vector Machines)、貝氏學習(Bayesian learning)、K最近鄰(K-Nearest Neighbor)或單純貝氏分類器(Naïve Bayes);(2)作為半監督式學習的一部分的生成對抗網路(Generative Adversarial Networks);(3)利用自動編碼器、高斯混合(Gaussian Mixture)以及K均值群聚演算法(K-means clustering)的無監督式學習;以及(4)強化學習(例如,利用Q學習演算法,利用時序差分學習),以及其他合適的學習方式。知識轉移亦應用於其中,此外,為求機器學習模型的資源優化,對於小型碳足跡設備,可執行模型的二值化和量化。複數個模組中的每個模組可實施以下一或多個方法:迴歸演算法(例如,普通最小二乘法、邏輯迴歸、逐步迴歸、多元適應性雲形迴歸〔multivariate adaptive regression splines〕、本地散點平滑估計〔locally estimated scatterplot smoothing〕等);基於實例的方法(例如,K最近鄰、學習向量量化、 自組織映像等);正則化(regularization)方法(例如,脊迴歸〔ridge regression〕、最小絕對緊縮與選擇算子/Lasso演算法、彈性網路等);決策樹學習方法(例如,分類和迴歸樹、ID3〔iterative dichotomiser 3〕算法、C4.5、卡方自動交互檢測、多元適應性雲形迴歸、梯度提昇機器等);貝氏學習方法(例如,單純貝氏、平均單依賴預估器、貝氏信念網路等);核方法(例如,支持向量機器、徑向基函數、線性差別分析等);叢聚方法(例如,K均值群聚、期望最大化等);相關規則學習演算法(例如,Eclat演算法等);人工神經網路模型(例如,感知器〔Perceptron〕方法、反向傳播方法、自我組織映射方法、學習向量量化方法等);深度學習演算法(例如,受限波茲曼機、深度信念信網路方法、卷積網路方法、堆疊自動解碼器方法等);降維方法(例如,主成分分析、偏最小二乘法迴歸、多維縮放等)。該系統100的每個處理部分還可額外利用:機率性的、啟發式的、確定性的或其他合適的方法,用於進行計算引導、建議、機器學習或其組合。然而,所有合適的機器學習方法都可額外併入系統100之內。再者,所有合適的模型(例如,機器學習、非機器學習等)都可使用於系統100之中。 The machine learning model may include appropriate classifiers and machine learning methods. Some machine learning algorithms include: (1) Multilayer Perceptron, Support Vector Machines, Bayesian learning, K-Nearest Neighbor as part of supervised learning ) or Naïve Bayes classifier; (2) Generative Adversarial Networks as part of semi-supervised learning; (3) Using autoencoders, Gaussian Mixture and K-means Unsupervised learning of K-means clustering algorithm; and (4) reinforcement learning (for example, using Q-learning algorithm, using temporal difference learning), and other suitable learning methods. Knowledge transfer is also used. In addition, in order to optimize the resources of the machine learning model, for small carbon footprint equipment, the binarization and quantification of the model can be performed. Each of the plurality of modules may implement one or more of the following methods: regression algorithms (e.g., ordinary least squares, logistic regression, stepwise regression, multivariate adaptive regression splines, local scatter Point smoothing estimation [locally estimated scatterplot smoothing], etc.); instance-based methods (e.g., K nearest neighbor, learning vector quantization, self-organizing map, etc.); regularization methods (e.g., ridge regression, least absolute compression and selection operator/Lasso algorithm, elastic network, etc.); decision tree learning methods (e.g., classification and regression Trees, ID3 [iterative dichotomiser 3] algorithm, C4.5, chi-square automatic interaction detection, multivariate adaptive cloud-shaped regression, gradient boosting machine, etc.); Bayesian learning methods (e.g., simple Bayesian, average single-dependence predictor, Bayesian belief network, etc.); kernel methods (such as support vector machines, radial basis functions, linear difference analysis, etc.); clustering methods (such as K-means clustering, expectation maximization, etc.); correlation rule learning algorithms (For example, Eclat algorithm, etc.); Artificial neural network model (for example, Perceptron method, back propagation method, self-organizing mapping method, learning vector quantization method, etc.); Deep learning algorithm (for example, restricted Boltzmann machine, deep belief network method, convolutional network method, stacked automatic decoder method, etc.); dimensionality reduction methods (such as principal component analysis, partial least squares regression, multidimensional scaling, etc.). Each processing portion of the system 100 may additionally utilize probabilistic, heuristic, deterministic, or other suitable methods for computational guidance, recommendations, machine learning, or combinations thereof. However, all suitable machine learning methods may additionally be incorporated into system 100. Furthermore, all suitable models (eg, machine learning, non-machine learning, etc.) may be used in the system 100 .

該模型集成112從資料儲存庫130接收輸入資料。例如,該模型集成112從資料饋送資料庫132接收一或多個資料饋送,並預測或以其他方式為各資料饋送生成一第一中間資料集,供控制器114進一步處理。 The model integration 112 receives input data from the data repository 130 . For example, the model ensemble 112 receives one or more data feeds from the data feed database 132 and predicts or otherwise generates a first intermediate data set for each data feed for further processing by the controller 114 .

如第2A圖所示,在一些實施例中,該模型集成112可包括一氣候分析模組202、一結構分析模組204、一品質分析模組206、一庫存分析模組208、一法規模組210、一全球事件影響模組212、一供應鏈分析模組214、一設備健康和物聯網指標分析模組216,以及一勞工效率模組218。該模型集成112的每個模組可包括一或多個機器學習模型的集成。 As shown in Figure 2A, in some embodiments, the model integration 112 may include a climate analysis module 202, a structural analysis module 204, a quality analysis module 206, an inventory analysis module 208, a method scale Group 210, a global event impact module 212, a supply chain analysis module 214, an equipment health and IoT indicator analysis module 216, and a labor efficiency module 218. Each module of the model ensemble 112 may include an ensemble of one or more machine learning models.

該模型集成112的氣候分析模組202會接收一或多個輸入資料集,用於分析本地歷史天氣模式、微氣候分析、預測天氣分析、事件的隨機建模、建立與供應儲存、供應可取得性、船運的相關性、與工作條件的相關性、與材料和材料行為的相關性(例如,風化水泥的固化),以及排水、風、沙等的分析。該氣候分析模組202的機器學習模型會提供即時的氣候因素以及未來幾週的氣候預測,依此類推。該等輸入資料集還可包括施工階段期間當地的歷史天氣/氣候模式。如本文所述,第1圖的監視器118可協助該氣候分析模組202蒐集相關的輸入資料集。該氣候分析模組202可動態接收這些輸入資料,並針對天氣相關事件提供優化的建議。 The climate analysis module 202 of the model integration 112 receives one or more input data sets for analysis of local historical weather patterns, microclimate analysis, predictive weather analysis, stochastic modeling of events, establishment and supply storage, and supply availability. properties, correlation to shipping, correlation to working conditions, correlation to materials and material behavior (e.g. curing of weathered cement), as well as analysis of drainage, wind, sand, etc. The machine learning model of the climate analysis module 202 provides immediate climate factors as well as climate predictions for the next few weeks, and so on. Such input data sets may also include local historical weather/climate patterns during the construction phase. As described herein, the monitor 118 of Figure 1 assists the climate analysis module 202 in collecting relevant input data sets. The climate analysis module 202 can dynamically receive these input data and provide optimized suggestions for weather-related events.

該模型集成112的結構分析模組204會接收一個或多個輸入資料集,用於分析整個施工階段中的品質和設計考量、結構完整性等。例如,該等資料集可藉由模擬及/或特定探測等來取得。該等輸入資料集會被納入施工更新的考量,也會根據需要提供任何任務重做或重新排程的建議。任何因為產生問題(例如品質問題)而對勞工、成本、時間、材料和日程表造成的影響,也會被進一步納入考量以優化日程表。該結構分析模組204也會提供關於結構狀態的資料、監測工作進度、接收施工進度的影像輸入資料、評估自動輸入資料(例如,來自電腦視覺輸入)並判定任務/工作進度以預測/預估一完成比例(例如,大約完成40%或60%等)。例如,雖然一使用者輸入資料可能表示一任務已完成,該結構分析模組204可基於多個輸入參數來判定任務的實際狀態,並得出任務的某些方面尚未完工或需要重做的結論。如本文所述,該監視器118可協助該結構分析模組204蒐集相關的輸入資料集。 The structural analysis module 204 of the model integration 112 receives one or more input data sets for analyzing quality and design considerations, structural integrity, etc. throughout the construction phase. For example, such data sets may be obtained through simulation and/or specific detection, etc. These input data sets are taken into consideration for construction updates and recommendations for any task redoing or rescheduling are provided as needed. Any impact on labor, cost, time, materials and schedule due to problems (such as quality issues) will also be further considered to optimize the schedule. The structural analysis module 204 will also provide information on structural condition, monitor work progress, receive visual input data of construction progress, evaluate automatic input data (e.g., from computer vision input) and determine task/work progress to predict/estimate A completion percentage (for example, approximately 40% or 60% complete, etc.). For example, although a user input may indicate that a task is completed, the structural analysis module 204 may determine the actual status of the task based on multiple input parameters and conclude that certain aspects of the task are not yet complete or need to be redone. . As described herein, the monitor 118 may assist the structural analysis module 204 in collecting relevant input data sets.

該模型集成112的品質分析模組206會接收一或多個輸入資料集,用於透過使用者輸入資料、電腦影像(例如,影片饋送、靜態影像拍攝、紅外線、光達技術、雷射等)分析進度,藉由人工及/或機器檢查進行品質評估來判定劣質施工的成本(材料成本、時間、勞工等),以及分配時間和勞工等。如本文所述,該監視器118可協助該品質分析模組206蒐集相關的輸入資料集。劣質施工的成本可能涉及收入損失(無法按約定時間表和約定品質交付施工)、重做成本、額外的勞工和材料成本,以及潛在的法律和法規遵守問題。 The quality analysis module 206 of the model integration 112 will receive one or more input data sets for user input data, computer imaging (e.g., video feed, still image capture, infrared, lidar technology, laser, etc.) Analyze progress, conduct quality assessment through manual and/or machine inspections to determine the cost of poor construction (material cost, time, labor, etc.), and allocate time and labor, etc. As described herein, the monitor 118 may assist the quality analysis module 206 in collecting relevant input data sets. The costs of shoddy construction can involve lost revenue (the inability to deliver construction to the agreed timetable and to the agreed quality), redo costs, additional labor and material costs, and potential legal and regulatory compliance issues.

該模型集成112的庫存分析模組208會接收一或多個輸入資料集,用於分析即時庫存和進行預測。該庫存分析模組208的機器學習模型會基於可用庫存、利用率等判定需要多少庫存,以預測庫存需求。例如,一項特定任務被認為需要大約500根鋼樑,但使用速度可能很慢,主要是因為該任務的施工仍然落後。因此,該庫存分析模組208會分析輸入資料以判定是否建議採購或延後採購。如本文所述,該監視器118可協助該庫存分析模組208蒐集相關的輸入資料集。 The inventory analysis module 208 of the model integration 112 receives one or more input data sets for analyzing real-time inventory and making forecasts. The machine learning model of the inventory analysis module 208 determines how much inventory is needed based on available inventory, utilization, etc., to predict inventory demand. For example, a particular task is thought to require approximately 500 steel beams, but use may be slow, largely because construction for the task is still lagging behind. Therefore, the inventory analysis module 208 will analyze the input data to determine whether to recommend purchasing or defer purchasing. As described herein, the monitor 118 may assist the inventory analysis module 208 in collecting relevant input data sets.

該模型集成112的法規模組210會接收一或多個輸入資料集,用於基於法律契約、法規要求等來分析完工期程。例如,某些任務可能具有契約履行義務。可能有對於延誤的懲罰,或可能有影響施工的地方或聯邦法規,例如,關於排放標準、防洪協定、消防法規等要求。該法規模組210會利用自然語言處理(Natural Language Processing,NLP)演算法來分析各種契約、適用法規及其他規定,以監測施工進度並確保遵循法規。如本文所述,該監視器118可協助該法規模組210蒐集相關的輸入資料集。 The legal group 210 of the model integration 112 receives one or more input data sets for analyzing the completion schedule based on legal contracts, regulatory requirements, etc. For example, certain tasks may have contractual performance obligations. There may be penalties for delays, or there may be local or federal regulations that may affect construction, such as requirements regarding emission standards, flood control agreements, fire codes, etc. The legal team 210 will use natural language processing (NLP) algorithms to analyze various contracts, applicable regulations and other regulations to monitor construction progress and ensure compliance with regulations. As described herein, the monitor 118 may assist the legal team 210 in collecting relevant input data sets.

該模型集成112的全球事件影響模組212會接收一或多個輸入資料集,用於分析和追蹤簡單和複雜的全球事件的影響,例如地緣政治事件、供應 鏈影響、全球天氣、發生於製造工廠的事故、船運航線問題、市場因素(如鋼價期貨、水泥期貨等),以按需要來規劃採購和日程表/任務的修訂。該模組還將監測和分析可能影響業務、材料來源或影響材料採購的供應鏈因素等的地緣政治事件。該全球事件影響模組212會監測該等事件,並相應地自動重新調整、重新排序和重新考量施工日程表和相關活動的因素。該全球事件影響模組212會分析簡單和複雜事件,並相應地修改日程表。如本文所述,監視器118可協助該全球事件影響模組212蒐集相關的輸入資料集。 The global event impact module 212 of the model integration 112 will receive one or more input data sets for analyzing and tracking the impact of simple and complex global events, such as geopolitical events, supply Chain impacts, global weather, accidents at manufacturing plants, shipping route issues, market factors (such as steel price futures, cement futures, etc.) to plan procurement and schedule/task revisions as needed. The module will also monitor and analyze geopolitical events that may impact business, material sources, or supply chain factors affecting material procurement. The global event impact module 212 monitors such events and automatically re-adjusts, re-sequences and re-considers construction schedules and related activities accordingly. The global event impact module 212 analyzes simple and complex events and modifies the schedule accordingly. As described herein, the monitor 118 may assist the global event impact module 212 in collecting relevant input data sets.

該模型集成112的供應鏈分析模組214會接收一或多個輸入資料集,用於分析任務圖(任務/日程表清單)、供應商分析、估計採購時間、歷史效能分析、時間價值分析(從訂購到交付,如成本、時間、碳排放考量等),以及基於目前進度和預測任務、現場/非現場儲存因素等來計劃採購。這也可以是全球事件影響分析中的一個因素。供應鏈分析模組214會確定採購材料的最佳地點以及採購的最佳時間。該等地點和時間可被優化以符合施工目標,例如成本、永續性、環境目標和商業目標。如本文所述,該監視器118可協助該供應鏈分析模組214蒐集相關的輸入資料集。 The supply chain analysis module 214 of the model integration 112 will receive one or more input data sets for analyzing task maps (task/schedule lists), supplier analysis, estimated procurement time, historical performance analysis, time value analysis ( From ordering to delivery, such as cost, time, carbon emission considerations, etc.), and planning procurement based on current progress and forecast tasks, on-site/off-site storage factors, etc. This can also be a factor in impact analysis of global events. The supply chain analysis module 214 determines the best place to purchase materials and the best time to purchase them. These locations and times can be optimized to meet construction objectives such as cost, sustainability, environmental objectives and commercial objectives. As described herein, the monitor 118 may assist the supply chain analysis module 214 in collecting relevant input data sets.

該模型集成112的設備健康和物聯網指標分析模組216會接收一或多個輸入資料集,用以分析:設備需求和採購因素(例如,採購設備需要多少時間、採購的來源為何、鄰近程度分析等);設備品質因素(例如,現場品質問題、需要的操作員、歷史問題分析等);成本和碳排放考量;針對燃料消耗和設備健康的物聯網饋送(例如,即時設備健康分析);替代性路徑映射(例如,若設備發生失誤有何辦法、替代方案的來源為何──在規劃和選擇設備供應商/租賃時應考量)等。該設備健康和物聯網指標分析模組216會分析或監測提供訊號 的不同設備,例如,運土設備中的柴油含量低,因此必須採購更多柴油以維持設備運行;根據震動或聲學分析,有台機器處於故障邊緣等。設備健康和物聯網指標分析模組216會分析這些輸入資料並判定其對日程表的影響,或在日程表受影響之前提醒使用者採取必要補救措施。如本文所述,監視器118可幫助設備健康和物聯網指標分析模組216蒐集相關的輸入資料集。 The device health and IoT metrics analysis module 216 of the model integration 112 receives one or more input data sets to analyze: device demand and procurement factors (e.g., how long it takes to purchase the device, the source of the purchase, proximity analysis, etc.); equipment quality factors (e.g., field quality issues, operators needed, historical issue analysis, etc.); cost and carbon emissions considerations; IoT feeds for fuel consumption and equipment health (e.g., real-time equipment health analysis); Alternative path mapping (e.g., what to do if equipment fails, what are the sources of alternatives - should be considered when planning and selecting equipment suppliers/leasing), etc. The device health and IoT indicator analysis module 216 will analyze or monitor the provided signal Different equipment, for example, the diesel content in earth-moving equipment is low, so more diesel must be purchased to keep the equipment running; according to vibration or acoustic analysis, a machine is on the verge of failure, etc. The device health and IoT indicator analysis module 216 will analyze these input data and determine its impact on the schedule, or alert the user to take necessary remedial measures before the schedule is affected. As described herein, the monitor 118 may assist the device health and IoT metrics analysis module 216 in collecting relevant input data sets.

模型集成112的勞工效率模組218會接收一或多個輸入資料集,用以分析:任務圖(任務/日程表清單);目前勞工可取得性和技能分析、效能分析(例如,完工速度、品質指標等);歷史趨勢(例如,過去效率、註記、評論、工作品質低劣的成本分析等);目前工作效率和展望、勞工健康因素(例如,工傷、加班等);預期勞工需求/地理考量;宏觀因素(例如,施工案的可用期);微觀因素(例如,近期需求/接近截止日期)等。勞工效率模組218會基於考量例如勞工問題、施工進行的速度、品質問題等進一步判定效率指標。勞工效率模組218會基於效率分析提供調整任務的建議。如本文所述,監視器118可幫助勞工效率模組218蒐集相關的輸入資料集。 The labor efficiency module 218 of the model integration 112 will receive one or more input data sets for analysis: task map (task/schedule list); current labor availability and skills analysis, performance analysis (e.g., completion speed, quality indicators, etc.); historical trends (e.g., past efficiency, notes, comments, cost analysis of poor work quality, etc.); current work efficiency and outlook, labor health factors (e.g., work-related injuries, overtime, etc.); expected labor demand/geographical considerations ; Macro factors (for example, the availability period of the construction project); Micro factors (for example, recent demand/approaching deadline), etc. The labor efficiency module 218 will further determine efficiency indicators based on considerations such as labor issues, construction speed, quality issues, etc. The labor efficiency module 218 provides suggestions for adjusting tasks based on efficiency analysis. As described herein, the monitor 118 may assist the labor efficiency module 218 in collecting relevant input data sets.

上述外部資料來源、模組、模型或程式是以示例來說明。不同的商業需求可能需要為特定功能增加或修改不同的模組或資料集。每個模組都可以獨立運作,並針對每個被鼓勵去優化其部分的模組進行優化。然而,控制器114與各模組相通訊,並作為一監督式的控制器演算法,該演算法會結合所有模組輸出資料(例如,第一中間資料集)並優化整體日程表以達成期望的施工目標。 The above external data sources, modules, models or programs are illustrated by examples. Different business needs may require the addition or modification of different modules or data sets for specific functions. Each mod works independently and is optimized for each mod which is encouraged to optimize its parts. However, the controller 114 communicates with each module and serves as a supervisory controller algorithm that combines all module output data (eg, the first intermediate data set) and optimizes the overall schedule to achieve the desired construction goals.

3.2 控制器 3.2 Controller

如第2B圖所示,在一個實施例中,第1圖的優化工程和施工排程器監督控制器114包括一分析聚合器220、一關聯分析器222、一組合式分析知識和語義圖表模型224,以及一日程表建議器226。 As shown in Figure 2B, in one embodiment, the optimization engineering and construction scheduler supervision controller 114 of Figure 1 includes an analysis aggregator 220, a correlation analyzer 222, a combined analysis knowledge and semantic graph model 224, and a schedule suggester 226.

3.2.1 分析聚合器和關聯分析器 3.2.1 Analysis aggregators and correlation analyzers

分析聚合器220會分析資訊,例如來自模型集成112的第一中間資料集,以判定第一中間資料集之中,與施工目標和施工活動相關的一子集,並使用自我學習多因素預測隨機分析,使該資料子集與目前施工情境(例如,地面實況)關聯。在一些實施例中,分析聚合器220從第一中間資料集中判定什麼資料與施工目標相關,並利用關聯分析器222來使機器學習模型的各種輸出資料(例如,分析聚合器220判定為相關並輸出的資料子集)與目前的施工情境相關聯。 The analysis aggregator 220 analyzes information, such as the first intermediate data set from the model ensemble 112, to determine a subset of the first intermediate data set related to construction goals and construction activities, and uses self-learning multi-factor prediction to stochastically Analysis to correlate this subset of data with the current construction situation (e.g., ground truth). In some embodiments, analysis aggregator 220 determines from the first intermediate data set what data is relevant to the construction goal, and utilizes correlation analyzer 222 to make various output data of the machine learning model (e.g., what data analysis aggregator 220 determines to be relevant and The output data subset) is associated with the current construction situation.

3.2.2 圖表模型 3.2.2 Chart model

由關聯分析器222輸出的關聯資料輸入被輸入到組合式分析知識和語義圖表模型224。該組合式分析知識和語義圖表模型224會利用以知識圖譜(knowledge graph)及社交圖譜(social graph)為形式的圖像表示來生成加權任務。該等知識及社交圖譜具有多個節點,會執行特定功能並分析資料集,例如租戶資料集(包括來自施工專案另一活動的資料,及/或來自另一施工專案的資料),以評估對目前施工專案或施工活動相關因素的影響。例如,全球事件是否真的會影響日程表,如是,這種影響的迫近程度為何,它會影響單一任務或整個工作包或整個施工現場等。 The correlation data input output by the correlation analyzer 222 is input to the combined analytical knowledge and semantic graph model 224 . The combined analytical knowledge and semantic graph model 224 utilizes image representations in the form of knowledge graphs and social graphs to generate weighted tasks. These knowledge and social graphs have multiple nodes that perform specific functions and analyze data sets, such as tenant data sets (including data from another activity on a construction project, and/or data from another construction project), to evaluate the impact of The impact of factors related to current construction projects or construction activities. For example, will a global event actually impact the schedule, and if so, how imminent is this impact, will it affect a single task or an entire work package or an entire construction site, etc.

3.2.3 日程表建議器 3.2.3 Schedule Suggestor

該組合式分析知識和語義圖表模型224會向日程表建議器226提供分析後的輸出資料,包括加權任務(例如,具有加權值的任務,該等加權值指 示了優先重要性)。日程表建議器226會至少從該等加權任務中建議一動態日程表作為輸出資料(例如,給使用者)。 The combined analytical knowledge and semantic graph model 224 provides analyzed output data to the schedule suggester 226, including weighted tasks (e.g., tasks with weighted values, the weighted values refer to indicates priority). The schedule suggester 226 will at least suggest a dynamic schedule from the weighted tasks as output data (eg, to the user).

在一實施例中,日程表建議器226可包括一效能指標分析模組、一日程表差異模組,以及一承包商執行模組;該等模組單獨或共同實施一監督式機器學習模型以改進日程表。 In one embodiment, schedule suggester 226 may include a performance metric analysis module, a schedule variance module, and a contractor execution module; these modules individually or collectively implement a supervised machine learning model to Improve your schedule.

3.2.3.1 效能指標分析模組 3.2.3.1 Performance indicator analysis module

效能指標係使用相關程序的輸出(例如,分析聚合器220、關聯分析器222、組合式分析知識和語義圖表模型224等),進行計算分級、評估、推算,相關程序包括分析聚合、過去和現在資料的相關性建立及洞察(為比較性分析所積累的知識)推論。 Performance indicators use the output of related programs (for example, analysis aggregator 220, correlation analyzer 222, combined analysis knowledge and semantic graph model 224, etc.) to perform calculation classification, evaluation, and inference. Related programs include analysis aggregation, past and present Creation of data correlations and inferences from insights (knowledge accumulated for comparative analysis).

採用的演算法可包括決策樹、決策圖、線性判別分析和數學插補(mathematical imputation)。數學插補可涉及計算一日程表的效能指數,該指數是對歷史和目前日程表的衡量,並將其與目前任務進度百分比和任務嚴重性進行比較。效能指標是系統的一個面向,有助於提高一施工過程中的效率。 Algorithms used may include decision trees, decision diagrams, linear discriminant analysis and mathematical imputation. Mathematical interpolation may involve calculating a schedule's performance index, which is a measure of the historical and current schedule, and comparing it to the current task progress percentage and task severity. Performance indicators are an aspect of the system that help improve the efficiency of a construction process.

監督式模型評估可涉及模擬和實現情境的合成和分析,以及評估不同的資料和模型特徵。特徵權重可在維度上變化以支持模型執行。在提出實現結果的多個路徑(日程表和任務)時,一種模型可突顯一期望的效能結果,並使用模擬來饋送給決策圖。判別分析會增進將目前情境納入考量的預測。不同的特徵權重會考量譬如季節性、現場工人、工傷模擬、品質問題、供應限制等因素。 Supervised model evaluation can involve the synthesis and analysis of simulation and implementation scenarios, as well as the evaluation of different data and model characteristics. Feature weights can vary dimensionally to support model execution. When proposing multiple paths (schedules and tasks) to achieve an outcome, a model can highlight a desired performance outcome and use simulation to feed the decision diagram. Discriminant analysis improves predictions that take the current situation into account. Different feature weights will take into account factors such as seasonality, on-site workers, injury simulation, quality issues, supply constraints, etc.

3.2.3.2 日程表差異模組 3.2.3.2 Schedule Difference Module

一進度差異分析器會利用從可比較的過往日程表和人工輸入得出的基準日程表。納入基準日程表的比較指標包括專案位置的地形、規模、價值、 涉及材料、環境因素等。為了找到可比較的過往日程表,該系統可採用深度神經網路演算法,包括K最近鄰(K-nearest neighbor,K-NN)、卷積神經網路(Convolutional Neural Networks,CNN),以構建具可信度且可解釋的模型輸出來制定一基準日程表。 A schedule variance analyzer utilizes a baseline schedule derived from comparable past schedules and manual input. Comparative metrics included in the baseline schedule include topography, size, value, Involving materials, environmental factors, etc. In order to find comparable past schedules, the system can use deep neural network algorithms, including K-nearest neighbor (K-NN) and convolutional neural networks (CNN), to build specific Confidential and interpretable model output to develop a baseline schedule.

一旦建立了基準日程表,目前的日程表組合會在頻繁的時間間隔內不斷地被評估,以判定其與基準日程表的偏差。可將對於差異的預期納入容許程度的考量中。超過容許程度時,決策模型集成會嘗試制定路線修正以符合施工目標。 Once a baseline schedule is established, the current schedule combination is continuously evaluated at frequent intervals to determine deviations from the baseline schedule. Expectations for differences can be factored into tolerance considerations. When tolerance levels are exceeded, the decision model ensemble attempts to develop course corrections to meet construction goals.

模型計算可涉及由集成中的不同模型進行演算評估。所利用的演算法可包括旅行銷售員問題(traveling salesman problem,TSP)、與距離相關的哈密頓迴圈(Hamiltonian cycle),以及任務的相依性配對。 Model calculations may involve computational evaluation from different models in the ensemble. Algorithms utilized may include the traveling salesman problem (TSP), distance-dependent Hamiltonian cycles, and task dependency pairing.

在一實施例中,當目前任務進展的差異顯著偏離基準日程表,且模型預測無法符合期望的專案結果時,將會執行任務重組,並使用決策圖來執行結束狀態模擬,以驗證符合預期專案成果的最佳路徑。 In one embodiment, when the difference in current task progress significantly deviates from the baseline schedule and the model prediction cannot meet the expected project results, task reorganization will be performed and a decision diagram will be used to perform end-state simulation to verify that the expected project results are met. The best path to results.

3.2.3.3 承包商執行模組 3.2.3.3 Contractor Execution Module

承包商執行模組是一建議系統,會評估施工供應商和承包商的效率以便為所期望的任務做出供應商/承包商選擇建議。另外,該建議系統會追蹤目前承包商輸出和進度指標以納入其建議考量。當所期望的承包商與一組任務配對時,該建議系統會基於現場指標和日程表衍生物的地面實況計算來建議任務執行的最佳路徑。地面實況計算透過內部審視資料輸入而達成,資料輸入包括觀察報告、日誌、品質分析、視覺分析和基於語音的註釋。示例的模型和演算法可利用潛在語義分析(Latent Semantic Analysis,LSA)、相關主題建模(Correlated Topic Modeling,CTM)、命名實體識別(Named Entity Recognition,NER)和知識圖譜。採用卷積和強化學習的神經網路可用來處理基於圖像的推理。 The Contractor Execution Module is a recommendation system that evaluates the effectiveness of construction vendors and contractors to make vendor/contractor selection recommendations for desired tasks. Additionally, the recommendation system tracks current contractor output and progress metrics for consideration in its recommendations. When a desired contractor is paired with a set of tasks, the recommendation system recommends the best path for task execution based on ground-truth calculations of field metrics and schedule derivatives. Ground truth calculations are achieved by internally reviewing data inputs including observation reports, logs, quality analysis, visual analysis and speech-based annotations. The example models and algorithms can utilize latent semantic analysis (LSA), related topic modeling (correlated Topic Modeling (CTM), Named Entity Recognition (NER) and knowledge graph. Neural networks employing convolution and reinforcement learning can be used to handle image-based reasoning.

一生成對抗網路(Generative Adversarial Network,GAN)可用於評估日程表優化和日程表建議的冠軍挑戰者情境。從本質而言,目前施工專案的資料區段與預期結果會被一併考量,且GAN會建立兩個前提:(1)若差異與進度容許程度在可接受的範圍內,則繼續目前的計劃並將效率意外納入考量,以及(2)改變建議並重組任務集,並將概率納入考量以代入未來的進展情境。 Generative Adversarial Network (GAN) can be used to evaluate schedule optimization and schedule suggestions for championship challenger scenarios. In essence, the data section and expected results of the current construction project will be considered together, and GAN will establish two premises: (1) If the difference and progress tolerance are within the acceptable range, continue the current plan and take efficiency surprises into account, and (2) change recommendations and reorganize task sets and take probabilities into account for future progress scenarios.

針對兩種路徑都會進行分析並提出建議,對於每一建議亦會提供置信度。承包商執行模組所做的建議可包括:重新安排一組任務、替換材料、替換供應商、取代承包商,或以上項目的組合。 Both paths will be analyzed and recommendations made, and a confidence level will be provided for each recommendation. Recommendations made by the Contractor Execution Module may include: rearranging a set of tasks, substituting materials, substituting suppliers, substituting contractors, or a combination of the above.

3.3 通知器 3.3 Notifier

在一實施例中,第1圖的通知器116會輸出警告、通知、建議(如由控制器114的日程表建議器226所生成的日程表)。例如,建議的輸出可藉由一輸出介面(如一圖形使用者介面)、語音、多媒體簡訊,及/或其他通訊形式來達成。 In one embodiment, the notifier 116 of FIG. 1 outputs warnings, notifications, and suggestions (eg, schedules generated by the schedule suggester 226 of the controller 114). For example, the output of suggestions can be achieved through an output interface (such as a graphical user interface), voice, multimedia messages, and/or other communication forms.

3.4 監視器 3.4 Monitor

在一實施例中,第1圖的監視器118接收關於建議及/或施工專案的回饋。回饋示例包括由使用者輸入的手動或直接回饋,以及由伺服器電腦106(例如由監視器118)判定的自動或間接回饋。基於該回饋,控制器114會為施工專案生成進一步優化的日程表(更新/修訂的優化日程表)。回饋資料的示例包括在施工期間已執行或未執行的建議。 In one embodiment, the monitor 118 of Figure 1 receives feedback regarding proposals and/or construction projects. Examples of feedback include manual or direct feedback input by a user, as well as automatic or indirect feedback determined by server computer 106 (eg, by monitor 118). Based on the feedback, the controller 114 generates a further optimized schedule (updated/revised optimization schedule) for the construction project. Examples of feedback include recommendations that were or were not implemented during construction.

在一實施例中,監視器118協助模型集成112的模組從一或多個外部來源蒐集輸入資料集(例如,資料饋送),將輸入資料集儲存在資料饋送資料庫132中,並將該等輸入資料集從資料饋送資料庫132傳送到系統100的各組成構件,例如模型集成112的各模組或控制器114。 In one embodiment, the monitor 118 assists modules of the model integration 112 in collecting input data sets (eg, data feeds) from one or more external sources, storing the input data sets in the data feed database 132 , and storing the input data sets in the data feed database 132 . The input data set is transferred from the data feed database 132 to the various components of the system 100 , such as the various modules of the model integration 112 or the controller 114 .

在一實施例中,監視器118亦從模型集成112的複數個外部資料源接收機器學習訓練資料。該複數個外部資料源、模型或程式較佳地包括數個不同的輸入資料集來源,其可用於訓練系統100的機器學習模型。該複數個模組中經訓練後的機器學習模組(包括氣候分析模組202、結構分析模組204、品質分析模組206、庫存分析模組208、法規模組210、全球事件影響模組212、供應鏈分析模組214、設備健康和物聯網路指標分析模組216、勞工效率模組218,以及其他模組)會向控制器114提供第一中間資料集,以用於動態日程表生成。如本文所述,模型集成112的一或多個該等模組可包括基於深度神經網路的模型。來自該等模組的輸出資料會提供給控制器114,藉由允許控制器114不斷地追蹤和監測模型集成112的多個參數來生成最佳日程表。 In one embodiment, monitor 118 also receives machine learning training data from a plurality of external data sources for model ensemble 112 . The plurality of external data sources, models or programs preferably include several different sources of input data sets that can be used to train the machine learning model of the system 100 . The trained machine learning modules in the plurality of modules (including climate analysis module 202, structural analysis module 204, quality analysis module 206, inventory analysis module 208, legal group 210, global event impact module 212. Supply chain analysis module 214, equipment health and IoT network indicator analysis module 216, labor efficiency module 218, and other modules) will provide the first intermediate data set to the controller 114 for use in dynamic schedules generate. As described herein, one or more of the modules of model ensemble 112 may include deep neural network-based models. Output data from these modules is provided to the controller 114 to generate an optimal schedule by allowing the controller 114 to continuously track and monitor multiple parameters of the model ensemble 112 .

如本文所述,模型集成112、控制器114以及監視器118可實施一閉環式效能分析機器學習模型的集成。在一些實施例中,在監視器118處接收/生成的回饋可用於調整和重新訓練系統100所使用的人工智慧模型。 As described herein, model ensemble 112, controller 114, and monitor 118 may implement an ensemble of closed-loop performance analysis machine learning models. In some embodiments, feedback received/generated at monitor 118 may be used to adjust and retrain the artificial intelligence model used by system 100.

3.5 修改器 3.5 Modifiers

在一實施例中,第1圖中的修改器120會藉由使用一管理控制台接收使用者輸入資料,並對一或多個機器學習模型進行配置或增加新的機器學習模型。該管理控制台可作為一輸入介面(例如,圖形使用者介面),用以與伺服器電腦106的一或多個組成構件進行通訊或對該等組成構件進行配置。該管 理控制台可由修改器120實施,或以一或多個私有或公共的電腦伺服器實現,及/或作為分散式計算系統或雲端的一個組成構件。 In one embodiment, the modifier 120 in Figure 1 receives user input data and configures one or more machine learning models or adds new machine learning models by using a management console. The management console may serve as an input interface (eg, a graphical user interface) for communicating with or configuring one or more components of server computer 106 . The tube The management console may be implemented by modifier 120, or as one or more private or public computer servers, and/or as a component of a distributed computing system or cloud.

4.0 流程示例 4.0 Process Example

第3A圖顯示根據一實施例的人工智慧平台的示例流程圖300。 Figure 3A shows an example flow diagram 300 of an artificial intelligence platform according to an embodiment.

如本文所述,該人工智慧平台包括模型集成112、控制器114、通知器116、監視器118和修改器120。應注意並非該人工智慧平台的所有組成構件都顯示在第3A圖中。在一實施例中,該人工智慧平台會動態生成用於AEC規劃和執行的日程表。該人工智慧平台可使用多因素預測和隨機分析以及機器學習模型來動態生成用於AEC規劃和執行的日程表。該人工智慧平台提供日程表構成、日程表動態監測及日程表優化等功能,以達到特定的施工目標。 As described herein, the artificial intelligence platform includes model integration 112, controller 114, notifier 116, monitor 118, and modifier 120. It should be noted that not all components of the artificial intelligence platform are shown in Figure 3A. In one embodiment, the artificial intelligence platform dynamically generates a schedule for AEC planning and execution. This artificial intelligence platform can use multi-factor predictive and stochastic analysis and machine learning models to dynamically generate schedules for AEC planning and execution. The artificial intelligence platform provides functions such as schedule composition, schedule dynamic monitoring, and schedule optimization to achieve specific construction goals.

模型集成112具有一或多個模組,這些模組包括幾個不同的輸入資料集來源。例如,一資料集可用作訓練模型集成112的機器學習模型的輸入資料。模組包括氣候分析模組202、結構分析模組204、品質分析模組206、庫存分析模組208、法規模組210、全球事件影響模組212、供應鏈分析模組214、設備健康和物聯網指標分析模組216、勞工效率模組218等,該等模組提供第一中間資料集給控制器114,用以生成動態日程表。 Model integration 112 has one or more modules that include several different sources of input data sets. For example, a data set may be used as input data for training a machine learning model of the model ensemble 112 . Modules include climate analysis module 202, structural analysis module 204, quality analysis module 206, inventory analysis module 208, legal group 210, global event impact module 212, supply chain analysis module 214, equipment health and material Networked indicator analysis module 216, labor efficiency module 218, etc., these modules provide the first intermediate data set to the controller 114 for generating a dynamic schedule.

模型集成112的每個模組可以是一或多個模型的集成。例如,氣候分析模組202可能並非單一模型,而可包括多個模型:一個模型可查看天文日曆,另一個模型可查看目前的天氣情況或微氣候情況,再另一個模型可查看預報或預測的天氣情況等。氣候分析模組202的各模型會基於其固有模型(例如氣候分析模組202的功能目標)來生成輸出資料。例如,每個模型都針對一特定的功 能目標來工作,並針對其自身著重的功能目標來優化其輸出。來自該等模型的輸出資料接著會被合併,以形成提供給日程表建議器226的一輸入資料。 Each module of model ensemble 112 may be an ensemble of one or more models. For example, the climate analysis module 202 may not be a single model, but may include multiple models: one model may view the astronomical calendar, another model may view the current weather conditions or microclimate conditions, and yet another model may view the forecast or predicted weather conditions. Weather conditions, etc. Each model of the climate analysis module 202 will generate output data based on its inherent model (eg, the functional goal of the climate analysis module 202). For example, each model targets a specific function It works with functional goals and optimizes its output for its own focused functional goals. The output data from the models are then combined to form an input data provided to the schedule suggester 226 .

作為另一個示例,庫存分析模組208可使用視覺輸入、企業資源規劃(enterprise resource planning,ERP)系統分析、施工速度與材料利用等的組合,並基於分析這些輸入資料而生成一輸出資料。該庫存分析模組208的每一輸入資料均可使用其各自的模型集成進行分析,該等模型集成具有為達成特定/各自施工目標所必需的適當權重。在每個模組中,可基於業務及/或施工目標接收多個功能、因素等。 As another example, the inventory analysis module 208 may use a combination of visual input, enterprise resource planning (ERP) system analysis, construction speed and material utilization, etc., and generate an output based on analyzing these input data. Each input to the inventory analysis module 208 can be analyzed using its own ensemble of models with the appropriate weighting necessary to achieve the specific/respective construction goals. Within each module, multiple functions, factors, etc. can be received based on business and/or construction goals.

用於動態日程表生成的人工智慧平台進一步從該等模組接收分散的、獨立的、不同的第一中間資料集作為輸入資料,並經由分析聚合器220進行處理。該模型集成112的每個模組具有一組已定義的要求,例如輸入資料及/或輸出資料。該分析聚合器220使用其自學習多因素預測和隨機分析來分析資訊並進行關聯。該分析聚合器220進一步使用關聯分析器222來對該等模組的各種輸出進行關聯,並將關聯資料提供給組合式分析知識和語義圖表模型224。該組合式分析知識和語義圖表模型224會利用以知識圖譜以及社交圖譜為形式的圖形表示。該等圖譜具有多個節點並執行特定功能,並且會對資料集進行分析以評估對其他因素的影響。例如,該組合式分析知識和語義圖表模型224會利用不同的租戶知識(例如,來自其他施工活動、其他施工專案的知識),並將該等知識應用於目前的施工活動。該組合式分析知識和語義圖表模型224會將包括加權任務的第二中間資料集作為分析輸出資料,提供給日程表建議器226。該日程表建議器226會使用加權任務生成一優化日程表,該日程表會由通知器116輸出給使用者。該日程表可透過一使用者介面、語音、簡訊及/或類似方式輸出。 The artificial intelligence platform for dynamic schedule generation further receives dispersed, independent, and different first intermediate data sets from the modules as input data, and processes them via the analysis aggregator 220 . Each module of the model integration 112 has a defined set of requirements, such as input data and/or output data. The analytics aggregator 220 uses its self-learning multi-factor prediction and stochastic analysis to analyze and correlate information. The analysis aggregator 220 further uses a correlation analyzer 222 to correlate the various outputs of the modules and provide the correlation data to the combined analytical knowledge and semantic graph model 224. The combined analytical knowledge and semantic graph model 224 utilizes graphical representations in the form of knowledge graphs and social graphs. These graphs have multiple nodes and perform specific functions, and the data set is analyzed to assess the impact of other factors. For example, the combined analytical knowledge and semantic diagram model 224 may leverage different tenant knowledge (eg, knowledge from other construction activities, other construction projects) and apply such knowledge to current construction activities. The combined analytic knowledge and semantic graph model 224 will provide a second intermediate data set including weighted tasks as analytic output data to the schedule suggester 226 . The schedule suggester 226 will use the weighted tasks to generate an optimized schedule, which will be output to the user by the notifier 116 . The schedule can be output through a user interface, voice, text message and/or similar means.

監視器118會接收使用者的或自動的回饋302,並將回饋轉送至分析聚合器220,從而創造一封閉式的效能分析循環。該系統100可將任何商業變化或新需求因素納入考量。例如,回饋302可基於積累知識和驗證過的學習和資料集而被生成為一特定施工活動的優化建議,並被配對以符合施工目標。使用者可透過使用者介面以手動方式將一特定議題、問題等的相關回饋,使用一手動施工監視器輸入至該系統。監視器118也可使用一自動施工監視器來自動計算或以其他方式判定施工狀態、延宕、問題、在地或全球問題、期程,及其他可能導致延遲、停止或擾亂施工目標或期程的效率問題,並將之作為回饋302提供,以進一步增強、改正或標記當前問題。 Monitor 118 receives user or automated feedback 302 and forwards the feedback to analysis aggregator 220, thereby creating a closed performance analysis loop. The system 100 can take any business changes or new requirements into account. For example, feedback 302 may be generated as optimization recommendations for a specific construction activity based on accumulated knowledge and validated learning and data sets, and paired to meet construction goals. Users can manually input relevant feedback on a specific issue, problem, etc. into the system through the user interface using a manual construction monitor. Monitor 118 may also use an automated construction monitor to automatically calculate or otherwise determine construction status, delays, problems, local or global issues, schedules, and other conditions that may cause delays, halts, or disrupt construction goals or schedules. Efficiency issues and provide them as feedback 302 to further enhance, correct, or flag current issues.

舉例而言,可在施工現場使用一相機記錄日常工作、施工速度和進度。該自動施工監視器可智慧地將相機的記錄與一或多個工作計劃相匹配,並可突顯任何問題和延宕,亦可確認與基於使用者介面的輸入之間是否存在任何差異,從而判定送入活動追蹤器的資訊中,與施工現場的實際工作相比是否有任何錯誤或不正確資訊。 For example, a camera can be used on a construction site to record daily work, construction speed and progress. The automated construction monitor intelligently matches camera recordings to one or more work plans, highlighting any issues and delays, as well as confirming any discrepancies with user interface-based input to determine whether to send Check whether there are any errors or incorrect information in the information fed into the activity tracker compared to actual work on the construction site.

控制器114會基於所述人工或自動回饋,接收關於施工活動優化日程表的回饋302。如上所述,人工智慧平台被配置成實施一閉環式效能分析機器學習模型的集成,以生成一進一步優化的施工活動日程表。在一示例中,使用者經由一使用者介面向該人工智慧平台提供回饋。在另一示例中,回饋是由施工監視器自動提供。 The controller 114 may receive feedback 302 regarding an optimized schedule of construction activities based on the manual or automated feedback. As mentioned above, the artificial intelligence platform is configured to implement an integration of closed-loop performance analysis machine learning models to generate a further optimized construction activity schedule. In one example, users provide feedback to the artificial intelligence platform through a user interface. In another example, feedback is provided automatically by a construction monitor.

第3B圖繪示根據本發明一實施例之人工智慧平台的示例流程圖350。第3B圖中所示步驟的執行方式,類似於於第3A圖背景下對應步驟的執行方式。因此,為了行文的簡潔,將不再重複敘述第3B圖中所示步驟。 Figure 3B illustrates an example flowchart 350 of an artificial intelligence platform according to an embodiment of the present invention. The steps shown in Figure 3B are performed in a manner similar to the corresponding steps in the context of Figure 3A. Therefore, for the sake of brevity, the steps shown in Figure 3B will not be repeated.

在一實施例中,日程表建議器226提供建議,而監視器118則評估該建議與優化日程表、成本因素等方面是否相關及有效。日程表建議器226可包括一門控機制,以評估其自身的建議及自身的效能。例如,日程表建議器226可包括一效能指標分析模組352、一承包商執行模組354及一日程表差異模組356。 In one embodiment, schedule suggester 226 provides suggestions, and monitor 118 evaluates whether the suggestions are relevant and effective in optimizing schedules, cost factors, etc. Schedule suggester 226 may include a gating mechanism to evaluate its own suggestions and its own effectiveness. For example, schedule suggester 226 may include a performance indicator analysis module 352, a contractor execution module 354, and a schedule variance module 356.

效能指標分析模組352檢查及驗證是否達到效能指標。承包商執行模組354檢查使用者是否執行了建議事項,例如,由系統100提供的任務排序是否被執行/遵循。日程表差異模組356檢查系統提供的日程表和實際的現場工作之間是否存在差異。現場資料可經由多個來源接收,且可包括使用者透過行動應用程式進行的手動輸入,以及透過物聯網裝置感測器獲得的資訊饋送,感測器例如為運動感測器、高度計讀數、壓力感測器、溫度感測器、透過物體計數的數量測量、相機饋送、運動感測器等。隨著資料的產生和傳輸,該等資料也即時和近乎即時地被接收,例如被監視器118所接收。 The performance index analysis module 352 checks and verifies whether the performance index is achieved. The contractor execution module 354 checks whether the user has performed the recommendations, for example, whether the task sequence provided by the system 100 has been performed/followed. The schedule discrepancy module 356 checks whether there are discrepancies between the schedule provided by the system and the actual field work. On-site data can be received from multiple sources and can include manual user input through mobile applications, as well as information feeds obtained through IoT device sensors, such as motion sensors, altimeter readings, pressure Sensors, temperature sensors, quantity measurement through object counting, camera feeds, motion sensors, etc. As data is generated and transmitted, the data is also received instantly and near-instantly, such as by the monitor 118 .

在一實施例中,系統100會進行自我分析,針對組合效率以及個別模型的評價與效率皆進行分析,並從所收到的回饋中進行自我學習。系統100亦可接收可能未針對該系統訓練過的資料,並重新進行自我校準。系統100可提出新的模型或現有模型的新版本,並將其重新部署以適應此類學習。 In one embodiment, the system 100 performs self-analysis, analyzes both the combined efficiency and the evaluation and efficiency of individual models, and performs self-learning from the feedback received. System 100 can also receive data for which the system may not have been trained and recalibrate itself. System 100 can propose new models or new versions of existing models and redeploy them to accommodate such learning.

本文所說明的步驟係為了解釋所示的示例性實施例,可預期的是,持續進行中的技術發展將會改變特定功能的執行方式。此處之示例乃為說明目的而提出,而無意限制本發明。此外,為了描述上的方便,本文中功能構件方塊的邊界是任意定義的。然而只要指定的功能及其關係能得到適當執行,亦可定義其他的邊界。基於本文所包含的教示,替代方案(包括本文所描述者之等效物、 擴展、變化、偏移等)對所屬技術領域中具有通常知識者而言是顯而易見的。該等替代方案亦落入本發明揭示實施方式的範圍和精神內。 The steps described herein are for the purpose of explaining the exemplary embodiments shown, and it is anticipated that ongoing technological developments will change the manner in which certain functions are performed. The examples herein are presented for illustrative purposes and are not intended to limit the invention. In addition, for the convenience of description, the boundaries of functional building blocks in this article are arbitrarily defined. However, other boundaries can be defined as long as the specified functions and their relationships are properly implemented. Based on the teachings contained herein, alternatives (including equivalents to those described herein, Extensions, changes, offsets, etc.) will be obvious to those with ordinary knowledge in the relevant technical field. Such alternatives are within the scope and spirit of the disclosed embodiments.

綜上所述,本文提出之實施例可使控制器114能夠基於針對預測分析的特定隨機與概率模型(模型集成),從複數個模型/程式中分析每一輸入資料,在聚合器中將各別模型的輸出資料予以聚合,並且在使用組合分析將該等輸出資料與業務目標進行關聯後,推薦一最佳的、具成本效益、有時限和可執行的日程表。 In summary, the embodiments proposed in this article enable the controller 114 to analyze each input data from a plurality of models/programs based on a specific stochastic and probabilistic model for predictive analysis (model integration), and combine each input data in an aggregator. The outputs of different models are aggregated and, after using portfolio analysis to correlate these outputs with business objectives, an optimal, cost-effective, time-bound and executable schedule is recommended.

本文提出之實施例亦可使控制器具有對話性質(智能AI/機器學習數位助理),而可提供建議。一開始時,控制器可基於其提供的建議評估增進的效率,而隨著時間推移,可在日程表的遵守/差異上採取更嚴格標準。 The embodiments proposed in this article can also enable the controller to have a conversational nature (intelligent AI/machine learning digital assistant) and provide suggestions. Initially, the controller can evaluate improved efficiency based on the recommendations it provides, and over time can adopt stricter criteria for schedule compliance/variance.

5.0 程序概述 5.0 Program Overview

第4A圖繪示根據本發明一實施例之生成動態日程表的示例方法400。第4A圖可作為一基礎使用,以將方法400編碼為一或多個電腦程式或其他軟體構件,而可供一伺服器電腦加以執行或作為代管主機。 Figure 4A illustrates an example method 400 of generating a dynamic schedule according to an embodiment of the present invention. Figure 4A can be used as a basis for encoding method 400 into one or more computer programs or other software components for execution by a server computer or as a hosted host.

在步驟402,接收影響施工專案的複數個輸入資料集。例如,在收到一施工專案的施工活動日程表請求後,在模型集成112處接收複數個資料饋送其中的一或多個資料饋送。該日程表請求指明了該施工活動的一或多個施工目標。例如,該日程表請求可指明「在曼哈頓中城建造一棟帶有XYZ設計特色的50層樓建築」及以「準時、預算內、符合品質和健康考量」作為施工目標(例如,建築類型、地點、時限、預算、品質和健康考量)。該日程表請求明確指出欲達成的一設計特色識別符(例如XYZ),其包括與建築外觀有關的建築資訊。建築資訊包括與該建築之施工關聯的任務。監視器118可從一或多個來源存取複數個 資料饋送,並將該複數個資料饋送儲存在資料饋送資料庫132中。會在考量該等施工目標的情況下,對於該複數個輸入資料饋送中的每一者進行處理。可明確指出每一施工目標,或從施工目標資料庫134中儲存的複數個施工目標中選擇。 In step 402, a plurality of input data sets affecting the construction project are received. For example, upon receiving a construction activity schedule request for a construction project, one or more of a plurality of data feeds is received at model integration 112 . The schedule request specifies one or more construction goals for the construction activity. For example, the schedule request could specify "Construct a 50-story building with XYZ design features in Midtown Manhattan" and "on time, on budget, consistent with quality and health considerations" as construction goals (e.g., building type, location, time frame, budget, quality and health considerations). The schedule request specifies a desired design feature identifier (eg, XYZ) that includes architectural information related to the building's appearance. Construction information includes tasks associated with the construction of the building. Monitor 118 may access multiple data feeds and store the plurality of data feeds in the data feed database 132 . Each of the plurality of input data feeds is processed with the construction objectives in mind. Each construction target may be specified or selected from a plurality of construction targets stored in the construction target database 134 .

在步驟404,對複數個輸入資料集進行處理。例如,由模型集成112的各個模組處理複數個資料饋送。一模組可包括由一或多個機器學習模型構成的一集成。在一實施例中,每一個別模組僅處理各資料饋送中與各該模組的功能目標相關的資料區段。 In step 404, a plurality of input data sets are processed. For example, multiple data feeds are processed by various modules of model integration 112 . A module may include an ensemble of one or more machine learning models. In one embodiment, each individual module processes only the data segments in each data feed that are relevant to the functional goal of each module.

在步驟406,生成第一中間資料集。例如,各模組生成經機器學習驗證後的資料集,該等資料集對應於所述複數個輸入資料集其中的每一者。在一些實施例中,模型集成112的每一模組會針對每一資料饋送生成第一中間資料集。 At step 406, a first intermediate data set is generated. For example, each module generates machine learning validated data sets corresponding to each of the plurality of input data sets. In some embodiments, each module of model integration 112 generates a first intermediate data set for each data feed.

在步驟408,使用一監督式機器學習模型,為一施工活動生成一優化的日程表。例如,基於由模型集成112各模組所生成的第一中間資料集,控制器114的日程表建議器226會實施監督式機器學習模型,該模型會為施工活動生成一優化的日程表以達成施工專案的(一或多個)施工目標。在一些實施例中,控制器114的分析聚合器220與關聯分析器222可先對第一中間資料集執行分析並進行關聯。從關聯分析器222輸出的資料可由組合式分析知識和語義圖表模型224進一步處理,以針對施工活動生成包括加權任務在內的第二中間資料集。效能指標分析模組352、日程表差異模組356及承包商執行模組354則共同從該等加權任務中,動態地生成優化的日程表。該優化的日程表會實現施工目標。 At step 408, an optimized schedule is generated for a construction activity using a supervised machine learning model. For example, based on the first intermediate data set generated by each module of the model integration 112, the schedule proposer 226 of the controller 114 may implement a supervised machine learning model that generates an optimized schedule for the construction activities to achieve The construction goal(s) of a construction project. In some embodiments, the analysis aggregator 220 and the correlation analyzer 222 of the controller 114 may first perform analysis and correlation on the first intermediate data set. The data output from the correlation analyzer 222 may be further processed by the combined analytical knowledge and semantic graph model 224 to generate a second intermediate data set including weighted tasks for construction activities. The performance index analysis module 352, the schedule difference module 356, and the contractor execution module 354 jointly dynamically generate an optimized schedule from the weighted tasks. This optimized schedule will achieve construction goals.

在步驟410,生成優化的日程表以回應所述日程表請求。該優化的日程表係基於加權任務生成。該優化的日程表亦基於效能指標、任務排序(例如 建議)是否被遵循及/或進度表差異生成。該優化的日程表會在一客戶端裝置上輸出(以視覺及/或聽覺方式)。第4B圖繪示一示例性日程表。 At step 410, an optimized schedule is generated in response to the schedule request. The optimized schedule is generated based on weighted tasks. The optimized schedule is also based on performance indicators, task sequencing (e.g. recommendations) are followed and/or schedule variances are generated. The optimized schedule is output (visually and/or audibly) on a client device. Figure 4B illustrates an exemplary schedule.

日程表可在圖形使用者介面上以互動方式呈現,例如在瀏覽器或客戶端應用程式中呈現。第4B圖的示例日程表中顯示了不同的施工活動,例如地基、牆、屋頂等。每一施工活動包含一或多個任務,每項任務包含開始日期和持續時間。施工活動以一連串的事件予以表列。該示例日程表還包括一圖形化的時間軸,顯示每項活動所要完成的任務。每項任務的詳情可透過啟動(例如,以滑鼠移動、雙擊等)時間軸中的任務而顯示,例如以疊加方式顯示。任務詳情可包括有關推薦承包商和供應商的資訊。 The schedule can be presented interactively on a graphical user interface, such as in a browser or client application. The example schedule in Figure 4B shows different construction activities such as foundations, walls, roofs, etc. Each construction activity consists of one or more tasks, and each task includes a start date and duration. Construction activities are listed as a series of events. The sample schedule also includes a graphical timeline showing what each activity has to accomplish. Details of each task can be displayed, for example in an overlay, by activating (eg, moving with the mouse, double-clicking, etc.) the task in the timeline. Task details can include information about recommended contractors and vendors.

在一實施例中,可在監視器118上接收對於日程表的回饋,以修改控制器114的一或多個子構件,例如控制器114的聚合器220。可生成經過更新或進一步優化的日程表。控制器114和監視器118實施一閉環式效能分析機器學習模型的集成。 In one embodiment, feedback about the schedule may be received on monitor 118 to modify one or more subcomponents of controller 114, such as aggregator 220 of controller 114. An updated or further refined schedule can be generated. Controller 114 and monitor 118 implement an integration of closed-loop performance analysis machine learning models.

所揭示技術之優勢在於可即時適應變化並作出決定,以因應一建築專案的動態性質。該等技術可由處理邏輯予以執行,處理邏輯可包括硬體(電路、專用邏輯等)、軟體(例如在一般電腦系統或專用機器上運行)或兩者的結合。處理邏輯可包含於任何節點或設備中(例如核心節點、客戶端設備、控制器等),或包含於其他任何運算系統或裝置中。所屬技術領域具通常知識者將可理解,所揭示的方法能夠被儲存在一製造物件上,例如非暫態電腦可讀媒體。在一實施例中,製造物件可包括一電腦程式,該電腦程式可從儲存媒體或任何電腦可讀裝置存取。 The advantage of the disclosed technology is that it can adapt to changes and make decisions on the fly to cope with the dynamic nature of a construction project. These techniques may be executed by processing logic, which may include hardware (circuitry, dedicated logic, etc.), software (e.g., running on a general computer system or a dedicated machine), or a combination of both. The processing logic may be included in any node or device (such as a core node, client device, controller, etc.), or in any other computing system or device. One of ordinary skill in the art will appreciate that the disclosed methods can be stored on an article of manufacture, such as a non-transitory computer-readable medium. In one embodiment, the manufactured object may include a computer program that can be accessed from a storage medium or any computer-readable device.

6.0 硬體概述 6.0 Hardware Overview

根據本發明一實施例,本文所述技術係由至少一計算裝置實施。該等技術可被全部或部分地實施,使用以一網路(例如封包資料網路)耦接的至少一伺服器電腦及/或其他計算裝置的組合加以實施。計算裝置可以是硬布線裝置以執行該等技術,或可包括數位電子裝置,例如至少一特定應用積體電路(ASIC)或現場可程式邏輯閘陣列(FPGA),其經持續的程式編寫以執行該等技術,或可包括至少一通用型硬體處理器,其經程式編寫以根據韌體、記憶體、其他儲存器或其組合中的程式指令執行該等技術。此類計算裝置也可結合客製的硬布線邏輯、ASIC或FPGA與客製化程式,以達成所述技術。計算裝置可以是伺服器電腦、工作站、個人電腦、可攜式電腦系統、手持裝置、行動計算裝置、穿戴式裝置、身體安裝或植入式裝置、智慧型手機、智能電器、網際網路裝置、自主或半自主設備(如機器人或無人駕駛地面或空中載具)、任何其他結合了硬布線及/或程式邏輯以實施本文所述技術的電子設備、資料中心的一或多個虛擬計算機或實例,及/或一由伺服器電腦及/或個人電腦構成的網路。 According to an embodiment of the present invention, the technology described herein is implemented by at least one computing device. These techniques may be implemented, in whole or in part, using a combination of at least one server computer and/or other computing device coupled with a network, such as a packet data network. A computing device may be a hardwired device to perform these techniques, or may include a digital electronic device, such as at least one application specific integrated circuit (ASIC) or field programmable gate array (FPGA) that is continuously programmed to Execution of these technologies may include at least one general-purpose hardware processor programmed to execute these technologies according to program instructions in firmware, memory, other storage, or a combination thereof. Such computing devices may also incorporate custom hardwired logic, ASICs or FPGAs and custom programming to implement the techniques described. The computing device may be a server computer, a workstation, a personal computer, a portable computer system, a handheld device, a mobile computing device, a wearable device, a body-mounted or implantable device, a smartphone, a smart appliance, an Internet device, Autonomous or semi-autonomous devices (such as robots or unmanned ground or air vehicles), any other electronic device that incorporates hardwiring and/or program logic to implement the techniques described herein, one or more virtual computers in a data center, or Example, and/or a network of server computers and/or personal computers.

第5圖為一方塊圖,繪示了可用以實現本發明一實施例的示例電腦系統。在第5圖的示例中,以示意方式呈現(例如以方框和圓圈呈現)電腦系統500及指令,其共同用於在硬體、軟體或硬體與軟體組合中實施所揭示的本發明技術,所呈現的詳盡程度為本發明所屬技術領域具通常知識者一般用於傳達電腦架構和電腦系統實施方式相關內容的同等程度。 Figure 5 is a block diagram illustrating an example computer system that can be used to implement an embodiment of the present invention. In the example of FIG. 5 , a computer system 500 and instructions are shown schematically (eg, as boxes and circles) that collectively operate to implement the disclosed techniques in hardware, software, or a combination of hardware and software. The level of detail presented is equivalent to that which one of ordinary skill in the art to which this invention belongs would normally convey relevant aspects of computer architecture and computer system implementations.

電腦系統500包括輸出入(I/O)子系統502,其可包括匯流排及/或其他通訊機制,用於透過電子訊號路徑在電腦系統500的組成構件之間進行資訊及/或指令通訊。輸出入子系統502可包括一個輸出入控制器,一記憶體控制器和 至少一個輸出入端口。電子訊號路徑在圖中以示意方式表示,例如以線、單向箭頭或雙向箭頭表示。 Computer system 500 includes an input/output (I/O) subsystem 502, which may include buses and/or other communication mechanisms for communicating information and/or instructions between the components of computer system 500 through electronic signal paths. I/O subsystem 502 may include an I/O controller, a memory controller and At least one input/output port. Electronic signal paths are represented schematically in the diagrams, for example as lines, one-way arrows or two-way arrows.

至少一硬體處理器504耦接到該輸出入子系統502以處理資訊和指令。硬體處理器504可包括例如一般用途微處理器或微控制器及/或特殊用途微處理器,例如嵌入式系統、圖形處理器(GPU)、數位訊號處理器或ARM處理器。處理器504可包括整合算術邏輯單元(arithmetic logic unit,ALU)或者可耦接到一單獨的算術邏輯單元。 At least one hardware processor 504 is coupled to the input/output subsystem 502 to process information and instructions. Hardware processor 504 may include, for example, a general purpose microprocessor or microcontroller and/or a special purpose microprocessor, such as an embedded system, a graphics processing unit (GPU), a digital signal processor, or an ARM processor. Processor 504 may include an integrated arithmetic logic unit (ALU) or may be coupled to a separate arithmetic logic unit.

電腦系統500包括一或多個單元的記憶體506(例如主記憶體),其被耦接到輸出入子系統502,用於以電子數位方式儲存將由處理器504執行的資料及指令。記憶體506可包括易失性記憶體,如各種形式的隨機存取記憶體(RAM)或其他動態儲存裝置。記憶體506也可用於在處理器504執行指令期間,儲存暫時變數或其他中間資訊。當該等指令被儲存在非暫態電腦可讀媒體中而可被處理器504存取時,可使得電腦系統500轉變成一特殊用途機器,其經過客製化而可執行該等指令中所指定的操作。 Computer system 500 includes one or more units of memory 506 (eg, main memory) coupled to input/output subsystem 502 for electronically digitally storing data and instructions to be executed by processor 504. Memory 506 may include volatile memory, such as various forms of random access memory (RAM) or other dynamic storage devices. Memory 506 may also be used to store temporary variables or other intermediate information while processor 504 executes instructions. When these instructions are stored in a non-transitory computer-readable medium and are accessible to the processor 504, they can transform the computer system 500 into a special-purpose machine that is customized to execute the instructions specified in the instructions. operation.

電腦系統500進一步包括非易失性記憶體,例如唯讀記憶體(ROM)508或其他耦接到輸出入子系統502的靜態儲存裝置,用以儲存提供給處理器504的資訊和指令。唯讀記憶體508可包括各種形式的可程式化唯讀記憶體(PROM),如可抹除可程式化唯讀記憶體(EPROM)或電子可抹除可程式化唯讀記憶體(EEPROM)。持久性儲存器510可包括各種形式的非易失性RAM(NVRAM),如快閃記憶體(FLASH),或固態儲存裝置、磁碟或光碟,如CD-ROM或DVD-ROM,並可與輸出入子系統502耦接以儲存資訊和指令。儲存器510 為非暫態電腦可讀媒體的一種示例,可用於儲存指令和資料,當該等指令和資料由處理器504執行時,可使得電腦實施方法被執行,以實現本文所述之技術。 Computer system 500 further includes non-volatile memory, such as read-only memory (ROM) 508 or other static storage devices coupled to input/output subsystem 502 , for storing information and instructions provided to processor 504 . Read-only memory 508 may include various forms of programmable read-only memory (PROM), such as erasable programmable read-only memory (EPROM) or electronically erasable programmable read-only memory (EEPROM). . Persistent storage 510 may include various forms of non-volatile RAM (NVRAM), such as flash memory (FLASH), or solid-state storage devices, magnetic or optical disks, such as CD-ROM or DVD-ROM, and may be used with Input/output subsystem 502 is coupled to store information and instructions. Storage 510 is an example of a non-transitory computer-readable medium that can be used to store instructions and data that, when executed by processor 504, can cause computer-implemented methods to be performed to implement the techniques described herein.

記憶體506、唯讀記憶體508或儲存器510中的指令可包括一或多個指令集合,該等指令集合被組織為模組、方法、物件、功能、常式或調用程序。該等指令可被組織為一或多個電腦程式、作業系統服務或應用程式(包括行動應用程式)。該等指令可包括:作業系統及/或系統軟體;支援多媒體、程式編寫或其他功能的一或多個程式庫;執行TCP/IP、HTTP或其他通訊協定的資料協定指令或堆疊;檔案格式處理指令,用以解析或呈現使用HTML、XML、JPEG、MPEG或PNG編碼的檔案;使用者介面指令,用以呈現或詮釋圖形使用者介面(GUI)、命令行介面或文字使用者介面;應用程式軟體,如辦公室套組、網際網路存取應用程式、設計和製造應用程式、圖形應用程式、音訊應用程式、軟體工程應用程式、教育用應用程式、遊戲或其他各種應用程式。該等指令可執行網路伺服器、網路應用伺服器或網頁客戶端功能。該等指令可使用(或不使用)結構化查詢語言(SQL)、物件儲存器(object store)、圖形資料庫、平面檔案(flat file)系統或其他資料儲存形式,被組織為表現層、應用層和資料儲存層,例如關聯式資料庫系統。 Instructions in memory 506, read-only memory 508, or storage 510 may include one or more sets of instructions organized into modules, methods, objects, functions, routines, or call routines. These instructions may be organized into one or more computer programs, operating system services or applications (including mobile applications). These instructions may include: operating system and/or system software; one or more libraries that support multimedia, programming or other functions; data protocol instructions or stacks that execute TCP/IP, HTTP or other communication protocols; file format processing Commands that parse or render files encoded in HTML, XML, JPEG, MPEG, or PNG; user interface commands that render or interpret graphical user interfaces (GUIs), command line interfaces, or text user interfaces; applications Software such as office suites, Internet access applications, design and manufacturing applications, graphics applications, audio applications, software engineering applications, educational applications, games, or various other applications. These commands can execute web server, web application server, or web client functions. These instructions may or may not use Structured Query Language (SQL), object stores, graph databases, flat file systems, or other data storage formats, and are organized into presentation layers, applications layer and data storage layer, such as a relational database system.

電腦系統500可透過輸出入子系統502耦接到至少一輸出裝置512。在一實施例中,輸出裝置512為一數位電腦顯示器。可在各實施例中使用的顯示器示例包括觸控螢幕顯示器、發光二極體(LED)顯示器、液晶顯示器(LCD)或電子紙顯示器。電腦系統500可包括其他類型的輸出裝置512,作為顯示裝置的替代或補充裝置。其他輸出裝置512的示例包括印表機、票據印表機、繪圖機、 投影機、音效卡或顯示卡、揚聲器、蜂鳴器或壓電裝置或其他聲響裝置、燈或LED或LCD指示器、觸覺裝置、致動器或伺服裝置。 Computer system 500 may be coupled to at least one output device 512 through input/output subsystem 502 . In one embodiment, the output device 512 is a digital computer monitor. Examples of displays that may be used in various embodiments include touch screen displays, light emitting diode (LED) displays, liquid crystal displays (LCD), or electronic paper displays. Computer system 500 may include other types of output devices 512 as alternatives to or in addition to display devices. Examples of other output devices 512 include printers, receipt printers, plotters, Projector, sound card or display card, speaker, buzzer or piezoelectric device or other sound device, lamp or LED or LCD indicator, tactile device, actuator or servo device.

至少一輸入裝置514耦接到輸出入子系統502,以將訊號、資料、指令選擇或手勢傳送至處理器504。輸入裝置514的示例包括觸控螢幕、麥克風、靜止影像與影片數位相機、文數字及其他按鍵、小鍵盤、鍵盤、圖形板、影像掃描器、操縱桿、時鐘、開關、按鈕、撥號盤、幻燈片及/或各種類型的感測器,如力感測器、運動感測器、熱感測器、加速計、陀螺儀及慣性量測單元感測器及/或各種類型的收發器,如無線收發器(如蜂巢式或Wi-Fi、射頻或紅外線收發器)及全球定位系統(GPS)收發器。 At least one input device 514 is coupled to the input/output subsystem 502 to transmit signals, data, command selections, or gestures to the processor 504 . Examples of input devices 514 include touch screens, microphones, still image and video digital cameras, alphanumeric and other keys, keypads, keyboards, graphics tablets, image scanners, joysticks, clocks, switches, buttons, dials, slideshows Chips and/or various types of sensors, such as force sensors, motion sensors, thermal sensors, accelerometers, gyroscopes and inertial measurement unit sensors and/or various types of transceivers, such as Wireless transceivers (such as cellular or Wi-Fi, RF or infrared transceivers) and Global Positioning System (GPS) transceivers.

另一種類型的輸入裝置為控制裝置516,其可執行游標控制或其他自動控制功能,例如在顯示螢幕上的圖形介面中導航,提供替代或額外的輸入功能。控制裝置516可為觸控板、滑鼠、軌跡球或游標方向鍵,用於將方向資訊和指令選擇傳送至處理器504並在顯示器上控制游標移動。控制裝置可至少在兩個軸上具有自由度,即第一軸(例如x)及第二軸(例如y),以使該裝置可在一平面上指明位置。另一種類型的輸入裝置是有線、無線或光學控制裝置,如操縱桿、魔杖、控制台、方向盤、踏板、換擋機構或其他類型的控制裝置。輸入裝置514可包括多個不同輸入裝置的組合,例如攝影機與深度感測器。 Another type of input device is a control device 516, which can perform cursor control or other automatic control functions, such as navigating through a graphical interface on a display screen, providing alternative or additional input functions. The control device 516 may be a touchpad, a mouse, a trackball, or a cursor direction key, and is used to transmit direction information and command selections to the processor 504 and control cursor movement on the display. The control device may have degrees of freedom in at least two axes, namely a first axis (eg x) and a second axis (eg y), so that the device can indicate a position on a plane. Another type of input device is a wired, wireless, or optical control device such as a joystick, wand, console, steering wheel, pedals, shift mechanism, or other type of control device. Input device 514 may include a combination of multiple different input devices, such as a camera and a depth sensor.

在另一實施例中,電腦系統500可包括物聯網(IoT)裝置,其中省略了輸出裝置512、輸入裝置514和控制裝置516中的一或多個。或者,在此類實施例中,輸入裝置514可包括一或多個相機、運動偵測器、溫度計、麥克風、地震儀、其他感測器或偵測器、測量裝置或編碼器,且輸出裝置512可包括特殊 用途顯示器,例如單行LED或LCD顯示器、一或多個指示燈、顯示面板、儀錶、閥門、螺線管、致動器或伺服機構。 In another embodiment, computer system 500 may include an Internet of Things (IoT) device in which one or more of output device 512, input device 514, and control device 516 are omitted. Alternatively, in such embodiments, the input device 514 may include one or more cameras, motion detectors, thermometers, microphones, seismometers, other sensors or detectors, measurement devices, or encoders, and the output device 512 may include special Purpose displays, such as single-line LED or LCD displays, one or more pilot lights, display panels, gauges, valves, solenoids, actuators or servos.

電腦系統500為行動計算裝置時,輸入裝置514可包括全球定位系統(GPS)接收器,其耦接到一GPS模組,該GPS模組能夠與複數個GPS衛星以三角測量方式定位,為電腦系統500判定並生成地理定位或位置資料,例如緯度及經度值。輸出裝置512可包括硬體、軟體、韌體和介面,用於生成位置報告封包、通知、脈搏或心跳訊號或其他明確指出電腦系統500位置的重複性資料傳輸,該等資料單獨或與其他應用程式特定的資料結合,向主機524或伺服器530傳送。 When the computer system 500 is a mobile computing device, the input device 514 may include a Global Positioning System (GPS) receiver coupled to a GPS module capable of triangulating positioning with a plurality of GPS satellites for the computer. System 500 determines and generates geolocation or location data, such as latitude and longitude values. Output devices 512 may include hardware, software, firmware, and interfaces for generating location reporting packets, notifications, pulse or heartbeat signals, or other repetitive transmission of data that specifically identifies the location of computer system 500, either alone or with other applications. The program-specific data is combined and sent to the host 524 or server 530.

電腦系統500可使用客製的硬布線邏輯、至少一ASIC或FPGA、韌體及/或程式指令或邏輯來實現本文所述的技術,該等指令或邏輯在載入及使用或結合電腦系統執行時,會導致該電腦系統或程式編寫該電腦系統作為一特殊用途機器運作。根據一實施例,本文所述技術是由電腦系統500回應於處理器504執行主記憶體506中包含的至少一指令的至少一序列而執行的。該等指令可從另一儲存媒體(例如儲存器510)被讀入主記憶體506。執行包含在主記憶體506中的指令序列會使處理器504執行本文所述的流程步驟。在替代實施例中,可使用硬布線電路取代軟體指令或與軟體指令結合使用。 Computer system 500 may implement the techniques described herein using custom hard-wired logic, at least one ASIC or FPGA, firmware and/or program instructions or logic that are loaded and used in or combined with the computer system. When executed, it causes the computer system or programming to operate the computer system as a special purpose machine. According to one embodiment, the techniques described herein are performed by computer system 500 in response to processor 504 executing at least one sequence of at least one instruction contained in main memory 506 . The instructions may be read into main memory 506 from another storage medium (eg, storage 510). Execution of sequences of instructions contained in main memory 506 causes processor 504 to perform the process steps described herein. In alternative embodiments, hardwired circuitry may be used in place of or in combination with software instructions.

本文中之用語「儲存媒體」是指儲存資料及/或指令的任何非暫態媒體,該等資料及/或指令會導致機器以特定方式運作。此類儲存媒體可包括非易失性媒體及/或易失性媒體。非易失性媒體包括例如光碟或磁碟,如儲存器510。易失性媒體包括動態記憶體,如記憶體506。儲存媒體的常見形式包括例如硬碟、固態硬碟、快閃驅動器、磁性資料儲存媒體、任何光學或物理的資料儲存媒體、記憶體晶片或類似物。 The term "storage media" as used herein refers to any non-transitory medium that stores data and/or instructions that cause a machine to operate in a specific manner. Such storage media may include non-volatile media and/or volatile media. Non-volatile media include, for example, optical disks or magnetic disks, such as storage 510 . Volatile media includes dynamic memory, such as memory 506. Common forms of storage media include, for example, hard drives, solid state drives, flash drives, magnetic data storage media, any optical or physical data storage media, memory chips, or the like.

儲存媒體不同於傳輸媒體,但可與傳輸媒體一併使用。傳輸媒體參與儲存媒體之間的資料傳輸。例如,傳輸媒體包括同軸電纜、銅線及光纖,包括構成輸出入子系統502匯流排的導線。傳輸媒體也可採取聲波或光波形式,例如在無線電波和紅外線資料通訊過程中所產生的波。 Storage media is different from, but can be used with, transmission media. Transmission media participates in data transfer between storage media. For example, transmission media include coaxial cables, copper wires, and fiber optics, including the wires that make up the busbars of the input/output subsystem 502 . Transmission media can also take the form of sound or light waves, such as those produced during radio and infrared data communications.

將至少一指令的至少一序列傳送至處理器504執行的過程中可包含不同形式的媒體。例如,該等指令最初可被載於一遠端電腦的磁碟或固態硬碟上。該遠端電腦可將該等指令加載到其動態記憶體中,並透過一通訊鏈路(如光纖、同軸電纜或使用數據機的電話線路)傳送該等指令。電腦系統500本機的數據機或路由器可接收該通信鏈路上的資料,並將資料轉換成可由電腦系統500讀取的格式。例如,一接收器(如射頻天線或紅外線偵測器)可接收無線或光學訊號中承載的資料,適宜電路則可將資料提供給輸出入子系統502,例如藉由將資料置於匯流排處。輸出入子系統502將該等資料傳送到記憶體506,處理器504再從記憶體506中提取指令並執行。由記憶體506所接收的指令可視情形在處理器504執行之前或之後被儲存在儲存器510上。 The process of transmitting at least one sequence of at least one instruction to processor 504 for execution may include different forms of media. For example, the instructions may initially be loaded on a remote computer's disk or solid state drive. The remote computer can load the instructions into its dynamic memory and transmit the instructions through a communications link (such as fiber optic, coaxial cable, or telephone line using a modem). The modem or router local to the computer system 500 can receive the data on the communication link and convert the data into a format that can be read by the computer system 500 . For example, a receiver (such as a radio frequency antenna or infrared detector) can receive the data carried in the wireless or optical signal, and appropriate circuitry can provide the data to the input/output subsystem 502, such as by placing the data on a bus. . The input/output subsystem 502 transfers the data to the memory 506, and the processor 504 retrieves the instructions from the memory 506 and executes them. Instructions received by memory 506 may be stored on storage 510 before or after execution by processor 504, as appropriate.

電腦系統500還包括與輸出入子系統502上的匯流排耦接的通訊介面518。通訊介面518提供與網路鏈路520連接的雙向資料通訊,該等網路鏈路直接或間接地連接到至少一通訊網路,例如網路522或網際網路上的公共或私有雲端。例如,通訊介面518可為乙太網路介面、整體服務數位網路(ISDN)卡、纜線數據機、衛星數據機或提供資料通訊連接至對應通訊線路類型(例如乙太網路纜線、任何類型的金屬纜線、光纖線路或電話線路)的數據機。網路522廣義上可代表區域網路(LAN)、廣域網路(WAN)、校園網路、網際網路或任何前述網路的組合。通訊介面518可包括一區域網卡,以提供資料通訊連接至一相 容的區域網路,或包括一蜂巢式無線電話介面,其以有線方式連接,根據蜂巢式無線電話無線網路標準發送或接收蜂巢式資料,或一衛星無線電介面,其以有線方式連接,根據衛星無線網路標準發送或接收數位資料。在任何此類實施方式中,通訊介面518透過承載代表各類型資訊的數位資料流的訊號路徑,發送及接收電訊號、電磁訊號或光訊號。 The computer system 500 also includes a communication interface 518 coupled to a bus on the input/output subsystem 502 . Communication interface 518 provides two-way data communication with network links 520 that are directly or indirectly connected to at least one communication network, such as network 522 or a public or private cloud on the Internet. For example, the communication interface 518 can be an Ethernet interface, an Integrated Services Digital Network (ISDN) card, a cable modem, a satellite modem, or provide a data communication connection to a corresponding communication line type (such as an Ethernet cable, Any type of metal cable, fiber optic line, or telephone line) modem. Network 522 may broadly represent a local area network (LAN), a wide area network (WAN), a campus network, the Internet, or a combination of any of the foregoing. Communication interface 518 may include a local network card to provide data communication connection to a phase A local area network that contains either a cellular radiotelephone interface that is wired to send or receive cellular data in accordance with the cellular radiotelephone wireless network standard, or a satellite radio interface that is wired to be connected in accordance with Satellite wireless network standard for sending or receiving digital data. In any such implementation, communication interface 518 sends and receives electrical, electromagnetic, or optical signals through signal paths that carry digital data streams representing various types of information.

網路鏈路520通常直接或透過至少一網路向其他數據裝置提供電性、電磁或光學資料通訊,使用的技術則例如為衛星、蜂巢、Wi-Fi或藍牙技術。例如,網路鏈路520可透過網路522提供至主機524的連接。 Network link 520 typically provides electrical, electromagnetic, or optical data communications to other data devices directly or through at least one network, using technologies such as satellite, cellular, Wi-Fi, or Bluetooth technology. For example, network link 520 may provide a connection to host 524 through network 522.

此外,網路鏈路520可透過網路522提供至其他計算裝置的連接,該連接是經由網際網路服務供應商(ISP)526運作的網際網路裝置及/或電腦提供。ISP 526透過全球封包資料通訊網路(表現為網際網路528)提供資料通訊服務。伺服器530可耦接到網際網路528。伺服器530廣義上代表任何電腦、資料中心、虛擬機器或虛擬運算實例(無論是否具有超管理器),或執行容器化程式系統的電腦,如DOCKER或KUBERNETES。伺服器530可代表一電子數位服務,該服務使用一個以上的電腦或實例來實施,並且透過傳輸網路服務請求、帶有HTTP負載中參數的統一資源定位器(URL)字符串、API調用、應用程式服務調用或其他服務調用來存取和使用。電腦系統500和伺服器530可形成分散式計算系統的構件,該系統包括其他電腦、處理叢集、伺服器場或其他合作以執行任務或執行應用程式或服務的其他電腦組織架構。伺服器530可包括一或多個指令集合,該等指令被組織成模組、方法、物件、功能、常式或調用程序。該等指令可被組織為一或多個電腦程式、作業系統服務或應用程式(包括行動應用程式)。該等指令可包括:作業系統及/或系統軟體;支援多媒體、程式編寫或其他功能 的一或多個程式庫;執行TCP/IP、HTTP或其他通訊協定的資料協定指令或堆疊;檔案格式處理指令,用以解析或呈現使用HTML、XML、JPEG、MPEG或PNG編碼的檔案;使用者介面指令,用以呈現或詮釋圖形使用者介面(GUI)、命令行介面或文字使用者介面;應用程式軟體,如辦公室套組、網際網路存取應用程式、設計和製造應用程式、圖形應用程式、音訊應用程式、軟體工程應用程式、教育用應用程式、遊戲或其他各種應用程式。伺服器530可包括網路應用程式伺服器,其使用(或不使用)結構化查詢語言(SQL)、物件儲存器(object store)、圖形資料庫、平面檔案(flat file)系統或其他資料儲存形式,承載了表現層、應用層和資料儲存層,例如關聯式資料庫系統。 Additionally, network link 520 may provide connections to other computing devices through network 522 provided through Internet devices and/or computers operated by Internet service providers (ISPs) 526 . ISP 526 provides data communication services through the global packet data communication network (represented as the Internet 528). Server 530 may be coupled to Internet 528. Server 530 broadly represents any computer, data center, virtual machine or virtual computing instance (with or without a hypervisor), or computer running a containerized programming system, such as DOCKER or KUBERNETES. Server 530 may represent an electronic digital service that is implemented using more than one computer or instance and is implemented by transmitting web service requests, Uniform Resource Locator (URL) strings with parameters in HTTP payloads, API calls, Application service calls or other service calls to access and use. Computer system 500 and servers 530 may form components of a distributed computing system that includes other computers, processing clusters, server farms, or other computer organizations that cooperate to perform tasks or execute applications or services. Server 530 may include one or more sets of instructions organized into modules, methods, objects, functions, routines, or call procedures. These instructions may be organized into one or more computer programs, operating system services or applications (including mobile applications). These instructions may include: operating system and/or system software; support for multimedia, programming or other functions one or more libraries; data protocol commands or stacks that execute TCP/IP, HTTP, or other protocols; file format processing commands to parse or render files encoded in HTML, XML, JPEG, MPEG, or PNG; use User interface commands used to present or interpret a graphical user interface (GUI), command line interface, or text user interface; application software, such as office suites, Internet access applications, design and manufacturing applications, graphics Applications, audio applications, software engineering applications, educational applications, games, or various other applications. Server 530 may include a web application server that uses (or does not use) Structured Query Language (SQL), object store, graph database, flat file system, or other data storage The form carries the presentation layer, application layer and data storage layer, such as a relational database system.

電腦系統500可透過網路、網路鏈路520和通訊介面518發送訊息並接收資料和指令,包括程式碼。在使用網際網路的示例中,伺服器530可透過網際網路528、ISP 526、區域網路522及通訊介面518傳送所請求的應用程式碼。被接收的程式碼可由處理器504在收到時執行,及/或儲存在儲存器510或其他非易失性儲存裝置中,以便後續執行。 Computer system 500 can send messages and receive data and instructions, including program code, through the network, network link 520, and communication interface 518. In an example using the Internet, server 530 may transmit the requested application code through Internet 528, ISP 526, local area network 522, and communication interface 518. The received code may be executed by processor 504 upon receipt and/or stored in memory 510 or other non-volatile storage device for subsequent execution.

本節所述之指令執行可以以執行中的電腦程式實例的形式執行一流程,並且該電腦程式是由程式碼及其當前活動組成。取決於作業系統(OS),一流程可由多個執行緒組成,該等執行緒會同時執行指令。在此情況下,一電腦程式是許多指令的被動集合,而一流程可能是該等指令的實際執行情形。數個流程可能與同一程式關聯;例如,打開同一程式的數個實例往往意味著一個以上的流程正被執行。可執行多工作業以允許多個流程共用處理器504。雖然每一處理器504或處理器核心一次僅執行一項任務,但電腦系統500可經由程式編寫實現多工作業,允許每一處理器在執行中的任務之間切換,而不必等待每個任務完 成。在一實施例中,可在任務執行輸入/輸出操作時、在任務指示其可被切換時或在硬體中斷時執行切換。可實施分時(time-sharing)以快速回應互動式使用者應用程式,可藉由快速執行上下文交換來提供多個流程同時執行的外觀。在一實施例中,為了安全性與可靠性考量,作業系統可防止獨立流程之間直接進行通訊,提供嚴格中介及受控制的流程間通訊功能。 The execution of instructions described in this section may execute a process in the form of an executing instance of a computer program consisting of the program code and its current activities. Depending on the operating system (OS), a process can consist of multiple threads that execute instructions simultaneously. In this case, a computer program is a passive collection of instructions, and a process may be the actual execution of those instructions. Several processes may be associated with the same program; for example, opening several instances of the same program often means that more than one process is being executed. Multitasking may be performed to allow multiple processes to share processor 504. Although each processor 504 or processor core performs only one task at a time, the computer system 500 can be programmed to multi-task, allowing each processor to switch between executing tasks without having to wait for each task. over become. In one embodiment, switching may be performed when a task performs an input/output operation, when the task indicates that it can be switched, or when a hardware interrupt occurs. Can implement time-sharing to quickly respond to interactive user applications, and can provide the appearance of multiple processes executing simultaneously by quickly executing context exchanges. In one embodiment, for security and reliability considerations, the operating system can prevent direct communication between independent processes and provide strictly mediated and controlled inter-process communication functions.

7.0 軟體概述 7.0 Software Overview

第6圖為一基本的軟體系統600之方塊圖,該軟體系統600可用於控制計算裝置500的運作。軟體系統600及其組件,包括其中的連接方式、關係和功能皆僅為示例性質,並非用以限制示例性實施例的執行方式。其他適合執行示例性實施例的軟體系統可能具有不同組件,包括具有不同連接方式、關係和功能的組件。 Figure 6 is a block diagram of a basic software system 600 that can be used to control the operation of the computing device 500. The software system 600 and its components, including the connection methods, relationships and functions thereof, are only examples and are not intended to limit the execution of the exemplary embodiments. Other software systems suitable for implementing the exemplary embodiments may have different components, including components with different connections, relationships, and functions.

軟體系統600用於引導計算裝置500的運作。軟體系統600可儲存於系統記憶體(RAM)506及固定式儲存器(例如硬碟或快閃記憶體)510上,並包括核心或作業系統(OS)610。 The software system 600 is used to guide the operation of the computing device 500 . Software system 600 may be stored on system memory (RAM) 506 and fixed storage (such as hard disk or flash memory) 510 and includes a kernel or operating system (OS) 610.

作業系統610管理低階方面的電腦作業,包括管理程序的執行、記憶體分配、檔案輸入和輸出(I/O)以及裝置的輸入和輸出。以602A、602B、602C...602N(統稱為應用程式602)表示的一或多個應用程式可被「加載」(例如,從固定式儲存器510轉移到記憶體506)以供軟體系統600執行。用於軟體系統600上的應用程式或其他軟體亦可被儲存為一組可下載的電腦可執行指令,例如可從一網路位置(如網路伺服器、應用程式商店或其他線上服務)下載和安裝。 The operating system 610 manages low-level aspects of computer operations, including managing program execution, memory allocation, file input and output (I/O), and device input and output. One or more applications, represented by 602A, 602B, 602C...602N (collectively, applications 602), may be "loaded" (e.g., transferred from fixed storage 510 to memory 506) for use by software system 600 implement. Applications or other software used on software system 600 may also be stored as a downloadable set of computer-executable instructions, such as from a network location (such as a network server, application store or other online service) and installation.

軟體系統600包括圖形使用者介面(GUI)615,用於以圖形(例如「點擊」或「觸摸手勢」)方式接收使用者指令和資料。亦可反向由軟體系統 600根據來自作業系統610及/或應用程式602的指令,對前述輸入執行動作。使用者介面615也用於顯示來自作業系統610和應用程式602的操作結果,使用者可在系統或應用程式上提供額外輸入或終止對話(例如登出)。 The software system 600 includes a graphical user interface (GUI) 615 for receiving user instructions and data in a graphical (eg, "click" or "touch gesture") manner. It can also be reversed by the software system 600 performs actions on the aforementioned input according to instructions from the operating system 610 and/or the application 602. The user interface 615 is also used to display operation results from the operating system 610 and the application 602. The user can provide additional input or terminate the session (eg, log out) on the system or application.

作業系統610可直接在裝置500的裸硬體620(例如處理器504)上執行。另外,一超管理器或虛擬機器監視器(virtual machine monitor,VMM)630亦可安插於裸硬體620和作業系統610之間。在此配置中,虛擬機器監視器630可作為作業系統610和裝置500的裸硬體620之間的軟體「緩衝」或虛擬化層。 Operating system 610 may execute directly on bare hardware 620 (eg, processor 504) of device 500. In addition, a hypervisor or virtual machine monitor (VMM) 630 can also be installed between the bare hardware 620 and the operating system 610. In this configuration, virtual machine monitor 630 may serve as a software "buffer" or virtualization layer between operating system 610 and bare hardware 620 of device 500 .

虛擬機器監視器630實例化一或多個虛擬機器實例(「客體機」)並使之運行。每一客體機包括一「客體」作業系統(例如作業系統610),以及一或多個應用程式(例如應用程式602),其均經過設計以在客體作業系統上執行。虛擬機器監視器630使用虛擬操作平台展示客體作業系統,並管理客體作業系統的執行。 Virtual machine monitor 630 instantiates and runs one or more virtual machine instances ("guests"). Each guest machine includes a "guest" operating system (eg, operating system 610), and one or more applications (eg, application 602) that are designed to execute on the guest operating system. The virtual machine monitor 630 uses a virtual operating platform to display the guest operating system and manage the execution of the guest operating system.

在一些實例中,虛擬機器監視器630可允許客體作業系統以如同直接在裝置500的裸硬體620上運作的方式運行。在這類實例中,被配置為直接在裸硬體620上執行的相同版本客體作業系統也可在虛擬機器監視器630上執行,無需修改或重新配置。換句話說,在一些實例中,虛擬機器監視器630可為客體作業系統提供完全的硬體與CPU虛擬化技術。 In some examples, virtual machine monitor 630 may allow the guest operating system to run as if running directly on bare hardware 620 of device 500 . In such instances, the same version of the guest operating system configured to execute directly on bare hardware 620 may also execute on virtual machine monitor 630 without modification or reconfiguration. In other words, in some instances, virtual machine monitor 630 may provide full hardware and CPU virtualization technology for the guest operating system.

在其他實例中,客體作業系統可經特別設計或配置,以在虛擬機器監視器630上有效率地執行。在這類實例中,客體作業系統「認知」其在一虛擬機器監視器上執行。換句話說,在一些實例中,虛擬機器監視器630可為客體作業系統提供半虛擬化(para-virtualization)技術。 In other examples, the guest operating system may be specifically designed or configured to execute efficiently on virtual machine monitor 630. In such instances, the guest operating system "knows" that it is executing on a virtual machine monitor. In other words, in some instances, virtual machine monitor 630 may provide para-virtualization technology for the guest operating system.

以上描述的基本電腦硬體和軟體,係為了說明可用於實現示例性實施例的基本電腦構件而提出。然而,示例性實施例不一定受任何特定的運算環境或計算裝置配置所限。相反的,本發明所屬技術領域具通常知識者在閱讀上述揭示內容後,應可理解只要能夠支援示例性實施例中所述的特徵及功能,任何類型的系統架構或處理環境均可用於實現該等實施例。 The above description of basic computer hardware and software is presented for the purpose of illustrating the basic computer components that may be used to implement the exemplary embodiments. However, the exemplary embodiments are not necessarily limited to any particular computing environment or computing device configuration. On the contrary, after reading the above disclosure, a person with ordinary skill in the art to which the present invention belongs should understand that any type of system architecture or processing environment can be used to implement the features and functions described in the exemplary embodiments as long as it can support them. Examples.

8.0 本發明之其他面向 8.0 Other aspects of the invention

儘管上述說明書內容提及的部分圖式包含流程圖,且其中具有按順序顯示的步驟,然而該等步驟可按任何順序執行,並不限於流程圖中所示順序。此外,一些步驟可視情形選擇執行、可多次執行,及/或可由不同的構件執行。所示流程圖中的所有步驟、操作和功能,皆為了表示各實施例中使用專用電腦或一般電腦中的程式進行的操作。換句話說,揭示內容中的每個流程圖結合相關文字,可作為一演算法的全部或部分內容之指引、計劃或規範,該演算法用於對電腦進行程式編寫以執行所述功能。如一般所知,本發明所屬技術領域需要高技術水準方可實現,因此,所示流程圖及相關文字所傳達的資訊,係以本領域技藝人士針對程式、演算法及其實施方式進行交流時可預期的充分和詳細程度呈現。 Although some of the figures mentioned in the above description include flowcharts with steps shown in sequence, the steps can be performed in any order and are not limited to the order shown in the flowcharts. In addition, some steps may be optionally performed, may be performed multiple times, and/or may be performed by different components. All steps, operations, and functions in the flowchart shown are intended to represent operations performed in each embodiment using programs in a dedicated computer or a general computer. In other words, each flowchart in the disclosure, combined with the associated text, serves as a guide, plan, or specification of all or part of an algorithm for programming a computer to perform the described function. As is generally known, the technical field to which the present invention belongs requires a high technical level to be implemented. Therefore, the information conveyed in the flowcharts and related text shown is based on the exchange of programs, algorithms and implementation methods by persons skilled in the art. Presented with the fullness and level of detail that can be expected.

在上述說明書內容中,已參照許多具體細節描述了本發明的示例性實施例。然而,該等細節可能根據特定實施方式的要求,而在不同的實施方式中有所變化。因此,本發明的示例性實施例應以說明性而非限制性的意義看待。 In the foregoing description, exemplary embodiments of the invention have been described with reference to numerous specific details. However, these details may vary from implementation to implementation depending on the requirements of the particular implementation. Therefore, the exemplary embodiments of the present invention are to be regarded in an illustrative rather than a restrictive sense.

100:聯網電腦系統/系統 100: Networked computer systems/systems

102:網路 102:Internet

104:客戶端電腦 104:Client computer

106:伺服器電腦 106:Server computer

112:模型集成 112:Model integration

114:控制器 114:Controller

116:通知器 116: Notifier

118:監視器 118:Monitor

120:修改器 120:Modifier

130:資料儲存庫 130:Data repository

132:資料饋送資料庫 132: Data feed database

134:施工目標資料庫 134: Construction target database

136:模型配置資料庫 136:Model configuration database

138:訓練資料資料庫 138:Training data database

140:建議資料庫 140: Suggested database

Claims (20)

一種電腦實施方法,其包含:透過一伺服器裝置接收自一用戶裝置之一施工專案的一施工活動的一日程表請求,該日程表請求指明至少一施工目標;透過該伺服器裝置存取複數個輸入資料集,其中所述複數個輸入資料集包含來自一資料饋送資料庫的資料集,該資料饋送資料庫包含來自各種來源的複數個資料饋送,且其中各所述資料饋送包含資料區段,所述資料區段包括指示一資料類型的元資料,且其中所述複數個輸入資料集包含至少一攝影機饋送,其中該至少一攝影機饋送包含識別該至少一攝影機饋送的所有區段的標籤或元數據;使用新的訓練資料來訓練複數個神經網路機器學習模型集成,所述新的訓練資料包含與該施工專案有關的資料;透過該伺服器裝置將已訓練的複數個神經網路機器學習模型集成應用於該複數個輸入資料集中的每一者,以生成複數個中間資料集,所述複數個中間資料集各指明影響該施工專案的因素,其中所述已訓練的複數個神經網路機器學習模型集成中的每一個已訓練的神經網路機器學習模型集成根據各自的神經網路機器學習模型集成的功能目標來生成一中間資料集,所述功能目標來自與所述各自的神經網路機器學習模型集成的功能目標相關聯的所有區段中的特定區段;透過該伺服器裝置基於該複數個中間資料集,使用至少一個知識和語義圖表模型來判定任務資料,其中一分析聚合器使用一關聯分析器使每一個神經網路機器學習模型集成的各種輸出相關聯,以生成關聯資料,所述關聯資料被使用作為對該至少一個知識和語義圖表模型的輸入; 透過該伺服器裝置且從該任務資料中生成該施工活動的一日程表,該日程表會達成該至少一施工目標並且符合與一基準日程表相關的容許程度;以及透過該伺服器裝置而基於從該日程表請求中識別的該至少一施工目標來通知該日程表。 A computer-implemented method includes: receiving a schedule request for a construction activity of a construction project from a user device through a server device, the schedule request specifying at least one construction goal; accessing a plurality of data through the server device input data sets, wherein the plurality of input data sets include data sets from a data feed database that includes a plurality of data feeds from various sources, and wherein each of the data feeds includes a data segment , the data segments include metadata indicating a data type, and wherein the plurality of input data sets includes at least one camera feed, wherein the at least one camera feed includes tags identifying all segments of the at least one camera feed, or metadata; use new training data to train a plurality of neural network machine learning model ensembles, the new training data includes data related to the construction project; transfer the trained plurality of neural network machines through the server device An ensemble of learning models is applied to each of the plurality of input data sets to generate a plurality of intermediate data sets that each specify factors affecting the construction project, wherein the trained plurality of neural networks Each trained neural network machine learning model ensemble in the neural network machine learning model ensemble generates an intermediate data set based on the functional goals of the respective neural network machine learning model ensemble, the functional goals derived from the functional goals of the respective neural network machine learning model ensemble. A specific segment among all segments associated with the functional goal of the network machine learning model integration; through the server device, based on the plurality of intermediate data sets, at least one knowledge and semantic graph model is used to determine the task data, one of which analyzes The aggregator correlates various outputs of each neural network machine learning model ensemble using a correlation analyzer to generate correlation data that is used as input to the at least one knowledge and semantic graph model; Generate a schedule of the construction activity through the server device and from the task data, the schedule will achieve the at least one construction goal and comply with a tolerance associated with a baseline schedule; and through the server device based on The schedule is informed from the at least one construction target identified in the schedule request. 如請求項1之電腦實施方法,進一步包含:將一隨機模型應用於該複數個中間資料集,以判定影響該施工專案的該等因素的關聯資料;以及將該至少一個知識和語義圖表模型應用於該關聯資料與租戶資料,以生成該任務資料。 For example, the computer implementation method of claim 1 further includes: applying a stochastic model to the plurality of intermediate data sets to determine relevant data of the factors affecting the construction project; and applying the at least one knowledge and semantic graph model The associated data and tenant data are used to generate the task data. 如請求項2之電腦實施方法,進一步包含:接收有關該施工專案相關問題的回饋資料;使用該回饋資料修改該隨機模型;以及更新該施工專案的日程表。 For example, the computer implementation method of claim 2 further includes: receiving feedback data on issues related to the construction project; using the feedback data to modify the random model; and updating the schedule of the construction project. 如請求項3之電腦實施方法,其中該接收回饋資料包含:接收來自一施工現場的一即時攝影機饋送;從該即時攝影機饋送中判定與該施工專案有關的效率問題資料;以及從1效率問題資料中生成該回饋資料。 As claimed in claim 3, the computer implementation method, wherein the receiving feedback data includes: receiving a real-time camera feed from a construction site; determining efficiency problem data related to the construction project from the real-time camera feed; and obtaining efficiency problem data from the real-time camera feed. Generate this feedback information. 如請求項3之電腦實施方法,其中該回饋資料係經由一圖形使用者介面作為使用者輸入被接收。 The computer-implemented method of claim 3, wherein the feedback data is received as user input via a graphical user interface. 如請求項1之電腦實施方法,其中生成該日程表包含:基於該日程表,判定實際施工與預期施工之間的差異資料;以及使用該差異資料改進該日程表。 For example, the computer implementation method of claim 1, wherein generating the schedule includes: determining the difference data between actual construction and expected construction based on the schedule; and using the difference data to improve the schedule. 如請求項1之電腦實施方法,其中該日程表經由一圖形使用者介面、語音及訊息其中的至少一者表示。 The computer implementation method of claim 1, wherein the schedule is represented by at least one of a graphical user interface, voice and message. 如請求項1之電腦實施方法,其中該已訓練的複數個神經網路機器學習模型集成包含以下至少一者:一氣候分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析天氣模式;一結構分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析品質與設計;一品質分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析進度;一庫存分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析庫存;一法規模組,其經配置以基於要求,從該複數個輸入資料集的至少一輸入資料集中分析完工準時性;一全球事件影響模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析全球事件;一供應鏈分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析供貨與交貨;一設備健康和物聯網(IoT)指標分析模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析設備需求與採購因素;以及一勞工效率模組,其經配置以從該複數個輸入資料集的至少一輸入資料集中分析勞工可取得性與技能。 The computer-implemented method of claim 1, wherein the ensemble of trained neural network machine learning models includes at least one of the following: a climate analysis module configured to derive from at least one input of the plurality of input data sets A data set analyzes weather patterns; a structural analysis module configured to analyze quality and design from at least one input data set of the plurality of input data sets; a quality analysis module configured to analyze quality and design from the plurality of input data sets A centralized analysis of progress from at least one input data set of the plurality of input data sets; an inventory analysis module configured to analyze inventory from at least one input data set of the plurality of input data sets; a method group configured to, based on the requirements, from the At least one input data set of a plurality of input data sets analyzes completion on time; a global event impact module configured to analyze global events from at least one input data set of the plurality of input data sets; a supply chain analysis module , which is configured to analyze supply and delivery from at least one input data set of the plurality of input data sets; an equipment health and Internet of Things (IoT) indicator analysis module configured to analyze supply and delivery from the plurality of input data sets. at least one input data set analyzing equipment demand and purchasing factors; and a labor efficiency module configured to analyze labor availability and skills from at least one input data set of the plurality of input data sets. 一種非暫態電腦可讀儲存媒體,其儲存有一或多個經程式編寫的指令,當所述指令由一或多個計算裝置執行時會導致:透過一伺服器裝置接收自一用戶裝置之一施工專案的一施工活動的一日程表請求,該日程表請求指明至少一施工目標;透過該伺服器裝置存取複數個輸入資料集,其中所述複數個輸入資料集包含來自一資料饋送資料庫的資料集,該資料饋送資料庫包含來自各種來源的複數個資料饋送,且其中各所述資料饋送包含資料區段,所述資料區段包括指示一資料類型的元資料,且其中所述複數個輸入資料集中包含至少一攝影機饋送,其中該至少一攝影機饋送包含識別該至少一攝影機饋送的所有區段的標籤或元數據;使用新的訓練資料來訓練複數個神經網路機器學習模型集成,所述新的訓練資料包含與該施工專案有關的資料;透過該伺服器裝置將已訓練的複數個機器學習模型集成應用於該複數個輸入資料集中的每一者,以生成複數個中間資料集,所述複數個中間資料集各指明影響該施工專案的因素,其中所述已訓練的複數個神經網路機器學習模型集成中的每一個已訓練的神經網路機器學習模型集成根據各自的神經網路機器學習模型集成的功能目標來生成一中間資料集,所述功能目標來自與所述各自的神經網路機器學習模型集成的功能目標相關聯的所有區段中的特定區段;透過該伺服器裝置基於該等複數個中間資料集,使用至少一個知識和語義圖表模型來判定任務資料,其中一分析聚合器使用一關聯分析器使每一個神經網路機器學習模型集成的各種輸出相關聯,以生成關聯資料,所述關聯資料被使用作為對該至少一個知識和語義圖表模型的輸入; 透過該伺服器裝置且從該任務資料中生成該施工活動的一日程表,該日程表會達成該至少一施工目標並且符合與一基準日程表相關的容許程度;以及透過該伺服器裝置而基於從該日程表請求中識別的該至少一施工目標來通知該日程表。 A non-transitory computer-readable storage medium storing one or more programmed instructions that, when executed by one or more computing devices, result in: one received from a user device through a server device A schedule request for a construction activity of a construction project, the schedule request specifying at least one construction goal; accessing a plurality of input data sets through the server device, wherein the plurality of input data sets include data from a data feed database a data set, the data feed database includes a plurality of data feeds from various sources, and wherein each of said data feeds includes a data section, said data section includes metadata indicating a data type, and wherein said plurality of an input data set including at least one camera feed, wherein the at least one camera feed includes tags or metadata identifying all segments of the at least one camera feed; training a plurality of neural network machine learning model ensembles using the new training data, The new training data includes data related to the construction project; a plurality of trained machine learning models are integrated and applied to each of the plurality of input data sets through the server device to generate a plurality of intermediate data sets , each of the plurality of intermediate data sets indicates factors affecting the construction project, wherein each of the trained neural network machine learning model ensembles is based on its respective neural network machine learning model ensemble. A network machine learning model integrates functional targets to generate an intermediate data set from a specific segment among all segments associated with the functional targets integrated by the respective neural network machine learning models; through the The server device uses at least one knowledge and semantic graph model to determine the task data based on the plurality of intermediate data sets, wherein an analysis aggregator uses a correlation analyzer to correlate the various outputs of each neural network machine learning model integration , to generate associated data that is used as input to the at least one knowledge and semantic graph model; Generate a schedule of the construction activity through the server device and from the task data, the schedule will achieve the at least one construction goal and comply with a tolerance associated with a baseline schedule; and through the server device based on The schedule is informed from the at least one construction target identified in the schedule request. 如請求項9之非暫態電腦可讀儲存媒體,其中儲存有一或多個經程式編寫的指令,當該等指定由一或多個計算裝置執行時,進一步導致:將一隨機模型應用於該複數個中間資料集,以判定影響該施工專案的該等因素的關聯資料;以及將該至少一個知識和語義圖表模型應用於該關聯資料與租戶資料,以生成該任務資料。 The non-transitory computer-readable storage medium of claim 9, wherein one or more programmed instructions are stored therein, which, when executed by one or more computing devices, further results in: applying a stochastic model to the A plurality of intermediate data sets are used to determine related data of the factors affecting the construction project; and the at least one knowledge and semantic graph model is applied to the related data and tenant data to generate the task data. 如請求項10之非暫態電腦可讀儲存媒體,其中儲存有一或多個經程式編寫的指令,當該等指定由一或多個計算裝置執行時,進一步導致:接收有關該施工專案相關問題的回饋資料;使用該回饋資料修改該隨機模型;以及更新該施工專案的日程表。 If the non-transitory computer-readable storage medium of claim 10 stores one or more programmed instructions, when the instructions are executed by one or more computing devices, it further results in: receiving questions related to the construction project feedback data; use the feedback data to modify the random model; and update the schedule of the construction project. 如請求項11之非暫態電腦可讀儲存媒體,其中該接收回饋資料包含:接收來自一施工現場的一即時攝影機饋送;從該即時攝影機饋送中判定與該施工專案有關的效率問題資料;以及從該效率問題資料中生成該回饋資料。 The non-transitory computer-readable storage medium of claim 11, wherein the receiving feedback data includes: receiving a real-time camera feed from a construction site; determining efficiency issue data related to the construction project from the real-time camera feed; and The feedback data is generated from the efficiency problem data. 如請求項11之非暫態電腦可讀儲存媒體,其中該回饋資料係經由一圖形使用者介面作為使用者輸入被接收。 The non-transitory computer-readable storage medium of claim 11, wherein the feedback data is received as user input via a graphical user interface. 如請求項9之非暫態電腦可讀儲存媒體,其中生成該日程表包含:基於該日程表,判定實際施工與預期施工之間的差異資料;以及使用該差異資料改進該日程表。 For example, the non-transitory computer-readable storage medium of claim 9, wherein generating the schedule includes: determining the difference data between actual construction and expected construction based on the schedule; and using the difference data to improve the schedule. 如請求項9之非暫態電腦可讀儲存媒體,其中該日程表經由一圖形使用者介面、語音及訊息其中的至少一者表示。 The non-transitory computer-readable storage medium of claim 9, wherein the schedule is represented by at least one of a graphical user interface, voice and message. 一種計算系統,其包含:一或多個電腦系統,其包含一或多個硬體處理器及儲存媒體;儲存於該儲存媒體中的指令,當該計算系統執行該等指令時,會使得該計算系統執行:透過該伺服器裝置接收自一用戶裝置之一施工專案的一施工活動的一日程表請求,該日程表請求指明至少一施工目標;透過該伺服器裝置存取複數個輸入資料集,其中所述複數個輸入資料集包含來自一資料饋送資料庫的資料集,該資料饋送資料庫包含來自各種來源的複數個資料饋送,且其中各所述資料饋送包含資料區段,所述資料區段包括指示一資料類型的元資料,且其中所述複數個輸入資料集包含至少一攝影機饋送,其中該至少一攝影機饋送包含識別該至少一攝影機饋送的所有區段的標籤或元數據;使用新的訓練資料來訓練複數個神經網路機器學習模型集成,所述新的訓練資料包含與該施工專案有關的資料;透過該伺服器裝置將已訓練的複數個神經網路機器學習模型集成應用於該複數個輸入資料集中的每一者,以生成複數個中間資料集,所述複數個中間資料集各指明影響該施工專案的因素,其中所述已訓練的複數個神 經網路機器學習模型集成中的每一個已訓練的神經網路機器學習模型集成根據各自的神經網路機器學習模型集成的功能目標來生成一中間資料集,所述功能目標來自與所述各自的神經網路機器學習模型集成的功能目標相關聯的所有區段中的特定區段;透過該伺服器裝置基於該等複數個中間資料集,使用至少一個知識和語義圖表模型判定任務資料,其中一分析聚合器使用一關聯分析器使每一個神經網路機器學習模型集成的各種輸出相關聯,以生成關聯資料,所述關聯資料被使用作為對該至少一個知識和語義圖表模型的輸入;透過該伺服器裝置從該任務資料中生成該施工活動的一日程表,該日程表會達成該至少一施工目標並且符合與一基準日程表相關的容許程度;以及透過該伺服器裝置而基於從該日程表請求中識別的該至少一施工目標來通知該日程表。 A computing system, which includes: one or more computer systems, which includes one or more hardware processors and storage media; instructions stored in the storage medium, when the computing system executes the instructions, will cause the Computing system execution: receiving a schedule request for a construction activity for a construction project from a user device through the server device, the schedule request specifying at least one construction goal; accessing a plurality of input data sets through the server device , wherein the plurality of input data sets includes data sets from a data feed database that includes a plurality of data feeds from various sources, and wherein each of the data feeds includes a data segment, the data The segments include metadata indicating a data type, and wherein the plurality of input data sets includes at least one camera feed, wherein the at least one camera feed includes tags or metadata identifying all segments of the at least one camera feed; using Use new training data to train a plurality of neural network machine learning model integrations. The new training data includes data related to the construction project; integrate and apply the trained plurality of neural network machine learning models through the server device. In each of the plurality of input data sets, a plurality of intermediate data sets are generated, each of the plurality of intermediate data sets specifies factors affecting the construction project, wherein the trained plurality of gods Each trained neural network machine learning model ensemble in the network machine learning model ensemble generates an intermediate data set based on the functional goals of the respective neural network machine learning model ensemble, the functional goals coming from the respective neural network machine learning model ensemble. The neural network machine learning model integrates a specific segment among all segments associated with the functional goal; through the server device, based on the plurality of intermediate data sets, at least one knowledge and semantic graph model is used to determine the task data, wherein An analysis aggregator correlates the various outputs of each neural network machine learning model ensemble using a correlation analyzer to generate correlation data that is used as input to the at least one knowledge and semantic graph model; by The server device generates a schedule of the construction activity from the task data, the schedule will achieve the at least one construction goal and comply with a tolerance associated with a baseline schedule; and through the server device, based on the The schedule is informed by the at least one construction target identified in the schedule request. 如請求項16之計算系統,其中所述指令在由該計算系統執行時,會使得該計算系統進一步執行:將一隨機模型應用於該複數個中間資料集,以判定影響該施工專案的該等因素的關聯資料;以及將該至少一個知識和語義圖表模型應用於該關聯資料與租戶資料,以生成該任務資料。 Such as the computing system of claim 16, wherein the instructions, when executed by the computing system, will cause the computing system to further perform: apply a random model to the plurality of intermediate data sets to determine the factors affecting the construction project. associated data of factors; and applying the at least one knowledge and semantic graph model to the associated data and tenant data to generate the task data. 如請求項17之計算系統,其中所述指令在由該計算系統執行時,會使得該計算系統進一步執行:接收有關該施工專案相關問題的回饋資料;使用該回饋資料修改該隨機模型;以及 更新該施工專案的日程表。 For example, the computing system of claim 17, wherein the instructions, when executed by the computing system, will cause the computing system to further perform: receive feedback data on issues related to the construction project; use the feedback data to modify the stochastic model; and Update the schedule for this construction project. 如請求項18之計算系統,其中所述接收該回饋資料包含:接收來自一施工現場的一即時攝影機饋送;從該即時攝影機饋送中判定與該施工專案有關的效率問題資料;以及從該效率問題資料中生成該回饋資料。 The computing system of claim 18, wherein receiving the feedback data includes: receiving a real-time camera feed from a construction site; determining efficiency issue data related to the construction project from the real-time camera feed; and from the efficiency issue data. The feedback data is generated from the data. 如請求項16之計算系統,其中所述生成該日程表包含:基於該日程表,判定實際施工與預期施工之間的差異資料;以及使用該差異資料改進該日程表。 The computing system of claim 16, wherein generating the schedule includes: determining difference data between actual construction and expected construction based on the schedule; and using the difference data to improve the schedule.
TW111143737A 2021-11-18 2022-11-16 Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction TWI821019B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202163208881P 2021-11-18 2021-11-18
US63/208,881 2021-11-18
US17/683,858 2022-03-01
US17/683,858 US11531943B1 (en) 2021-11-18 2022-03-01 Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction

Publications (2)

Publication Number Publication Date
TW202322004A TW202322004A (en) 2023-06-01
TWI821019B true TWI821019B (en) 2023-11-01

Family

ID=87803797

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111143737A TWI821019B (en) 2021-11-18 2022-11-16 Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction

Country Status (1)

Country Link
TW (1) TWI821019B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116611708B (en) * 2023-06-02 2024-03-19 深圳市虎匠科技投资发展有限公司 Method and system for intelligent construction digital management

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7113915B1 (en) * 2004-04-09 2006-09-26 Susanne Montemayor System for scheduling and monitoring a project
US20080313110A1 (en) * 2007-06-13 2008-12-18 International Business Machines Corporation Method and system for self-calibrating project estimation models for packaged software applications
US20140122143A1 (en) * 2012-10-30 2014-05-01 Trimble Navigation Limited Optimizing resource assignment
US8775229B1 (en) * 2006-12-07 2014-07-08 Nvidia Corporation Method of correcting a project schedule
CN110140138A (en) * 2017-01-12 2019-08-16 谷歌有限责任公司 The determination of the content-data of local device, transimission and storage
US20190286985A1 (en) * 2018-03-14 2019-09-19 Bliot Oy Real-time Monitoring
CN110383309A (en) * 2017-02-28 2019-10-25 微软技术许可有限责任公司 Utilize location information, the Work Process Management of timeliness information and biological information
US10572848B2 (en) * 2014-12-16 2020-02-25 Oracle International Corporation System and method for intelligent project schedule forecasting
US20200410425A1 (en) * 2019-09-14 2020-12-31 Ron Zass Generating tasks from images of construction sites
US20210073694A1 (en) * 2019-09-11 2021-03-11 REQpay Inc. Construction management method, system, computer readable medium, computer architecture, computer-implemented instructions, input-processing-output, graphical user interfaces, databases and file management
US20210081859A1 (en) * 2017-06-01 2021-03-18 Autodesk, Inc. Architecture, engineering and construction (aec) risk analysis system and method
US11017335B1 (en) * 2013-03-05 2021-05-25 Pma Technologies, Llc Graphical schedule risk analyzer

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7113915B1 (en) * 2004-04-09 2006-09-26 Susanne Montemayor System for scheduling and monitoring a project
US8775229B1 (en) * 2006-12-07 2014-07-08 Nvidia Corporation Method of correcting a project schedule
US20080313110A1 (en) * 2007-06-13 2008-12-18 International Business Machines Corporation Method and system for self-calibrating project estimation models for packaged software applications
US20140122143A1 (en) * 2012-10-30 2014-05-01 Trimble Navigation Limited Optimizing resource assignment
US11017335B1 (en) * 2013-03-05 2021-05-25 Pma Technologies, Llc Graphical schedule risk analyzer
US10572848B2 (en) * 2014-12-16 2020-02-25 Oracle International Corporation System and method for intelligent project schedule forecasting
CN110140138A (en) * 2017-01-12 2019-08-16 谷歌有限责任公司 The determination of the content-data of local device, transimission and storage
CN110383309A (en) * 2017-02-28 2019-10-25 微软技术许可有限责任公司 Utilize location information, the Work Process Management of timeliness information and biological information
US20210081859A1 (en) * 2017-06-01 2021-03-18 Autodesk, Inc. Architecture, engineering and construction (aec) risk analysis system and method
US20190286985A1 (en) * 2018-03-14 2019-09-19 Bliot Oy Real-time Monitoring
US20210073694A1 (en) * 2019-09-11 2021-03-11 REQpay Inc. Construction management method, system, computer readable medium, computer architecture, computer-implemented instructions, input-processing-output, graphical user interfaces, databases and file management
US20200410425A1 (en) * 2019-09-14 2020-12-31 Ron Zass Generating tasks from images of construction sites

Also Published As

Publication number Publication date
TW202322004A (en) 2023-06-01

Similar Documents

Publication Publication Date Title
US11531943B1 (en) Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction
JP7043512B2 (en) A new autonomous artificial intelligence system that predicts pipe leaks
Pan et al. A BIM-data mining integrated digital twin framework for advanced project management
US20210263945A1 (en) Systems, methods, and devices for an enterprise ai and internet-of-things platform
US20200296053A1 (en) Instant notification of load balance and resource scheduling based on resource capacities and event recognition
US20170316324A1 (en) Computerized Event-Forecasting System and User Interface
US20210110288A1 (en) Adaptive model insights visualization engine for complex machine learning models
JP2022510569A (en) Mesh-based event broker for distributed computing
WO2023079139A1 (en) Automated standardized location digital twin and location digital twin method factoring in dynamic data at different construction levels, and system thereof
US11036474B2 (en) Automating service maturity analysis and estimation
US10860961B2 (en) Automatic computer prediction of resource attrition
US20210294665A1 (en) Rule-based assignment of event-driven application
Leng et al. Towards resilience in Industry 5.0: A decentralized autonomous manufacturing paradigm
TWI821019B (en) Intelligence driven method and system for multi-factor optimization of schedules and resource recommendations for smart construction
US20230418958A1 (en) Scalable, data-driven digital marketplace providing a standardized secured data system for interlinking sensitive risk-related data, and method thereof
US20230281358A1 (en) System and method for manufacture and customization of construction assemblies in a computing environment
JP7267281B2 (en) System, computer executable method and computer program for orchestration engine blueprint aspect for hybrid cloud configuration
US20230267400A1 (en) Artificially intelligent warehouse management system
WO2023167912A1 (en) System and method for creation of a project manifest in a computing environment
US20230140828A1 (en) Machine Learning Methods And Systems For Cataloging And Making Recommendations Based On Domain-Specific Knowledge
Agarwal et al. Intelligent agents
US20220318711A1 (en) Automated supply chain demand forecasting
US20240086742A1 (en) Multi-station decision network
US11769093B2 (en) Systems and methods for determining path solutions associated with a supply chain network
US11704174B1 (en) Prediction and automatic performance of computer-related activities