Artificial intelligence controller that procedurally tailors itself to an application

US11886957B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11886957-B2
Application numberUS-201615334682-A
CountryUS
Kind codeB2
Filing dateOct 26, 2016
Priority dateJun 10, 2016
Publication dateJan 30, 2024
Grant dateJan 30, 2024

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method may include receiving a communication from a device at an artificial intelligence controller including state information for a software application component running on the device, the state information including information corresponding to at least one potential state change available to the software application component, and metrics associated with at least one end condition, interpreting the state information using the artificial intelligence controller, and selecting an artificial intelligence algorithm from a plurality of artificial intelligence algorithms for use by the software application component based on the interpreted state information; and transmitting, to the device, an artificial intelligence algorithm communication, the artificial intelligence algorithm communication indicating the selected artificial intelligence algorithm for use in the software application component on the device.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving a communication from a device at an artificial intelligence (AI) controller including state information for a software application component running on the device, the state information comprising: a plurality of entities that are provided by the software application component for interaction with by a user; a plurality of potential state changes that are available to each respective entity of the plurality of entities at a given time based on user input; and metrics associated with at least one end condition; interpreting the state information using the AI controller; associating, by the AI controller, scores for each of a plurality of AI algorithms for use by the software application component, each score being based on: the interpreted state information including the plurality of potential state changes that are available to each respective entity of the plurality of entities; and a computational complexity of simulating the software application component using the state information for each of the plurality of AI algorithms including an estimated amount of time for simulation; selecting, by the AI controller, an AI algorithm from the plurality of AI algorithms based on the scores; and transmitting, to the device, an AI algorithm communication, the AI algorithm communication indicating the selected AI algorithm for use in the software application component on the device. 2. The method of claim 1 , wherein the AI algorithm communication includes the selected AI algorithm, and wherein the metrics are selected from a group comprising a relative set of scores and an absolute set of scores. 3. The method of claim 1 , wherein associating scores for each of the plurality of AI algorithms for use by the software application component is further based on: comparing the interpreted state information to stored conditions, the stored conditions comprising: a threshold for the plurality of potential state changes, wherein the plurality of AI algorithms comprises a first set of AI algorithms responsive to the plurality of potential state changes being below the threshold and a second set of AI algorithms different from the first set of AI algorithms responsive to the plurality of potential state changes being at least the threshold; AI algorithms previously used for specific state information; and relative success of each AI algorithm for the specific state information. 4. The method of claim 1 , wherein the plurality of potential state changes includes an active potential state change where a representative entity changes a position with respect to a game area and an inactive potential state change where a representative entity remains still with respect to the game area. 5. The method of claim 1 , wherein the software application component is a mapping application, the at least one end condition comprises finding an optimal route to a final destination, and the plurality of potential state changes comprises route choices that each include a series of state changes. 6. The method of claim 1 , further comprising estimating, by the AI controller, the computational complexity of simulating the software application component using the state information for each of the plurality of AI algorithms. 7. The method of claim 1 , wherein selecting the AI algorithm from the plurality of AI algorithms is further based on a user-selected preference. 8. A system comprising: at least one processor; a storage device comprising instructions, which when executed by the at least one processor, configure the at least one processor to: receive a communication, at an artificial intelligence (AI) controller from a device, including state information for a software application component running on the device, the state information comprising: a plurality of entities that are provided by the software application component for interaction with by a user; a plurality of potential state changes that are available to each respective entity of the plurality of entities at a given time based on user input; and metrics associated with at least one end condition; interpreting the state information using the AI controller; associating, by the AI controller, scores for each of a plurality of AI algorithms for use by the software application component, each score being based on: the interpreted state information including the plurality of potential state changes that are available to each respective entity of the plurality of entities; and a computational complexity of simulating the software application component using the state information for each of the plurality of AI algorithms including an estimated amount of time for simulation; select an AI algorithm from the plurality of AI algorithms based on the scores; and transmit, to the device, an AI algorithm communication, the AI algorithm communication indicating the selected AI algorithm for use in the software application component on the device. 9. The system of claim 8 , wherein the AI algorithm communication includes the selected AI algorithm, and wherein the metrics are selected from a group comprising a relative set of scores and an absolute set of scores. 10. The system of claim 8 , wherein associating scores for each of the plurality of AI algorithms for use by the software application component is further based on: comparing the interpreted state information to stored conditions, the stored conditions comprising: a threshold for the plurality of potential state changes, wherein the plurality of AI algorithms comprises a first set of AI algorithms responsive to the plurality of potential state changes being below the threshold and a second set of AI algorithms different from the first set of AI algorithms responsive to the plurality of potential state changes being at least the threshold; AI algorithms previously used for specific state information; and relative success of each AI algorithm for the specific state information. 11. The system of claim 8 , wherein the plurality of potential state changes includes an active potential state change where a representative entity changes a position with respect to a game area and an inactive potential state change where a representative entity remains still with respect to the game area. 12. The system of claim 8 , wherein the software application component is a mapping application, the at least one end condition comprises finding an optimal route to a final destination, and the plurality of potential state changes comprises route choices that each include a series of state changes. 13. The system of claim 8 , wherein the instructions further configure the at least one processor to estimate the computational complexity of simulating the software application component using the state information for each of the plurality of AI algorithms. 14. The system of claim 8 , wherein selecting the AI algorithm from the plurality of AI algorithms is further based on a user-selected preference. 15. A non-transitory machine-readable medium comprising instructions, which when executed by the at least one processor, configure the at least one processor to: receive a communication, at an artificial intelligence (AI) controller from a device, including state information for a software application component running on the device, the state information comprising: a plurality of entities that are provided by the software application component for interaction with by a user; a plurality of potential state changes that are available to each respective entity of the plurality of entities

Assignees

Inventors

Classifications

  • G06N20/00Primary

    Machine learning · CPC title

  • Human Necessities · mapped topic

  • Details of game servers · CPC title

  • using program state or machine event data, e.g. server keeps track of the state of multiple players on in a multiple player game · CPC title

  • adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11886957B2 cover?
A method may include receiving a communication from a device at an artificial intelligence controller including state information for a software application component running on the device, the state information including information corresponding to at least one potential state change available to the software application component, and metrics associated with at least one end condition, inter…
Who is the assignee on this patent?
Apple Inc
What technology area does this patent fall under?
Primary CPC classification G06N20/00. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 30 2024 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).