DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Status of Claims
Claims 1 and 8 have been amended.
Claims 1 – 18 are pending.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
This subject matter eligibility analysis follows the latest guidance for Patent Subject Matter Eligibility Guidance.
Claims 1 - 18 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter.
Step 1:
Claims 1 – 7 and 15 – 18 are drawn to a system.
Claims 8 – 14 are drawn to a method.
Thus, initially, under Step 1 of the analysis, it is noted that the claims are directed towards eligible categories of subject matter.
Step 2A:
Prong 1: Does the Claim recite an Abstract idea, Law of Nature, or Natural Phenomenon?
Claims 1 – 7 and 15 – 18 are exemplary because they require substantially the same operative limitations of the remaining claims (reproduced below.) Examiner has underlined the claim limitations which recite the abstract idea, discussed in detail in the paragraphs that follow.
1. (Currently Amended) A system comprising:
one or more processors; and
one or more memory devices,
wherein at least one of the one or more memory devices is communicatively coupled to the one or more processors,
wherein the one or more memory devices store computer-executable instructions defining at least a game application, a request collector module, and a request manager module, and
wherein execution of the computer-executable instructions causes the one or more processors, during runtime of the game application, to:
generate a virtual environment, the virtual environment being associated with a game state and one or more virtual elements;
determine, by the game application, at least a first process required as a result of an update in the game state of the virtual environment, the update in the game state corresponding to an interaction with the one or more virtual elements of the virtual environment;
distribute, by the request manager module, the first process for execution to two or more worker modules,
execute, by each of the two or more worker modules the first process, wherein each of the two or more worker modules are configured to execute the first process at different quality levels;
receive, by a result collector module, at least one output presentable within the virtual environment from at least one of the two or more worker modules, each output being a result of the execution of the first process by an individual worker of the two or more worker modules;
select, by the request manager module, an output from the at least one output having a higher quality level; and
cause to present within the virtual environment, by the game application in an updated game state associated with the virtual environment, the selected output from among the received at least one output.
The claims recite italicized limitations that fall within at least one of the groupings of abstract ideas enumerated in the 2019 PEG, namely, Certain Methods of Organizing Human Activity and/or Mental Processes
More specifically, under this grouping, the italicized limitations represent concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and managing personal behavior or relationships or interactions between people For example, the italicized limitations are directed towards a scheme of generating a virtual environment, determine processes associated with changes of the game state and distributing the processes to workers for execution, receiving and selecting the outputs from the workers for presentation in the virtual environment. These represent the management of information, assigning tasks, collecting results and selecting an outcome based upon a criteria.
Prong 2: Does the Claim recite additional elements that integrate the exception in to a practical application of the exception?
Although the claims recite additional limitations, these limitations do not integrate the exception into a practical application of the exception. For example, the claims require additional limitations as follow, (emphasis added): one or more processors, memory devices, game application, and various modules. These are merely generic computing elements used to perform the abstract idea.
The recitations of machine learning models for selecting workers and time limits for selecting outputs do not amount to a technical improvement as well as the claims do not specify an improvement to machine learning techniques or training methodology or any improvement to the operation of computer hardware. They utilize machine learning models in as a mere decision making tool.
These additional limitations do not represent an improvement to the functioning of a computer, or to any other technology or technical field, (MPEP 2106.05(a)). Nor do they apply the exception using a particular machine, (MPEP 2106.05(b)). Furthermore, they do not effect a transformation. (MPEP 2106.05(c)). Rather, these additional limitations amount to an instruction to “apply” the judicial exception using a computer as a tool to perform the abstract idea. Therefore, since the additional limitations, individually or in combination, are indistinguishable from a computer used as a tool to perform the abstract idea, the analysis continues to Step 2B, below.
Step 2B:
Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception because they amount to conventional and routine computer implementation and mere instructions for implementing the abstract idea on generic computing devices.
For example, as pointed out above, the claimed invention recites additional elements facilitating implementation of the abstract idea. Applicant has claimed computer elements such as one or more processors, memory devices, game application, and various modules. These are merely generic computing elements used to perform the abstract idea. However, all of these elements viewed individually and as a whole, are indistinguishable from conventional computing elements known in the art. Therefore, the additional elements fail to supply additional elements that yield significantly more than the underlying abstract idea.
As the Alice court cautioned, citing Flook, patent eligibility cannot depend simply on the draftsman’s art. Here, amending the claims with generic computing elements does not (in this Examiner’s opinion), confer eligibility.
Regarding the Berkheimer decision, Applicants specification establishes that these additional elements are generic:
[0025] FIG. 1 illustrates an embodiment of a computing environment 100 for implementing a request distribution system. The environment 100 includes a network 108, a user computing system 102 and a request distribution system 118. To simplify discussion and not to limit the present disclosure, FIG. 1 illustrates only one user computing system 102 and one request distribution system 118, though multiple systems may be used. The user computing system 102 may communicate via a network 108 with the request distribution system 118. Although only one network 108 is illustrated, multiple distinct and/or distributed networks 108 may exist.
Computing System
[0026] The computing system 102 includes computing resources 104 and an application data store 106. The user computing system 102 may have varied local computing resources 104 such as central processing units and architectures, memory, mass storage, graphics processing units, communication network availability and bandwidth, and so forth. Further, the user computing system 102 may include any type of computing system. For example, the user computing system 102 may be any type of computing device, such as a desktop, laptop, video game platform/console, television set-top box, television (for example, Internet TVs), network-enabled kiosk, car-console device, computerized appliance, wearable device (for example, smart watches and glasses with computing functionality), and wireless mobile devices (for example, smart phones, PDAs, tablets, or the like), to name a few. A more detailed description of an embodiment of a computing system 102 is described below with respect to FIG. 7.
Therefore, these elements fail to supply additional elements that yield significantly more than the underlying abstract idea. Thus, taken alone, the additional elements do not amount to significantly more than the above-identified judicial exception (the abstract idea).
Looking at the limitations as an ordered combination adds nothing that is not already present when looking at the elements taken individually. There is no indication that the combination of elements improves the functioning of a computer or improves any other technology. Their collective functions merely provide conventional computer implementation.
Moreover, the claims do not recite improvements to another technology or technical field. Nor, do the claims improve the functioning of the underlying computer itself -- they merely recite generic computing elements. Furthermore, they do not effect a transformation of a particular article to a different state or thing: the underlying computing elements remain the same.
Concerning preemption, the Federal Circuit has said in Ariosa Diagnostics, Inc., V. Sequenom, Inc., (Fed Cir. June 12, 2015):
The Supreme Court has made clear that the principle of preemption is the basis for the judicial exceptions to patentability. Alice, 134 S. Ct at 2354 (“We have described the concern that drives this exclusionary principal as one of pre-emption”). For this reason, questions on preemption are inherent in and resolved by the § 101 analysis. The concern is that “patent law not inhibit further discovery by improperly tying up the future use of these building blocks of human ingenuity.” Id. (internal quotations omitted). In other words, patent claims should not prevent the use of the basic building blocks of technology—abstract ideas, naturally occurring phenomena, and natural laws. While preemption may signal patent ineligible subject matter, the absence of complete preemption does not demonstrate patent eligibility. In this case, Sequenom’s attempt to limit the breadth of the claims by showing alternative uses of cffDNA outside of the scope of the claims does not change the conclusion that the claims are directed to patent ineligible subject matter. Where a patent’s claims are deemed only to disclose patent ineligible subject matter under the Mayo framework, as they are in this case, preemption concerns are fully addressed and made moot. (Emphasis added.)
For these reasons, it appears that the claims are not patent-eligible under 35 USC §101.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1 -5 and 8 - 16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Agoston (US 2020/0171382) in view of White et al (US 10,491,663).
As per claim 1, Agoston discloses:
one or more processors; and (Agoston discloses one or more processors executing on servers) (Agoston 0033, 0035, 0036)
one or more memory devices, (Agoston discloses one or more memory devices servers) (Agoston 0033, 0035, 0036)
wherein at least one of the one or more memory devices is communicatively coupled to the one or more processors, (Agoston 0033, 0035, 0036)
wherein the one or more memory devices store computer-executable instructions defining at least a game application, a request collector module, and a request manager module, and (Agoston discloses the use of memory devices that execute game instructions wherein the system utilizes a management nodes to distribute functional portions of the game engine to processing nodes for processing for an online game (i.e. at least a game application) (Agoston 0005)
wherein execution of the computer-executable instructions causes the one or more processors, during runtime of the game application, to: (Agoston 005)
generate a virtual environment, the virtual environment being associated with a game state and one or more virtual elements; (Agoston discloses the generation of a virtual environment associated with a game state and virtual elements such as elements and states associated with a game scene in the virtual game) (Agoston 0069)
determine, by the game application, at least a first process required as a result of an update in the game state of the virtual environment, the update in the game state corresponding to an interaction with the one or more virtual elements of the virtual environment; (Agoston discloses the determination of processes or functional portions that are processes continually (i.e. updated) to provide an updated game state associated with player inputs with the elements of the online game. Agoston discloses “During game runtime, the game engine manages the game logic of the online game, manages the allocation and synchronization of the functional portions of the game engine to process game data, in an optimal manner, and generates frames of game data that is transmitted back to the client devices for rendering. A variety of game engines that are currently available provide different core functionalities and an appropriate game engine may be selected based on the functionalities that are available for executing the online game.” (Agoston 0040). “In the implementation illustrated in FIG. 2, instances of the game engine and game logic are distributed across a plurality of servers with each server execute a certain functional portion of the game engine. The different servers may process the game data in parallel by executing the different instances simultaneously. In this manner, the distributed game engine allows for faster and efficient processing of the game data. The game engine may be configured to process a plurality of functional portions that are needed for bringing an online game to life. In some implementations, each online game developed for an MMO game environment may identify different functional portions of the game engine that are required for the online game to function. In other implementations, every one of the online games developed for the MMO game environment may require same type of functional portions for bringing the respective ones of the online games to life. In implementations where every online game identifies same type of functional portions, certain ones of the online games may emphasize on select ones of the functional portions more than others and the emphasis may be based on type of users accessing the online game, type of game, game state of the online game, and the success criteria defined for the online game. For example, the users may be of player type or spectator type. Thus, when the online game is accessed by players, the emphasis may be on the functional portions that can provide game data in a fast and efficient manner (i.e., functional portions related to physics, assembling/encoding, and bandwidth in order to provide the game data to the client devices with minimal latency). When the online game is accessed by spectators, the emphasis may be based on the functional portions that can provide access to a specific player's game play that the spectators choose to follow or to the online game in general (e.g., functional portions related to physics, audio, scripting, and scene graphs in order to provide a high quality game data).” (Agoston 0041))
cause to present within the virtual environment, by the game application in an updated game state associated with the virtual environment, the selected output from among the received at least one output. (Agoston discloses processing of the functional portions of the game presenting the outputs of these processing’s to display or present an updated game state for the virtual environment of the online game) (Agoston 0008, 0041, 0043 - 0045)
The Examiner notes that Agoston discloses the distribution of processes or functional portions to “worker modules” or as Agoston terms them, processing nodes or servers, that are used to execute or engage in specific processes that relate to specific features of the game data (Agoston 0042). Agoston further discloses the use of parallel processing of data by the processing nodes to enable the simultaneous processing of data (Agoston 0041, 0092).
However, Agoston fails to specifically disclose:
distribute, by the request manager module, the first process for execution to two or more worker modules,
execute, by wherein each of the two or more worker modules, is configured to execute the first process, wherein each of the two or more worker modules are configured to execute the first process at different quality levels;
receive, by a result collector module, at least one output presentable within the virtual environment from at least one of the two or more worker modules, each output being a result of the execution of the first process by an individual worker of the two or more worker modules;
select, by the request manager module, an output from the at least one output having a higher quality level; and
However, in a similar field of endeavor, White teaches a system that implements heterogenous computations on homogeneous input data. Specifically, White teaches the use of master nodes and worker nodes, wherein the master nodes distribute tasks to the worker nodes (White 3:49 – 64, 4:39 - 51). White further teaches the use of different worker nodes processing the same input data utilizing different computational specification (i.e. different quality levels) and evaluate the results to determine the best level result (i.e. result with the best quality) (White 8:59 – 9:24).
It would be obvious to one of ordinary skill in the art, at the time of filing, to modify Agoston in view of White to provide a system that processes game data by two different workers at the same time or in parallel that are associated with different computation strategies to enable the system to determine which worker produces the best output and select the best output to be used in the computer environment such as the game. This would be beneficial as it would increase the efficiency of the processing of data by not limiting the system to one designated processing strategy that may not always produce optimal results for instantiating the game. ( White 2:45 – 47)
As per claim 2, wherein the interaction is caused by an input received from a user computing device. (In some implementations, the online game may be executed remotely by the plurality of servers of the game cloud system and the game data streamed to the client devices of the players over the network 200, wherein the player is a user that is engaged in game play of the game. The game play of the online game is controlled by the players using control options provided in the client devices or using controllers that are communicatively connected to the client devices. In other implementations, the online game may be executed locally at the client devices and metadata from the executing online game is transmitted over the network 200 to the back-end servers for affecting the game state and for using as training data for the purposes of generating and training the AI model. (Agoston 0034)
As per claim 3, wherein the interaction is caused by an event configured to occur within the virtual environment by the game application. (Agoston discloses the interactions being interactions occurring withing the game (Agoston 0036)
As per claim 4, wherein the at least one output is at least two outputs, wherein individual outputs are associated with a specific worker module. (Combination of Agoston in view of White, wherein White teaches the use of at least two worker modules that provide an output to be analyzed to determine the best, wherein the output comprises individual results from the individual worker nodes) (White 8:59 – 9:24).
As per claim 5, wherein each of the two or more worker modules is configured to execute the first process using different functions that each generate different types of outputs that are responsive to the first process. (Combination of Agoston in view of White, wherein White discloses each worker note utilizing different computational functions to produce different types of outputs) (White 8:59 – 9:24).
Independent claim(s) 8 is/are made obvious by the combination of Agoston and White based on the same analysis set forth for claim(s) 1, which are similar in claim scope.
Dependent claim(s) 9-12 is/are made obvious by the combination of Agoston and White based on the same analysis set forth for claim(s) 2 -5, which are similar in claim scope.
As per claim 15, wherein each individual output generated for the first process by a worker module is a mutually exclusive output relative to output generated by other worker modules for presentation within the virtual environment. (Combination of Agoston in view of White wherein each worker uses different computation specification to determine the best solution to a problem. Thus the outputs will be mutually exclusive of each worker) (Whit3 8:26 – 30; 64 – 9:8, 17 – 24)
As per claim 16, wherein of the two or more worker modules configured to execute the first process at different quality levels, a first worker module is configured to execute the first process at a first quality level, and a second worker module is configured to execute the first process at a first quality level, wherein the first quality level is lower than the second quality level. (Combination of Agoston in view of White, wherein White teaches each worker producing a resulting output or solution and the system choosing the best solution out of the results. Thus each result is of a different quality in that one result is better and by extension, one the of the worker nodes is producing results at a lower quality) (White 8:59 – 9:24).
Claim(s) 6 and 7 is/are rejected under 35 U.S.C. 103 as being unpatentable over Agoston (US 2020/0171382) in view of White et al (US 10,491,663) in view of Walby et al (US 2020/0364083).
As per claims 6 and 7,
Agoston fails to disclose the following
wherein the one or more memory devices store one or more machine learning models each trained to select an optimal subset of the two or more worker modules to execute a given process. [claim 6]
or
wherein the one or more processes are distributed to the one or more worker modules by the request manager module based on the one or more machine learning models. [claim 7]
However, Walby discloses a system of automatically assigning tasks to automated workers wherein machine learning models are used to determine and assign tasks or jobs to RPA bots (i.e. subset of best worker modules) Walby teaches “Orchestration hardware 130 may be a hardware computing device that is configured to be a controller to distribute work to an RPA bot 140. Orchestration hardware 130 may determine tasks queued at the task queueing hardware which are to be completed, and through machine learning determine which item to allocate to an RPA bot 140 based on an application predictive model and a task profile predictive model. The two models may be configured to allow for orchestration hardware 130 to make determinations dynamically without the need for fixed rules. Orchestration hardware 130 may utilize recursive and continuous algorithms to determine the most effective and efficient uses of RPA bots 140 for current and expected future tasks, at each instance once an RPA bot 140 has completed a task.” (Walby 0032)
It would be obvious to one of ordinary skill in the art, at the time of filing, to modify Agoston in view of Walby to utilize machine learning models to aid in the assigning of tasks to various workers. This would be beneficial as it would help automate and remove some of the human error when a human or player attempts determine the worker that is best suited for a particular job at a particular time.
Claim(s) 17 and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Agoston (US 2020/0171382) in view of White et al (US 10,491,663) in view of Morisada et al (US 2010/0115521)
As per claim 17, Agoston and White fail to disclose:
wherein the first worker module is configured to generate the first output within a first time limit associated with the execution of the first process, and the second worker module is configured to generate the first output within a first time limit associated with the execution of the first process.
However, in a similar field of endeavor, Morisada teaches a distributed processing system wherein tasks are assigned to processing units. The selection of processing units are based upon a time limit associated with the task. Morisada specifically states, “Suppose, for example, that it is specified from the mediation server 100 that three processing units 30 are to be used and that the task acquiring unit 224 has acquired a task set including three tasks which are designed on the assumption that each task can be processed by one processing unit 30. Then, the input/output unit 24 instructs three processing units 30 to execute the respective tasks. The input/output unit 24 may select processing units 30 that execute the tasks, based on the time limit of the tasks that the task information acquiring unit 223 has acquired from the mediation server 100 and the usage of a plurality of processing units 30. For example, if the task set including three tasks is acquired and there is some time to spare till the time limit, the number of processing units 30 in use simultaneously may be reduced and a free space may be created in a manner that the three tasks are executed in series by a single processing unit 30. If there is not much time left till the time limit, the three tasks may be executed in parallel by three processing units 30.” (Morisada 0058)
It would be obvious to one of ordinary skill in the art, at the time of filing, to modify Agoston and White in view of the teachings of Morisada to utilize a known technique to modify similar systems in the same way wherein a worker node is given a task that is associated with a time limit. The usage of time limits in the completion of tasks is beneficial in that the system can determine how many parallel worker nodes are needed to process a single task and allocate workers efficiently.
As per claim 18, wherein selection of the output occurs after an indeterminate amount of time after the first time limit or the second time limit. (Combination of Agoston, White and Morisada wherein, White discloses the selection of an output that is the best after an indeterminate amount of time (i.e. an amount of time that is not specified (White 8:59 – 9:24). Morisada further discloses the selection of results or the storing of at least a partial result after task is completed at an unspecified time (Morisada 0060).
Response to Arguments
Applicant’s arguments with respect to claim(s) 1 - 18 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ROSS A WILLIAMS whose telephone number is (571)272-5911. The examiner can normally be reached Mon-Fri 8am - 4pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kang Hu can be reached at (571)270-1344. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/RAW/ Examiner, Art Unit 3715
11/20/2025
/KANG HU/ Supervisory Patent Examiner, Art Unit 3715