IP Library Granted Patent US 12,326,913
Granted Patent B2
US 12,326,913 · App. 17/368,083 · Granted Jun 10, 2025

Automation system and method

Inventors: James A. Harding (Issaquah, WA); Anthony J. Paquin (Stuart, FL); Scott Thibault (Colchester, VT); Jason A. Boatman (Charlottesville, VA)
Assignee: GROKIT DATA, INC.
G06F16/958G06F3/0481G06F9/4806G06F9/4843G06F9/485G06F9/5066G06F9/542G06F9/547G06F11/3612G06F11/3616G06F16/80G06F16/84G06F16/951G06F16/955G06F16/9577G06F16/986G06F18/214G06F40/14G06N5/027G06N20/00G06Q10/04G06Q10/06315G06Q10/0633G06Q10/06375G06Q10/067G06Q30/0201G06Q30/0282G06Q30/0641G06Q10/0833G06Q10/0838G06Q10/10G06Q30/04
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 12,326,913
App. No.
17/368,083
Granted
Jun 10, 2025
Kind
B2
Abstract

A computer-implemented method, computer program product and computing system for defining a data description model and a function description model corresponding to a website on one or more of a plurality of machine-accessible public computing platforms; processing a complex task to define a plurality of discrete tasks each having a discrete goal; executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms; determining if any of the plurality of discrete tasks failed to achieve its discrete goal; and if a specific discrete task failed to achieve its discrete goal, defining a substitute discrete task having a substitute discrete goal.

Claims (97)

1. A computer-implemented method, executed on a computing device, comprising:

defining a data description model and a function description model corresponding to a website on one or more of a plurality of machine-accessible public computing platforms, wherein a database is included with the data description model, the function description model includes one or more actions that are performable on the website, and defining the function description model includes:

identifying one or more interactions with one or more portions of the website structure of a specific website, wherein identifying one or more interactions with one or more portions of a website structure of the website includes:

enabling a user to review the specific website to visually interact with one or more spatial regions of the specific website, wherein visually interacting with the one or more spatial regions of the specific website includes receiving the one or more interactions made by the user on the specific website to perform one or more functions on the website; and

associating the one or more interactions with the one or more spatial regions of the specific website with the one or more portions of the website structure;

associating the one or more interactions with the one or more portions of the website structure with one or more functions of the website to define the function description model corresponding to the website;

processing the data description model to obtain raw information from the specific website, and transforming the raw information from the specific website into usable information;

populating the database with at least a portion of the usable information;

processing a complex task to define a plurality of discrete tasks each having a discrete goal;

executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms on one or more websites using the data description model and the function description model corresponding to the website, wherein executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms using the data description model and the function description model corresponding to the website includes one or more of:

executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms without human intervention using one or more machine actors and the data description model and the function description model corresponding to the website; and

collaboratively delegating and executing the plurality of discrete tasks among one or more machine actors using the data description model and the function description model corresponding to the website;

determining that at least one discrete task of the plurality of discrete tasks failed to achieve its discrete goal;

in response to determining that the at least one discrete task failed to achieve its discrete goal, defining a substitute discrete task having a substitute discrete goal, wherein the substitute discrete task is defined as a modification of any of the plurality of discrete tasks as a result of one or more previously-executed discrete tasks; and

executing the substitute discrete task.

2. The computer-implemented method of claim 1 wherein failing to achieve its discrete goal include one or more of:

an immediate total failure of the discrete goal;

an immediate partial failure of the discrete goal;

a retroactive total failure of the discrete goal; and

a retroactive partial failure of the discrete goal.

3. The computer-implemented method of claim 1 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

gathering information concerning the complex task.

4. The computer-implemented method of claim 1 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

gathering information concerning the plurality of discrete tasks.

5. The computer-implemented method of claim 1 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

optimizing the plurality of discrete tasks.

6. The computer-implemented method of claim 1 wherein the plurality of machine-accessible public computing platforms includes:

a plurality of ecommerce computing platforms coupled to the internet.

7. The computer-implemented method of claim 1 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes one or more of:

processing the complex task to define a plurality of discrete tasks each having a discrete goal via one or more predefined rules;

processing the complex task to define a plurality of discrete tasks each having a discrete goal via one or more ML-defined rules; and

processing the complex task to define a plurality of discrete tasks based, at least in part, upon human intervention.

8. The computer-implemented method of claim 1 wherein the complex task is based upon a defined goal.

9. A computer program product residing on a non-transitory computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising:

defining a data description model and a function description model corresponding to a website on one or more of a plurality of machine-accessible public computing platforms, wherein a database is included with the data description model, the function description model includes one or more actions that are performable on the website, and defining the function description model includes:

identifying one or more interactions with one or more portions of the website structure of a specific website, wherein identifying one or more interactions with one or more portions of a website structure of the website includes:

enabling a user to review the specific website to visually interact with one or more spatial regions of the specific website, wherein visually interacting with the one or more spatial regions of the specific website includes receiving the one or more interactions made by the user on the specific website to perform one or more functions on the website; and

associating the one or more interactions with the one or more spatial regions of the specific website with the one or more portions of the website structure;

associating the one or more interactions with the one or more portions of the website structure with one or more functions of the website to define the function description model corresponding to the website;

processing the data description model to obtain raw information from the specific website, and transforming the raw information from the specific website into usable information;

populating the database with at least a portion of the usable information;

processing a complex task to define a plurality of discrete tasks each having a discrete goal;

executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms on one or more websites using the data description model and the function description model corresponding to the website, wherein executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms using the data description model and the function description model corresponding to the website includes one or more of:

executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms without human intervention using one or more machine actors and the data description model and the function description model corresponding to the website; and

collaboratively delegating and executing the plurality of discrete tasks among one or more machine actors using the data description model and the function description model corresponding to the website;

determining that at least one discrete task of the plurality of discrete tasks failed to achieve its discrete goal;

in response to determining that the at least one discrete task failed to achieve its discrete goal, defining a substitute discrete task having a substitute discrete goal, wherein the substitute discrete task is defined as a modification of any of the plurality of discrete tasks as a result of one or more previously-executed discrete tasks; and executing the substitute discrete task.

10. The computer program product of claim 9 wherein failing to achieve its discrete goal include one or more of:

an immediate total failure of the discrete goal;

an immediate partial failure of the discrete goal;

a retroactive total failure of the discrete goal; and

a retroactive partial failure of the discrete goal.

11. The computer program product of claim 9 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

gathering information concerning the complex task.

12. The computer program product of claim 9 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

gathering information concerning the plurality of discrete tasks.

13. The computer program product of claim 9 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

optimizing the plurality of discrete tasks.

14. The computer program product of claim 9 wherein the plurality of machine- accessible public computing platforms includes:

a plurality of ecommerce computing platforms coupled to the internet.

15. The computer program product of claim 9 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes one or more of:

processing the complex task to define a plurality of discrete tasks each having a discrete goal via one or more predefined rules;

processing the complex task to define a plurality of discrete tasks each having a discrete goal via one or more ML-defined rules; and

processing the complex task to define a plurality of discrete tasks based, at least in part, upon human intervention.

16. The computer program product of claim 9 wherein the complex task is based upon a defined goal.

17. A computing system including a processor and memory configured to perform operations comprising:

defining a data description model and a function description model corresponding to a website on one or more of a plurality of machine-accessible public computing platforms, wherein a database is included with the data description model, the function description model includes one or more actions that are performable on the website, and defining the function description model includes:

identifying one or more interactions with one or more portions of the website structure of a specific website, wherein identifying one or more interactions with one or more portions of a website structure of the website includes:

enabling a user to review the specific website to visually interact with one or more spatial regions of the specific website, wherein visually interacting with the one or more spatial regions of the specific website includes receiving the one or more interactions made by the user on the specific website to perform one or more functions on the website; and

associating the one or more interactions with the one or more spatial regions of the specific website with the one or more portions of the website structure;

associating the one or more interactions with the one or more portions of the website structure with one or more functions of the website to define the function description model corresponding to the website;

processing the data description model to obtain raw information from the specific website, and transforming the raw information from the specific website into usable information;

populating the database with at least a portion of the usable information;

processing a complex task to define a plurality of discrete tasks each having a discrete goal;

executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms on one or more websites using the data description model and the function description model corresponding to the website, wherein executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms using the data description model and the function description model corresponding to the website includes one or more of:

executing the plurality of discrete tasks on the plurality of machine-accessible public computing platforms without human intervention using one or more machine actors and the data description model and the function description model corresponding to the website; and

collaboratively delegating and executing the plurality of discrete tasks among one or more machine actors using the data description model and the function description model corresponding to the website;

determining that at least one discrete task of the plurality of discrete tasks failed to achieve its discrete goal;

in response to determining that the at least one discrete task failed to achieve its discrete goal, defining a substitute discrete task having a substitute discrete goal, wherein the substitute discrete task is defined as a modification of any of the plurality of discrete tasks as a result of one or more previously-executed discrete tasks; and executing the substitute discrete task.

18. The computing system of claim 17 wherein failing to achieve its discrete goal include one or more of:

an immediate total failure of the discrete goal;

an immediate partial failure of the discrete goal;

a retroactive total failure of the discrete goal; and

a retroactive partial failure of the discrete goal.

19. The computing system of claim 17 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

gathering information concerning the complex task.

20. The computing system of claim 17 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

gathering information concerning the plurality of discrete tasks.

21. The computing system of claim 17 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes:

optimizing the plurality of discrete tasks.

22. The computing system of claim 17 wherein the plurality of machine-accessible public computing platforms includes:

a plurality of ecommerce computing platforms coupled to the internet.

23. The computing system of claim 17 wherein processing the complex task to define a plurality of discrete tasks each having a discrete goal includes one or more of:

processing the complex task to define a plurality of discrete tasks each having a discrete goal via one or more predefined rules;

processing the complex task to define a plurality of discrete tasks each having a discrete goal via one or more ML-defined rules; and

processing the complex task to define a plurality of discrete tasks based, at least in part, upon human intervention.

24. The computing system of claim 17 wherein the complex task is based upon a defined goal.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 6, 2021
From: HARDING, JAMES A.; PAQUIN, ANTHONY J.; THIBAULT, SCOTT; BOATMAN, JASON A.
To: GROKIT DATA, INC.
Reel/Frame 056763/0263 →
Continuity (2)
Provisional Application 63048598 · Jul 6, 2020
Related Publication 20220004924A1 · Jan 6, 2022
References Cited (138)
US 3736409A · Boyan · 1973 [cited by examiner]
US 5826258A · Gupta · 1998 [cited by examiner]
US 6343275B1 · Wong · 2002 [cited by applicant]
US 6405162B1 · Segong et al. · 2002 [cited by applicant]
US 8819022B1 · Holsman · 2014 [cited by applicant]
US 8850308B1 · Roselander · 2014 [cited by applicant]
US 9361069B2 · Martin · 2016 [cited by applicant]
US 9449025B1 · Phung et al. · 2016 [cited by applicant]
US 10096040B2 · Subramanya · 2018 [cited by applicant]
US 10565498B1 · Zhiyanov · 2020 [cited by applicant]
US 10838585B1 · Douglas et al. · 2020 [cited by applicant]
US 10977563B2 · Ajmera · 2021 [cited by applicant]
US 10990645B1 · Shi · 2021 [cited by applicant]
US 11017690B1 · Zia · 2021 [cited by applicant]
US 11151174B2 · Denholm · 2021 [cited by applicant]
US 11188857B1 · Hill · 2021 [cited by applicant]
US 11409520B2 · Kunamalla et al. · 2022 [cited by applicant]
US 11481310B1 · Panchev et al. · 2022 [cited by applicant]
US 20010029604A1 · Dreyband · 2001 [cited by applicant]
US 20030055742A1 · Hodl · 2003 [cited by examiner]
US 20030135384A1 · Nguyen · 2003 [cited by applicant]
US 20030145124A1 · Guyan · 2003 [cited by applicant]
US 20040034857A1 · Mangino · 2004 [cited by applicant]
US 20040230647A1 · Rawat · 2004 [cited by applicant]
US 20060162071A1 · Dixon · 2006 [cited by applicant]
US 20070180380A1 · Khavari et al. · 2007 [cited by applicant]
US 20070271287A1 · Acharya et al. · 2007 [cited by applicant]
US 20080098300A1 · Corrales · 2008 [cited by applicant]
US 20090024585A1 · Back · 2009 [cited by examiner]
US 20090070773A1 · Depoutovitch · 2009 [cited by applicant]
US 20090144240A1 · Singh et al. · 2009 [cited by applicant]
US 20090271018A1 · Brown · 2009 [cited by applicant]
US 20090281792A1 · Green et al. · 2009 [cited by applicant]
US 20100280860A1 · Iskold et al. · 2010 [cited by applicant]
US 20110093467A1 · Sharp et al. · 2011 [cited by applicant]
US 20120117569A1 · Fogel · 2012 [cited by applicant]
US 20120317583A1 · Corbea · 2012 [cited by applicant]
US 20140019391A1 · Kortum et al. · 2014 [cited by applicant]
US 20140222662A1 · Bierwas · 2014 [cited by applicant]
US 20140222745A1 · Deng et al. · 2014 [cited by applicant]
US 20140236875A1 · Phillipps et al. · 2014 [cited by applicant]
US 20140344718A1 · Rapaport et al. · 2014 [cited by applicant]
US 20140354657A1 · Gomba · 2014 [cited by applicant]
US 20140380142A1 · Mikutel et al. · 2014 [cited by applicant]
US 20150006214A1 · Lavoie · 2015 [cited by applicant]
US 20150100869A1 · Sunshine et al. · 2015 [cited by applicant]
US 20150269533A1 · Garg · 2015 [cited by examiner]
US 20160162478A1 · Blassin · 2016 [cited by applicant]
US 20170004422A1 · Todd · 2017 [cited by applicant]
US 20170053295A1 · Tiell · 2017 [cited by examiner]
US 20170163587A1 · Johnson · 2017 [cited by examiner]
US 20170262185A1 · Long et al. · 2017 [cited by applicant]
US 20180089593A1 · Patel · 2018 [cited by applicant]
US 20180152506A1 · Simo · 2018 [cited by applicant]
US 20180181808A1 · Sridharan · 2018 [cited by applicant]
US 20180293517A1 · Browne · 2018 [cited by examiner]
US 20190012390A1 · Nishant et al. · 2019 [cited by applicant]
US 20190026482A1 · Kenny · 2019 [cited by applicant]
US 20190043107A1 · Brown · 2019 [cited by applicant]
US 20190066018A1 · Sethi · 2019 [cited by applicant]
US 20190228261A1 · Chan · 2019 [cited by applicant]
US 20190244099A1 · Schaul · 2019 [cited by applicant]
US 20190291277A1 · Oleynik · 2019 [cited by applicant]
US 20190377713A1 · Lankford et al. · 2019 [cited by applicant]
US 20190392019A1 · Brannon · 2019 [cited by applicant]
US 20200004740A1 · Alison · 2020 [cited by applicant]
US 20200004798A1 · Weinert · 2020 [cited by applicant]
US 20200019583A1 · Halfond et al. · 2020 [cited by applicant]
US 20200034279A1 · Shivam et al. · 2020 [cited by applicant]
US 20200133255A1 · Cella · 2020 [cited by applicant]
US 20200185102A1 · Leventhal · 2020 [cited by applicant]
US 20200210867A1 · Banis · 2020 [cited by applicant]
US 20200319995A1 · Mitra · 2020 [cited by examiner]
US 20200372294A1 · Koval et al. · 2020 [cited by applicant]
US 20200379837A1 · Krishnaswamy et al. · 2020 [cited by applicant]
US 20210035556A1 · Shen et al. · 2021 [cited by applicant]
US 20210042724A1 · Rathod · 2021 [cited by applicant]
US 20210055955A1 · Yankelevich · 2021 [cited by applicant]
US 20210256076A1 · McMurray · 2021 [cited by applicant]
US 20210271709A1 · Kazem et al. · 2021 [cited by applicant]
US 20210289031A1 · Eigarat · 2021 [cited by applicant]
US 20210311862A1 · Jakubiak et al. · 2021 [cited by applicant]
US 20210373943A1 · Sim · 2021 [cited by applicant]
US 20220004576A1 · Harding et al. · 2022 [cited by applicant]
US 20220237228A1 · Xu et al. · 2022 [cited by applicant]
CN 101957818A1 · 2011 [cited by applicant]
CN 101957878A · 2011 [cited by applicant]
CN 109343939A1 · 2019 [cited by applicant]
WO 2013001557A1 · 2013 [cited by applicant]
WO 2013010557A1 · 2013 [cited by applicant]
WO 2013102926A2 · 2013 [cited by applicant]
WO 2016145402A1 · 2016 [cited by applicant]
WO 2020130557A1 · 2020 [cited by applicant]
International Search Report and Written Opinion issued in International Application No. PCT/US21/40437 dated Oct. 26, 2021. [cited by applicant]
International Search Report and Written Opinion issued in International Application No. PCT/US2021/040475 dated Nov. 5, 2021. [cited by applicant]
International Search Report and Written Opinion issued in International Application No. PCT/US2021/040465 dated Oct. 5, 2021. [cited by applicant]
International Search Report and Written Opinion issued in International Application No. PCT/US2021/040440 dated Sep. 30, 2021. [cited by applicant]
Non-Final Office Action issued in U.S. Appl. No. 17/368,325 dated Nov. 10, 2021. [cited by applicant]
Raposo, “A Web Agent for Automating E-Commerce Operations,” IEEE International Conference on E-Commerce, (2003). [cited by applicant]
Non-Final Office Action issued in U.S. Appl. No. 17/368,236 dated Nov. 26, 2021. [cited by applicant]
Non-Final Office Action issued in U.S. Appl. No. 17/368,446 dated Apr. 25, 2022. [cited by applicant]
Non-Final Office Action issued in U.S. Appl. No. 17/368,325 dated May 4, 2022. [cited by applicant]
Final Office Action issued in U.S. Appl. No. 17/368,236 dated May 10, 2022. [cited by applicant]
Non-Final Office Action issued in U.S. Appl. No. 17/268,465 on Jun. 16, 2022. [cited by applicant]
Lutfi et al., “Towards Automated Optimization of Web Interfaces and Application to E-commerce.” 2017 International Conference on Computer and Applications (ICCA). IEEE, (Year: 2017). [cited by applicant]
Castaneda et al., “Towards personalized web-tasking: Task simplification challenges.” 2013 IEEE Ninth World Congress on Services. IEEE, (Year: 2013). [cited by applicant]
Non-Final Office Action issued in U.S. Appl. No. 17/368,192 on Aug. 1, 2022. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 17/368,192 on Aug. 1, 2022. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 17/368,465 on Jun. 16, 2022. [cited by applicant]
Notice of Allowance issued in related U.S. Appl. No. 17/368,325 on Oct. 13, 2022. [cited by applicant]
Non Final Office Action issued in related U.S. Appl. No. 17/368,298 on Dec. 21, 2023. [cited by applicant]
Non Final Office Action issued in related U.S. Appl. No. 17/368,465 on Dec. 22, 2023. [cited by applicant]
Kassak Ondrej, Sep. 2018, Acquisition and modelling of Short-term User-term User Behaviour on the Web: A Survey. [cited by applicant]
Notice of Allowance issued in related U.S. Appl. No. 17/368,546 on Sep. 19, 2023. [cited by applicant]
Karen et al “Presenting Chained and Discrete Tasks as Non-Targeted Information When Teaching Discrete Academic Skills through Small Group Instruction”, Dec. 2009, Presenting chained and discrete tasks. p. 127 (Year: 200… [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 17/368,142 on Nov. 12, 2021. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 17/368,546 on Mar. 30, 2023. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 17/368,465 on Mar. 30, 2023. [cited by applicant]
International Search Report and Written Opinion issued in Application Serial No. PCT/US2021/040471 on Oct. 21, 2021. [cited by applicant]
International Search Report and Written Opinion issued in related Application Serial No. PCT/US2021/040465 on Oct. 21, 2021. [cited by applicant]
International Preliminary Report issued on related Application Serial No. PCT/US2021/040437 on Jan. 19, 2023. [cited by applicant]
International Preliminary Report issued on related Application Serial No. PCT/US2021/040440 on Jan. 19, 2023. [cited by applicant]
International Preliminary Report issued on related Application Serial No. PCT/US2021/040465 on Jan. 19, 2023. [cited by applicant]
International Preliminary Report issued on related Application Serial No. PCT/US2021/040471 on Jan. 19, 2023. [cited by applicant]
International Preliminary Report issued on related Application Serial No. PCT/US2021/040475 on Jan. 19, 2023. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 17/368,555 on Jun. 20, 2023. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 17/368,334 on issue Date; Mar. 27, 2024. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 17/368,298 on issue Date; May 9, 2024. [cited by applicant]
Final Office Action issued in related U.S. Appl. No. 17/368,192 on Jun. 7, 2023. [cited by applicant]
Final Office Action issued in U.S. Appl. No. 17/368,446 dated Mar. 10, 2022. [cited by applicant]
Htwe, Thanda, et al. “Extracting Data Region in Web Page by Removing Noise Using DOM and Neural Network.” IPEDR, Dec. 2010. (Year: 2010). [cited by applicant]
Min Chen et al., Facilitating Effective User Navigation through Website Structure Improvement, Mar. 2013, [Retrieved on Dec. 28, 2023], Retrieved from the internet: <URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&… [cited by applicant]
Notice of Allowance issued in related U.S. Appl. No. 17/368,142 on Apr. 11, 2022. [cited by applicant]
Notice of Allowance issued in related U.S. Appl. No. 17/368,446 on Oct. 27, 2022. [cited by applicant]
Notice of Allowance issued in related U.S. Appl. No. 17/368,555 on issue Date; Jan. 22, 2024. [cited by applicant]
Raposo, ‘A web Agent for Automating E-Commerce Operations’, IEEE International Conference on E-Commerce, 2003 (Year: 2003). [cited by applicant]
Notice of Allowance issued in related U.S. Appl. No. 17/368,298 on Nov. 27, 2024. [cited by applicant]
Non-Final Office Action issued in related U.S. Appl. No. 17/368,434 on Nov. 20, 2024. [cited by applicant]