IP Library Granted Patent US 10,817,784
Granted Patent B2
US 10,817,784 · App. 15/247,649 · Granted Oct 27, 2020

Systems and methods for machine learning using a network of decision-making nodes

Inventor: Rix Ryskamp (Mapleton, UT)
Assignee: Ryskamp Innovations, LLC
G06N3/088G06N3/0427G06N20/00
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 10,817,784
App. No.
15/247,649
Granted
Oct 27, 2020
Kind
B2
Abstract

System and methods for machine learning are described. A first input value is obtained. A second input value is also obtained. A decision to use for generating a cycle output is selected based on a randomness factor. The decision is at least one of a random decision or a best decision from a previous cycle. A cycle output for the first and second inputs is generated using the selected decision. The selected decision and the resulting cycle output are stored.

Claims (85)

1. A method for machine learning performed by a processor that executes instructions stored in a non-transitory computer-readable medium, the method comprising:

obtaining a set of inputs;

searching a database for a node uniquely associated with the set of inputs;

if a node uniquely associated with the set of inputs is not found in the database:

creating the node in the database;

associating the node with the set of inputs;

randomly generating a decision set using a random number generator;

receiving a score evaluating the decision set at solving a problem; and

storing, in association with the node, the decision set with the score for the decision set; and

if the node associated with the set of inputs is found in the database:

retrieving a decision set associated with the node with a best previous score;

if a randomness factor is zero, outputting the decision set with the best previous score as a solution to the problem; and

if the randomness factor is non-zero:

generating a new decision set, wherein each member of the new decision set is either the same as the retrieved decision set or is randomized by the random number generator, wherein a chance of a member of the new decision set being randomized is determined by the randomness factor;

receiving a score evaluating the new decision set at solving the problem; and

storing, in association with the node, the new decision set and the score for the new decision set;

wherein each node associates a unique set of inputs with at least one decision set and corresponding score.

2. The method of claim 1 , wherein the randomness factor at least one of increases and decreases from a first cycle to a second cycle based on at least one of a predetermined number of cycles and a threshold.

3. The method of claim 1 , further comprising:

determining a best decision set for the node based on a plurality of decision sets produced by one or more other nodes.

4. The method of claim 3 , wherein the input set for a first node comprises a first input and a second input, and wherein determining the best decision set for the first node comprises:

determining that the first input has a linear relationship with a third input, wherein the third input is associated with a second node;

obtaining a plurality of decision sets and associated scores from the second node;

comparing the plurality of decision sets and associated scores obtained from the second node with a plurality of stored decision sets and associated scores; and

identifying a best decision set based on the the associated scores.

5. The method of claim 3 , wherein determining the best decision set for the node comprises:

identifying a critical data point based on the plurality of decision sets and associated scores; and

determining the best decision set based on the identified critical data point.

6. The method of claim 3 , wherein determining the best decision set for the node comprises:

obtaining a plurality of global outputs, wherein a global output is based on at least one output set from at least one node;

identifying a trend between a plurality of stored decision sets for the node and the plurality of global outputs, wherein the trend relates stored decision sets with desirable global outputs according to a set of criteria; and

determining the best decision set for the node based on the identified trend.

7. The method of claim 6 , wherein determining the best decision set based on the identified trend comprises:

identifying a stored decision set where the associated score leads the trend, wherein the identified decision set is designated as the best decision set.

8. The method of claim 6 , further comprising:

associating each global output of the plurality of global outputs with its corresponding stored decision set.

9. The method of claim 1 , wherein at least one randomized member of the new decision set is based at least in part on a previous best decision set.

10. The method of claim 1 , wherein the input set comprise a first input and a second input, the method including the initial steps of:

identifying a first data type for the first input;

identifying a second data type for the second input; and

defining a third data type for the decision set based on the identified first data type and the identified second data type.

11. The method of claim 10 , wherein the first data type, second data type, and third data type are each selected from the group consisting of: Boolean, integer, double, picture, geolocation, and user-defined data type; and wherein the selected data type is within a defined range.

12. An apparatus for machine learning, comprising:

a processor; and

a memory in electronic communication with the processor the memory storing instructions that are executable by the processor to:

obtain a set of inputs;

search a database for a node uniquely associated with the set of inputs;

if a node uniquely associated with the set of inputs is not found in the database:

create the node in the database;

associate the node with the set of inputs;

randomly generate a decision set using a random number generator;

receive a score evaluating the decision set at solving a problem; and

store, in association with the node, the decision set with the score for the decision set; and

if the node uniquely associated with the set of inputs is found in the database:

retrieve a decision set associated with the node with a best previous score;

if a randomness factor is zero, output the decision set with the best previous score as a best solution to the problem;

if the randomness factor is non-zero:

generate a new decision set, wherein each member of the new decision set is either the same as the retrieved decision set or is randomized using the random number generator, wherein a chance of a member of the new decision set being randomized is determined by the randomness factor;

receive a score evaluating the new decision set at solving the problem; and

store, in association with the node, the new decision set and the score for the new decision set;

wherein each node associates a unique set of inputs with at least one decision set and corresponding score.

13. The apparatus of claim 12 , wherein the randomness factor at least one of increases and decreases from a first cycle to a second cycle based on a predetermined number of cycles and a threshold.

14. The apparatus of claim 12 , wherein the instructions are further executable by the processor to:

determine a best decision set for the node based on a plurality of decision sets produced by one or more other nodes.

15. The apparatus of claim 14 , wherein the input set for a first node comprises a first input and a second input, and wherein the instructions to determine the best decision set for the first node comprise instructions executable by the processor to:

determine that the first input has a linear relationship with a third input, wherein the third input is associated with a second node;

obtain a plurality of decision sets and associated scores from the second node;

compare the plurality of decision sets with a plurality of stored decision sets and associated scores; and

identify a best decision set based on the associated scores.

16. The apparatus of claim 14 , wherein the instructions to determine the best decision set for the node comprise instructions executable by the processor to:

identify a critical data point based on the plurality of decision sets and associated scores; and

determine the best decision set based on the identified critical data point.

17. The apparatus of claim 14 , wherein the instructions to determine the best decision set for the node comprise instructions executable by the processor to:

obtain a plurality of global outputs, wherein a global output is based on at least one output set from at least one node;

identify a trend between a plurality of stored decision sets for the node and the plurality of global outputs, wherein the trend relates stored decision sets with desirable global outputs according to a set of criteria; and

determine the best decision set for the node based on the identified trend.

18. The apparatus of claim 17 , wherein the instructions to determine the best decision based on the identified trend comprise instructions executable by the processor to:

identify a stored decision set where the associated score leads the trend, wherein the identified decision set is designated as the best decision set.

19. The apparatus of claim 17 , wherein the instructions are further executable by the processor to:

associate each global output of the plurality of global outputs with its corresponding stored decision set.

20. The apparatus of claim 12 , wherein at least one randomized member of the new decision set is based at least in part on a previous best decision set.

21. The apparatus of claim 12 , wherein the instructions are further executable by the processor to:

identify a first data type for the first input;

identify a second data type for the second input; and

define a third data type for the decision set based on the identified first data type and the identified second data type.

Assignments (3)
CERTIFICATE OF SALE & PAYMENT ON CONSTABLE'S SALE OF PERSONAL PROPERTY (FOLLOWING A COURT ORDER ON SEPTEMBER 10, 2024 LEVYING THE PROPERTIES BY JUDGE HON. THOMAS LOW FOR CASE NO. 229400719 IN THE 4TH JUDICIAL DISTRICT COURT, UT) Recorded Mar 24, 2025
From: RYSKAMP INNOVATIONS, LLC
To: MTM, LLC
Reel/Frame 072050/0984 →
SECURITY INTEREST Recorded Sep 11, 2020
From: RYSKAMP INNOVATIONS, LLC
To: MTM, LLC
Reel/Frame 053750/0005 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2016
From: RYSKAMP, RIX
To: RYSKAMP INNOVATIONS, LLC
Reel/Frame 039824/0658 →
Continuity (2)
Provisional Application 62209799 · Aug 25, 2015
Related Publication 20170061282A1 · Mar 2, 2017