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 .
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 10/25/2024 was filed and is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Claim Objections
Claims 3 and 14 objected to because of the following informalities: possible typos, claim 3 and 14 states “wherein the at least one adjustment one or more of increases and decreases”; there appears to be a word missing between “adjustment” and “one”. In the interest of compact prosecution, the claim is being interpreted as an “or” statement that includes an increase or decrease because of the “at least one” phrase, which appears to be the context. Appropriate correction is required.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claim(s) 1-5, 7-10, 12-16, 18-20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Risenhoover (US 2008/0174598 A1, 2007).
Regarding claim 1, 12, 20, Risenhoover teaches An apparatus comprising:
at least one processing device (Risenhoover, [0089], reproduced below:
PNG
media_image1.png
916
670
media_image1.png
Greyscale
) comprising a processor coupled to a memory (Risenhoover, [0091], reproduced below:
PNG
media_image2.png
964
506
media_image2.png
Greyscale
), the at least one processing device, when executing program code, is configured to:
obtain one or more rendering (Risenhoover, see nearest image below, “create renderings” is being interpreted as one or more rendering) workloads (Risenhoover, see nearest image below, “workflow automation” is being interpreted to involve workloads) from a client (Risenhoover, [0029], reproduced below:
PNG
media_image3.png
734
680
media_image3.png
Greyscale
. “User” is being interpreted to involve a client); and
automatically manage execution of the one or more rendering workloads (Risenhoover, see nearest image above, “employ workflow automation” is being interpreted as “automatically manage execution of the one or more rendering workloads”) in accordance with at least a subset of resources of a plurality of computing platforms (Risenhoover, see nearest image above, “management of computing resources” is being interpreted as involving “at least a subset of resources of a plurality of computing platforms”), the plurality of computing platforms (Risenhoover, see nearest image above, “PRiSM may manage multiple clusters of compute nodes that may be remotely coupled”. “Computer nodes” are being interpreted as involving “plurality of computing platforms”) comprising at least one client computing platform (Risenhoover, see nearest image above, “user” is being interpreted to involve “at least one client computing platform”) and at least one cloud computing platform (Risenhoover, see nearest image above, “remote collaboration” is being interpreted to involve “at least one cloud computing platform”);
wherein, when automatically managing execution of the one or more rendering workloads (Risenhoover, see nearest image above, “employ workflow automation” is being interpreted as “automatically manage execution of the one or more rendering workloads”), the at least one processing device is further configured to:
perform, prior to execution of the one or more rendering workloads (Risenhoover, [0060]: “For example, resource manager 902 may determine the number of render nodes 905-908 to assign to a particular task based on the customer's subscription level.” Which shows determining the number of render nodes before executing the one or more rendering workloads), an estimation operation (Risenhoover, [0031]: “Block 204 shows that in this embodiment, one or more rendering tasks may be automatically delegated to one or more remotely coupled compute nodes, based at least in part upon the rendering requests”. “Automatically delegating” is being interpreted as involving “an estimation operation”) corresponding to at least one execution attribute (Risenhoover, [0031]: “Block 204 shows that in this embodiment, one or more rendering tasks may be automatically delegated to one or more remotely coupled compute nodes, based at least in part upon the rendering requests”. The automatic delegation of rendering tasks to one or more compute nodes is being interpreted to involve “at least one execution attribute”) associated with the one or more rendering workloads (Risenhoover, [0031]: “Block 204 shows that in this embodiment, one or more rendering tasks may be automatically delegated to one or more remotely coupled compute nodes, based at least in part upon the rendering requests”. “One or more rendering tasks” is being interpreted as involving “one or more rendering workloads”), wherein the estimation operation evaluates a resource utilization associated (Risenhoover, [0049], reproduced below:
PNG
media_image4.png
478
1020
media_image4.png
Greyscale
. “Metrics describing the resources used in its creation” which shows the resource utilization was estimated) with at least one adjustment to a resolution (Risenhoover, [0041]: “The compute nodes may render different camera views and return their results to the design visualization system and/or resource manager, which may generate one or more requested output types. For example, output could include high resolution still images”. Which shows the resolution adjustment to the high resolution was a requested adjustment) of at least a portion of at least one of the one or more rendering workloads (Risenhoover, [0041]: “a resource manager of the design visualization system, may automatically delegate tasks to compute nodes, local and/or remote, and may in some instances load-balance these tasks according to criteria including but not limited to capabilities and latency of available node resources”. The tasks delegated from the resource manager are being interpreted as involving “at least one of the one or more rendering workloads”);
send, to the client (Risenhoover, see [0049] image above, “The resource manager may construct a message to the client”), a set of one or more candidate execution plans (Risenhoover, [0057]: “In some embodiments, the design visualization system may offer a list of objects as described by the host application, and a visual preview of the default material and lighting mappings”. “Visual preview” is being interpreted as involving “one or more candidate execution plants”) responsive to the estimation operation (Risenhoover, [0049]: “The plug-in (or stand-alone application) may open a window displaying the rendered image, along with metrics describing the resources used in its creation”. The resources used metrics are being interpreted as part of the estimation operation as the resource manager delegates tasks to nodes based on rendering tasks, as cited from [0031] earlier), wherein each candidate execution plan corresponds (Risenhoover, [0057]: “visual preview”) to a different subset of resources of the plurality of computing platforms (Risenhoover, [0065]: “In one or more embodiments, workgroup manager 904 may parse an assigned sub-task into multiple sub-sub-tasks assignable to one or plural compute nodes 905-908, as illustrated”. “Multiple sub-sub tasks assignable to one or plural compute nodes” is being interpreted as involving “a different subset of resources of the plurality of computing platforms”);
receive, from the client (Risenhoover, see [0031] image below, “One or more design attributes may be selected” which is being interpreted to be from the client), an indication of a selection of at least one execution plan (Risenhoover, see [0031] image below, “One or more design attributes may be selected”. The selected attributes are being interpreted to involve at least one execution plan) from the set of one or more candidate execution plans (Risenhoover, [0031], reproduced below:
PNG
media_image5.png
796
672
media_image5.png
Greyscale
. “one or more rendering tasks may be automatically delegated to one or more remotely coupled compute nodes”. The selected attributes are being interpreted to involve one or more rendering tasks that are part of the one or more candidate execution plans); and
cause the at least one selected execution plan to be implemented to enable execution of the one or more rendering workloads (Risenhoover, see [0031] image above, “One or more design renderings may be created at 205 based at least in part upon the design and/or design parameters and attributes”. Which shows at least one selected plan was executed so that the rendering may be created).
Regarding claim 2, Risenhoover teaches The apparatus of claim 1, wherein the at least one execution attribute comprises one or more estimated values (Risenhoover, see [0087] image below, “resource manager 1302 may calculate a maximum visual quality that can be rendered with the resources available”. “may calculate maximum visual quality” is being interpreted to involve “one or more estimated values”) attributable to different subsets of resources of the plurality of computing platforms (Risenhoover, see [0087]: “can be rendered with the resources available”, which shows “different subsets of recourse of the plurality of computing platforms”) associated with the one or more candidate execution plans (Risenhoover, [0087], reproduced below
PNG
media_image6.png
1641
1010
media_image6.png
Greyscale
. The various qualities shown in [0087] are being interpreted as involving one or more candidate execution plans; such as the lower quality proxy image and maximum visual quality, as examples).
Regarding claim 3, Risenhoover teaches The apparatus of claim 1, wherein the at least one adjustment one or more of increases and decreases the resolution (Risenhoover, see [0041] image below, “output could be high resolution still images”, which is being interpreted as at least one adjustment one or more of increases and decreases the resolution. The “at least one” is being interpreted as an “or statement”) of at least one image of the one or more rendering workloads (Risenhoover, [0041], reproduced below:
PNG
media_image7.png
975
1024
media_image7.png
Greyscale
. Which shows the output involves one or more rendering workloads as the compute nodes and resource manager are involved).
Regarding claim 4, Risenhoover teaches The apparatus of claim 1, wherein the at least one adjustment (Risenhoover, [0041]: “one or more requested output types…output could include high resolution still images”, which is being interpreted as “at least one adjustment”) identifies at least one representative frame for a given scene (Risenhoover, [0057]: “a visual preview of the default material” is being interpreted as involving “at least one representative frame for a given scene”).
Regarding claim 5, Risenhoover teaches The apparatus of claim 1, wherein, when automatically managing execution of the one or more rendering workloads, the at least one processing device is further configured to:
receive, from the client prior to receiving an indication of a selection of at least one execution plan (Risenhoover, see [0029] image below, “one or more prior user design attribute selections for a project”. “User design attribute selections for a project” are being interpreted as client making a selection of at least one execution plan), client input regarding one or more candidate execution plans (Risenhoover, [0029], reproduced below:
PNG
media_image3.png
734
680
media_image3.png
Greyscale
. “User” is being interpreted to involve a client. “One or more prior user design attribute selections for a project” is being interpreted to involve “one or more candidate execution plans”);
compute one or more additional candidate execution plans in response to the client input (Risenhoover, see [0029] image above, “create renderings” shows the PRiSM employs workflow automation that computes one or more additional candidate execution plans in response to the client input. The client input example input would be “one or more prior user design attribute selections”); and
send, to the client, the one or more additional candidate execution plans to be considered for selection (Risenhoover, [0057]: “a visual preview of the default material and lighting mappings“. The visual preview is being interpreted as being sent to the client. The preview is being interpreted as “one or more additional candidate execution plans to be considered for selection”).
Regarding claim 7, Risenhoover teaches The apparatus of claim 1, wherein the evaluation of the resource utilization associated with the at least one adjustment comprises evaluating one or more of:
(i) a resource cost associated with a first resolution of the one or more rendering workloads, prior to a performance of the at least one adjustment,
(ii) a resource cost associated with a second resolution of one or more rendering workloads, subsequent to the performance of the at least one adjustment, and
(iii) a cost associated with performing the at least one adjustment (Risenhoover, [0087]: “resource manager 1302 may calculate a maximum visual quality that can be rendered with the resources available”. “Calculate a maximum visual quality” is being interpreted to involve “a cost associated with performing the at least one adjustment”. “Maximum visual quality” is being interpreted to involve “at least one adjustment”. This statement is being interpreted as part of an “or” statement, so only one option will be considered).
Regarding claim 8, Risenhoover teaches The apparatus of claim 1, wherein the at least one adjustment is performed for a subset of designated frames (Risenhoover, see [0064] image below, “sub-task might specify rendering” is being interpreted to involve ”a subset of designate frames”) within a larger set of frames (Risenhoover, [0064], reproduced below:
PNG
media_image8.png
672
1346
media_image8.png
Greyscale
. The RenderRequest as part of the workgroup manager is being interpreted to involve a larger set of frames)
Regarding claim 9, Risenhoover teaches The apparatus of claim 1, wherein the at least one adjustment comprises evaluating one or more quality metrics (Risenhoover, see [0087] image below, “calculate a maximum visual quality” is being interpreted to involve “evaluating one or more quality metrics”) with respect to at least one image generated by the at least one adjustment (Risenhoover, [0087], reproduced below:
PNG
media_image6.png
1641
1010
media_image6.png
Greyscale
. “Change in camera” is being interpreted as an example adjustment).
Regarding claim 10, Risenhoover teaches The apparatus of claim 1, wherein, when sending and receiving with respect to the client (Risenhoover, see [0043] image below, the workstation is being interpreted as involving the client’s workstation that can send and receive communication), the at least one processing device is further configured to communicate through a client interface (Risenhoover, [0043], reproduced below:
PNG
media_image9.png
676
674
media_image9.png
Greyscale
. The workstation is being interpreted as capable of communicating through a client interface).
Claim 13 is rejected using the same rationale and motivation as applied to claim 2 discussed above.
Claim 14 is rejected using the same rationale and motivation as applied to claim 3 discussed above.
Claim 15 is rejected using the same rationale and motivation as applied to claim 4 discussed above.
Claim 16 is rejected using the same rationale and motivation as applied to claim 5 discussed above.
Claim 18 is rejected using the same rationale and motivation as applied to claim 7 discussed above.
Claim 19 is rejected using the same rationale and motivation as applied to claim 8 discussed above.
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) 6, 17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Risenhoover, in view of Syed (“Optimizing Cloud Resource Allocation with Machine Learning: A Comprehensive Approach to Efficiency and Performance”, Aug 2024).
Regarding claim 6, Risenhoover teaches The apparatus of claim 1, wherein, prior to performing the estimation operation, the at least one processing device is further configured to:
obtain execution parameters associated with types of resources available in the plurality of computing platforms (Risenhoover, see [0071] image below: the “20 computers in the PRiSM data center, 8 at the customer site” are being interpreted as examples involving “types of resources available in the plurality of computing platforms”. The resource manager distributing the work is being interpreted as involving execution parameters);
analyze one or more first combinations of types of resources based on the execution parameters (Risenhoover, [0071], reproduced below:
PNG
media_image10.png
507
1017
media_image10.png
Greyscale
. “Cooperate to combine the computing resources” is being interpreted as “one or more first combinations of types of resources available”. The resource manager is being interpreted to have the ability to analyze the resources, otherwise it would not distribute the work among the resources available); and
However, Risenhoover does not appear to explicitly teach heatmaps, though does teach all the data used in creating a heatmap that would help in cloud optimization.
Pertaining to the same field of endeavor, Syed teaches
generate, based on the analyzing, one or more heatmaps (Syed, see Abstract image below, “The results are visualized through… heatmaps”. Also see Figure 2, which is a color visual heatmap of resources used) corresponding to the one or more first combinations of types of resources (Syed, Abstract, reproduced below:
PNG
media_image11.png
644
1294
media_image11.png
Greyscale
. “Resource utilization and cost management” are being interpreted as involving combination of types of resources. Also see figure 2 which has example resources such as cpu_usage, memory_usage, and more).
Risenhoover and Syed are considered to be analogous art because they are directed to cloud computing resources. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the method and system for cloud computing resources (as taught by Risenhoover) to include a heatmap (as taught by Syed) because the combination provides an improvement to efficiency and effectiveness of cloud resource management (Syed, Abstract).
Claim 17 is rejected using the same rationale and motivation as applied to claim 6 discussed above.
Claim(s) 11 is/are rejected under 35 U.S.C. 103 as being unpatentable over Risenhoover, in view of Cherukuri (“AI-Orchestrated Frontend Systems: Neural Rendering and LLM-Augmented Engineering for Adaptive, High-Performance Web Applications”, 2023).
Regarding claim 11, Risenhoover teaches The apparatus of claim 10, wherein the client interface comprises
However, Risenhoover does not appear to explicitly teach “simulate human conversation with respect to the client”. Although, Risenhoover does teach client interface and cooperation environment that can hold “conversations”.
Pertaining to the same field of endeavor, Cherukuri teaches
a computer program configured to simulate human conversation with respect to the client (Cherukuri, Abstract, “The suggested methodology presents a layered architecture that offers neural rendering engines, the engineering agents that are LLM-based, and performance-conscious orchestration controllers.” The LLM-based are being interpreted as simulating “human conversation with respect to the client”).
Risenhoover and Cherukuri are considered to be analogous art because they are directed to cloud usage and rendering. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have modified the method and system for cloud usage and rendering (as taught by Risenhoover) to include simulating human conversation with respect to the client (as taught by Cherukuri) because the combination provides an improvement to cloud usage and rendering (Cherukuri, Abstract).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
Brownlee et al (US 11,069,123 B2, 2020) teaches cloud based increases and/or decreases to resolution for images.
Ben-Natal et al (US 2015/0371357 A1) teaches rendering farm that previews costs for workload (interpreted from job) related to resolution
Srinivasa et al (US 6,618,046 B1, 2003) teaches rendering costs for various image resolutions for a server farm (interpreted as cloud computing). Examiner respectively recommends reviewing the entirety of the cited prior art as cloud computing management (with cost assessment) appears to be common practice to those with ordinary skill in the art, as well as up-sampling and down-sampling (increase or decrease of resolution).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JOHNNY B DUONG whose telephone number is (571)272-1358. The examiner can normally be reached Monday - Thursday 10a-9p (ET).
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, Matthew Bella can be reached at (571)272-7778. 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.
/J.B.D./Examiner, Art Unit 2667
/MATTHEW C BELLA/Supervisory Patent Examiner, Art Unit 2667