IP Library Granted Patent US 12,462,080
Granted Patent B2
US 12,462,080 · App. 18/211,187 · Granted Nov 4, 2025

Apparatus for artificial intelligence determination of building metrics for code compliance

Inventors: Michael Sheehan (Coral Gables, FL); Patrick E Murphy (Miami, FL); Johnny Maghzal (Miami, FL); Patrick Hughes (Miami, FL); Emilia Keller (State College, PA); Matthew Foley (Boxborough, MA)
Assignee: CodeComply.AI, Corp.
G06F30/27G06F30/13
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,462,080
App. No.
18/211,187
Filed
Jun 16, 2023
Granted
Nov 4, 2025
Kind
B2
Art Unit
2174
USPC
703/1
Abstract

Apparatus operative via executable software to quantify building metrics using artificial intelligence analysis of a design plan. A design plan is represented using multiple dynamic components. Each dynamic component may include a parameter changeable via the user interactive interface. The dynamic components may be arranged in a user interactive interface to form a first set of boundaries, including a respective length and area, and defining at least a portion of a first unit. AI is used to determine a longest path of egress and a supportable occupancy load that may be used to determine compliance with parameters of a given code. The AI may assess whether a building described in the design plans complies with a relevant code set forth by an authority having jurisdiction. Codes may include, for example, codes enforcing fire safety and the Americans with Disabilities Act.

Claims (66)

1 . Apparatus for quantifying building metrics based upon artificial intelligence analysis of a design plan, the apparatus comprising:

a semiconductor-based processor unit; and

a storage device storing a software program executable upon demand to cause the apparatus to:

a. receive into the apparatus the design plan comprising a description of at least a portion of a building;

b. represent a portion of the design plan as multiple components;

c. generate a first user interactive interface comprising user modifiable polygons representative of at least some of the multiple components representing the portion of the design plan, the user modifiable polygons including a parameter changeable via the first user interactive interface;

d. arrange the user modifiable polygons representative of multiple components included in the first user interactive interface to form a first set of boundaries, the first set of boundaries comprising a first length of a feature, and said first set of boundaries defining at least a portion of a first unit area;

e. generate a value for the first unit area based upon the user modifiable polygons;

f. determine an area unit per occupant for the design plan based upon a geopolitical location of the building;

g. calculate an occupancy load for the first unit area based upon the value for the first unit area and the determined area unit per occupant for the design plan;

h. identify a point of egress in the design plan;

i. designate a point on the design plan as a furthest point in the first unit area from the point of egress;

j. generate a path of egress representing an actual path of a person who will exit the first unit area to the point of egress;

k. calculate a travel distance along the path of egress to the point of egress from the point designated as the furthest point in the first unit area from the point of egress;

l. Receive a value comprising a maximum occupancy load for the first unit area and a maximum travel distance from the point designated as the furthest point in the first unit area to the point of egress in order to be in compliance with a set of conditions;

m. referencing the calculated occupancy load of the first unit area, the maximum occupancy load for the first unit area, the maximum travel distance from the furthest point within the first unit area to the point of egress, and the calculated travel distance from the furthest point within the first unit area to the point of egress along the path of egress, determine if the building is in compliance with the set of conditions;

n. indicate in the first user interactive interface whether the building is in compliance with the set of conditions; and

o. upon determining that the building is in non-compliance with the set of conditions, review a database that tracks common required changes to make the building conform to the set of conditions, generate a suggested modification to the design plan considering the review of the common required changes to meet compliance with the set of conditions, and generating values for parameters derived from a two dimensional reference to calculate a modification based on a determination of architectural aspects of the building via pattern recognition to cause the building to be compliant via modification of one or more of: an area of a common path of travel, a travel distance to traverse a dead end, and existence of a dead end.

2 . The apparatus of claim 1 , wherein the software program is executable upon demand to further cause the apparatus to: virtually divide the first unit area into multiple polygons, each polygon comprising at least one boundary along which the path of egress may be generated; and referencing the multiple polygons with each polygon comprising the at least one boundary along which the path of egress may be generated, calculate the furthest point in the first unit area, navigable by an occupant from the point of egress.

3 . The apparatus of claim 2 , wherein the software program is executable upon demand to further cause the apparatus to: determine a scale of the multiple components included in the design plan.

4 . The apparatus of claim 3 , wherein the software program is executable upon demand to further cause the apparatus to: reference the scale of the multiple components, and determine a width of the path of egress.

5 . The apparatus of claim 4 wherein the software program is executable upon demand to further cause the apparatus to: determine a width of one or both of: a doorway and a stairwell.

6 . The apparatus of claim 4 wherein the software program is executable upon demand to further cause the apparatus to train an Al engine via a human identifying portions of the design plan to comprise a boundary.

7 . The apparatus of claim 2 , wherein the software program is executable upon demand to further cause the apparatus to generate the path of egress to emulate a path a person walks through the portion of the building by providing a boundary that maintains the path of egress at least a minimum distance from a wall.

8 . The apparatus of claim 7 , wherein the minimum distance from a wall comprises between 6 inches and 8 inches.

9 . The apparatus of claim 7 wherein the software program is executable upon demand to further cause the apparatus to generate a polygon of about one half of a width of the first unit area; and generate the path of egress within the minimum distance comprising a width of the polygon about one half of the width of the first unit area.

10 . The apparatus of claim 9 wherein the width of the polygon comprises one half of the width of the first unit area.

11 . The apparatus of claim 7 wherein the software program is executable upon demand to further cause the apparatus to associate the path of egress with cartesian coordinates of pixels; and setting values of the pixels that are included in the path of egress to correspond with the minimum distance from the wall.

12 . The apparatus of claim 11 , wherein the software program is executable upon demand to further cause the apparatus to calculate a distance of an alternative path of egress comprising the path of egress through an area inside of the first unit area added to a second external path of egress through an area outside of the first unit area to a second point of egress.

13 . The apparatus of claim 7 , wherein the suggested modification is ranked according to a priority ranking of features of the at least the portion of the building.

14 . The apparatus of claim 13 , wherein the suggested modification to the design plan comprises one or more of: adding a doorway, changing a length of a wall, widening the path of egress, and eliminating a dead end.

15 . The apparatus of claim 1 , wherein the software program is executable upon demand to further cause the apparatus to: repeat steps l. d. through l. m. for multiple respective units included in the design plan in addition to the first unit area.

16 . The apparatus of claim 15 , wherein the software program is executable upon demand to further cause the apparatus to: generate an aggregate area of the multiple respective units included in the design plan and determine an occupancy load for the multiple respective units.

17 . The apparatus of claim 16 , wherein the software program is executable upon demand to further cause the apparatus to: determine an occupancy load for an entire building based upon: the aggregate area of the multiple respective units; common egress paths; and stairwells.

18 . The apparatus of claim 15 , wherein the software program is executable upon demand to further cause the apparatus to: determine a geopolitical locality and an authority having jurisdiction over a situs of the building; and include in the set of conditions, conditions specified by a building code adopted by the authority having the jurisdiction over the situs of the building.

19 . The apparatus of claim 18 , wherein the software program is executable upon demand to further cause the apparatus to: generate an egress path comprising a distance internal to the first unit area, and a distance via a common path external to the first unit area.

20 . The apparatus of claim 19 , wherein the software program is executable upon demand to further cause the apparatus to: generate a user interface comprising user interactive areas operative to change at least one of: a size and shape of at least one of the multiple components thereby changing at least one of: the first unit area of a first unit and a length of the egress path; and based upon the changing of the at least one of: the first unit area of the first unit and the length of the egress path, place the building in compliance with the set of conditions.

21 . The apparatus of claim 19 , wherein at least one of the multiple components comprises a line segment and wherein the software program is executable upon demand to further cause the apparatus to: receive an instruction via the first user interactive interface to modify a parameter of the line segment; modify the parameter of the line segment based upon the instruction received via the first user interactive interface; and change a length of the egress path.

22 . The apparatus of claim 21 , wherein the parameter of the line segment comprises a length of the line segment and wherein the software program is executable upon demand to further cause the apparatus to: modify a length of a wall based upon the length of the line segment.

23 . The apparatus of claim 18 , wherein at least one of the multiple components comprises a polygon and the software program is executable upon demand to further cause the apparatus to: receive an instruction via the first user interactive interface to modify a parameter of the polygon; modify the parameter of the polygon based upon the instruction received via the first user interactive interface; and change the first unit area based upon the modified parameter of the polygon.

24 . The apparatus of claim 23 , wherein the parameter modified comprises an area of the polygon.

25 . The apparatus of claim 23 , wherein the parameter modified comprises a shape of the polygon.

26 . The apparatus of claim 18 wherein the software program is executable upon demand to further cause the apparatus to determine that a longest path of egress includes a dead end; include in a calculation of the longest path of egress a distance based upon traversing the dead end to its end and looping back; and modify a component to shorten the distance based upon traversing the dead end to its end and looping back.

27 . The apparatus of claim 26 wherein the software program is executable upon demand to further cause the apparatus to display in the first user interactive interface an action that may be taken to place the building in compliance with the building code designated by the authority having the jurisdiction.

28 . The apparatus of claim 27 wherein the action that may be taken to place the building in compliance comprises at least one of: shortening the path of egress and widening the path of egress.

29 . Apparatus for quantifying building metrics based upon artificial intelligence analysis of a design plan, the apparatus comprising:

a semiconductor-based processor unit; and

a storage device storing a software program executable upon demand to cause the apparatus to:

a. receive into the apparatus the design plan comprising a description of at least a portion of a building;

b. represent a portion of the design plan as multiple dynamic components;

c. generate a first user interactive interface comprising at least some of the multiple dynamic components representing the portion of the design plan, each dynamic component including a parameter changeable via the first user interactive interface;

d. arrange the multiple dynamic components included in the first user interactive interface to form a first set of boundaries, the first set of boundaries comprising a respective first length, the first set of boundaries defining at least a portion of a first unit comprising a first unit area, the first set of boundaries comprising one or both of a line segment, and a polygon;

e. generate a value for the first unit area based upon the first set of boundaries;

f. calculate an occupancy load for the first unit based upon the value for the first unit area that is based upon the first set of boundaries;

g. identify a point of egress in the design plan;

h. designate a point on the design plan as a furthest point in the first unit from the point of egress;

i. generate a path of egress representing an actual path of a person who will exit the first unit to the point of egress;

j. calculate a travel distance along the path of egress to the point of egress from the point designated as the furthest point in the first unit from the point of egress;

k. receive a value comprising a maximum occupancy load for the first unit and a maximum travel distance from the point designated as the furthest point in the first unit to the point of egress in order to be in compliance with a set of conditions;

l. Referencing the calculated occupancy load of the first unit, the maximum occupancy load for the first unit, the maximum travel distance from the furthest point within the first unit to the point of egress, and the calculated travel distance from the furthest point within the first unit to the point of egress along the path of egress, determine if the building is in compliance with the set of conditions;

m. indicate in the first user interactive interface whether the building is in compliance with the set of conditions;

n. review a database that tracks common required changes to make the building conform to the set of conditions; and

o. generate automated revision suggestions to bring the design plan into compliance with the set of conditions, upon determining that the building is in non-compliance with the set of conditions, and generating values for parameters derived from a two dimensional reference in estimation elements to calculate based on a determination of architectural aspects of the building via pattern recognition to cause the building to be compliant modification of one or more of: an area of a common path of travel, a travel distance to traverse a dead end, and existence of a dead end, wherein the automated revision suggestions are ranked according to a priority ranking.

30 . The apparatus of claim 29 , wherein the software program is executable upon demand to further cause the apparatus to receive an instruction via the first user interactive interface to modify a parameter of the polygon, and modify the parameter of the polygon based upon the instruction received via the first user interactive interface.

31 . The apparatus of claim 30 , wherein the software program is executable upon demand to further cause the apparatus to change the first unit area of the first unit based upon the modifying of the parameter of the polygon.

32 . The apparatus of claim 31 , wherein the software program is executable upon demand to further cause the apparatus to repeat steps l.e. through l.m. to further determine if the building is in compliance with the set of conditions.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2025
From: TOGAL.AI INC.
To: CODECOMPLY.AI, CORP.
Reel/Frame 070863/0012 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2025
From: MAGHZAL, JOHNNY; FOLEY, MATTHEW; SHEEHAN, MICHAEL; HUGHES, PATRICK; MURPHY, PATRICK E; KELLER, EMILIA
To: TOGAL.AI INC.
Reel/Frame 070634/0271 →
Continuity (8)
Continuation 17809585 · Jun 29, 2022
Continuation 17697691 · Mar 17, 2022
Continuation 17515774 · Nov 1, 2021
Provisional Application 63231595 · Aug 10, 2021
Provisional Application 63158702 · Mar 9, 2021
Provisional Application 63158727 · Mar 9, 2021
Provisional Application 63158744 · Mar 9, 2021
Related Publication 20240078359A1 · Mar 7, 2024
References Cited (77)
US 4642780A · Thomson · 1987 [cited by applicant]
US 6756998B1 · Bilger · 2004 [cited by applicant]
US 9898912B1 · Jordan et al. · 2018 [cited by applicant]
US 11321500B1 · Oaks et al. · 2022 [cited by applicant]
US 20020013704A1 · Finney · 2002 [cited by applicant]
US 20050038636A1 · Wakelam et al. · 2005 [cited by applicant]
US 20060136179A1 · Sit · 2006 [cited by examiner]
US 20070009155A1 · Potts et al. · 2007 [cited by applicant]
US 20070237395A1 · Spencer et al. · 2007 [cited by applicant]
US 20080059220A1 · Roth · 2008 [cited by examiner]
US 20080126022A1 · Hoguet · 2008 [cited by examiner]
US 20080189166A1 · Brooks · 2008 [cited by applicant]
US 20080319812A1 · Sousa et al. · 2008 [cited by applicant]
US 20090024970A1 · Saito · 2009 [cited by examiner]
US 20090112525A1 · Adani · 2009 [cited by applicant]
US 20100066559A1 · Judelson · 2010 [cited by applicant]
US 20110041418A1 · Meserini · 2011 [cited by applicant]
US 20110063670A1 · Ito · 2011 [cited by applicant]
US 20110153524A1 · Schnackel · 2011 [cited by applicant]
US 20110213588A1 · Lin et al. · 2011 [cited by applicant]
US 20120109596A1 · Gladstone et al. · 2012 [cited by applicant]
US 20120253751A1 · Malka et al. · 2012 [cited by applicant]
US 20120276517A1 · Banaszuk · 2012 [cited by examiner]
US 20130120426A1 · DiVerdi et al. · 2013 [cited by applicant]
US 20130211790A1 · Loveland et al. · 2013 [cited by applicant]
US 20130218780A1 · Buzz · 2013 [cited by applicant]
US 20140244338A1 · Buzz · 2014 [cited by applicant]
US 20150131871A1 · Chen et al. · 2015 [cited by applicant]
US 20150169791A1 · Lavrov et al. · 2015 [cited by applicant]
US 20150227644A1 · Schultz · 2015 [cited by applicant]
US 20150234377A1 · Mizikovsky · 2015 [cited by applicant]
US 20150260541A1 · Smith · 2015 [cited by applicant]
US 20160076246A1 · Romanenko · 2016 [cited by applicant]
US 20160326760A1 · Seldin · 2016 [cited by applicant]
US 20170147717A1 · Chen et al. · 2017 [cited by applicant]
US 20170316115A1 · Lewis et al. · 2017 [cited by applicant]
US 20180032645A1 · Wright et al. · 2018 [cited by applicant]
US 20180121571A1 · Tiwari et al. · 2018 [cited by applicant]
US 20180218301A1 · Shike et al. · 2018 [cited by applicant]
US 20190022811A1 · Roettgen · 2019 [cited by applicant]
US 20190108603A1 · Waslander et al. · 2019 [cited by applicant]
US 20190130233A1 · Stenger et al. · 2019 [cited by applicant]
US 20190310653A1 · Lee et al. · 2019 [cited by applicant]
US 20200013127A1 · Gozes et al. · 2020 [cited by applicant]
US 20200134745A1 · McLinden et al. · 2020 [cited by applicant]
US 20200242849A1 · Cini · 2020 [cited by examiner]
US 20200249025A1 · Ho · 2020 [cited by applicant]
US 20200302630A1 · Spader et al. · 2020 [cited by applicant]
US 20210019453A1 · Yang · 2021 [cited by examiner]
US 20210073433A1 · Austern · 2021 [cited by examiner]
US 20210103687A1 · Harris et al. · 2021 [cited by applicant]
US 20210150088A1 · Gallo et al. · 2021 [cited by applicant]
US 20210165929A1 · Ayalon · 2021 [cited by applicant]
US 20210381861A1 · Brown et al. · 2021 [cited by applicant]
US 20220196491A1 · Dubov · 2022 [cited by applicant]
US 20220327264A1 · Murphy et al. · 2022 [cited by applicant]
US 20230153485A1 · Austern et al. · 2023 [cited by applicant]
CN 105023201A · 2015 [cited by applicant]
EP 3550493A1 · 2019 [cited by applicant]
WO 2016015431A1 · 2016 [cited by applicant]
WO 2020031009A1 · 2020 [cited by applicant]
WO 2020220068A1 · 2020 [cited by applicant]
WO 2022018775A1 · 2022 [cited by applicant]
WO 2022096863A1 · 2022 [cited by applicant]
Bigda, Kristin, Basics of Means of Egress Arrangement, National Fire Protection Association, available at https://www.nfpa.org/news-blogs-and-articles/blogs/2021/10/15/basics-of-means-of-egress-arrangement (Oct. 15, 202… [cited by examiner]
Kannala, Matti, Escape Route Analysis Based on Building Information Models: Design and Implementation, Helsinki University of Technology, available at http://mattikannala.fi/projects/masters-thesis/Escape-Route-Analysis… [cited by examiner]
Ziavras, Valerie, How to Calculate Occupant Load, National Fire Protection Association (NFPA), Helsinki University of Technology, Helsinki, Finland, available at https://www.nfpa.org/news-blogs-and-articles/blogs/2020/0… [cited by examiner]
ISR/WO issued Aug. 15, 2023 in correlated PCT/US2023/025631 by the International Bureau. [cited by applicant]
Risto Miikkulainen et al., Evolving Deep Neural Networks, Sentient Technologies, Inc., The University of Texas at Austin, arXiv:1703.00548v2 [cs.NE], Mar. 4, 2017. [cited by applicant]
Kannala, Matti Escape Route Analysis Based on Building Information Models: Design and Implementation, Department of Computer Science and Engineering, Helsinki University of Technology, Helsinki Finland, (Dec. 7, 2005) h… [cited by applicant]
International Preliminary report on patentability issued in International Application No. PCT/US2023/025631, on Dec. 18, 2024. [cited by applicant]
International Search Report and Written Opinion issued by the International Searching Authority in Intl Application PCT/US24/44858, on Nov. 21, 2024 (11 pages). [cited by applicant]
Han et al., “A performance-based approach to wheelchair accessible route analysis,” Advanced Engineering Informatics, vol. 16, Issue 1, Jan. 2002, pp. 53-71 [Online], [retrieved on Oct. 21, 2024]. Retrieved from the int… [cited by applicant]
International Search Report and Written Opinion issued by International Search Authority on Nov. 19, 2024, received by the Applicant on Mar. 20, 2025, in correlated international application No. PCT/US24/44877, 16 pages. [cited by applicant]
International Search Report and Written Opinion issued Nov. 20, 2024 in correlated International Application PCT/US24/44838, 8 pages. [cited by applicant]
International Search Report and Written Opinion issued Nov. 20, 2024 by the International Search Authority against international application PCT/US24/44868 and received by Applicant on Apr. 2, 2025. [cited by applicant]
CCPIA, Commercial Property Safety Requirements: Maximum Occupancy, available at https://ccpia.org/occupancy-load-signs/ (accessed Jun. 20, 2020). [cited by applicant]