Patents by Inventor Randall Nortman
Randall Nortman has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11709620Abstract: Systems and methods for sharing information between a publisher and a subscriber are disclosed. The system includes a shared memory and a memory broker. The memory broker is configured to receive a request for writing a message relating to a topic from a publisher and determine whether a communication channel corresponding to the topic exists in the shared memory. If the communication channel corresponding to the topic exists, the memory broker then assigns a buffer ring on the communication channel to the publisher, transmits information relating to the buffer ring to the publisher, and transmits information relating to the buffer ring to one or more subscribers of the communication channel.Type: GrantFiled: November 13, 2020Date of Patent: July 25, 2023Assignee: Ford Global Technologies, LLCInventor: Randall Nortman
-
Patent number: 11429290Abstract: Systems and methods for providing lockless access to a buffer ring are disclosed. The systems include a shared memory comprising the buffer ring. The buffer ring includes a plurality of sequentially arranged fixed size buffers configured to store messages, and a global header comprising a counter and a lock. The systems further include a publisher configured to write a plurality of messages to the plurality of fixed sized buffers in the buffer ring, and a subscriber configured to read one or more of the plurality of messages written by the publisher. The counter provides information relating to a fixed size buffer in the buffer ring to which the publisher will next write a message.Type: GrantFiled: November 13, 2020Date of Patent: August 30, 2022Assignee: Argo AI, LLCInventor: Randall Nortman
-
Publication number: 20220254204Abstract: To identify sources of data resulting from an execution flow in a robotic device such as an autonomous vehicle, an operating system receives sensor data from various sensors of the robotic device. For each sensor, the system generates a data log comprising an identifier of a first checkpoint associated with that sensor, as well as a first timestamp. The system performs an execution flow on the sensor data from that sensor. The system updates the data log to include an identifier and timestamp for one or more additional checkpoints during the execution flow. The system then fuses results, uses the fused data as an input for a decision process, and causes a component of the robotic device to take an action in response to an output of the decision process. The system may record the action, an action timestamp and the data logs for each sensor in a memory.Type: ApplicationFiled: April 27, 2022Publication date: August 11, 2022Inventors: Guillaume Binet, Nicholas J. Meyer, Randall Nortman
-
Methods and systems for enabling publish-subscribe message transmission in a distributed environment
Patent number: 11363099Abstract: Messaging systems and methods for routing messages between network nodes of a distributed computing system are disclosed. The messaging system includes a plurality of network nodes. Each network node includes a shared memory comprising a shared memory region configured to store messages, a publisher, and a first bridge module. The first bridge module determines if a subscriber for a shared memory region of that network node exists on a remote network node, where the remote network node does not include the publisher. Upon determining that the subscriber exists on the remote network node, the first bridging module reads a plurality of messages from the shared memory region, and transmits the plurality of messages to a second bridge module of the remote network node. The second bridge module is configured to write the plurality of messages to a remote memory region on the remote network node.Type: GrantFiled: November 13, 2020Date of Patent: June 14, 2022Assignee: Argo AI, LLCInventor: Randall Nortman -
Publication number: 20220155992Abstract: Systems and methods for sharing information between a publisher and a subscriber are disclosed. The system includes a shared memory and a memory broker. The memory broker is configured to receive a request for writing a message relating to a topic from a publisher and determine whether a communication channel corresponding to the topic exists in the shared memory. If the communication channel corresponding to the topic exists, the memory broker then assigns a buffer ring on the communication channel to the publisher, transmits information relating to the buffer ring to the publisher, and transmits information relating to the buffer ring to one or more subscribers of the communication channel.Type: ApplicationFiled: November 13, 2020Publication date: May 19, 2022Applicant: Argo AI, LLCInventor: Randall Nortman
-
METHODS AND SYSTEMS FOR ENABLING PUBLISH-SUBSCRIBE MESSAGE TRANSMISSION IN A DISTRIBUTED ENVIRONMENT
Publication number: 20220159070Abstract: Messaging systems and methods for routing messages between network nodes of a distributed computing system are disclosed. The messaging system includes a plurality of network nodes. Each network node includes a shared memory comprising a shared memory region configured to store messages, a publisher, and a first bridge module. The first bridge module determines if a subscriber for a shared memory region of that network node exists on a remote network node, where the remote network node does not include the publisher. Upon determining that the subscriber exists on the remote network node, the first bridging module reads a plurality of messages from the shared memory region, and transmits the plurality of messages to a second bridge module of the remote network node. The second bridge module is configured to write the plurality of messages to a remote memory region on the remote network node.Type: ApplicationFiled: November 13, 2020Publication date: May 19, 2022Inventor: Randall Nortman -
Publication number: 20220155975Abstract: Systems and methods for providing lockless access to a buffer ring are disclosed. The systems include a shared memory comprising the buffer ring. The buffer ring includes a plurality of sequentially arranged fixed size buffers configured to store messages, and a global header comprising a counter and a lock. The systems further include a publisher configured to write a plurality of messages to the plurality of fixed sized buffers in the buffer ring, and a subscriber configured to read one or more of the plurality of messages written by the publisher. The counter provides information relating to a fixed size buffer in the buffer ring to which the publisher will next write a message.Type: ApplicationFiled: November 13, 2020Publication date: May 19, 2022Inventor: Randall Nortman
-
Patent number: 11335141Abstract: To identify sources of data resulting from an execution flow in a robotic device such as an autonomous vehicle, an operating system receives sensor data from various sensors of the robotic device. For each sensor, the system generates a data log comprising an identifier of a first checkpoint associated with that sensor, as well as a first timestamp. The system performs an execution flow on the sensor data from that sensor. The system updates the data log to include an identifier and timestamp for one or more additional checkpoints during the execution flow. The system then fuses results, uses the fused data as an input for a decision process, and causes a component of the robotic device to take an action in response to an output of the decision process. The system may record the action, an action timestamp and the data logs for each sensor in a memory.Type: GrantFiled: October 22, 2019Date of Patent: May 17, 2022Assignee: Argo AI, LLCInventors: Guillaume Binet, Nicholas J. Meyer, Randall Nortman
-
Publication number: 20220043445Abstract: Disclosed herein are systems, methods, and computer program products for operating a robotic system. For example, the methods include by a processor: receiving a plurality of first signals that each comprise data produced by at least two sources of the robotic system and first keys respectively defined by identifiers for the at least two sources; generating second signals derived from the plurality of signals; combining second keys of the second signals to produce a third key; detecting an existence of an operational condition in the robotic system when the third key has a value different than an expected value; and causing a given action to be taken by the robotic system responsive to the existence of the operational condition.Type: ApplicationFiled: October 25, 2021Publication date: February 10, 2022Inventors: Randall Nortman, Michael Dacko
-
Patent number: 11209817Abstract: To determine a cause of a fault in a robotic system, a diagnostic service of the robotic system will receive primary signals from various processes running on the robotic system. The service will access a graph representation of functions as stored in memory, and the service will perform the functions on one or more of the primary signals to yield one or more derived signals. A sink of the robotic system will subscribing to a causal trace that includes a value for a specified one of the derived signals and an identification of each signal from which the specified derived signal was derived. During runtime, the sink will receive updates to the causal trace as the value for the specified derived signal changes. The diagnostic service will use the causal trace to identify a process that caused the fault.Type: GrantFiled: May 6, 2019Date of Patent: December 28, 2021Assignee: Argo AI, LLCInventors: Randall Nortman, Michael Dacko
-
Patent number: 11164403Abstract: A robotic system simultaneously monitors multiple processes running on the robotic system in an efficient manner that can help reduce communication and processing resource requirements. A diagnostic service of the robotic system receives primary signals from multiple tasks operating in the robotic system. For each of the primary signals, the service performing a first instance of a function on the primary signal to create a first derived signal for the primary signal. For each of the primary signals that is a keyed signal and associated with a multivalent key, the service will create an additional instance of the function to create an additional derived signal for each additional valence. The service will then using the each instance of the function to create an aggregated signal, and it will use the aggregated signal to simultaneously monitor each of the processes running on the robotic system.Type: GrantFiled: May 6, 2019Date of Patent: November 2, 2021Assignee: Argo AI, LLCInventors: Randall Nortman, Michael Dacko
-
Publication number: 20210118251Abstract: To identify sources of data resulting from an execution flow in a robotic device such as an autonomous vehicle, an operating system receives sensor data from various sensors of the robotic device. For each sensor, the system generates a data log comprising an identifier of a first checkpoint associated with that sensor, as well as a first timestamp. The system performs an execution flow on the sensor data from that sensor. The system updates the data log to include an identifier and timestamp for one or more additional checkpoints during the execution flow. The system then fuses results, uses the fused data as an input for a decision process, and causes a component of the robotic device to take an action in response to an output of the decision process. The system may record the action, an action timestamp and the data logs for each sensor in a memory.Type: ApplicationFiled: October 22, 2019Publication date: April 22, 2021Inventors: Guillaume Binet, Nicholas J. Meyer, Randall Nortman
-
Publication number: 20200357199Abstract: A robotic system simultaneously monitors multiple processes running on the robotic system in an efficient manner that can help reduce communication and processing resource requirements. A diagnostic service of the robotic system receives primary signals from multiple tasks operating in the robotic system. For each of the primary signals, the service performing a first instance of a function on the primary signal to create a first derived signal for the primary signal. For each of the primary signals that is a keyed signal and associated with a multivalent key, the service will create an additional instance of the function to create an additional derived signal for each additional valence. The service will then using the each instance of the function to create an aggregated signal, and it will use the aggregated signal to simultaneously monitor each of the processes running on the robotic system.Type: ApplicationFiled: May 6, 2019Publication date: November 12, 2020Inventors: Randall Nortman, Michael Dacko
-
Publication number: 20200356089Abstract: To determine a cause of a fault in a robotic system, a diagnostic service of the robotic system will receive primary signals from various processes running on the robotic system. The service will access a graph representation of functions as stored in memory, and the service will perform the functions on one or more of the primary signals to yield one or more derived signals. A sink of the robotic system will subscribing to a causal trace that includes a value for a specified one of the derived signals and an identification of each signal from which the specified derived signal was derived. During runtime, the sink will receive updates to the causal trace as the value for the specified derived signal changes. The diagnostic service will use the causal trace to identify a process that caused the fault.Type: ApplicationFiled: May 6, 2019Publication date: November 12, 2020Inventors: Randall Nortman, Michael Dacko
-
Patent number: 7996912Abstract: A method and system for monitoring users on one or more computer networks, disassociating personally identifiable information from the collected data, and storing it in a database so that the privacy of the users is protected. The system receives a user identifier and uses it to creates an anonymized identifier, defined as a user identifier stripped of all personally identifiable information. The anonymized identifier is then associated with one or more users' computer network transactions. The data is stored by a collection engine and then aggregated to a central database server across a computer network.Type: GrantFiled: January 29, 2009Date of Patent: August 9, 2011Assignee: Hitwise Pty. Ltd.Inventors: Jan-Dieter Spalink, Brian Gullette, Andrew Hatchell, Randall Nortman
-
Publication number: 20080098220Abstract: A method and system for monitoring users on one or more computer networks, disassociating personally identifiable information from the collected data, and storing it in a database so that the privacy of the users is protected. The system includes monitoring transactions at both a client and at a server, collecting network transaction data, and aggregating the data collected at the client and at the server. The system receives a user identifier and uses it to create an anonymized identifier. The anonymized identifier is then associated with one or more users' computer network transactions. The data is stored by a collection engine and then aggregated to a central database server across a computer network.Type: ApplicationFiled: October 30, 2007Publication date: April 24, 2008Applicant: Hitwise Pty. Ltd.Inventors: Jan-Dieter Spalink, Brian Gullette, Andrew Hatchell, Randall Nortman
-
Publication number: 20060111816Abstract: Methods, systems and computer program products are provided for controlling a climate in a building. Sensed data is received at a local processor in the building. The sensed data is associated with the climate in the building, weather outside the building and/or occupants of the building. The received sensed data is compared at the local processor with corresponding predictive data associated with the climate in the building, weather outside the building and/or occupants of the building. One or more parameters associated with the climate of the building is adjusted at the local processor based on a result of the comparison of the received sensed data and the predictive data.Type: ApplicationFiled: November 9, 2005Publication date: May 25, 2006Inventors: Jan-Dieter Spalink, Randall Nortman
-
Publication number: 20060070117Abstract: A method and system for monitoring users on one or more computer networks, disassociating personally identifiable information from the collected data, and storing it in a database so that the privacy of the users is protected. The system includes monitoring transactions at both a client and at a server, collecting network transaction data, and aggregating the data collected at the client and at the server. The system receives a user identifier and uses it to create an anonymized identifier. The anonymized identifier is then associated with one or more users' computer network transactions. The data is stored by a collection engine and then aggregated to a central database server across a computer network.Type: ApplicationFiled: September 27, 2005Publication date: March 30, 2006Applicant: Hitwise Pty. Ltd.Inventors: Jan-Dieter Spalink, Brian Gullette, Andrew Hatchell, Randall Nortman