METHODS AND APPARATUS FOR ARTIFICIAL INTELLIGENCE BASED CONSTRUCTION PLAN TAKEOFF AND ESTIMATING VIA A SERVER SYSTEM COMMUNICATING WITH A CLIENT DEVICE
A server system in communication with a client device generates takeoff quantities and estimating information from a digital design plan. The server system presents an interactive user interface displaying the design plan with an overlay including boundaries, line segments, vertices, and polygons. An artificial intelligence engine analyzes the plan by generating pixel patterns to identify features and associate a scale. The server system is capable of generating estimating quantities including count quantities, area quantities, and length quantities as well as maintenance execution plans for building and landscaping components. The server system causes display of estimation information in a table and may calculate cost values using user-defined parameters and vendor pricing. The system further supports automated answers to user questions by referencing stored annotations, component data, and related documentation.
1 . A server system for generating takeoff quantities and an estimate from a design plan, the server system comprising:
at least one processor and at least one memory storing instructions that, when executed, cause the server system to: communicate with a client device to present, on the client device, an interactive user interface including a reproduction of a design plan and an overlay comprising at least one of boundaries, line segments, vertices, or polygons;
receive, from the client device, a two-dimensional reference corresponding to the design plan; operate an artificial intelligence engine to analyze the two-dimensional reference by generating pixel patterns and identifying one or more features represented in the design plan; associate a scale with the design plan;
generate estimating quantities for the design plan, the estimating quantities comprising at least one of (i) an area quantity for a bounded region, (ii) a length quantity for a linear feature, or (iii) a count quantity for a recognized fixture; and
cause display, at the client device, estimation information based on the estimating quantities.
2 . The server system of claim 1 , wherein the instructions further cause the server system to generate a region view in which a plurality of regions are displayed using at least one of hatch representations or color-filled areas derived from the two-dimensional reference.
3 . The server system of claim 1 , wherein the instructions further cause the server system to classify at least one boundary segment as at least one of an interior wall segment, an exterior wall segment, or a demising wall segment, and to associate an indication of a classification with the at least one boundary segment in the interactive user interface.
4 . The server system of claim 1 , wherein the instructions further cause the server system to generate a table including estimation variables and associated values, the estimation variables including at least a work quantity and a line-item cost.
5 . The server system of claim 1 , wherein the instructions further cause the server system to update a materials list and a cost estimation responsive to receiving, from the client device, a user modification of at least one boundary, line segment, or polygon in the interactive user interface.
6 . The server system of claim 1 , wherein the instructions further cause the server system to receive data from at least one of a building management system, an Internet of Things sensor, or a camera associated with a physical structure, and to associate metadata derived from the received data with at least one dynamic component represented in the design plan.
7 . The server system of claim 6 , wherein the instructions further cause the server system to generate a maintenance execution plan for a selected dynamic component based on the associated metadata, wherein the maintenance execution plan includes at least one of required materials, labor allocation, estimated repair duration, or associated costs.
8 . The server system of claim 7 , wherein the instructions further cause the server system to maintain a maintenance log storing at least one of a repair date, a component identifier, a location identifier, a quantity replaced or repaired, a part used, a vendor identifier, or a cost.
9 . The server system of claim 7 , wherein the instructions further cause the server system to store the maintenance execution plan for activities related to landscaping.
10 . The server system of claim 1 , wherein the instructions further cause the server system to provide, via the interactive user interface, an automated answer to a user question directed to a design element or an annotation by applying natural language processing to the user question and referencing at least one of an annotation database, a component database, or documentation associated with the design plan.
11 . The server system of claim 1 , wherein identifying the one or more features comprises detecting and counting a plurality of symbols in the design plan and generating a count quantity based on the plurality of symbols.
12 . The server system of claim 11 , wherein the plurality of symbols comprise at least one of planting symbols, irrigation symbols, or electrical symbols.
13 . The server system of claim 1 , wherein generating the estimating quantities comprises identifying a hatch pattern in the design plan and calculating, as the area quantity, a square footage associated with the hatch pattern.
14 . The server system of claim 1 , wherein generating the estimating quantities comprises identifying a line feature in the design plan and calculating, as the length quantity, a total linear footage associated with the line feature.
15 . The server system of claim 1 , wherein operating the artificial intelligence engine comprises applying optical character recognition to text in the design plan and determining, from the text, at least one quantity associated with an item depicted in the design plan.
16 . The server system of claim 15 , wherein causing the display of the estimation information comprises causing display of a table including (i) the estimating quantities and (ii) at least one cost value calculated from the estimating quantities.
17 . The server system of claim 16 , wherein the instructions further cause the server system to apply at least one user-defined parameter to calculate the at least one cost value from at least one of the area quantity, the length quantity, or the count quantity.
18 . The server system of claim 1 , wherein the instructions further cause the server system to determine whether the two-dimensional reference corresponds to a first version of the design plan or a second version of the design plan and to generate, for display in the interactive user interface, an indication of at least one change between the first version and the second version.
19 . The server system of claim 1 , wherein the instructions further cause the server system to identify a legend in the design plan that defines at least one symbol and to associate the at least one symbol with an item type used to generate at least one of the estimating quantities.
20 . The server system of claim 1 , wherein the instructions further cause the server system to obtain vendor pricing for an item associated with at least one of the estimating quantities and to cause display, in the interactive user interface, of a vendor comparison interface including pricing from a plurality of vendors.