US20210150442A1 - Generating building designs that optimize productivity of the building - Google Patents

Generating building designs that optimize productivity of the building Download PDF

Info

Publication number
US20210150442A1
US20210150442A1 US17/098,214 US202017098214A US2021150442A1 US 20210150442 A1 US20210150442 A1 US 20210150442A1 US 202017098214 A US202017098214 A US 202017098214A US 2021150442 A1 US2021150442 A1 US 2021150442A1
Authority
US
United States
Prior art keywords
workstation
building
location
generating
workstations
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
US17/098,214
Inventor
David Benjamin
Damon Lau
James Stoddart
Lorenzo Villaggi
Rui Wang
Lindsey WIKSTROM
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Autodesk Inc
Original Assignee
Autodesk Inc
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
Application filed by Autodesk Inc filed Critical Autodesk Inc
Priority to US17/098,214 priority Critical patent/US20210150442A1/en
Priority to PCT/US2020/060861 priority patent/WO2021101876A1/en
Priority to EP20824745.2A priority patent/EP4062358A1/en
Priority to CN202080080091.8A priority patent/CN114787852A/en
Publication of US20210150442A1 publication Critical patent/US20210150442A1/en
Assigned to AUTODESK, INC. reassignment AUTODESK, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BENJAMIN, DAVID, WIKSTROM, LINDSEY, WANG, RUI, Lau, Damon, STODDART, JAMES, VILLAGGI, LORENZO
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/13Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/18Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/28Design optimisation, verification or simulation using fluid dynamics, e.g. using Navier-Stokes equations or computational fluid dynamics [CFD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06Q10/047Optimisation of routes or paths, e.g. travelling salesman problem
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • G06Q10/06375Prediction of business process outcome or impact based on a proposed change
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06395Quality analysis or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/067Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/08Construction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/16Real estate
    • G06Q50/163Property management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/16Real estate
    • G06Q50/165Land development
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/02CAD in a network environment, e.g. collaborative CAD or distributed simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/04Constraint-based CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/02Reliability analysis or reliability optimisation; Failure analysis, e.g. worst case scenario performance, failure mode and effects analysis [FMEA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Definitions

  • the present invention relates generally to computer science and computer-aided design and, more specifically, to computer-implemented techniques for generating building designs that optimize productivity of the building.
  • the layout of a building affects the overall of the productivity of the building. For example, the placement of workstations, supplies, corridors, and tracks within the building affect how building workers navigate the building while performing tasks. Additionally, the building may be used to create multiple components, and building operations may include different schedules, work shifts, and tasks, which result in complex flows of building personnel and parts.
  • simulation methods such as productivity simulation, that are incorporated into computer-aided design (CAD) software are typically used by a designer to model and simulate airflow and heat transfer of the building prior to construction. In this way, the designer can assess the effectiveness of a layout in terms of productivity of the building.
  • CAD computer-aided design
  • each layout must be designed and implemented before productivity can be measured. Changes to productivity caused by adjustments to the layout or by different layouts cannot be determined until adjustments to the layout or a new layout has been implemented. If a new or modified layout results in a decrease in productivity, the decrease is not detected until after the new or modified layout has already been implemented, which is undesirable given the amount of time and effort taken to implement a building layout. In addition, unless each change to the layout is small or incremental, determining which changes to which features of the layout resulted in an increase or decrease in productivity is difficult to determine. As a result, the building layouts industrial buildings generated using conventional CAD software typically fail to provide optimal levels of productivity and efficiency for those buildings.
  • One embodiment of the present application sets forth a computer-implemented method for measuring productivity in buildings and workplaces.
  • the method includes receiving workstation data for a plurality of workstations for the building and operation data for a plurality of operations for the building; generating a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation; generating, for each operation of the plurality of operations, a respective productivity value based on the workstation data, the operation data, and the locations of the plurality of workstations; and calculating, based on the productivity values of the plurality of operations, one or more overall productivity values associated with the building layout.
  • At least one technical advantage of the disclosed techniques relative to the prior art is that the disclosed techniques can be incorporated into a CAD application to enable the CAD application to automatically explore a design space to identify building layouts that optimize productivity of the building. Accordingly, with the disclosed techniques, a CAD application can generate a substantially larger number of building designs that, for example, are optimized for productivity in the specific function of the building, relative to a conventional CAD application. This functionality, which is not available in conventional CAD applications, increases the likelihood that an optimal layout design can be automatically generated and identified for a given building design.
  • FIG. 1 is a schematic diagram illustrating a computing system configured to implement one or more aspects of the present disclosure.
  • FIG. 2 is a more detailed illustration of the database and productivity calculation engine of FIG. 1 , according to various embodiments of the present disclosure.
  • FIG. 3 is a flowchart of method steps for productivity calculation performed by the productivity calculation engine of FIG. 1 , according to various embodiments of the present disclosure.
  • FIG. 4 is a flowchart of method steps for layout generation performed by the productivity calculation engine of FIG. 1 , according to various embodiments of the present disclosure.
  • FIG. 5 is a flowchart of method steps for operation productivity and overall productivity calculation performed by the productivity calculation engine of FIG. 1 , according to various embodiments of the present disclosure.
  • FIG. 1 illustrates a computing device 100 configured to implement one or more aspects of the present disclosure.
  • computing device 100 includes an interconnect (bus) 112 that connects one or more processing units 102 , an input/output (I/O) device interface 104 coupled to one or more input/output (I/O) devices 108 , memory 116 , a storage 114 , and a network interface 106 .
  • bus interconnect
  • I/O input/output
  • I/O input/output
  • Computing device 100 includes a desktop computer, a laptop computer, a smart phone, a personal digital assistant (PDA), tablet computer, or any other type of computing device configured to receive input, process data, and optionally display images, and is suitable for practicing one or more embodiments.
  • Computing device 100 described herein is illustrative and that any other technically feasible configurations fall within the scope of the present disclosure.
  • Processing unit(s) 102 includes any suitable processor implemented as a central processing unit (CPU), a graphics processing unit (GPU), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), an artificial intelligence (AI) accelerator, any other type of processing unit, or a combination of different processing units, such as a CPU configured to operate in conjunction with a GPU.
  • processing unit(s) 102 may be any technically feasible hardware unit capable of processing data and/or executing software applications.
  • the computing elements shown in computing device 100 may correspond to a physical computing system (e.g., a system in a data center) or may be a virtual computing instance executing within a computing cloud.
  • I/O devices 108 include devices capable of providing input, such as a keyboard, a mouse, a touch-sensitive screen, and so forth, as well as devices capable of providing output, such as a display device. Additionally, I/O devices 108 may include devices capable of both receiving input and providing output, such as a touchscreen, a universal serial bus (USB) port, and so forth. I/O devices 108 may be configured to receive various types of input from an end-user (e.g., a designer) of computing device 100 , and to also provide various types of output to the end-user of computing device 100 , such as displayed digital images or digital videos or text. In some embodiments, one or more of I/O devices 108 are configured to couple computing device 100 to a network 110 .
  • I/O devices 108 are configured to couple computing device 100 to a network 110 .
  • Network 110 includes any technically feasible type of communications network that allows data to be exchanged between computing device 100 and external entities or devices, such as a web server or another networked computing device.
  • network 110 may include a wide area network (WAN), a local area network (LAN), a wireless (WiFi) network, and/or the Internet, among others.
  • WAN wide area network
  • LAN local area network
  • WiFi wireless
  • Storage 114 includes non-volatile storage for applications and data, and may include fixed or removable disk drives, flash memory devices, and CD-ROM, DVD-ROM, Blu-Ray, HD-DVD, or other magnetic, optical, or solid-state storage devices.
  • Productivity calculation engine 118 and database 120 may be stored in storage 114 and loaded into memory 116 when executed.
  • Memory 116 includes a random-access memory (RAM) module, a flash memory unit, or any other type of memory unit or combination thereof.
  • Processing unit(s) 102 , I/O device interface 104 , and network interface 106 are configured to read data from and write data to memory 116 .
  • Memory 116 includes various software programs that can be executed by processor(s) 102 and application data associated with said software programs, including productivity calculation engine 118 and database 120 .
  • Productivity calculation engine 118 and database 120 are described in further detail below with respect to FIG. 2 .
  • FIG. 2 is a more detailed illustration of productivity calculation engine 118 and database 120 of FIG. 1 , according to various embodiments of the present disclosure.
  • productivity calculation engine 118 includes, without limitation, layout generation module 220 , analysis graph generation module 222 , path generation module 224 , simulation module 226 , and layout productivity values 228 .
  • Productivity calculation engine 118 automatically calculates one or more productivity values associated with a particular layout of a building, based on data describing the building and building operations. Each productivity value indicates an estimated measurement of the productivity of one or more operations when the one or more operations are performed in the building using the particular layout.
  • productivity calculation engine 118 is part of an application for designing or optimizing layouts of buildings such as buildings or other workplaces. In other embodiments, productivity calculating engine 118 is a separate application or tool from an application that is used to design or optimize layouts of buildings or other workplaces.
  • Productivity calculation engine 118 may receive a building information generated by another application and generate productivity values based on the received building layout.
  • productivity calculation engine 118 may receive a 3 D model of a building and generate one or more productivity values based on the 3 D model of the building and information describing operations performed in the building. Additionally, productivity calculation engine 118 may provide the one or more productivity values to a user through a graphical user interface, or to other applications for further analysis of the building and the building layout.
  • productivity calculation engine 118 obtains data describing the building, operations of the building, and other data that may be used by productivity calculation engine 118 to calculate productivity of the building from database 120 .
  • database 120 includes, without limitation, operation data 210 , workstation data 212 , and geometry data 214 .
  • Operation data 210 includes data describing one or more operations of the building.
  • data describing an operation may include data indicating workstations, operators, personnel, schedules, zones, positions, tools, storage facilities, parts, materials, equipment, transport requirements or restrictions, or other elements and features associated with the operation.
  • the data describing the operation may include data describing the elements and features associated with the operation, such as weights of parts and materials associated with the operation.
  • the data describing an operation includes data describing a workflow of the operation.
  • the data describing the workflow of the operation indicates the steps taken when performing the operation. Additionally, in some embodiments, the data describing the workflow of the operation indicates an order in which workstations, tools, equipment, and materials are accessed by workers when performing the steps of the operation. Additionally, in some embodiments, the data describing the workflow of the operation may indicate an amount of time spent when performing each step of the operation.
  • each operation is associated with a plurality of operation tasks.
  • the data describing an operation includes data indicating the plurality of operation tasks. Additionally, in some embodiments, the data describing the operation includes data describing the plurality of operation tasks.
  • data describing an operation task may include data indicating the operation associated with the task, workstations, operators, personnel, schedules, zones, positions, tools, storage facilities, parts, materials, equipment, transport requirements or restrictions, or other elements and features associated with the operation task.
  • the data describing the operation task may include data describing the elements and features associated with the operation task, such as weights of parts and materials associated with the operation task.
  • the data describing an operation task includes data describing a workflow of the operation task.
  • the data describing the workflow of the operation task indicates the steps taken when performing the operation task. Additionally, in some embodiments, the data describing the workflow of the operation task indicates an order in which workstations, tools, equipment, and materials are accessed by workers when performing the steps of the operation task. Additionally, in some embodiments, the data describing the workflow of the operation may indicate an amount of time spent when performing each step of the operation.
  • Workstation data 212 includes data describing one or more workstations or workspaces of the building.
  • data describing a workstation may include data indicating one or more operations associated with the workstation, one or more operation tasks associated with the workstation, dimensions of the workstation, a shape of the workstation, or other information related to the workstation.
  • the data describing a workstation or workspace includes data describing location restrictions for the workstation or workspace.
  • a location restriction indicates that the location of the workstation or workspace is dependent on the location or placement of other workspaces, workstations, tools or materials, storage facilities, transport, or other elements of the building.
  • the location restriction may indicate that the workstation or workspace should be adjacent to the element, within a certain distance of the element, within the same zone or area of the building as the element, within a certain configuration with the element, or other location-based requirements.
  • Geometry data 214 includes data describing the building and/or site in which the layout is placed.
  • the data describing a building may include data indicating a size of the building, a shape of the building, a footprint of the building, an orientation of the building structural elements of the building, fixed equipment within the building and locations of the fixed equipment, and infrastructure of the building such as loading docks, entrances, exits, and mechanical systems.
  • the data describing a site may include data indicating a size of the site, a shape of the site, an orientation of the site, fixed equipment within the site and locations of the fixed equipment, elevation(s) of the site, restriction(s) on the site, and infrastructure of the site such as roads and paths.
  • geometry data 214 includes a 3 D model of the building and/or the site.
  • geometry data 214 includes a layout indicating locations of workstations or workspaces within the building.
  • the layout may be a layout that was generated by productivity calculation engine 118 , a layout generated by another application or tool, or may be a layout designed by a user.
  • geometry data 214 includes a 3 D model of the building, and the interior of the 3 D model includes workstations and workspaces within the building.
  • productivity calculation engine 118 generates the layout for the building based on the information describing the building.
  • layout generation module receives operation data 210 and workstation data 212 , and generates a layout 230 .
  • Layout 230 indicates locations within a building, such as a building, for a plurality of workstations or workspaces of the building.
  • layout 230 also indicates locations within the building of other rooms or elements of the building, such as storage facilities, tools, supplies, entrances, exits, elevators, stairs, material transport paths or structures, or other rooms or elements used by the plurality of operations.
  • generating the layout 230 is based on a pre-defined building geometry.
  • geometry data 214 may include data indicating the size and shape of a building.
  • geometry data 214 may include a 3 D model or floorplan of the building.
  • Layout generation module 220 receives geometry data 214 and determines locations for the plurality of workstations within the boundaries of the building indicated by the geometry data 214 .
  • generating the layout 230 is based on a pre-defined site geometry.
  • geometry data 214 may include data indicating the size and shape of a site.
  • geometry data 214 may include a 3 D model of the site or a site plan for the site.
  • Layout generation module 220 receives geometry data 214 and determines locations for the plurality of workstations within the boundaries of the site indicated by the geometry data 214 .
  • generating the layout 230 includes generating geometry data for the building.
  • the geometry data for the building may include data indicating a size and shape of the building, exterior walls of the building, interior walls of the building such as walls of workstations and other rooms, and sizes and shapes of pathways within the building such as stairs, transport paths, corridors, and hallways.
  • layout generation module 220 may place exterior walls of the building around the plurality of workstations and place interior walls and pathways between the workstations.
  • generating the layout 230 includes determining one or more location restrictions for a workstation and determining a location of the workstation based on the one or more location restrictions.
  • Each location restriction indicates that the location of the workstation depends on the location or placement of another workspace, workstation, particular tools or materials, storage facility, transport, or other element of the building. Additionally, the location restriction may indicate that the workstation should be adjacent to the element, within a certain distance of the element, within the same zone or area of the building as the element, within a certain configuration with the element, or other location-based requirements.
  • determining the one or more location restrictions for the workstation includes determining, based on workstation data 212 , whether the workstation is associated with any location restrictions. If the workstation is associated with a location restriction, then layout generation module 220 determines a location of the workstation based on the location of the element indicated by the location restriction and the location-based requirement indicated by the location restriction.
  • layout generation module 220 selects a first workstation from the plurality of workstations.
  • Layout generation module 220 determines a location for the first workstation. In some embodiments, determining a location for the first workstation is based on one or more of: the size and shape of the first workstation, the size and shape of the building, and the size and shape of the site. In some embodiments, the location for the first workstation may be selected randomly. For example, the location for the first workstation may be any available location within the building or site. In some embodiments, the location of the first workstation is selected from one or more pre-determined or pre-configured locations.
  • layout generation module 220 may always select the top-right corner of the building as the location for the first workstation.
  • each corner of the building may be a potential location for the first workstation, and layout generation module 220 selects one of the corners of the building as the location for the first workstation.
  • layout generation module 220 determines an orientation of the first workstation. In some embodiments, determining an orientation for the first workstation is based on one or more of: the size and shape of the first workstation, the size and shape of the building, and the size and shape of the site. In some embodiments, the orientation for the first workstation may be selected randomly. For example, the orientation for the first workstation may be any direction where the access point or entrance to the workstation does not face a wall or other obstruction, or is a sufficient distance from a wall or other obstruction for a worker to access or enter the workstation. In some embodiments, the orientation of the first workstation is selected from one or more pre-determined or pre-configured orientations. For example, if the first workstation is located against a wall of the building, layout generation module 220 may always orient the first workstation so that the access point or entrance of the building is facing away from the wall.
  • layout generation module 220 determines whether locations of any additional workstations depend on the location of the first workstation. In response to determining that locations of one or more additional workstations depend on the location of the first workstation, layout generation module 220 determines a respective location for each additional workstation of the one or more additional workstations based on the location of the first workstation.
  • determining whether locations of any additional workstations depend on the location of the first workstation includes determining if any workstations are associated with a location restriction that specifies the first workstation. In response to determining that a second workstation is associated with a location restriction that specifies the first workstation, layout generation module 220 determines a location for the second workstation based on the location restriction and the location of the first workstation. Additionally, in some embodiments, layout generation module 220 may determine the location for the second workstation based on any additional location restrictions associated with the second workstation. If the second workstation is associated with location restrictions that specify other workstations whose location has not been determined, layout generation module 220 may determine the location for the second workstation after locations have been determined for the other workstations.
  • determining whether locations of any additional workstations depend on the location of the first workstation includes determining if any workstations are associated with the same operation, operation category, or operation task as the first workstation.
  • layout generation module 220 determines a location for the second workstation based on the location of the first workstation. For example, workstations associated with the same operation, operation category, or operation task may be placed near each other in the layout. Additionally, in some embodiments, layout generation module 220 determines the location for the second workstation based on data describing the operation, operation category, or operation task. For example, the location of the second workstation may be based on an order in which the second workstation is accessed by an operation or operation task workflow, relative to the first workstation and other workstations used by the operation or operation task workflow.
  • layout generation module 220 determines a location for the first workstation and any additional workstations
  • layout generation module 220 selects a next workstation from any remaining workstations whose locations have not been determined.
  • Layout generation module 220 determines a location for the next workstation and any additional workstations whose locations depend on the location of the next workstation. The above may be repeated until a respective location has been determined for all workstations of the plurality of workstations.
  • Analysis graph generation module 222 receives layout 230 , operation data 210 , and workstation data 212 , and generates an analysis graph 240 .
  • Analysis graph 240 comprises a plurality of nodes and a plurality of edges connecting the nodes. Each node of the plurality of nodes corresponds to a location of a workstation indicated by the layout. Additionally, in some embodiments, the analysis graph may include one or more nodes that correspond to the locations of other elements of the building layout such as workstation access points, tool and supply storage facilities, and elevators. Each edge of the graph corresponds to a pathway connecting two workstations, such as a hallway, corridor, stairway, or other transport path.
  • each node of the plurality of nodes is associated with data describing the corresponding workstation or other element of the building layout.
  • data describing a workstation or building element may include data indicating the workstation or building element that corresponds to the node, one or more operations associated with the workstation or building element, one or more operation tasks associated with the workstation or building element, or other information related to the workstation or building element.
  • each edge of the plurality of edges is associated with data describing the corresponding pathway.
  • data describing a pathway may include data indicating the pathway that corresponds to the edge, a length of the pathway, a width of the pathway, a height of the pathway, if the pathway is a transport path a component the transport path is configured to transport, or other information related to the pathway.
  • the data describing the pathway may include data indicating an angle of the turn.
  • Path generation module 224 receives analysis graph 240 and operation data 210 , and generates a plurality of paths 250 .
  • each path 250 corresponds to a respective operation of the one or more operations.
  • the path corresponding to an operation indicates, for the operation, a path through the building that may be traveled by a worker while the worker performs the operation.
  • each operation is associated with a plurality of operation task.
  • Each path corresponds to a respective operation task of the one or more operations.
  • the path corresponding to an operation task indicates, for the operation task, a path through the building that may be traveled by a worker while the worker performs the operation task.
  • generating a path 250 for an operation or operation task is based on the analysis graph and the workstations used by the operation or operation task.
  • Path generation module 224 determines, based on the operation data 210 , one or more workstations used by the operation or operation task.
  • Path generation module 224 calculates a shortest path through the analysis graph 240 that includes the nodes corresponding to the one or more workstations. Additionally, in some embodiments, path generation module 224 determines an order in which the workstations are accessed by workers when performing steps of the operation or operation task. Calculating the shortest path through the analysis graph 240 includes determining the shortest path that traverses the nodes corresponding to the one or more workstations in the order in which the one or more workstations are accessed by workers.
  • generating a path 250 for an operation or operation task further includes determining, based on the operation data 210 , one or more elements of the building, such as workstation access points, tool or supply storage facilities, equipment, materials, or elevators, that are used by the operation or operation task.
  • Path generation module 224 calculates the shortest path through the analysis graph 240 that includes the one or more elements of the building and the one or more workstations. Additionally, in some embodiments, path generation module 224 determines an order in which the workstations and building elements are accessed by workers when performing steps of the operation or operation task.
  • Calculating the shortest path through the analysis graph 240 includes determining the shortest path that traverses the nodes corresponding to the one or more workstations and the one or more elements of the building in the order in which the one or more workstations and the one or more elements of the building are accessed by workers.
  • generating a path 250 for an operation or operation task further includes determining, based on the operation data 210 , one or more transport requirements or restrictions associated with the operation or operation task.
  • a transport requirement or restriction may indicate that, for a particular step of the operation or operation task, a particular transport path must be used.
  • the transport requirement or restriction may indicate that, for the particular step, corridors and hallways must be greater than a specified width, greater than a specified height, or cannot include turns smaller than a specified number of degrees.
  • Calculating the shortest path through the analysis graph 240 includes determining the shortest path that follows the one or more transport requirements or restrictions associated with the operation or operation task.
  • Simulation module 226 receives the plurality of paths 250 and generates one or more layout productivity values 228 for the layout of the building.
  • Each layout productivity value 228 indicates an estimated measurement of the productivity of one or more operations when the one or more operations are performed in the building using the particular layout.
  • each layout productivity value 228 corresponds to a respective operation of one or more operations of the building. Generating the layout productivity value 228 includes determining a path 250 associated with the corresponding operation and calculating the layout productivity value 228 based on the path 250 .
  • the layout productivity value corresponds to the length of the path.
  • the layout productivity value may be the number of edges traversed in the path.
  • each edge in the analysis graph may be associated with a value, and the layout productivity value may be the sum of the values associated with edges traversed in the path.
  • the layout productivity value corresponds to the length of the pathways traversed by the path. For example, each edge in the analysis graph may be associated with a pathway and each pathway may be associated with data indicating a length of the pathway.
  • the layout productivity value may be the sum of the lengths of pathways associated with edges traversed in the path.
  • each operation is associated with a plurality of operation tasks
  • each layout productivity value 228 indicates an overall estimated measurement of the productivity of the plurality of operation tasks associated with the corresponding operation.
  • Generating the layout productivity value 228 includes determining a plurality of paths 250 associated with plurality of operation tasks of the corresponding operation and calculating a task productivity value associated with each operation task of the plurality of operation tasks based on the path corresponding to the operation task.
  • the layout productivity value 228 for an operation is a sum of the task productivity values associated with the plurality of operation tasks of the operation.
  • a task productivity value corresponds to the length of the path.
  • the task productivity value may be the number of edges traversed in the path.
  • each edge in the analysis graph may be associated with a value, and the task productivity value may be the sum of the values associated with edges traversed in the path.
  • the task productivity value corresponds to the length of the pathways traversed by the path.
  • each edge in the analysis graph may be associated with a pathway and each pathway may be associated with data indicating a length of the pathway.
  • the task productivity value may be the sum of the lengths of pathways associated with edges traversed in the path.
  • each layout productivity value 228 corresponds to a respective category or other grouping of the one or more operations of the building.
  • Each layout productivity value 228 indicates an overall estimated measurement of productivity of operations in the corresponding category or group.
  • Generating the layout productivity value 228 includes calculating an operation productivity value associated with each operation in the category or group. Calculating an operation productivity value associated with an operation may be performed in a manner similar to that discussed above for calculating a layout productivity value that is associated with a single operation.
  • the layout productivity value 228 is a sum of the operation productivity values associated with operations in the corresponding category or group.
  • generating a layout productivity value includes determining whether a travel burden is associated with an operation or operation task.
  • a travel burden may be, for example, if the operation or operation task includes traversing stairs, using an elevator, or transporting materials or parts over a specified weight.
  • simulation module 226 adjusts or weighs the productivity value associated with the operation or operation task.
  • adjusting or weighing the productivity value may be based on the severity of the travel burden.
  • the amount that the productivity value for an operation or operation task is weighted or adjusted may be relative to the severity of the travel burden of other operations or operation tasks. For example, the productivity value for a first operation that includes transporting a heavy object may be scaled by a first amount, and the productivity value for a second operation that includes transporting a heavier object may be scaled by a second amount that is greater than the first amount.
  • generating a layout productivity value includes determining a plurality of operations or operation tasks that are affected by congestion in the building when the plurality of operations are performed. Congestion in the building may occur, for example, if the plurality of operations or operation tasks use the same pathway or the same workstation or other element of the building.
  • determining the plurality operations or operation tasks that are affected by congestion includes determining that a set of paths traverse one or more of the same edges. Each operation or operation task in the plurality of operations or operation tasks corresponds to a path in the set of paths.
  • simulation module 226 determines, for each path, a number of edges that are traversed by other paths. Additionally, simulation module 226 determines, for each edge that is traversed by other paths, a number of other paths that traverse the edge.
  • determining the plurality of operations or operation tasks that are affected by congestion includes determining that a set of paths traverse one or more of the same nodes. Each operation or operation task in the plurality of operations or operation tasks corresponds to a path in the set of paths.
  • simulation module 226 determines, for each path, a number of nodes that are traversed by other paths. Additionally, simulation module 226 determines, for each node that is traversed by other paths, a number of other paths that traverse the node.
  • determining that a set of paths traverse one or more of the same nodes and/or one or more of the same edges is based on schedules of the operations or operation tasks associated with the paths 250 . If two paths traverse the same edge or not, but do not traverse the edge or node at the same time or during the same time period, then simulation module 226 determines that the two paths do not traverse the same edge or node for the purpose of determining whether the corresponding operations or operation tasks are affected by congestion.
  • simulation module 226 may determine that the first path and the second path do not traverse the same edge when determining the set of paths that traverse one or more of the same edges.
  • simulation module 226 determines, for each path, a time or time period in which the path traverses each edge and/or node of the path.
  • operation data 210 may include data indicating a schedule for an operation or operation task.
  • Simulation module 226 determines the time or time period in which a path traverses each edge and/or node of the path based on the schedule of the corresponding operation or operation task. Additionally, in some embodiments, simulation module 226 determines an amount of time taken to traverse each edge and/or node of the path. Determining the time or time period in which the path traverses an edge or a node is further based on the amount of time required to traverse each edge and/or node of the path.
  • operation data 210 may include data indicating an amount of time a worker is expected to spend during each step of the operation or operation task.
  • Simulation module 226 determines the amount of time in which a path traverses each node of the path based on the amount of time a worker is expected to spend at the location corresponding to the node when performing the corresponding operation or operation task.
  • simulation module 226 may estimate an amount of time required to traverse a path based on a length of the path and an estimated movement speed of a worker on the pathway corresponding to the path.
  • simulation module 226 adjusts or weighs the productivity value associated with each operation or operation task of the plurality of operations or operation tasks. Additionally, in some embodiments, adjusting or weighing the productivity value includes determining an amount of congestion that affects the operation or operation task and adjusting or weighing the productivity value based on the amount of congestion.
  • the amount of congestion affecting an operation or operation task may be based on the number of edges traversed by the corresponding path that are traversed by other paths; for each edge that is traversed by other paths, the number of other paths that also traverse the edge; the number of nodes traversed by the corresponding path that are traversed by other paths; for each node that is traversed by other paths, the number of other paths that also traverse the node; or any combination thereof.
  • the amount by which the productivity value of an operation or operation task is weighted or adjusted is relative to the amount of congestion affecting other operations or operation tasks.
  • a first operation may correspond to a path that traverses the same edge as a first number of other paths and a second operation may correspond to a path that traverses the same edge as a second number of other paths, where the second number is greater than the first number.
  • the productivity value for the first operation may be scaled by a first amount
  • the productivity value for the second operation may be scaled by a second amount that is greater than the first amount.
  • FIG. 3 is a flowchart of method steps for productivity calculation performed by the productivity calculation engine 118 of FIG. 1 , according to various embodiments of the present disclosure. Although the method steps are described in conjunction with the systems of FIGS. 1 and 2 , persons skilled in the art will understand that any system configured to perform the method steps in any order falls within the scope of the present disclosure.
  • layout generation module 220 receives workstation data 212 and operation data 210 from database 120 .
  • Workstation data 212 includes data describing a plurality of workstations of a building.
  • Operation data 210 includes data describing one or more operations of the building.
  • layout generation module 220 also receives geometry data 214 from database 120 . In other embodiments, layout generation module 220 receives geometry data 214 from another application, tool, module, or data source. For example, layout generation module 220 may receive a 3 D model of a building from an application that was used to generate or create the 3 D model.
  • layout generation module 220 generates a layout 230 based on the workstation data 212 and operation data 210 .
  • Generating the layout 230 is performed in a manner similar to that disclosed above with respect to layout generation module 220 and as further described below with regards to FIG. 4 .
  • generating the layout 230 includes determining, for each workstation of a plurality of workstations of a building, a location of the workstation within the building. Additionally, in some embodiments, generating the layout 230 further includes determining locations within the building of other rooms or elements of the building, such as storage facilities, tools, supplies, entrances, exits, elevators, stairs, material transport paths or structures, or other rooms or elements used by the plurality of operations.
  • generating the layout 230 is further based on geometry data 214 .
  • generating the layout 230 may be based on a pre-defined building geometry.
  • Layout generation module 220 determines locations for the plurality of workstations within the boundaries of the building indicated by the geometry data 214 .
  • generating the layout 230 may be based on a pre-defined site geometry.
  • Layout generation module 220 determines locations for the plurality of workstations within the boundaries of the site indicated by the geometry data 214 .
  • generating the layout 230 includes generating geometry data for the building.
  • the geometry data for the building may include data indicating a size and shape of the building, exterior walls of the building, interior walls of the building such as walls of workstations and other rooms, and sizes and shapes of pathways within the building such as stairs, transport paths, corridors, and hallways.
  • generating the layout 230 includes generating geometry data for the building.
  • the geometry data for the building may include data indicating a size and shape of the building, exterior walls of the building, interior walls of the building such as walls of workstations and other rooms, and sizes and shapes of pathways within the building such as stairs, transport paths, corridors, and hallways.
  • FIG. 4 is a flowchart of method steps for layout generation performed by the productivity calculation engine 118 of FIG. 1 and the layout generation module 220 of FIG. 2 , according to various embodiments of the present disclosure. Although the method steps are described in conjunction with the systems of FIGS. 1 and 2 , persons skilled in the art will understand that any system configured to perform the method steps in any order falls within the scope of the present disclosure.
  • layout generation module 220 selects a first workstation and determines a location of the first workstation. Determining the location of the first workstation is performed in a manner similar to that disclosed above with respect to layout generation module 220 . In some embodiments, determining the location for the first workstation is based on one or more of: the size and shape of the first workstation, the size and shape of the building, and the size and shape of the site. In some embodiments, the location for the first workstation is selected randomly. In some embodiments, the location of the first workstation is selected from one or more pre-determined or pre-configured locations.
  • layout generation module 220 determines an orientation of the first workstation. In some embodiments, determining an orientation for the first workstation is based on one or more of: the size and shape of the first workstation, the size and shape of the building, and the size and shape of the site. In some embodiments, the orientation for the first workstation may be selected randomly. In some embodiments, the orientation of the first workstation is selected from one or more pre-determined or pre-configured locations.
  • layout generation module 220 determines whether locations of any additional workstations depend on the location of the first workstation. Determining whether locations of any additional workstations depend on the location of the first workstation is performed in a manner similar to that disclosed above with respect to layout generation module 220 .
  • determining whether locations of any additional workstations depend on the location of the first workstation includes determining if any workstations are associated with a location restriction that specifies the first workstation.
  • determining whether locations of any additional workstations depend on the location of the first workstation includes determining if any workstations are associated with the same operation, operation category, or operation task as the first workstation.
  • layout generation module 220 determines locations of any additional workstations based on the location of the first workstation. Determining the locations of any additional workstations based on the location of the first workstation is performed in a manner similar to that disclosed above with respect to layout generation module 220 .
  • layout generation module 220 determines a second workstation that is associated with the location restriction. Layout generation module 220 determines a location for the second workstation based on the location restriction and the location of the first workstation. Additionally, in some embodiments, layout generation module 220 may determine the location for the second workstation based on any additional location restrictions associated with the second workstation. If the second workstation is associated with location restrictions that specify other workstations whose location has not been determined, layout generation module 220 may determine the location for the second workstation after locations have been determined for the other workstations
  • layout generation module 220 determines a location for the second workstation based on the location of the first workstation. Additionally, in some embodiments, layout generation module 220 determines the location for the second workstation based on data describing the operation, operation category, or operation task, such as an order in which the second workstation is accessed by an operation or operation task workflow relative to the first workstation and other workstations accessed by the operation or operation task workflow.
  • steps 402 - 406 are repeated for remaining workstations whose locations have not yet been determined, until a respective location has been determined for all workstations of the plurality of workstations.
  • simulation module 226 generates, for each operation task of a plurality of operation tasks described in operation data 210 , a productivity value for the operation task. Generating the productivity values for the plurality of operation tasks is performed in a manner similar to that disclosed above with respect to analysis graph generation module 222 , path generation module 224 , and simulation module 226 , and as further described below with respect to FIG. 5 .
  • FIG. 5 is a flowchart of method steps for operation productivity and overall productivity calculation performed by the productivity calculation engine 118 of FIG. 1 and the analysis graph generation module 222 , path generation module 224 , and simulation module 226 of FIG. 2 , according to various embodiments of the present disclosure.
  • the method steps are described in conjunction with the systems of FIGS. 1 and 2 , persons skilled in the art will understand that any system configured to perform the method steps in any order falls within the scope of the present disclosure.
  • analysis graph generation module 222 receives the layout 230 . Additionally, analysis graph generation module 222 may receive operation data 210 and workstation data 212 . In some embodiments, analysis graph generation module 222 receives the layout 230 from layout generation module 220 . In other embodiments, analysis graph generation module 222 receives the layout 230 from another application, tool, or module that generated layout 230 . For example, analysis graph generation module 222 may receive a layout 230 from an application that generates and optimizes building layouts.
  • analysis graph generation module 222 generates an analysis graph 240 based on the layout 230 .
  • Analysis graph 240 comprises a plurality of nodes and a plurality of edges connecting the nodes.
  • Each node of the plurality of nodes corresponds to a location of a workstation indicated by the layout.
  • the analysis graph may include one or more nodes that correspond to the locations of other elements of the building layout such as workstation access points, tool and supply storage facilities, and elevators.
  • Each edge of the graph corresponds to a pathway connecting two workstations, such as a hallway, corridor, stairway, or other transport path.
  • generating the analysis graph 240 based on the layout 230 includes determining a plurality of locations corresponding to workstations and other building elements in the layout.
  • Analysis graph generation module 222 generates a respective node of the analysis graph for each location of the plurality of locations. Additionally, in some embodiments, analysis graph generation module 222 generates, based on workstation data 212 , data describing the workstation or other building element corresponding to the location and associates the data with the respective node.
  • generating the analysis graph 240 based on the layout 230 includes determining a plurality of pathways in the layout.
  • Analysis graph generation module 222 determines, for each pathway of the plurality of pathways, a first location and a second location connected by the pathway.
  • Analysis graph generation module 222 generates a respective edge corresponding to the pathway, where the edge connects a first node corresponding to the first location and a second node corresponding to the second location.
  • analysis graph generation module 222 generates, based on layout 230 , data describing the pathway and associates the data with the respective edge.
  • path generation module 224 determines workstation locations for an operation task of the plurality of operation tasks based on operation data 210 . In some embodiments, path generation module 224 determines, based on the operation data 210 , one or more workstations used by the operation task. Additionally, in some embodiments, path generation module 224 determines an order in which the workstations are accessed by workers when performing steps of the operation task.
  • path generation module 224 determines additional building locations for the operation task. In some embodiments, path generation module 224 determines, based on the operation data 210 , determining, one or more elements of the building, such as workstation access points, tool or supply storage facilities, equipment, materials, or elevators, that are used by the operation task. Additionally, in some embodiments, path generation module 224 determines an order in which the workstations and building elements are accessed by workers when performing steps of the operation task.
  • path generation module 224 calculates a path for the operation or operation task. In some embodiments, path generation module 224 calculates a shortest path through the analysis graph 240 that includes the nodes corresponding to the one or more workstations used by the operation task and any additional building elements used by the operation task. Additionally, in some embodiments, path generation module 224 calculates the shortest path through the analysis graph 240 that traverses the nodes in the order in which the one or more workstations and additional building elements are accessed by workers when performing the operation task.
  • calculating a path for the operation task further includes determining, based on the operation data 210 , one or more transport requirements or restrictions associated with the operation task. Calculating the shortest path through the analysis graph 240 includes calculating the shortest path that follows the one or more transport requirements or restrictions associated with the operation task.
  • the above steps 506 - 510 are repeated for each operation task of the plurality of operations or operation tasks to generate a plurality of paths 250 corresponding to the plurality of operations or operation tasks.
  • simulation module 226 calculates a plurality of task productivity values based on the plurality of paths 250 . For each path in the plurality of paths, simulation module 226 calculates a respective task productivity value. In some embodiments, each task productivity value corresponds to a length of the corresponding path. In other embodiments, each task productivity value corresponds to the length of the pathways traversed by corresponding path.
  • calculating a task productivity value for a path includes determining whether a travel burden is associated with the operation task corresponding to the path. In response to determining that a travel burden is associated with the operation or operation task, simulation module 226 adjusts or weighs the productivity value associated with the operation or operation task. In some embodiments, adjusting or weighing the productivity value may be based on the severity of the travel burden.
  • calculating a task productivity value for a path includes determining whether the operation task corresponding to the path is affected by congestion. Determining whether the operation task is affected by congestion may include one or more of: determining whether edges traversed by the path are also traversed by other paths; determining whether nodes traversed by the path are also traversed by other paths; determining a time or time period in which the path traverses each edge and/or node; determining a time or time period in which other paths traverse each respective edge and/or node of the other paths.
  • simulation module 226 adjusts or weighs the productivity value associated with each operation or operation task of the plurality of operations or operation tasks. Additionally, in some embodiments, adjusting or weighing the productivity value includes determining an amount of congestion that affects the operation or operation task and adjusting or weighing the productivity value based on the amount of congestion.
  • simulation module 226 generates, based on the productivity values for the plurality of operations or operation tasks, one or more layout productivity values 228 for the layout 230 . Generating the overall productivity values for the layout are performed in a manner similar to that disclosed above with respect to simulation module 226 .
  • each layout productivity value 228 corresponds to a respective operation of one or more operations of the building. Each operation is associated with a respective plurality of operation tasks. Generating the layout productivity value corresponding to an operation is based on the task productivity values associated with the respective plurality of operation tasks. In some embodiments, the layout productivity value 228 for an operation is a sum of the task productivity values associated with the plurality of operation tasks of the operation.
  • the computer system generates performance metrics related to a building, including one or more productivity values that indicate a level of productivity corresponding to a layout of a building.
  • the computer system receives input data describing a plurality of workstations for the building and a plurality of operations that take place in the building.
  • the computer system generates a layout of the building that specifies a location within the building for each workstation of the plurality of workstations based on the input data.
  • the data describing the plurality of workstations may indicate which workstations should be located adjacent to one another, or data describing the plurality of operations may indicate which workstations are needed for each operation.
  • the computer system generates the layout based on which workstations should be located adjacent to one another and/or which workstations are needed to complete a given operation or set of operations.
  • the computer system receives a pre-defined layout that specifies the location within the building for each workstation of the plurality of workstations.
  • the computer system calculates a productivity value. Calculating the productivity value for an operation may be based on any number of features of the layout of the building and the operation, such as the workstations required by the operation, the locations of the workstations required by the operation, the order of workstations required by the operation, the location of supplies and tools required by the operation, the amount of time spent by a worker at each workstation required by the operation, and the distance and travel time between workstations required by the operation.
  • the computer system calculates one or more productivity values for the layout of the building.
  • each operation of the plurality of operations corresponds to a respective operational category of one or more operational categories.
  • the computer system generates a respective productivity value for each operational category based on the productivity values of the operations that correspond to the operational category.
  • other methods for grouping operations into various categories may be used.
  • At least one advantage of the disclosed techniques is that the computer system measures productivity of a building or workplace based on a proposed layout or an automatically-generated layout for the building or workplace, without the layout being implemented and used in operation of the building or workplace.
  • this approach allows quick analysis, measurement, and comparison of the productivity of multiple potential layouts.
  • a user can utilize the generated measurements to further optimize potential layouts and quickly see how different adjustments to a layout affect the productivity.
  • this approach may be used as part of a design application that iteratively generates improved layouts that meet specific design objectives.
  • the design application may utilize the productivity values for the different operational categories in order to determine a layout that is most effective for a particular operational category.
  • the design application may utilize productivity values as one of several metrics to consider when evaluating different layouts. Accordingly, these technical advantages provide one or more technological advancements over prior art approaches.
  • a computer-implemented method for determining performance metrics related to a building comprises receiving workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building, generating, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation, generating, based on the building layout, an analysis graph, for each operation of the one or more operations, generating one or more paths based on the analysis graph, computing, based at least on the one or more paths, a productivity value associated with the operation.
  • each operation of the one or more operations is associated with a plurality of operation tasks
  • generating the one or more paths includes generating, for each operation task of the plurality of operation tasks, a respective path corresponding to the operation task.
  • computing the productivity value associated with the operation includes computing, for each operation task of the plurality of operation tasks, a respective productivity value associated with the operation task based on the path corresponding to the operation task.
  • one or more non-transitory computer readable media store instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of receiving workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building, generating, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation, generating, based on the building layout, an analysis graph, and for each operation of the one or more operations, generating one or more paths based on the analysis graph, and computing, based at least on the one or more paths, a productivity value associated with the operation.
  • each operation of the one or more operations is associated with a plurality of operation tasks
  • generating the one or more paths includes generating, for each operation task of the plurality of operation tasks, a respective path corresponding to the operation task.
  • computing the productivity value associated with the operation includes computing, for each operation task of the plurality of operation tasks, a respective productivity value associated with the operation task based on the path corresponding to the operation task.
  • a computer system comprises one or more memories storing instructions, and one or more computer processors for processing the instructions to receive workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building, generate, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation, generate, based on the building layout, an analysis graph, and for each operation of the one or more operations, generate one or more paths based on the analysis graph, and compute, based at least on the one or more paths, a productivity value associated with the operation.
  • aspects of the present embodiments may be embodied as a system, method or computer program product. Accordingly, aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “module,” a “system,” or a “computer.” In addition, any hardware and/or software technique, process, function, component, engine, module, or system described in the present disclosure may be implemented as a circuit or set of circuits. Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
  • the computer readable medium may be a computer readable signal medium or a computer readable storage medium.
  • a computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing.
  • a computer readable storage medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s).
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.

Abstract

One embodiment sets forth a computer-implemented method for measuring productivity in buildings and workplaces. The method includes receiving workstation data for a plurality of workstations for the building and operation data for a plurality of operations for the building; generating a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation; generating, for each operation of the plurality of operations, a respective productivity value based on the workstation data, the operation data, and the locations of the plurality of workstations; and calculating, based on the productivity values of the plurality of operations, one or more overall productivity values associated with the building layout.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application claims the priority benefit of the United States Provisional Patent Application having Ser. No. 62/937,190 (Attorney Docket AUTO1468USL) and filed on Nov. 18, 2019. The subject matter of this related application is hereby incorporated herein by reference.
  • BACKGROUND Field of the Various Embodiments
  • The present invention relates generally to computer science and computer-aided design and, more specifically, to computer-implemented techniques for generating building designs that optimize productivity of the building.
  • Description of the Related Art
  • Generating a building design and layout, such as for a building or workplace, oftentimes is a complex process where many different design goals as well as numerous constraints and requirements must be considered. For example, when designing a building or other similarly intricate industrial building, a designer has to consider, among other things, operating requirements, production requirements, architectural and engineering constraints, cost constraints, and building site constraints.
  • With respect to the operating requirements of a typical industrial building, the layout of a building affects the overall of the productivity of the building. For example, the placement of workstations, supplies, corridors, and tracks within the building affect how building workers navigate the building while performing tasks. Additionally, the building may be used to create multiple components, and building operations may include different schedules, work shifts, and tasks, which result in complex flows of building personnel and parts. When designing such a building, simulation methods, such as productivity simulation, that are incorporated into computer-aided design (CAD) software are typically used by a designer to model and simulate airflow and heat transfer of the building prior to construction. In this way, the designer can assess the effectiveness of a layout in terms of productivity of the building.
  • One drawback to using conventional CAD software when designing industrial buildings is that much of the information needed to properly model and simulate the productivity of a building via the simulation methods incorporated into conventional CAD software is not available or determined until the end of the building design process. In particular, due to the various elements that affect productivity in a building, typical approaches for measuring productivity rely on tracking and measuring actual productivity after a layout is implemented and in use. As a result, generating layouts for an industrial building using conventional CAD software involves an ad-hoc trial-and-error approach.
  • In the trial-and-error approach of using CAD software to design layouts, each layout must be designed and implemented before productivity can be measured. Changes to productivity caused by adjustments to the layout or by different layouts cannot be determined until adjustments to the layout or a new layout has been implemented. If a new or modified layout results in a decrease in productivity, the decrease is not detected until after the new or modified layout has already been implemented, which is undesirable given the amount of time and effort taken to implement a building layout. In addition, unless each change to the layout is small or incremental, determining which changes to which features of the layout resulted in an increase or decrease in productivity is difficult to determine. As a result, the building layouts industrial buildings generated using conventional CAD software typically fail to provide optimal levels of productivity and efficiency for those buildings.
  • As the foregoing illustrates, what is needed in the art are more effective techniques for generating layouts for buildings that account for productivity of those buildings.
  • SUMMARY
  • One embodiment of the present application sets forth a computer-implemented method for measuring productivity in buildings and workplaces. The method includes receiving workstation data for a plurality of workstations for the building and operation data for a plurality of operations for the building; generating a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation; generating, for each operation of the plurality of operations, a respective productivity value based on the workstation data, the operation data, and the locations of the plurality of workstations; and calculating, based on the productivity values of the plurality of operations, one or more overall productivity values associated with the building layout.
  • At least one technical advantage of the disclosed techniques relative to the prior art is that the disclosed techniques can be incorporated into a CAD application to enable the CAD application to automatically explore a design space to identify building layouts that optimize productivity of the building. Accordingly, with the disclosed techniques, a CAD application can generate a substantially larger number of building designs that, for example, are optimized for productivity in the specific function of the building, relative to a conventional CAD application. This functionality, which is not available in conventional CAD applications, increases the likelihood that an optimal layout design can be automatically generated and identified for a given building design. These technical advantages represent one or more tangible and meaningful technological improvements over conventional CAD applications.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • So that the manner in which the above recited features of the various embodiments can be understood in detail, a more particular description of the inventive concepts, briefly summarized above, may be had by reference to various embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of the inventive concepts and are therefore not to be considered limiting of scope in any way, and that there are other equally effective embodiments.
  • FIG. 1 is a schematic diagram illustrating a computing system configured to implement one or more aspects of the present disclosure.
  • FIG. 2 is a more detailed illustration of the database and productivity calculation engine of FIG. 1, according to various embodiments of the present disclosure.
  • FIG. 3 is a flowchart of method steps for productivity calculation performed by the productivity calculation engine of FIG. 1, according to various embodiments of the present disclosure.
  • FIG. 4 is a flowchart of method steps for layout generation performed by the productivity calculation engine of FIG. 1, according to various embodiments of the present disclosure.
  • FIG. 5 is a flowchart of method steps for operation productivity and overall productivity calculation performed by the productivity calculation engine of FIG. 1, according to various embodiments of the present disclosure.
  • DETAILED DESCRIPTION
  • In the following description, numerous specific details are set forth to provide a more thorough understanding of the various embodiments. However, it will be apparent to one of skilled in the art that the inventive concepts may be practiced without one or more of these specific details.
  • FIG. 1 illustrates a computing device 100 configured to implement one or more aspects of the present disclosure. As shown, computing device 100 includes an interconnect (bus) 112 that connects one or more processing units 102, an input/output (I/O) device interface 104 coupled to one or more input/output (I/O) devices 108, memory 116, a storage 114, and a network interface 106.
  • Computing device 100 includes a desktop computer, a laptop computer, a smart phone, a personal digital assistant (PDA), tablet computer, or any other type of computing device configured to receive input, process data, and optionally display images, and is suitable for practicing one or more embodiments. Computing device 100 described herein is illustrative and that any other technically feasible configurations fall within the scope of the present disclosure.
  • Processing unit(s) 102 includes any suitable processor implemented as a central processing unit (CPU), a graphics processing unit (GPU), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), an artificial intelligence (AI) accelerator, any other type of processing unit, or a combination of different processing units, such as a CPU configured to operate in conjunction with a GPU. In general, processing unit(s) 102 may be any technically feasible hardware unit capable of processing data and/or executing software applications. Further, in the context of this disclosure, the computing elements shown in computing device 100 may correspond to a physical computing system (e.g., a system in a data center) or may be a virtual computing instance executing within a computing cloud.
  • In one embodiment, I/O devices 108 include devices capable of providing input, such as a keyboard, a mouse, a touch-sensitive screen, and so forth, as well as devices capable of providing output, such as a display device. Additionally, I/O devices 108 may include devices capable of both receiving input and providing output, such as a touchscreen, a universal serial bus (USB) port, and so forth. I/O devices 108 may be configured to receive various types of input from an end-user (e.g., a designer) of computing device 100, and to also provide various types of output to the end-user of computing device 100, such as displayed digital images or digital videos or text. In some embodiments, one or more of I/O devices 108 are configured to couple computing device 100 to a network 110.
  • Network 110 includes any technically feasible type of communications network that allows data to be exchanged between computing device 100 and external entities or devices, such as a web server or another networked computing device. For example, network 110 may include a wide area network (WAN), a local area network (LAN), a wireless (WiFi) network, and/or the Internet, among others.
  • Storage 114 includes non-volatile storage for applications and data, and may include fixed or removable disk drives, flash memory devices, and CD-ROM, DVD-ROM, Blu-Ray, HD-DVD, or other magnetic, optical, or solid-state storage devices. Productivity calculation engine 118 and database 120 may be stored in storage 114 and loaded into memory 116 when executed.
  • Memory 116 includes a random-access memory (RAM) module, a flash memory unit, or any other type of memory unit or combination thereof. Processing unit(s) 102, I/O device interface 104, and network interface 106 are configured to read data from and write data to memory 116. Memory 116 includes various software programs that can be executed by processor(s) 102 and application data associated with said software programs, including productivity calculation engine 118 and database 120. Productivity calculation engine 118 and database 120 are described in further detail below with respect to FIG. 2.
  • FIG. 2 is a more detailed illustration of productivity calculation engine 118 and database 120 of FIG. 1, according to various embodiments of the present disclosure. As shown, productivity calculation engine 118 includes, without limitation, layout generation module 220, analysis graph generation module 222, path generation module 224, simulation module 226, and layout productivity values 228.
  • Productivity calculation engine 118 automatically calculates one or more productivity values associated with a particular layout of a building, based on data describing the building and building operations. Each productivity value indicates an estimated measurement of the productivity of one or more operations when the one or more operations are performed in the building using the particular layout. In some embodiments, productivity calculation engine 118 is part of an application for designing or optimizing layouts of buildings such as buildings or other workplaces. In other embodiments, productivity calculating engine 118 is a separate application or tool from an application that is used to design or optimize layouts of buildings or other workplaces. Productivity calculation engine 118 may receive a building information generated by another application and generate productivity values based on the received building layout. For example, productivity calculation engine 118 may receive a 3D model of a building and generate one or more productivity values based on the 3D model of the building and information describing operations performed in the building. Additionally, productivity calculation engine 118 may provide the one or more productivity values to a user through a graphical user interface, or to other applications for further analysis of the building and the building layout.
  • In one or more embodiments, productivity calculation engine 118 obtains data describing the building, operations of the building, and other data that may be used by productivity calculation engine 118 to calculate productivity of the building from database 120. As shown in FIG. 1, database 120 includes, without limitation, operation data 210, workstation data 212, and geometry data 214.
  • Operation data 210 includes data describing one or more operations of the building. For example, data describing an operation may include data indicating workstations, operators, personnel, schedules, zones, positions, tools, storage facilities, parts, materials, equipment, transport requirements or restrictions, or other elements and features associated with the operation. Additionally, the data describing the operation may include data describing the elements and features associated with the operation, such as weights of parts and materials associated with the operation.
  • In one or more embodiments, the data describing an operation includes data describing a workflow of the operation. The data describing the workflow of the operation indicates the steps taken when performing the operation. Additionally, in some embodiments, the data describing the workflow of the operation indicates an order in which workstations, tools, equipment, and materials are accessed by workers when performing the steps of the operation. Additionally, in some embodiments, the data describing the workflow of the operation may indicate an amount of time spent when performing each step of the operation.
  • In one or more embodiments, each operation is associated with a plurality of operation tasks. The data describing an operation includes data indicating the plurality of operation tasks. Additionally, in some embodiments, the data describing the operation includes data describing the plurality of operation tasks. For example, data describing an operation task may include data indicating the operation associated with the task, workstations, operators, personnel, schedules, zones, positions, tools, storage facilities, parts, materials, equipment, transport requirements or restrictions, or other elements and features associated with the operation task. Additionally, the data describing the operation task may include data describing the elements and features associated with the operation task, such as weights of parts and materials associated with the operation task.
  • In one or more embodiments, the data describing an operation task includes data describing a workflow of the operation task. The data describing the workflow of the operation task indicates the steps taken when performing the operation task. Additionally, in some embodiments, the data describing the workflow of the operation task indicates an order in which workstations, tools, equipment, and materials are accessed by workers when performing the steps of the operation task. Additionally, in some embodiments, the data describing the workflow of the operation may indicate an amount of time spent when performing each step of the operation.
  • Workstation data 212 includes data describing one or more workstations or workspaces of the building. For example, data describing a workstation may include data indicating one or more operations associated with the workstation, one or more operation tasks associated with the workstation, dimensions of the workstation, a shape of the workstation, or other information related to the workstation.
  • In one or more embodiments, the data describing a workstation or workspace includes data describing location restrictions for the workstation or workspace. A location restriction indicates that the location of the workstation or workspace is dependent on the location or placement of other workspaces, workstations, tools or materials, storage facilities, transport, or other elements of the building. For an element, the location restriction may indicate that the workstation or workspace should be adjacent to the element, within a certain distance of the element, within the same zone or area of the building as the element, within a certain configuration with the element, or other location-based requirements.
  • Geometry data 214 includes data describing the building and/or site in which the layout is placed. For example, the data describing a building may include data indicating a size of the building, a shape of the building, a footprint of the building, an orientation of the building structural elements of the building, fixed equipment within the building and locations of the fixed equipment, and infrastructure of the building such as loading docks, entrances, exits, and mechanical systems. As another example, the data describing a site may include data indicating a size of the site, a shape of the site, an orientation of the site, fixed equipment within the site and locations of the fixed equipment, elevation(s) of the site, restriction(s) on the site, and infrastructure of the site such as roads and paths. In some embodiments, geometry data 214 includes a 3D model of the building and/or the site.
  • In some embodiments, geometry data 214 includes a layout indicating locations of workstations or workspaces within the building. The layout may be a layout that was generated by productivity calculation engine 118, a layout generated by another application or tool, or may be a layout designed by a user. In some embodiments, geometry data 214 includes a 3D model of the building, and the interior of the 3D model includes workstations and workspaces within the building. In some embodiments, productivity calculation engine 118 generates the layout for the building based on the information describing the building.
  • In operation, layout generation module receives operation data 210 and workstation data 212, and generates a layout 230. Layout 230 indicates locations within a building, such as a building, for a plurality of workstations or workspaces of the building. In some embodiments, layout 230 also indicates locations within the building of other rooms or elements of the building, such as storage facilities, tools, supplies, entrances, exits, elevators, stairs, material transport paths or structures, or other rooms or elements used by the plurality of operations.
  • In one or more embodiments, generating the layout 230 is based on a pre-defined building geometry. For example, geometry data 214 may include data indicating the size and shape of a building. As another example, geometry data 214 may include a 3D model or floorplan of the building. Layout generation module 220 receives geometry data 214 and determines locations for the plurality of workstations within the boundaries of the building indicated by the geometry data 214.
  • In one or more embodiments, generating the layout 230 is based on a pre-defined site geometry. For example, geometry data 214 may include data indicating the size and shape of a site. As another example, geometry data 214 may include a 3D model of the site or a site plan for the site. Layout generation module 220 receives geometry data 214 and determines locations for the plurality of workstations within the boundaries of the site indicated by the geometry data 214.
  • In one or more embodiments, generating the layout 230 includes generating geometry data for the building. The geometry data for the building may include data indicating a size and shape of the building, exterior walls of the building, interior walls of the building such as walls of workstations and other rooms, and sizes and shapes of pathways within the building such as stairs, transport paths, corridors, and hallways. For example, after determining locations for a plurality of workstations, layout generation module 220 may place exterior walls of the building around the plurality of workstations and place interior walls and pathways between the workstations.
  • In some embodiments, generating the layout 230 includes determining one or more location restrictions for a workstation and determining a location of the workstation based on the one or more location restrictions. Each location restriction indicates that the location of the workstation depends on the location or placement of another workspace, workstation, particular tools or materials, storage facility, transport, or other element of the building. Additionally, the location restriction may indicate that the workstation should be adjacent to the element, within a certain distance of the element, within the same zone or area of the building as the element, within a certain configuration with the element, or other location-based requirements. In an embodiment, determining the one or more location restrictions for the workstation includes determining, based on workstation data 212, whether the workstation is associated with any location restrictions. If the workstation is associated with a location restriction, then layout generation module 220 determines a location of the workstation based on the location of the element indicated by the location restriction and the location-based requirement indicated by the location restriction.
  • In one or more embodiments, to generate layout 230, layout generation module 220 selects a first workstation from the plurality of workstations. Layout generation module 220 determines a location for the first workstation. In some embodiments, determining a location for the first workstation is based on one or more of: the size and shape of the first workstation, the size and shape of the building, and the size and shape of the site. In some embodiments, the location for the first workstation may be selected randomly. For example, the location for the first workstation may be any available location within the building or site. In some embodiments, the location of the first workstation is selected from one or more pre-determined or pre-configured locations. For example, layout generation module 220 may always select the top-right corner of the building as the location for the first workstation. As another example, each corner of the building may be a potential location for the first workstation, and layout generation module 220 selects one of the corners of the building as the location for the first workstation.
  • Additionally, in some embodiments, layout generation module 220 determines an orientation of the first workstation. In some embodiments, determining an orientation for the first workstation is based on one or more of: the size and shape of the first workstation, the size and shape of the building, and the size and shape of the site. In some embodiments, the orientation for the first workstation may be selected randomly. For example, the orientation for the first workstation may be any direction where the access point or entrance to the workstation does not face a wall or other obstruction, or is a sufficient distance from a wall or other obstruction for a worker to access or enter the workstation. In some embodiments, the orientation of the first workstation is selected from one or more pre-determined or pre-configured orientations. For example, if the first workstation is located against a wall of the building, layout generation module 220 may always orient the first workstation so that the access point or entrance of the building is facing away from the wall.
  • In some embodiments, after determining the location for the first workstation, layout generation module 220 determines whether locations of any additional workstations depend on the location of the first workstation. In response to determining that locations of one or more additional workstations depend on the location of the first workstation, layout generation module 220 determines a respective location for each additional workstation of the one or more additional workstations based on the location of the first workstation.
  • In some embodiments, determining whether locations of any additional workstations depend on the location of the first workstation includes determining if any workstations are associated with a location restriction that specifies the first workstation. In response to determining that a second workstation is associated with a location restriction that specifies the first workstation, layout generation module 220 determines a location for the second workstation based on the location restriction and the location of the first workstation. Additionally, in some embodiments, layout generation module 220 may determine the location for the second workstation based on any additional location restrictions associated with the second workstation. If the second workstation is associated with location restrictions that specify other workstations whose location has not been determined, layout generation module 220 may determine the location for the second workstation after locations have been determined for the other workstations.
  • In some embodiments, determining whether locations of any additional workstations depend on the location of the first workstation includes determining if any workstations are associated with the same operation, operation category, or operation task as the first workstation. In response to determining that a second workstation is associated with the same operation, operation category, or operation task as the first workstation, layout generation module 220 determines a location for the second workstation based on the location of the first workstation. For example, workstations associated with the same operation, operation category, or operation task may be placed near each other in the layout. Additionally, in some embodiments, layout generation module 220 determines the location for the second workstation based on data describing the operation, operation category, or operation task. For example, the location of the second workstation may be based on an order in which the second workstation is accessed by an operation or operation task workflow, relative to the first workstation and other workstations used by the operation or operation task workflow.
  • In one or more embodiments, after layout generation module 220 determines a location for the first workstation and any additional workstations, layout generation module 220 selects a next workstation from any remaining workstations whose locations have not been determined. Layout generation module 220 determines a location for the next workstation and any additional workstations whose locations depend on the location of the next workstation. The above may be repeated until a respective location has been determined for all workstations of the plurality of workstations.
  • Analysis graph generation module 222 receives layout 230, operation data 210, and workstation data 212, and generates an analysis graph 240. Analysis graph 240 comprises a plurality of nodes and a plurality of edges connecting the nodes. Each node of the plurality of nodes corresponds to a location of a workstation indicated by the layout. Additionally, in some embodiments, the analysis graph may include one or more nodes that correspond to the locations of other elements of the building layout such as workstation access points, tool and supply storage facilities, and elevators. Each edge of the graph corresponds to a pathway connecting two workstations, such as a hallway, corridor, stairway, or other transport path.
  • In one or more embodiments, each node of the plurality of nodes is associated with data describing the corresponding workstation or other element of the building layout. For example, data describing a workstation or building element may include data indicating the workstation or building element that corresponds to the node, one or more operations associated with the workstation or building element, one or more operation tasks associated with the workstation or building element, or other information related to the workstation or building element.
  • In one or more embodiments, each edge of the plurality of edges is associated with data describing the corresponding pathway. For example, data describing a pathway may include data indicating the pathway that corresponds to the edge, a length of the pathway, a width of the pathway, a height of the pathway, if the pathway is a transport path a component the transport path is configured to transport, or other information related to the pathway. In some embodiments, if a pathway includes a turn, the data describing the pathway may include data indicating an angle of the turn.
  • Path generation module 224 receives analysis graph 240 and operation data 210, and generates a plurality of paths 250. In some embodiments, each path 250 corresponds to a respective operation of the one or more operations. The path corresponding to an operation indicates, for the operation, a path through the building that may be traveled by a worker while the worker performs the operation. In some embodiments, each operation is associated with a plurality of operation task. Each path corresponds to a respective operation task of the one or more operations. The path corresponding to an operation task indicates, for the operation task, a path through the building that may be traveled by a worker while the worker performs the operation task.
  • In one or more embodiments, generating a path 250 for an operation or operation task is based on the analysis graph and the workstations used by the operation or operation task. Path generation module 224 determines, based on the operation data 210, one or more workstations used by the operation or operation task. Path generation module 224 calculates a shortest path through the analysis graph 240 that includes the nodes corresponding to the one or more workstations. Additionally, in some embodiments, path generation module 224 determines an order in which the workstations are accessed by workers when performing steps of the operation or operation task. Calculating the shortest path through the analysis graph 240 includes determining the shortest path that traverses the nodes corresponding to the one or more workstations in the order in which the one or more workstations are accessed by workers.
  • In one or more embodiments, generating a path 250 for an operation or operation task further includes determining, based on the operation data 210, one or more elements of the building, such as workstation access points, tool or supply storage facilities, equipment, materials, or elevators, that are used by the operation or operation task. Path generation module 224 calculates the shortest path through the analysis graph 240 that includes the one or more elements of the building and the one or more workstations. Additionally, in some embodiments, path generation module 224 determines an order in which the workstations and building elements are accessed by workers when performing steps of the operation or operation task. Calculating the shortest path through the analysis graph 240 includes determining the shortest path that traverses the nodes corresponding to the one or more workstations and the one or more elements of the building in the order in which the one or more workstations and the one or more elements of the building are accessed by workers.
  • In one or more embodiments, generating a path 250 for an operation or operation task further includes determining, based on the operation data 210, one or more transport requirements or restrictions associated with the operation or operation task. For example, a transport requirement or restriction may indicate that, for a particular step of the operation or operation task, a particular transport path must be used. As another example, the transport requirement or restriction may indicate that, for the particular step, corridors and hallways must be greater than a specified width, greater than a specified height, or cannot include turns smaller than a specified number of degrees. Calculating the shortest path through the analysis graph 240 includes determining the shortest path that follows the one or more transport requirements or restrictions associated with the operation or operation task.
  • Simulation module 226 receives the plurality of paths 250 and generates one or more layout productivity values 228 for the layout of the building. Each layout productivity value 228 indicates an estimated measurement of the productivity of one or more operations when the one or more operations are performed in the building using the particular layout.
  • In one or more embodiments, each layout productivity value 228 corresponds to a respective operation of one or more operations of the building. Generating the layout productivity value 228 includes determining a path 250 associated with the corresponding operation and calculating the layout productivity value 228 based on the path 250. In some embodiments, the layout productivity value corresponds to the length of the path. For example, the layout productivity value may be the number of edges traversed in the path. As another example, each edge in the analysis graph may be associated with a value, and the layout productivity value may be the sum of the values associated with edges traversed in the path. In other embodiments, the layout productivity value corresponds to the length of the pathways traversed by the path. For example, each edge in the analysis graph may be associated with a pathway and each pathway may be associated with data indicating a length of the pathway. The layout productivity value may be the sum of the lengths of pathways associated with edges traversed in the path.
  • In one or more embodiments, each operation is associated with a plurality of operation tasks, and each layout productivity value 228 indicates an overall estimated measurement of the productivity of the plurality of operation tasks associated with the corresponding operation. Generating the layout productivity value 228 includes determining a plurality of paths 250 associated with plurality of operation tasks of the corresponding operation and calculating a task productivity value associated with each operation task of the plurality of operation tasks based on the path corresponding to the operation task. In some embodiments, the layout productivity value 228 for an operation is a sum of the task productivity values associated with the plurality of operation tasks of the operation.
  • In some embodiments, a task productivity value corresponds to the length of the path. For example, the task productivity value may be the number of edges traversed in the path. As another example, each edge in the analysis graph may be associated with a value, and the task productivity value may be the sum of the values associated with edges traversed in the path. In other embodiments, the task productivity value corresponds to the length of the pathways traversed by the path. For example, each edge in the analysis graph may be associated with a pathway and each pathway may be associated with data indicating a length of the pathway. The task productivity value may be the sum of the lengths of pathways associated with edges traversed in the path.
  • In one or more embodiments, each layout productivity value 228 corresponds to a respective category or other grouping of the one or more operations of the building. Each layout productivity value 228 indicates an overall estimated measurement of productivity of operations in the corresponding category or group. Generating the layout productivity value 228 includes calculating an operation productivity value associated with each operation in the category or group. Calculating an operation productivity value associated with an operation may be performed in a manner similar to that discussed above for calculating a layout productivity value that is associated with a single operation. In some embodiments, the layout productivity value 228 is a sum of the operation productivity values associated with operations in the corresponding category or group.
  • In one or more embodiments, generating a layout productivity value includes determining whether a travel burden is associated with an operation or operation task. A travel burden may be, for example, if the operation or operation task includes traversing stairs, using an elevator, or transporting materials or parts over a specified weight. In response to determining that a travel burden is associated with the operation or operation task, simulation module 226 adjusts or weighs the productivity value associated with the operation or operation task. In some embodiments, adjusting or weighing the productivity value may be based on the severity of the travel burden. The amount that the productivity value for an operation or operation task is weighted or adjusted may be relative to the severity of the travel burden of other operations or operation tasks. For example, the productivity value for a first operation that includes transporting a heavy object may be scaled by a first amount, and the productivity value for a second operation that includes transporting a heavier object may be scaled by a second amount that is greater than the first amount.
  • In one or more embodiments, generating a layout productivity value includes determining a plurality of operations or operation tasks that are affected by congestion in the building when the plurality of operations are performed. Congestion in the building may occur, for example, if the plurality of operations or operation tasks use the same pathway or the same workstation or other element of the building.
  • In some embodiments, determining the plurality operations or operation tasks that are affected by congestion includes determining that a set of paths traverse one or more of the same edges. Each operation or operation task in the plurality of operations or operation tasks corresponds to a path in the set of paths. In some embodiments, simulation module 226 determines, for each path, a number of edges that are traversed by other paths. Additionally, simulation module 226 determines, for each edge that is traversed by other paths, a number of other paths that traverse the edge.
  • In some embodiments, determining the plurality of operations or operation tasks that are affected by congestion includes determining that a set of paths traverse one or more of the same nodes. Each operation or operation task in the plurality of operations or operation tasks corresponds to a path in the set of paths. In some embodiments, simulation module 226 determines, for each path, a number of nodes that are traversed by other paths. Additionally, simulation module 226 determines, for each node that is traversed by other paths, a number of other paths that traverse the node.
  • In some embodiments, determining that a set of paths traverse one or more of the same nodes and/or one or more of the same edges is based on schedules of the operations or operation tasks associated with the paths 250. If two paths traverse the same edge or not, but do not traverse the edge or node at the same time or during the same time period, then simulation module 226 determines that the two paths do not traverse the same edge or node for the purpose of determining whether the corresponding operations or operation tasks are affected by congestion. For example, if a first path and a second path both traverse an edge, but simulation module 226 the first path and second path traverse the edge at different times, then simulation module 226 may determine that the first path and the second path do not traverse the same edge when determining the set of paths that traverse one or more of the same edges.
  • In one or more embodiments, simulation module 226 determines, for each path, a time or time period in which the path traverses each edge and/or node of the path. For example, operation data 210 may include data indicating a schedule for an operation or operation task. Simulation module 226 determines the time or time period in which a path traverses each edge and/or node of the path based on the schedule of the corresponding operation or operation task. Additionally, in some embodiments, simulation module 226 determines an amount of time taken to traverse each edge and/or node of the path. Determining the time or time period in which the path traverses an edge or a node is further based on the amount of time required to traverse each edge and/or node of the path.
  • As an example, operation data 210 may include data indicating an amount of time a worker is expected to spend during each step of the operation or operation task. Simulation module 226 determines the amount of time in which a path traverses each node of the path based on the amount of time a worker is expected to spend at the location corresponding to the node when performing the corresponding operation or operation task. As another example, simulation module 226 may estimate an amount of time required to traverse a path based on a length of the path and an estimated movement speed of a worker on the pathway corresponding to the path.
  • In response to determining that the plurality of operations or operation tasks are affected by congestion, simulation module 226 adjusts or weighs the productivity value associated with each operation or operation task of the plurality of operations or operation tasks. Additionally, in some embodiments, adjusting or weighing the productivity value includes determining an amount of congestion that affects the operation or operation task and adjusting or weighing the productivity value based on the amount of congestion.
  • In some embodiments, the amount of congestion affecting an operation or operation task may be based on the number of edges traversed by the corresponding path that are traversed by other paths; for each edge that is traversed by other paths, the number of other paths that also traverse the edge; the number of nodes traversed by the corresponding path that are traversed by other paths; for each node that is traversed by other paths, the number of other paths that also traverse the node; or any combination thereof.
  • In some embodiments, the amount by which the productivity value of an operation or operation task is weighted or adjusted is relative to the amount of congestion affecting other operations or operation tasks. For example, a first operation may correspond to a path that traverses the same edge as a first number of other paths and a second operation may correspond to a path that traverses the same edge as a second number of other paths, where the second number is greater than the first number. The productivity value for the first operation may be scaled by a first amount, and the productivity value for the second operation may be scaled by a second amount that is greater than the first amount.
  • FIG. 3 is a flowchart of method steps for productivity calculation performed by the productivity calculation engine 118 of FIG. 1, according to various embodiments of the present disclosure. Although the method steps are described in conjunction with the systems of FIGS. 1 and 2, persons skilled in the art will understand that any system configured to perform the method steps in any order falls within the scope of the present disclosure.
  • In step 302, layout generation module 220 receives workstation data 212 and operation data 210 from database 120. Workstation data 212 includes data describing a plurality of workstations of a building. Operation data 210 includes data describing one or more operations of the building.
  • In some embodiments, layout generation module 220 also receives geometry data 214 from database 120. In other embodiments, layout generation module 220 receives geometry data 214 from another application, tool, module, or data source. For example, layout generation module 220 may receive a 3D model of a building from an application that was used to generate or create the 3D model.
  • In step 304, layout generation module 220 generates a layout 230 based on the workstation data 212 and operation data 210. Generating the layout 230 is performed in a manner similar to that disclosed above with respect to layout generation module 220 and as further described below with regards to FIG. 4. In some embodiments, generating the layout 230 includes determining, for each workstation of a plurality of workstations of a building, a location of the workstation within the building. Additionally, in some embodiments, generating the layout 230 further includes determining locations within the building of other rooms or elements of the building, such as storage facilities, tools, supplies, entrances, exits, elevators, stairs, material transport paths or structures, or other rooms or elements used by the plurality of operations.
  • In some embodiments, generating the layout 230 is further based on geometry data 214. For example, generating the layout 230 may be based on a pre-defined building geometry. Layout generation module 220 determines locations for the plurality of workstations within the boundaries of the building indicated by the geometry data 214. As another example, generating the layout 230 may be based on a pre-defined site geometry. Layout generation module 220 determines locations for the plurality of workstations within the boundaries of the site indicated by the geometry data 214.
  • In some embodiments, generating the layout 230 includes generating geometry data for the building. The geometry data for the building may include data indicating a size and shape of the building, exterior walls of the building, interior walls of the building such as walls of workstations and other rooms, and sizes and shapes of pathways within the building such as stairs, transport paths, corridors, and hallways.
  • In some embodiments, generating the layout 230 includes generating geometry data for the building. The geometry data for the building may include data indicating a size and shape of the building, exterior walls of the building, interior walls of the building such as walls of workstations and other rooms, and sizes and shapes of pathways within the building such as stairs, transport paths, corridors, and hallways.
  • FIG. 4 is a flowchart of method steps for layout generation performed by the productivity calculation engine 118 of FIG. 1 and the layout generation module 220 of FIG. 2, according to various embodiments of the present disclosure. Although the method steps are described in conjunction with the systems of FIGS. 1 and 2, persons skilled in the art will understand that any system configured to perform the method steps in any order falls within the scope of the present disclosure.
  • In step 402, layout generation module 220 selects a first workstation and determines a location of the first workstation. Determining the location of the first workstation is performed in a manner similar to that disclosed above with respect to layout generation module 220. In some embodiments, determining the location for the first workstation is based on one or more of: the size and shape of the first workstation, the size and shape of the building, and the size and shape of the site. In some embodiments, the location for the first workstation is selected randomly. In some embodiments, the location of the first workstation is selected from one or more pre-determined or pre-configured locations.
  • Additionally, in some embodiments, layout generation module 220 determines an orientation of the first workstation. In some embodiments, determining an orientation for the first workstation is based on one or more of: the size and shape of the first workstation, the size and shape of the building, and the size and shape of the site. In some embodiments, the orientation for the first workstation may be selected randomly. In some embodiments, the orientation of the first workstation is selected from one or more pre-determined or pre-configured locations.
  • In step 404, layout generation module 220 determines whether locations of any additional workstations depend on the location of the first workstation. Determining whether locations of any additional workstations depend on the location of the first workstation is performed in a manner similar to that disclosed above with respect to layout generation module 220.
  • In some embodiments, determining whether locations of any additional workstations depend on the location of the first workstation includes determining if any workstations are associated with a location restriction that specifies the first workstation.
  • In some embodiments, determining whether locations of any additional workstations depend on the location of the first workstation includes determining if any workstations are associated with the same operation, operation category, or operation task as the first workstation.
  • In step 406, layout generation module 220 determines locations of any additional workstations based on the location of the first workstation. Determining the locations of any additional workstations based on the location of the first workstation is performed in a manner similar to that disclosed above with respect to layout generation module 220.
  • In some embodiments, in response to determining that a location restriction specifies the first workstation, layout generation module 220 determines a second workstation that is associated with the location restriction. Layout generation module 220 determines a location for the second workstation based on the location restriction and the location of the first workstation. Additionally, in some embodiments, layout generation module 220 may determine the location for the second workstation based on any additional location restrictions associated with the second workstation. If the second workstation is associated with location restrictions that specify other workstations whose location has not been determined, layout generation module 220 may determine the location for the second workstation after locations have been determined for the other workstations
  • In some embodiments, in response to determining that a second workstation is associated with the same operation, operation category, or operation task as the first workstation, layout generation module 220 determines a location for the second workstation based on the location of the first workstation. Additionally, in some embodiments, layout generation module 220 determines the location for the second workstation based on data describing the operation, operation category, or operation task, such as an order in which the second workstation is accessed by an operation or operation task workflow relative to the first workstation and other workstations accessed by the operation or operation task workflow.
  • The above steps 402-406 are repeated for remaining workstations whose locations have not yet been determined, until a respective location has been determined for all workstations of the plurality of workstations.
  • Referring back to FIG. 3, in step 306, simulation module 226 generates, for each operation task of a plurality of operation tasks described in operation data 210, a productivity value for the operation task. Generating the productivity values for the plurality of operation tasks is performed in a manner similar to that disclosed above with respect to analysis graph generation module 222, path generation module 224, and simulation module 226, and as further described below with respect to FIG. 5.
  • FIG. 5 is a flowchart of method steps for operation productivity and overall productivity calculation performed by the productivity calculation engine 118 of FIG. 1 and the analysis graph generation module 222, path generation module 224, and simulation module 226 of FIG. 2, according to various embodiments of the present disclosure. Although the method steps are described in conjunction with the systems of FIGS. 1 and 2, persons skilled in the art will understand that any system configured to perform the method steps in any order falls within the scope of the present disclosure.
  • In step 502, analysis graph generation module 222 receives the layout 230. Additionally, analysis graph generation module 222 may receive operation data 210 and workstation data 212. In some embodiments, analysis graph generation module 222 receives the layout 230 from layout generation module 220. In other embodiments, analysis graph generation module 222 receives the layout 230 from another application, tool, or module that generated layout 230. For example, analysis graph generation module 222 may receive a layout 230 from an application that generates and optimizes building layouts.
  • In step 504, analysis graph generation module 222 generates an analysis graph 240 based on the layout 230. Analysis graph 240 comprises a plurality of nodes and a plurality of edges connecting the nodes. Each node of the plurality of nodes corresponds to a location of a workstation indicated by the layout. Additionally, in some embodiments, the analysis graph may include one or more nodes that correspond to the locations of other elements of the building layout such as workstation access points, tool and supply storage facilities, and elevators. Each edge of the graph corresponds to a pathway connecting two workstations, such as a hallway, corridor, stairway, or other transport path.
  • In some embodiments, generating the analysis graph 240 based on the layout 230 includes determining a plurality of locations corresponding to workstations and other building elements in the layout. Analysis graph generation module 222 generates a respective node of the analysis graph for each location of the plurality of locations. Additionally, in some embodiments, analysis graph generation module 222 generates, based on workstation data 212, data describing the workstation or other building element corresponding to the location and associates the data with the respective node.
  • In some embodiments, generating the analysis graph 240 based on the layout 230 includes determining a plurality of pathways in the layout. Analysis graph generation module 222 determines, for each pathway of the plurality of pathways, a first location and a second location connected by the pathway. Analysis graph generation module 222 generates a respective edge corresponding to the pathway, where the edge connects a first node corresponding to the first location and a second node corresponding to the second location. Additionally, in some embodiments, analysis graph generation module 222 generates, based on layout 230, data describing the pathway and associates the data with the respective edge.
  • In step 506, path generation module 224 determines workstation locations for an operation task of the plurality of operation tasks based on operation data 210. In some embodiments, path generation module 224 determines, based on the operation data 210, one or more workstations used by the operation task. Additionally, in some embodiments, path generation module 224 determines an order in which the workstations are accessed by workers when performing steps of the operation task.
  • In step 508, path generation module 224 determines additional building locations for the operation task. In some embodiments, path generation module 224 determines, based on the operation data 210, determining, one or more elements of the building, such as workstation access points, tool or supply storage facilities, equipment, materials, or elevators, that are used by the operation task. Additionally, in some embodiments, path generation module 224 determines an order in which the workstations and building elements are accessed by workers when performing steps of the operation task.
  • In step 510, path generation module 224 calculates a path for the operation or operation task. In some embodiments, path generation module 224 calculates a shortest path through the analysis graph 240 that includes the nodes corresponding to the one or more workstations used by the operation task and any additional building elements used by the operation task. Additionally, in some embodiments, path generation module 224 calculates the shortest path through the analysis graph 240 that traverses the nodes in the order in which the one or more workstations and additional building elements are accessed by workers when performing the operation task.
  • In some embodiments, calculating a path for the operation task further includes determining, based on the operation data 210, one or more transport requirements or restrictions associated with the operation task. Calculating the shortest path through the analysis graph 240 includes calculating the shortest path that follows the one or more transport requirements or restrictions associated with the operation task.
  • The above steps 506-510 are repeated for each operation task of the plurality of operations or operation tasks to generate a plurality of paths 250 corresponding to the plurality of operations or operation tasks.
  • In step 512, simulation module 226 calculates a plurality of task productivity values based on the plurality of paths 250. For each path in the plurality of paths, simulation module 226 calculates a respective task productivity value. In some embodiments, each task productivity value corresponds to a length of the corresponding path. In other embodiments, each task productivity value corresponds to the length of the pathways traversed by corresponding path.
  • In some embodiments, calculating a task productivity value for a path includes determining whether a travel burden is associated with the operation task corresponding to the path. In response to determining that a travel burden is associated with the operation or operation task, simulation module 226 adjusts or weighs the productivity value associated with the operation or operation task. In some embodiments, adjusting or weighing the productivity value may be based on the severity of the travel burden.
  • In some embodiments, calculating a task productivity value for a path includes determining whether the operation task corresponding to the path is affected by congestion. Determining whether the operation task is affected by congestion may include one or more of: determining whether edges traversed by the path are also traversed by other paths; determining whether nodes traversed by the path are also traversed by other paths; determining a time or time period in which the path traverses each edge and/or node; determining a time or time period in which other paths traverse each respective edge and/or node of the other paths. In response to determining that the operation task is affected by congestion, simulation module 226 adjusts or weighs the productivity value associated with each operation or operation task of the plurality of operations or operation tasks. Additionally, in some embodiments, adjusting or weighing the productivity value includes determining an amount of congestion that affects the operation or operation task and adjusting or weighing the productivity value based on the amount of congestion.
  • Referring back to FIG. 3, in step 308, simulation module 226 generates, based on the productivity values for the plurality of operations or operation tasks, one or more layout productivity values 228 for the layout 230. Generating the overall productivity values for the layout are performed in a manner similar to that disclosed above with respect to simulation module 226.
  • In one or more embodiments, each layout productivity value 228 corresponds to a respective operation of one or more operations of the building. Each operation is associated with a respective plurality of operation tasks. Generating the layout productivity value corresponding to an operation is based on the task productivity values associated with the respective plurality of operation tasks. In some embodiments, the layout productivity value 228 for an operation is a sum of the task productivity values associated with the plurality of operation tasks of the operation.
  • In sum, the computer system generates performance metrics related to a building, including one or more productivity values that indicate a level of productivity corresponding to a layout of a building. The computer system receives input data describing a plurality of workstations for the building and a plurality of operations that take place in the building.
  • In one approach, the computer system generates a layout of the building that specifies a location within the building for each workstation of the plurality of workstations based on the input data. For example, the data describing the plurality of workstations may indicate which workstations should be located adjacent to one another, or data describing the plurality of operations may indicate which workstations are needed for each operation. The computer system generates the layout based on which workstations should be located adjacent to one another and/or which workstations are needed to complete a given operation or set of operations. In another approach, the computer system receives a pre-defined layout that specifies the location within the building for each workstation of the plurality of workstations.
  • For each operation of the plurality of operations, the computer system calculates a productivity value. Calculating the productivity value for an operation may be based on any number of features of the layout of the building and the operation, such as the workstations required by the operation, the locations of the workstations required by the operation, the order of workstations required by the operation, the location of supplies and tools required by the operation, the amount of time spent by a worker at each workstation required by the operation, and the distance and travel time between workstations required by the operation.
  • Based on the productivity values for the plurality of operations, the computer system calculates one or more productivity values for the layout of the building. In some embodiments, each operation of the plurality of operations corresponds to a respective operational category of one or more operational categories. The computer system generates a respective productivity value for each operational category based on the productivity values of the operations that correspond to the operational category. In other embodiments, other methods for grouping operations into various categories may be used.
  • At least one advantage of the disclosed techniques is that the computer system measures productivity of a building or workplace based on a proposed layout or an automatically-generated layout for the building or workplace, without the layout being implemented and used in operation of the building or workplace. Unlike typical approaches that involve measuring productivity in the building or workplace after creating and implementing a layout, this approach allows quick analysis, measurement, and comparison of the productivity of multiple potential layouts. A user can utilize the generated measurements to further optimize potential layouts and quickly see how different adjustments to a layout affect the productivity. In addition, this approach may be used as part of a design application that iteratively generates improved layouts that meet specific design objectives. For example, the design application may utilize the productivity values for the different operational categories in order to determine a layout that is most effective for a particular operational category. As another example, the design application may utilize productivity values as one of several metrics to consider when evaluating different layouts. Accordingly, these technical advantages provide one or more technological advancements over prior art approaches.
  • 1. In various embodiments, a computer-implemented method for determining performance metrics related to a building comprises receiving workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building, generating, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation, generating, based on the building layout, an analysis graph, for each operation of the one or more operations, generating one or more paths based on the analysis graph, computing, based at least on the one or more paths, a productivity value associated with the operation.
  • 2. The method of clause 1, where generating the one or more paths is further based on one or more workstations associated with the operation.
  • 3. The method of clause 1 or 2, where generating the one or more paths is further based on one or more transport restrictions associated with the operation.
  • 4. The method of any of clauses 1-3, where generating the one or more paths is further based on one or more workflows associated with the operation.
  • 5. The method of any of clauses 1-4, where each operation of the one or more operations is associated with a plurality of operation tasks, and where generating the one or more paths includes generating, for each operation task of the plurality of operation tasks, a respective path corresponding to the operation task.
  • 6. The method of any of clauses 1-5, where computing the productivity value associated with the operation includes computing, for each operation task of the plurality of operation tasks, a respective productivity value associated with the operation task based on the path corresponding to the operation task.
  • 7. The method of any of clauses 1-6, further comprising, for each operation of the one or more operations, determining, based on the operation data, whether the operation is associated with a travel burden, and in response to determining that the operation is associated with the travel burden, adjusting the productivity value associated with the operation.
  • 8. The method of any of clauses 1-7, further comprising, for each operation of the one or more operations, determining, based on the one or more paths, whether the operation is affected by congestion, and in response to determining that the operation is affected by congestion, adjusting the productivity value associated with the operation.
  • 9. The method of any of clauses 1-8, further comprising computing one or more overall productivity values associated with the building layout based on the productivity values associated with the one or more operations.
  • 10. The method of any of clauses 1-9, where generating the building layout includes determining a location of a first workstation of the plurality of workstations, determining that a location of a second workstation of the plurality of workstations depends on the location of the first workstation, and determining the location of the second workstation based on the location of the first workstation.
  • 11. The method of any of clauses 1-10, where determining that the location of the second workstation depends on the location of the first workstation is based on a location restriction associated with the second workstation.
  • 12. The method of any of clauses 1-11, where determining that the location of the second workstation depends on the location of the first workstation is based on one or more of an operation associated with the first workstation, an operation associated with the second workstation, a category associated with the first workstation, a category associated with the second workstation, an operation task associated with the first workstation, or an operation task associated with the second workstation.
  • 13. In various embodiments, one or more non-transitory computer readable media store instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of receiving workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building, generating, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation, generating, based on the building layout, an analysis graph, and for each operation of the one or more operations, generating one or more paths based on the analysis graph, and computing, based at least on the one or more paths, a productivity value associated with the operation.
  • 14. The one or more non-transitory computer readable media of clause 13, where generating the one or more paths is further based on one or more workstations associated with the operation.
  • 15. The one or more non-transitory computer readable media of clause 13 or 14, where generating the one or more paths is further based on one or more transport restrictions associated with the operation.
  • 16. The one or more non-transitory computer readable media of any of clauses 13-15, where generating the one or more paths is further based on one or more workflows associated with the operation.
  • 17. The one or more non-transitory computer readable media of any of clauses 13-16, where each operation of the one or more operations is associated with a plurality of operation tasks, and where generating the one or more paths includes generating, for each operation task of the plurality of operation tasks, a respective path corresponding to the operation task.
  • 18. The one or more non-transitory computer readable media of any of clauses 13-17, where computing the productivity value associated with the operation includes computing, for each operation task of the plurality of operation tasks, a respective productivity value associated with the operation task based on the path corresponding to the operation task.
  • 19. The one or more non-transitory computer readable media of any of clauses 13-18, further comprising, for each operation of the one or more operations, determining, based on the operation data, whether the operation is associated with a travel burden, and in response to determining that the operation is associated with the travel burden, adjusting the productivity value associated with the operation.
  • 20. In various embodiments, a computer system comprises one or more memories storing instructions, and one or more computer processors for processing the instructions to receive workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building, generate, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation, generate, based on the building layout, an analysis graph, and for each operation of the one or more operations, generate one or more paths based on the analysis graph, and compute, based at least on the one or more paths, a productivity value associated with the operation.
  • Any and all combinations of any of the claim elements recited in any of the claims and/or any elements described in this application, in any fashion, fall within the contemplated scope of the present invention and protection.
  • The descriptions of the various embodiments have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments.
  • Aspects of the present embodiments may be embodied as a system, method or computer program product. Accordingly, aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “module,” a “system,” or a “computer.” In addition, any hardware and/or software technique, process, function, component, engine, module, or system described in the present disclosure may be implemented as a circuit or set of circuits. Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
  • Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Aspects of the present disclosure are described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general-purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine. The instructions, when executed via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions/acts specified in the flowchart and/or block diagram block or blocks. Such processors may be, without limitation, general purpose processors, special-purpose processors, application-specific processors, or field-programmable gate arrays.
  • The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
  • While the preceding is directed to embodiments of the present disclosure, other and further embodiments of the disclosure may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.

Claims (20)

What is claimed is:
1. A computer-implemented method for determining performance metrics related to a building, the method comprising:
receiving workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building;
generating, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation;
generating, based on the building layout, an analysis graph; and
for each operation of the one or more operations:
generating one or more paths based on the analysis graph; and
computing, based at least on the one or more paths, a productivity value associated with the operation.
2. The method of claim 1, wherein generating the one or more paths is further based on one or more workstations associated with the operation.
3. The method of claim 1, wherein generating the one or more paths is further based on one or more transport restrictions associated with the operation.
4. The method of claim 1, wherein generating the one or more paths is further based on one or more workflows associated with the operation.
5. The method of claim 1, wherein each operation of the one or more operations is associated with a plurality of operation tasks, and wherein generating the one or more paths includes generating, for each operation task of the plurality of operation tasks, a respective path corresponding to the operation task.
6. The method of claim 5, wherein computing the productivity value associated with the operation includes computing, for each operation task of the plurality of operation tasks, a respective productivity value associated with the operation task based on the path corresponding to the operation task.
7. The method of claim 1, further comprising, for each operation of the one or more operations:
determining, based on the operation data, whether the operation is associated with a travel burden; and
in response to determining that the operation is associated with the travel burden, adjusting the productivity value associated with the operation.
8. The method of claim 1, further comprising, for each operation of the one or more operations:
determining, based on the one or more paths, whether the operation is affected by congestion; and
in response to determining that the operation is affected by congestion, adjusting the productivity value associated with the operation.
9. The method of claim 1, further comprising computing one or more overall productivity values associated with the building layout based on the productivity values associated with the one or more operations.
10. The method of claim 1, wherein generating the building layout includes:
determining a location of a first workstation of the plurality of workstations;
determining that a location of a second workstation of the plurality of workstations depends on the location of the first workstation; and
determining the location of the second workstation based on the location of the first workstation.
11. The method of claim 10, wherein determining that the location of the second workstation depends on the location of the first workstation is based on a location restriction associated with the second workstation.
12. The method of claim 10, wherein determining that the location of the second workstation depends on the location of the first workstation is based on one or more of: an operation associated with the first workstation, an operation associated with the second workstation, a category associated with the first workstation, a category associated with the second workstation, an operation task associated with the first workstation, or an operation task associated with the second workstation.
13. One or more non-transitory computer readable media storing instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of:
receiving workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building;
generating, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation;
generating, based on the building layout, an analysis graph; and
for each operation of the one or more operations:
generating one or more paths based on the analysis graph; and
computing, based at least on the one or more paths, a productivity value associated with the operation.
14. The one or more non-transitory computer readable media of claim 13, wherein generating the one or more paths is further based on one or more workstations associated with the operation.
15. The one or more non-transitory computer readable media of claim 13, wherein generating the one or more paths is further based on one or more transport restrictions associated with the operation.
16. The one or more non-transitory computer readable media of claim 13, wherein generating the one or more paths is further based on one or more workflows associated with the operation.
17. The one or more non-transitory computer readable media of claim 13, wherein each operation of the one or more operations is associated with a plurality of operation tasks, and wherein generating the one or more paths includes generating, for each operation task of the plurality of operation tasks, a respective path corresponding to the operation task.
18. The one or more non-transitory computer readable media of claim 17, wherein computing the productivity value associated with the operation includes computing, for each operation task of the plurality of operation tasks, a respective productivity value associated with the operation task based on the path corresponding to the operation task.
19. The one or more non-transitory computer readable media of claim 13, further comprising, for each operation of the one or more operations:
determining, based on the operation data, whether the operation is associated with a travel burden; and
in response to determining that the operation is associated with the travel burden, adjusting the productivity value associated with the operation.
20. A computer system, comprising:
one or more memories storing instructions; and
one or more computer processors for processing the instructions to:
receive workstation data describing a plurality of workstations included in the building and operation data describing one or more of operations performed in the building;
generate, based at least on the workstation data, a building layout specifying, for each workstation of the plurality of workstations, a respective location of the workstation;
generate, based on the building layout, an analysis graph; and
for each operation of the one or more operations:
generate one or more paths based on the analysis graph; and
compute, based at least on the one or more paths, a productivity value associated with the operation.
US17/098,214 2019-11-18 2020-11-13 Generating building designs that optimize productivity of the building Pending US20210150442A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US17/098,214 US20210150442A1 (en) 2019-11-18 2020-11-13 Generating building designs that optimize productivity of the building
PCT/US2020/060861 WO2021101876A1 (en) 2019-11-18 2020-11-17 Generating building designs that optimize productivity of the building
EP20824745.2A EP4062358A1 (en) 2019-11-18 2020-11-17 Generating building designs that optimize productivity of the building
CN202080080091.8A CN114787852A (en) 2019-11-18 2020-11-17 Generating building designs that optimize productivity of a building

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962937190P 2019-11-18 2019-11-18
US17/098,214 US20210150442A1 (en) 2019-11-18 2020-11-13 Generating building designs that optimize productivity of the building

Publications (1)

Publication Number Publication Date
US20210150442A1 true US20210150442A1 (en) 2021-05-20

Family

ID=75908218

Family Applications (6)

Application Number Title Priority Date Filing Date
US17/098,282 Active US11681971B2 (en) 2019-11-18 2020-11-13 Rapid exploration of building design options for ventilation
US17/098,287 Active 2041-01-25 US11823110B2 (en) 2019-11-18 2020-11-13 Optimizing building design for future transformation and expansion
US17/098,291 Pending US20210150091A1 (en) 2019-11-18 2020-11-13 Creating viable building designs on complex sites
US17/098,228 Pending US20210150105A1 (en) 2019-11-18 2020-11-13 Generating building designs while computationally optimizing for work conditions
US17/098,280 Active 2041-06-07 US11875296B2 (en) 2019-11-18 2020-11-13 Optimizing building design and architecture for sustainability certification
US17/098,214 Pending US20210150442A1 (en) 2019-11-18 2020-11-13 Generating building designs that optimize productivity of the building

Family Applications Before (5)

Application Number Title Priority Date Filing Date
US17/098,282 Active US11681971B2 (en) 2019-11-18 2020-11-13 Rapid exploration of building design options for ventilation
US17/098,287 Active 2041-01-25 US11823110B2 (en) 2019-11-18 2020-11-13 Optimizing building design for future transformation and expansion
US17/098,291 Pending US20210150091A1 (en) 2019-11-18 2020-11-13 Creating viable building designs on complex sites
US17/098,228 Pending US20210150105A1 (en) 2019-11-18 2020-11-13 Generating building designs while computationally optimizing for work conditions
US17/098,280 Active 2041-06-07 US11875296B2 (en) 2019-11-18 2020-11-13 Optimizing building design and architecture for sustainability certification

Country Status (4)

Country Link
US (6) US11681971B2 (en)
EP (1) EP4062358A1 (en)
CN (1) CN114787852A (en)
WO (1) WO2021101876A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220215134A1 (en) * 2021-01-05 2022-07-07 International Business Machines Corporation Estimating generation capability associated with a building design using digital replicas
US20220222608A1 (en) * 2021-01-11 2022-07-14 Johnson Controls Tyco IP Holdings LLP Systems and methods for workspace recommendations
US20230004579A1 (en) * 2021-07-02 2023-01-05 Viettel Group Method of controlling and handling a set of conditions in an event handling system with many complex internal conditions

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130197799A1 (en) * 2012-02-01 2013-08-01 Electronics And Telecommunications Research Institute Apparatus and method for determining indoor collection points and collecting heterogeneous infrastructure measurement information
US8594701B2 (en) * 2011-10-11 2013-11-26 Qualcomm Incorporated System and/or method for pedestrian navigation
US20160012357A1 (en) * 2014-07-09 2016-01-14 International Business Machines Corporation Automated Space Layout Based on Business Constraints
US9285227B1 (en) * 2015-01-29 2016-03-15 Qualcomm Incorporated Creating routing paths in maps
US20180047121A1 (en) * 2016-08-15 2018-02-15 Liveclinic Inc. Healthcare Delivery Computer Systems and Methods
US20180288850A1 (en) * 2015-10-22 2018-10-04 Philips Lighting Holding B.V. Trajectory tracking using low cost occupancy sensor
US10387811B2 (en) * 2016-08-29 2019-08-20 International Business Machines Corporation Optimally rearranging team members in an agile environment
US10917740B1 (en) * 2019-07-30 2021-02-09 Johnson Controls Technology Company Laboratory utilization monitoring and analytics
US11263363B2 (en) * 2020-05-22 2022-03-01 Angl Llc Dynamic generation and modification of a design model of a building for a construction project

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3005656A (en) 1960-08-19 1961-10-24 Fulton John Cot holder for emergency vehicles
US20040034555A1 (en) 2002-03-18 2004-02-19 Dismukes John P. Hierarchical methodology for productivity measurement and improvement of complex production systems
US20040078257A1 (en) 2002-10-21 2004-04-22 Laborsage, Inc. Labor and resource scheduling system
US20040113945A1 (en) 2002-12-12 2004-06-17 Herman Miller, Inc. Graphical user interface and method for interfacing with a configuration system for highly configurable products
US20060217876A1 (en) 2005-03-25 2006-09-28 Washington Inventory Service System and method for assigning plurality of locations to individuals and routing individuals to locations
WO2008030889A2 (en) 2006-09-06 2008-03-13 Johnson Controls Technology Company Space management system and method
US8005656B1 (en) 2008-02-06 2011-08-23 Ankory Ran Apparatus and method for evaluation of design
US8229176B2 (en) 2008-07-25 2012-07-24 Navteq B.V. End user image open area maps
US9213785B2 (en) 2009-02-03 2015-12-15 Thomas Plewe Systems and methods for component-based architecture design
US20100218131A1 (en) * 2009-02-23 2010-08-26 Microsoft Corporation Multiple views of multi-dimensional warehouse layout
US7912807B2 (en) 2009-04-30 2011-03-22 Integrated Environmental Solutions, Ltd. Method and system for modeling energy efficient buildings using a plurality of synchronized workflows
US20120072181A1 (en) 2010-09-22 2012-03-22 Behzad Imani Method and apparatus for optimizing hvac systems in buildings
US8276107B2 (en) 2010-10-18 2012-09-25 Algotochip Corporation Integrated data model based framework for driving design convergence from architecture optimization to physical design closure
US20130073344A1 (en) 2011-04-19 2013-03-21 Karen Parent Method and system of function analysis for optimizing productivity and performance of a workforce within a workspace
US8744812B2 (en) 2011-05-27 2014-06-03 International Business Machines Corporation Computational fluid dynamics modeling of a bounded domain
US20140278280A1 (en) 2013-03-15 2014-09-18 Eduardo Pardo-Fernandez System and method for designing buildings
KR20150125457A (en) * 2014-04-30 2015-11-09 한양대학교 에리카산학협력단 System and method to design building information modeling based for building assessment
US10801842B2 (en) 2014-12-09 2020-10-13 Oracle International Corporation Shortest path engine for warehouse management
US10504055B2 (en) 2016-09-02 2019-12-10 X Development Llc Optimization of warehouse layout based on customizable goals
US20180094936A1 (en) 2016-10-05 2018-04-05 Wal-Mart Stores, Inc. Systems and methods for determining or improving product placement and/or store layout by estimating customer paths using limited information
US11308246B2 (en) * 2016-11-14 2022-04-19 Autodesk, Inc. Generative design for architecture
EP3607512A1 (en) 2017-04-06 2020-02-12 Eckman, Christopher Automated warehouse design and simulations
CN113485133A (en) 2017-04-13 2021-10-08 江森自控科技公司 Building management system with spatial profiles
US10860750B2 (en) 2017-06-15 2020-12-08 Sap Se Model driven layout design for robotics warehouse
US10210212B2 (en) 2017-06-15 2019-02-19 Sap Se Dynamic layout management for robotics warehouse system
US10769855B2 (en) 2017-07-21 2020-09-08 Accenture Global Solutions Limited Personnel movement simulation and control
US10831941B2 (en) * 2017-10-04 2020-11-10 Aditazz, Inc. Method and system for automating resource selection and building plan layout generation
US20190188338A1 (en) 2017-12-19 2019-06-20 Saltmine Pte Ltd. Systems and methods for workspace environment design and build
US11250178B2 (en) 2018-05-11 2022-02-15 Spaceiq Llc Dynamic spatial clustering construction and visualization system for office space planning and optimization
US11468207B2 (en) 2018-05-21 2022-10-11 Arizona Board Of Regents On Behalf Of The University Of Arizona Systems and methods for simulation-based resource and layout optimization
US20200034503A1 (en) 2018-07-24 2020-01-30 Effective Technology Solutions, Inc. Space Planning Options Management and Visualization System with Intelligent Dynamic Cascading
US20200104431A1 (en) 2018-09-28 2020-04-02 United States Of America As Represented By The Secretary Of The Army Computer-aided design system for airborne contaminant flows
US11700804B2 (en) 2018-10-30 2023-07-18 Mjnn Llc Production facility layout for automated controlled environment agriculture
US11209798B1 (en) 2019-02-01 2021-12-28 Intrinsic Innovation Llc Robotic workspace layout planning
US20200272956A1 (en) 2019-02-24 2020-08-27 Effective Technology Solutions, Inc. Sensor and Machine Learning-Based Office Space Stacking Optimization System and Method
US20200311320A1 (en) 2019-03-30 2020-10-01 Wework Companies Llc Automatic office space layout
US11271222B2 (en) 2019-09-03 2022-03-08 Toyota Motor Engineering & Manufacturing North America, Inc. Fuel cell bipolar plates with flow uniformity
US10997325B2 (en) 2019-09-06 2021-05-04 Beamup Ltd. Structural design systems and methods for automatic extraction of data from 2D floor plans for retention in building information models

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8594701B2 (en) * 2011-10-11 2013-11-26 Qualcomm Incorporated System and/or method for pedestrian navigation
US20130197799A1 (en) * 2012-02-01 2013-08-01 Electronics And Telecommunications Research Institute Apparatus and method for determining indoor collection points and collecting heterogeneous infrastructure measurement information
US20160012357A1 (en) * 2014-07-09 2016-01-14 International Business Machines Corporation Automated Space Layout Based on Business Constraints
US20160012359A1 (en) * 2014-07-09 2016-01-14 International Business Machines Corporation Method for Automated Space Layout Based on Business Constraints
US9285227B1 (en) * 2015-01-29 2016-03-15 Qualcomm Incorporated Creating routing paths in maps
US20180288850A1 (en) * 2015-10-22 2018-10-04 Philips Lighting Holding B.V. Trajectory tracking using low cost occupancy sensor
US20180047121A1 (en) * 2016-08-15 2018-02-15 Liveclinic Inc. Healthcare Delivery Computer Systems and Methods
US10387811B2 (en) * 2016-08-29 2019-08-20 International Business Machines Corporation Optimally rearranging team members in an agile environment
US10917740B1 (en) * 2019-07-30 2021-02-09 Johnson Controls Technology Company Laboratory utilization monitoring and analytics
US11272316B2 (en) * 2019-07-30 2022-03-08 Johnson Controls Tyco IP Holdings LLP Laboratory utilization monitoring and analytics
US11263363B2 (en) * 2020-05-22 2022-03-01 Angl Llc Dynamic generation and modification of a design model of a building for a construction project

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
Bahrehmand, Arash et al., Optimizing layout using spatial quality metrics and user preferences Graphical Models, Vol. 93, 2017 (Year: 2017) *
Homayoumi, Hoda, A Survey of Computational Approaches to Space Layout Planning (1965-2000) (Year: 2007) *
Liggett, Robin S., Automated facilities layout: past, present and future Automation in Construction, Vol. 9, 2000 (Year: 2000) *
Nagy, Danil, Routing with graphs Generative Design, March 2, 2018 (Year: 2018) *
Seppanen, Jouko et al., Facilities Planning with Graph Theory Management Science, Vol. 17, No. 4, December 1970 (Year: 1970) *
Watson, Kelvin, Graph Theoretic Facility Layout Design and Evaluation: Theoretical and Practical Considerations Massey University, January 1996 (Year: 1996) *

Also Published As

Publication number Publication date
US20210150091A1 (en) 2021-05-20
US11875296B2 (en) 2024-01-16
WO2021101876A1 (en) 2021-05-27
US20210150109A1 (en) 2021-05-20
EP4062358A1 (en) 2022-09-28
US20210150089A1 (en) 2021-05-20
US11681971B2 (en) 2023-06-20
US20210150105A1 (en) 2021-05-20
US11823110B2 (en) 2023-11-21
CN114787852A (en) 2022-07-22
US20210150090A1 (en) 2021-05-20

Similar Documents

Publication Publication Date Title
US20210150442A1 (en) Generating building designs that optimize productivity of the building
US11263363B2 (en) Dynamic generation and modification of a design model of a building for a construction project
Irizarry et al. Optimizing location of tower cranes on construction sites through GIS and BIM integration
US10414047B2 (en) Method and a data processing system for simulating and handling of anti-collision management for an area of a production plant
US11328102B2 (en) Digital design tools for building construction
US20160031083A1 (en) Method and apparatus for industrial robotic energy saving optimization using fly-by
JP6725432B2 (en) Piping work route creation device, piping work route creation method and program
US9471720B1 (en) Combined vertical and horizontal load modeling for concrete structures
CN108351909B (en) Data processing system and method for automatically assembling parts in a Computer Aided Design (CAD) environment
US9292629B2 (en) Building path identification
US9223906B2 (en) Generating thermal zones
EP2998078A1 (en) Method for improving efficiency of industrial robotic energy consumption and cycle time by handling orientation at task location
Cai et al. Prediction-based path planning for safe and efficient human–robot collaboration in construction via deep reinforcement learning
Ma et al. 4D-based workspace conflict detection in prefabricated building constructions
US20140095117A1 (en) Three-dimensional human-work planning in hazardous environments with continuous feedback
US20140088925A1 (en) Systems and methods for computing solutions of geometric constraint equations of computer-implemented virtual models
Ariafar et al. The reconfiguration issue of stochastic facility layout design in cellular manufacturing systems
EP3968202A1 (en) Customizable reinforcement of learning column placement in structural design
JP2016109473A (en) Simulation device of laser measurement work
Li et al. Identifying Falling-from-Height Hazards in Building Information Models: A Voxelization-Based Method
US20240028787A1 (en) Techniques for design space exploration in a multi-user collaboration system
WO2023067374A1 (en) A method and a system for detecting possible collisions of objects in an industrial manufacturing environment
Rusek et al. Direct least squares and derivative-free optimisation techniques for determining mine-induced horizontal ground displacement
WO2015194026A1 (en) Simulated experiment device and simulated experiment method
Chen et al. Automated LiDAR Scan Planning of 3D Indoor Space Based on BIM and an Improved GA

Legal Events

Date Code Title Description
STPP Information on status: patent application and granting procedure in general

Free format text: APPLICATION DISPATCHED FROM PREEXAM, NOT YET DOCKETED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

AS Assignment

Owner name: AUTODESK, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BENJAMIN, DAVID;LAU, DAMON;STODDART, JAMES;AND OTHERS;SIGNING DATES FROM 20201106 TO 20211210;REEL/FRAME:058465/0138

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: ADVISORY ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: ADVISORY ACTION MAILED

STCV Information on status: appeal procedure

Free format text: NOTICE OF APPEAL FILED

STCV Information on status: appeal procedure

Free format text: APPEAL BRIEF (OR SUPPLEMENTAL BRIEF) ENTERED AND FORWARDED TO EXAMINER

STCV Information on status: appeal procedure

Free format text: EXAMINER'S ANSWER TO APPEAL BRIEF MAILED

STCV Information on status: appeal procedure

Free format text: ON APPEAL -- AWAITING DECISION BY THE BOARD OF APPEALS