IP Library Granted Patent US 11,010,284
Granted Patent B1
US 11,010,284 · App. 15/994,910 · Granted May 18, 2021

System for understanding navigational semantics via hypothesis generation and contextual analysis

Inventors: Dionny Santiago (Weston, FL); John A. Maliani (Pembroke Pines, FL); Robert L. Vanderwall (Weston, FL); Michael L. Mattera (Coral Springs, FL); Brian R. Muras (Weston, FL); Keith A. Briggs (Coral Springs, FL); David Adamo (Sunrise, FL); Tariq King (Pembroke Pines, FL)
Assignee: The Ultimate Software Group, Inc.
G06F11/3684G06F11/3688G06F11/3692G06N5/041G06N20/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 11,010,284
App. No.
15/994,910
Filed
May 31, 2018
Granted
May 18, 2021
Kind
B1
Examiner
LUU, CUONG V
Art Unit
2192
USPC
717/124
Abstract

A system for understanding navigational semantics via hypothesis generation and contextual analysis is disclosed. The system may, such as when examining and testing a software application, address the handling and resolution of constraint hypotheses in an uncertain environment, where potentially overlapping or conflicting suggestions are generated with various confidences. The system may utilize algorithmic and/or machine learning tools to identify consistent constraints for the software application with the highest levels of confidence. During operation, the system may continuously perform hypothesis testing on constraints generated by the system, which may result in the creation of new hypotheses yielding improved confidences. Feedback from the hypothesis testing may be provided to knowledge sources to improve the processing of information subsequently processed by the system. The system may construct complex constraints on multiple fields or functional transitions with associated confidences. A constraint optimizer of the system may simplify constraints or reduce their quantities.

Claims (48)

1. A system comprising:

a memory that stores instructions; and

a processor that executes the instructions to perform operations, the operations comprising:

receiving an input comprising information associated with an application under evaluation by the system;

determining, based on analyzing the input via a first natural language processing technique, a constraint for the application under evaluation, wherein the constraint is for a field of the application under evaluation, an order of operations of the application under evaluation, a transition of the application under evaluation, or a combination thereof;

generating, based on the constraint, based on the input, or based on a combination thereof, a hypothesis associated with the constraint and a test for testing, based on the hypothesis, the constraint;

testing, by utilizing the test on the application under evaluation and based on the hypothesis, the constraint;

generating feedback associated with a result of the testing of the constraint based on the hypothesis, wherein the feedback includes confidence level information corresponding to the constraint and a first knowledge source associated with the input; and

adjusting, based on the feedback, the constraint, input information related to the constraint, or a combination thereof, wherein the constraint is adjusted based on a second knowledge source and a second natural language processing technique that are selected based on the feedback indicating that a confidence level for the second knowledge source is higher than the confidence level information corresponding to the first knowledge source and that a confidence level for the second natural language processing technique is higher than confidence level information corresponding to the first natural language processing technique.

2. The system of claim 1 , wherein the information in the input comprises a model, realized or unrealized, of at least a portion of the application under evaluation by the system, an existing constraint, or a combination thereof.

3. The system of claim 1 , wherein the determining of the constraint further comprises modifying an existing constraint.

4. The system of claim 1 , wherein the operations further comprise adjusting a confidence level of the hypothesis associated with the constraint, a different hypothesis generated based on the hypothesis, another hypothesis associated with a different constraint, adjusting a confidence level of the constraint, an existing confidence level of the constraint, a confidence level of a different constraint generated based on the hypothesis, or a combination thereof.

5. The system of claim 1 , wherein the input further comprises information obtained from documents internal to the system, documents external to the system, other sources, or a combination thereof, and wherein the operations further comprise determining the constraint based on the input comprising the information obtained from the documents internal to the system, the documents external to the system, the other sources, or the combination thereof.

6. The system of claim 1 , wherein the operations further determining the constraint based on at least one source concept extracted from text from the input.

7. The system of claim 1 , wherein the determining of the constraint comprises determining a possible type of value of the field of the application under evaluation, a range of values for the field of the application under evaluation, a precision for a value for the field of the application under evaluation, an indication of a sequence operations of the application under evaluation, an identification of at least one task to be completed to facilitate the transition of the application under evaluation, a characteristic of the field, whether the field is required or optional, or a combination thereof.

8. The system of claim 1 , wherein the operations further comprise generating a set of solutions for the constraint, a set of solutions for a negation of the constraint, or a combination thereof.

9. The system of claim 1 , wherein the operations further comprise determining if an alert, an error, or a combination thereof, has been generated based on the testing.

10. The system of claim 9 , wherein the operations further comprise utilizing a natural language processing technique to parse text extracted from the alert, the error, or a combination thereof, and wherein the operations further comprise determining a new constraint for the application under evaluation based on a source concept determined from the parsed text extracted from the alert, the error, or a combination thereof.

11. The system of claim 1 , wherein the operations further comprise determining, after testing the constraint based on the hypothesis and based on the result of the testing, if the constraint should be combined with another constraint to form a merged or combined constraint.

12. The system of claim 11 , wherein the operations further comprise forming the merged or combined constraint by combining the constraint with the another constraint if the testing indicates a relationship between the constraint and the another constraint, a first dependence of the constraint on the another constraint, a second dependence of the another constraint on the constraint, or a combination thereof.

13. The system of claim 1 , wherein the operations further comprise removing a constraint based on the result of the testing.

14. The system of claim 1 , wherein the operations further comprise adjusting a confidence.

15. The system of claim 1 , wherein the operations further comprise detecting defects, conflicts, or a combination thereof, in the constraint, the hypothesis, or a combination thereof, based on the testing.

16. The system of claim 1 , wherein the operations further comprise validating the constraint using the application under evaluation.

17. The system of claim 1 , wherein the operations further comprise generating another hypothesis based on the hypothesis if the result of the testing indicates that the hypothesis is incorrect, inaccurate, incomplete, or a combination thereof.

18. The system of claim 1 , wherein the operations further comprise training or improving a model, a parameter, a weight, a dictionary, a threshold, a confidence, or a filter associated with generating a future hypothesis or constraint, wherein the training or improving is based on the feedback, the result, an internal document, an external document, the application under evaluation, a constraint similar to the constraint, a constraint related to the constraint, a merged constraint, a combined constraint, a generalized constraint, another constraint, another hypothesis similar to the hypothesis, another hypothesis related to the hypothesis, another hypothesis, a concept, a confirmation or rejection of the constraint, any other source, or combination thereof.

19. A method comprising:

analyzing text extracted from an input comprising information associated with an application under evaluation by a system, wherein the analyzing is performed by utilizing a first natural language processing technique;

determining, based on the analyzing, a constraint for the application under evaluation, wherein the constraint is for a field of the application under evaluation, an order of operations of the application under evaluation, a transition of the application under evaluation, or a combination thereof;

generating, based on the constraint and by utilizing instructions from a memory that are executed by a processor, a hypothesis associated with the constraint;

testing, by utilizing a test on the application under evaluation and based on the hypothesis, the constraint;

generating feedback associated with a result of the testing of the constraint based on the hypothesis, wherein the feedback includes confidence level information corresponding to the constraint and a first knowledge source associated with the input; and

adjusting, based on the feedback, the constraint, input information related to the constraint, or a combination thereof, wherein the constraint is adjusted based on a second knowledge source and a second natural language processing technique that are selected based on the feedback indicating that a confidence level for the second knowledge source is higher than the confidence level information corresponding to the first knowledge source and that a confidence level for the second natural language processing technique is higher than confidence level information corresponding to the first natural language processing technique.

20. The method of claim 19 , wherein the input further comprises a model of at least a portion of the application under evaluation, and further comprising extracting text from the model.

21. The method of claim 19 , wherein the determining of the constraint further comprises determining the constraint based on conducting static model discovery, dynamic model discovery, or a combination thereof.

22. The method of claim 19 , further comprising updating an agglomerated model to include the constraint.

23. The method of claim 19 , further comprising testing a different hypothesis generated based on the hypothesis on the application under evaluation, and further comprising generating additional feedback associated with a result of the testing of the different hypothesis.

24. The method of claim 19 , further comprising continuously generating hypotheses for additional constraints as the additional constraints are determined, further comprising testing the hypotheses for the additional constraints on the application under evaluation, and further comprising generating additional feedback based on results obtained from the testing of the hypotheses for the additional constraints.

25. The method of claim 19 , further comprising adjusting, based on additional feedback, future hypotheses generated by the system, future constraints determined by the system, confidence levels for the future hypotheses, or a combination thereof.

26. A non-transitory computer-readable device comprising instructions, which when loaded and executed by a processor, cause the processor to perform operations comprising:

analyzing text extracted from an input, wherein the analyzing is performed by utilizing a first natural language processing technique;

determining, based on the analyzing and based on a first knowledge source associated with the input, a constraint for an application under evaluation by a system, wherein the constraint is for a field of the application under evaluation, an order of operations of the application under evaluation, a transition of the application under evaluation, or a combination thereof;

generating, based on the constraint, a hypothesis associated with the constraint;

testing, by utilizing a test on the application under evaluation, the hypothesis associated with the constraint;

determining if the constraint is combinable with a different constraint based on a result of the testing of the hypothesis associated with the constraint, based on a confidence level of a first hypothesis, based on a confidence level of a second hypothesis associated with the different constraint, or a combination thereof;

combining the constraint with the different constraint to form a merged constraint if the constraint is determined to be combinable with the different constraint; and

adjusting the merged constraint based on a second knowledge source and a second natural language processing technique that are selected based on feedback indicating that a confidence level for the second knowledge source is higher than confidence level information corresponding to the first knowledge source and that a confidence level for the second natural language processing technique is higher than confidence level information corresponding to the first natural language processing technique.

27. The non-transitory computer-readable device of claim 26 , wherein the operations further comprise training or improving a model, a parameter, a weight, a dictionary, a threshold, a confidence, or a filter associated with generating a future hypothesis or constraint, wherein the training or improving is based on feedback associated with the result, test results, an internal document, an external document, the application under evaluation, a similar constraint, a related constraint, another merged constraint, a combined constraint, a generalized constraint, another constraint, a similar hypothesis, a related hypothesis, another hypothesis, a concept, a confirmation or rejection of the constraint, any other source, or combination thereof.

Assignments (9)
RELEASE (REEL 053117 / FRAME 0158) Recorded Apr 9, 2024
From: NOMURA CORPORATE FUNDING AMERICAS, LLC
To: UKG INC. (F/K/A THE ULTIMATE SOFTWARE GROUP, INC.); KRONOS TECHNOLOGY SYSTEMS LIMITED PARTNERSHIP
Reel/Frame 067055/0814 →
NOTICE OF SUCCESSION OF AGENCY (FIRST LIEN) Recorded Feb 12, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: NOMURA CORPORATE FUNDING AMERICAS, LLC, AS SUCCESSOR AGENT
Reel/Frame 066551/0888 →
SECURITY AGREEMENT (NOTES) Recorded Feb 12, 2024
From: KRONOS TECHNOLOGY SYSTEMS LIMITED PARTNERSHIP; UKG INC.
To: COMPUTERSHARE TRUST COMPANY, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 066551/0962 →
CHANGE OF NAME Recorded Aug 5, 2022
From: THE ULTIMATE SOFTWARE GROUP, INC.
To: UKG INC.
Reel/Frame 061099/0892 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2021
From: ARES CAPITAL CORPORATION, AS COLLATERAL AGENT
To: THE ULTIMATE SOFTWARE GROUP, INC.
Reel/Frame 058372/0288 →
SECURITY AGREEMENT (SECOND LIEN) Recorded Jul 1, 2020
From: THE ULTIMATE SOFTWARE GROUP, INC.; KRONOS TECHNOLOGY SYSTEMS LIMITED PARTNERSHIP
To: NOMURA CORPORATE FUNDING AMERICAS, LLC, AS COLLATERAL AGENT
Reel/Frame 053117/0158 →
SECOND LIEN SECURITY AGREEMENT Recorded May 6, 2019
From: THE ULTIMATE SOFTWARE GROUP, INC.
To: ARES CAPITAL CORPORATION
Reel/Frame 049087/0349 →
FIRST LIEN SECURITY AGREEMENT Recorded May 3, 2019
From: THE ULTIMATE SOFTWARE GROUP, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 049081/0607 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2018
From: MALIANI, JOHN A.; VANDERWALL, ROBERT L.; MATTERA, MICHAEL L.; SANTIAGO, DIONNY; MURAS, BRIAN R.; BRIGGS, KEITH A.; ADAMO, DAVID; KING, TARIQ M.
To: THE ULTIMATE SOFTWARE GROUP, INC.
Reel/Frame 045960/0279 →
Cited By (10)
US 12,332,878 US 12,346,666 US 12,353,409 US 12,379,921 US 12,399,893 US 12,443,580 US 12,493,838 US 12,530,365 US 12,530,852 US 12,675,763