US 12,008,873 B2
Scalable event-driven software architecture for the automation of people-centric systems
Rohan Sarkar, West Lafayette, IN (US); and Avinash Kak, West Lafayette, IN (US)
Assigned to Purdue Research Foundation, West Lafayette, IN (US)
Filed by Purdue Research Foundation, West Lafayette, IN (US)
Filed on Jun. 10, 2019, as Appl. No. 16/436,164.
Prior Publication US 2020/0388121 A1, Dec. 10, 2020
Int. Cl. G08B 13/14 (2006.01); G06F 9/54 (2006.01); G06Q 10/087 (2023.01); G06Q 50/26 (2012.01)
CPC G08B 13/14 (2013.01) [G06F 9/546 (2013.01); G06Q 10/087 (2013.01); G06Q 50/265 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method for tracking person-object interactions in an environment, the method comprising:
receiving, with at least one processor, (i) event data with respect to a plurality of person entities and a plurality of storage entities in the environment and (ii) storage content data with respect to the storage entities, the event data identifying times at which particular person entities in the plurality of person entities moved any extremity into particular storage entities in the plurality of storage entities, the event data identifying times at which particular person entities in the plurality of person entities removed any extremity from particular storage entities in the plurality of storage entities, the storage content data including a plurality of lists identifying object entities in a plurality of object entities that are located within particular storage entities in the plurality of storage entities at different times;
determining, with the at least one processor, based on the event data and the storage content data, a first object entity of the plurality of object entities that was at least one of (i) added to a first storage entity in the plurality of storage entities and (ii) removed from the first storage entity, as a result of a first interaction in which a first person entity in the plurality of person entities moved any extremity into the first storage entity and subsequently removed any extremity from the first storage entity;
determining, with the at least one processor, an application-specific quality of the first interaction based on (i) whether the first object entity was added or removed during the first interaction and (ii) whether the first object entity was added or removed during a second interaction that is previous in time to the first interaction or subsequent in time to the first interaction;
storing, in a memory, in at least one ownership log, an identification of which person entity in the plurality of person entities owns each storage entity in the plurality of storage entities;
determining, with the at least one processor, whether the first interaction was anomalous based on the application-specific quality of the first interaction and which person entity in the plurality of person entities owns the first storage entity into which the first object entity was added or from which the first object entity was removed; and
outputting, with an output device, a warning in response to determining that the first interaction was anomalous.