DETAILED ACTION
Acknowledgement
This final office action is in response to the amendment filed on 09/09/2025.
Status of Claims
Claims 1-3, 13-15, and 25-27 have been amended.
Claims 1-36 are now pending.
Response to Arguments
Claim objections have been withdrawn in light of amendments.
The double patenting rejection is withdrawn in light of claim amendments. The Examiner finds the current pending claims to be distinct from pending claims in co-pending applications 18/143,994 and 18/144,018.
The 35 U.S.C. 101 “signal per se” rejection of claims 13-24 is withdrawn in light of claim 13 amendments.
Applicant's arguments filed on 09/09/2025 regarding the 35 U.S.C. 101 and 103 rejections of claims 1-36 have been fully considered. The Applicant argues the following.
(1) As per the 101 rejection, the Applicant argues, in summary, that amended claims 1, 13, and 25 recite a practical application of the alleged abstract idea. The specification describes the invention such that the improvement (i.e. a protocol that enables communication of requests between distributed actors, including non-human distributed actors, such that the non-human distributed actor are able to perform a particular skill associated with the request without human intervention.). Independent claims 1, 13, and 25 include component or steps of the invention that provide the improvement. The amended claims 1, 13, and 25 include the components or steps of the invention that provide the improvement; "maintain a group of distributed actors...wherein each distributed actor is a non-human distributed actor..."; and "assigning the request to the one or more qualified distributed actors to address the unfulfilled need, ... wherein addressing the unfulfilled need includes performing the at least one skill offered by the one or more assigned non-human distributed actors by executing one or more interactions on a respective electronic interface specific to each assigned non-human distributed actor without human intervention, wherein executing the one or more interactions includes: processing the respective electronic interface specific to each assigned non-human distributed actor by identifying content of the respective electronic interface and functionality of the respective electronic interface and processing the content and functionality for the respective electronic interface to perform the one or more interactions on the electronic interface". These elements provide a practical application that allows the assigned non-human distributed actor to perform interactions on electronic interfaces without human intervention by processing content and functionality for the respective electronic interface.
The Examiner respectfully disagrees. The Examiner submits the additional elements recited in the amended claims and highlighted in Steps 2A(2) and 2B do not integrate the abstract idea into a practical application because the additional elements do not improve the functioning of a computer beyond its original capacity nor improve upon another technology or technological component. Providing instructions to a computing device/system to perform a specific function (e.g. executing one or more interactions on a respective electronic interface) that it’s capable of performing is not an improvement in technology. The interaction on a respective electronic interface could simply be to display data in response to a request. The claims do not recite a specific function or interaction that reflects an improvement in technology. Therefore, the 35 U.S.C. 101 rejection is maintained.
(2) As per the 103 rejection, the Applicant argues that the combination of Horvitz and Carter fail to teach, disclose, or even suggest the limitations of amended claims 1, 13, and 25.
The Examiner respectfully disagrees. The Examiner submits that based on the broadest reasonable interpretation of the claims, the combination of Horvitz and Carter teach all of the amended claim limitations as shown in the updated claim mapping below. Therefore, the 35 U.S.C. 103 rejection is maintained.
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 .
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.
Claims 1-36 are rejected under 35 U.S.C. 101 because the claimed invention, “Distributed Actor-Based Information System & Method”, is directed to an abstract idea, specifically Certain Methods of Organizing Human Activity, without significantly more. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception because the additional elements individually or in combination provide mere instructions to implement the abstract idea on a computer.
Step 1: Claims 1-36 are directed to a statutory category, namely a process (claims 1-12), a manufacture (claims 13-24), and a machine (claims 25-36).
Step 2A (1): Claims 1-4, 6-16, 18-28, and 30-36 are directed to an abstract idea of Certain Methods of Organizing Human Activity, based on the following claim limitations: maintaining a group of distributed actors, wherein each of the distributed actors offers at least one skill and is assigned to one or more of a plurality of network groups,…, and wherein each network group is associated with a separate entity; monitoring an environment to detect a request from a requesting distributed actor concerning an unfulfilled need; processing the request to identify a skill required to service the request, thus defining a required skill; identifying one or more distributed actors capable of providing the required skill based, at least in part, upon the required skill and availability of skills within the plurality of network groups, thus defining one or more qualified distributed actors; and assigning the request to the one or more qualified distributed actors to address the unfulfilled need, thus defining one or more assigned distributed actors, wherein addressing the unfulfilled need includes performing the at least one skill offered… (claims 1, 13, and 25); wherein assigning the request to the one or more qualified distributed actors to address the unfulfilled need includes one or more of: immediately assigning to the one or more qualified distributed actors; inquiring on the availability of the one or more qualified distributed actors; and allowing the requesting distributed actor to choose the one or more qualified distributed actors from a group of potential distributed actors (claims 2, 14, and 26); wherein monitoring an environment to detect a request from a user concerning an unfulfilled need includes: detecting the existence of a request (claims 3, 15, and 27); wherein detecting the existence of a request includes one or more of: receiving a request from a human distributed actor; and receiving a request from a non-human distributed actor (claims 4, 16, and 28); wherein the one or more assigned distributed actors interact, directly or indirectly, with one or more distributed sub-actors to address at least a portion of the unfulfilled need (claims 6, 18, and 30); addressing at least a portion of the unfulfilled need with the required skill (claims 7, 19, and 31); wherein addressing at least a portion of the unfulfilled need with the required skill includes: generating one or more response portions with the required skill (claims 8, 20, and 32); forming a bespoke response to the unfulfilled need based, at least in part, upon the one or more response portions (claims 9, 21, and 33); providing the bespoke response to a party associated with the unfulfilled need (claims 10, 22, and 34); effectuating, in whole or in part, the bespoke response (claims 11, 23, and 35); wherein maintaining a group of distributed actors includes: maintaining a database that defines the group of distributed actors (claims 12, 24, and 36).”. The claims describe a process of maintaining skills for a group of distributed actors (i.e. resources), monitoring an environment for a request from a user of an unfulfilled need, and assigning distributed actors (i.e. resources) to address the request/unfulfilled need (i.e. task). Maintaining skills of distributed actors (i.e. resources), monitoring an environment for requests from users, and assigning distributed actors (i.e. resources) to address the requests reflects certain methods of organizing human activity as the assigning facilitates interaction between a person (i.e. user) that has an unfulfilled need or request and a computer (i.e. resource) that is fulfilling the need or request. Therefore, these limitations, under the broadest reasonable interpretation, fall within the abstract grouping of Certain Methods of Organizing Human Activity. Certain Methods of Organizing Human Activity includes managing personal behavior or relationships or interactions between people including social activities, teaching, and following rules or instructions. Certain Methods of Organizing Human Activity can encompass the activity of a single person (e.g. a person following a set of instructions), activity that involve multiple people (e.g. a commercial interaction), and certain activity between a person and a computer (e.g. a method of anonymous loan shopping). Therefore, claims 1-36 are directed to an abstract idea and are not patent eligible.
Step 2A (2): This judicial exception is not integrated into a practical application. In particular, claims 1, 5, 12, 13, 17, 24, 25, 29, and 36 recite additional elements of “a computer-implemented method, executed on a computing device (claim 1); wherein each distributed actor is a non-human distributed actor that performs a respective skill without human intervention; executing one or more interactions on a respective electronic interface specific to each assigned non-human distributed actor without human intervention, wherein executing the one or more interactions includes: processing the respective electronic interface specific to each assigned non-human distributed actor by identifying content of the respective electronic interface and functionality of the respective electronic interface and processing the content and functionality for the respective electronic interface to perform the one or more interactions on the electronic interface; (claims 1, 13, and 25); wherein the group of distributed actors include one or more of: a software platform; a software application; a virtual machine; and a web-based service (claims 5, 17, and 29); database (claims 12, 24, and 36); 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 (claim 13); and a computing system including a processor and memory configured to perform operations (claim 25)”. These additional elements do not integrate the abstract idea into a practical application because the claims do not recite (a) an improvement to another technology or technical field and (b) an improvement to the functioning of the computer itself and (c) implementing the abstract idea with or by use of a particular machine, (d) effecting a particular transformation or reduction of an article, or (e) applying the judicial exception in some other meaningful way beyond generally linking the use of an abstract idea to a particular technological environment. These additional elements evaluated individually and in combination are viewed as computing devices that are used to perform the abstract idea and communicate results. Limitations that recite mere instructions to implement an abstract idea on a computer or merely uses a computer as a tool to perform an abstract idea are not indicative of integration into a practical application (see MPEP 2106.05(f)). Therefore, claims 1-36 do not include individual or a combination of additional elements that integrate the judicial exception into a practical application and thus are not patent eligible.
Step 2B: The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Claims 1, 5, 12, 13, 17, 24, 25, 29, and 36 recite additional elements of ““a computer-implemented method, executed on a computing device (claim 1); wherein each distributed actor is a non-human distributed actor that performs a respective skill without human intervention; executing one or more interactions on a respective electronic interface specific to each assigned non-human distributed actor without human intervention, wherein executing the one or more interactions includes: processing the respective electronic interface specific to each assigned non-human distributed actor by identifying content of the respective electronic interface and functionality of the respective electronic interface and processing the content and functionality for the respective electronic interface to perform the one or more interactions on the electronic interface; (claims 1, 13, and 25); wherein the group of distributed actors include one or more of: a software platform; a software application; a virtual machine; and a web-based service (claims 5, 17, and 29); database (claims 12, 24, and 36); 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 (claim 13); and a computing system including a processor and memory configured to perform operations (claim 25)”. These additional elements evaluated individually and in combination are viewed as mere instructions to apply or implement the abstract idea on a computer. Applying an abstract idea on a computer does not integrate a judicial exception into a practical application or provide an inventive concept (see MPEP 2106.05(f)). Therefore, claims 1-36 do not include individual or a combination of additional elements that are sufficient to amount to significantly more than the judicial exception and thus are not patent eligible.
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-36 are rejected under 35 U.S.C. 103 as being unpatentable over Horvitz et al. (US 2014/0278634 A1) in view of Carter et al. (US 2017/0264634 A1).
As per claims 1, 13, and 25 (Currently Amended), Horvitz teaches a computer-implemented method, executed on a computing device, comprising (Horvitz e.g. FIG. 4 is a flow diagram summarizing some example steps that may be taken by a geospatial crowdsourcing service or the like when a task is received, which may be in real time, or based upon a scheduled task [0057]. The techniques described herein can be applied to any device. Accordingly, the below general purpose remote computer described below in FIG. 5 is but one example of a computing device [0062]. A method implemented at least in part on at least one processor, comprising (claim 1).); Horvitz teaches a computer program product residing on a computer readable medium having a plurality of instructions stored thereon which, when executed by a processor, cause the processor to perform operations comprising (Horvitz e.g. Computer 510 typically includes a variety of computer readable media and can be any available media that can be accessed by computer 510 (Fig. 5 and [0066]. One or more computer-readable media having computer-executable instructions, which when executed on at least one processor perform step (claim 19).); Horvitz teaches a computing system including a processor and memory configured to perform operations comprising (Horvitz e.g. With reference to FIG. 5, an example remote device for implementing one or more embodiments includes a general purpose computing device in the form of a computer 510 [0065]. A system comprising, one or more processors, a memory communicatively coupled to the processor, and a spatiotemporal crowdsourcing configured to execute on the one or more processors from memory,.. (claim 13).) :
Horvitz teaches maintaining a group of distributed actors, wherein each of the distributed actors offers at least one skill… wherein each distributed actor is a non-human distributed actor that performs a respective skill without human intervention (Horvitz e.g. The subject matter described herein are directed towards spatiotemporal crowdsourcing technology (e.g., implemented as a service) configured to receive a task that includes task-related criteria [0005]. Actor-related data is accessed to select an actor set needed for accomplishing the task, including selecting one or more actors until the actor set is sufficient to accomplish the task [0007]. The actor set includes at least one human actor and at least one non-human actor (claim 14). FIG. 1 is a block diagram showing example components of an example spatiotemporal crowdsourcing implementation, in the form of a service 102 [0018]. In general, users 104 register as actors (members) in the spatiotemporal crowdsourcing service via a network (e.g., Internet) interface, shown as coupling to a user task preference and ability component 106 [0018]. The preference and qualification information is stored in an actor data store 108, and may include a list of capabilities, competencies and/or experience (e.g., a math tutor for algebra to calculus, five years teaching), price/rate (including overtime), preferences (e.g., evenings OK but not weekends, will work within thirty minutes of a general location), assets e.g., (have a bike or car), calendar data, schedule data and/or possibly other pertinent information. This information may be updated in real time as it changes, either with explicit instructions from the user and/or automatically through sensing and inference [0019]. Users are one type of actor that may be summoned to accomplish a task. Although not explicitly shown in FIG. 1, other example types of actors that may have actor data stored in the data store108 include non-human participants, such as a sensor (e.g., as a security camera, traffic camera and/or microphone), an automobile equipped with communication capabilities, tagged equipment, and so forth. Such other non-human actors may be summoned as part of accomplishing a task, as described below [0020].) ,
Horvitz teaches monitoring an environment to detect a request from a requesting distributed actor concerning an unfulfilled need; (Horvitz e.g. FIG. 1 shows a task being received at a planning component 112, in which the task includes any number of criteria. Example criteria include a task deadline, a maximum cost, any reputation requirements, any acquaintance requirements and so on. Other criteria may specify a number of workers, skill sets required for the workers, non-human assets needed, and so forth. Basically any task requirement that may be matched against known data regarding actors' preferences and abilities to perform that task may be used as part of the task criteria [0024]. The planning component 112 (or another component of the service 102) may receive task completion state information, to ensure that tasks are completed by the deadline, with any re-planning as needed (e.g., an extra worker is needed) [0027]. Fig. 4 is a flow diagram summarizing some example steps that may be taken by a geospatial crowdsourcing service or the like when a task is received, which may be in real time, or based upon a scheduled task [0057]. State data also may be accessed, to determine the current state of an actor [0058]. Re-planning may be performed as state information comes in, e.g., the task is behind schedule and the task owner is willing to increase the budget to hire another worker, a confirmed worker did not show up, a piece of equipment broke down, and so forth. Tracking continues until the task is complete, as evaluated at step 416 [0060].)
Horvitz teaches processing the request to identify a skill required to service the request, thus defining a required skill; (Horvitz e.g. There is described receiving a task including task criteria, accessing actor data of one or more actors, including task preference data and task ability data, and selecting an actor set based upon the task criteria and the task preference data and task ability data [0006]. The planning component 112 uses the task criteria matching module 114 to work with the preference and ability component 106 to match the criteria associated with the task with an actor set ( e.g., one or more users and/or any other actor or actors) [0025]. If the actor data store is arranged as a data store, an optimized query may be made against the data store to obtain the actor set of actors that meet the criteria (Fig. 4 step 402 and [0058]). One or more actors are matched to task-related criteria and summoned to accomplish a task, which may be divided into a set of coordinated tasks (subtasks) [0061].)
Horvitz teaches identifying one or more distributed actors capable of providing the required skill based, at least in part, upon the required skill and availability of skills…, thus defining one or more qualified distributed actors; and (Horvitz e.g. The spatiotemporal crowdsourcing service selects an actor set (e.g., one or more human workers and/or entities) for accomplishing the task, including having the task-related criteria and actor-related data used to determine inclusion in the actor set [0005]. Note that the selection of actors for the actor set may be dynamic, e.g., selection may change as a task progresses [0025]. The planning component 112 operates in conjunction with the other components 106, 114 and 116 to coordinate the summoning of the equipment and personnel to a specified location at a desired time, based upon who is available, when and where, and their pricing, along with any other criteria such as experience, reputation and so forth [0027].)
Horvitz teaches assigning the request to the one or more qualified distributed actors to address the unfulfilled need, thus defining one or more assigned distributed actors… (Horvitz e.g. The spatiotemporal crowdsourcing service selects an actor set (e.g., one or more human workers and/or entities) for accomplishing the task, including having the task-related criteria and actor-related data used to determine inclusion in the actor set [0005]. FIG. 1 shows a task being received at a planning component 112, in which the task includes any number of criteria. Example criteria include a task deadline, a maximum cost, any reputation requirements, any acquaintance requirements and so on. Other criteria may specify a number of workers, skill sets required for the workers, non-human assets needed, and so forth. Basically any task requirement that may be matched against known data regarding actors' preferences and abilities to perform that task may be used as part of the task criteria [0024]. When a task needs to be performed, a subset of one or more actors is summoned by the planning component 112, which in the example of FIG. 1. In general, the planning component 112 uses the task criteria matching module 114 to work with the preference and ability component 106 to match the criteria associated with the task with an actor set (e.g., one or more users and/or any other actor or actors) [0025].).,
Horvitz does not explicitly teach, however, Carter teaches the following:
Carter teaches each one of the distributed actors…is assigned to one or more plurality of network groups…, and wherein each network group is associated with a separate entity; (Carter e.g. Carter teaches a computer-implemented method and system for facilitating information security and sub-system operational conformance of protocols ([0003]-[0004]). FIG. 1 shows an example network for controlling resource access and operation across sub-systems and/or systems [0018]. Network 100 include systems corresponding to multiple clients and multiple locations. More specifically, each of on-site client 1 system 102, virtual client system 106 and client 2 system 104 can correspond to a set of devices and/or other components, such as one or more servers (e.g., and/or server farms or server clusters), user devices (e.g., desktop computers, laptops, tablets, or smart phones), data storage devices (e.g., network-attached storage), and/or equipment. The clients need not be co-located but are connected via a network [0018]. A system can include multiple sub-systems. Each of the multiple sub-systems may (for example) be configured to perform a different type of operation, to use different resources (and/or different types of resources), to generate different types of outputs, to be located at different geographical locations, to correspond to ( e.g., to grant access to) different agents or users (e.g., to different departments of an organization), and so on [0019]. The implementation depicted in FIG. 1 illustrates various types of resources of systems. It will be appreciated that these resources are illustrative. Resources represented by separate blocks may, but need not, correspond to separate devices or groups of devices [0020]. An allocation resource 152 can control which cloud resources are allocated to a given client, client sub-system, task performance, and so on. For example, allocation resource 152 can control allocation of memory, data stores (e.g., network attached storage), processors, and/or virtual machines [0030]. Sub-systems may differ from each with regard to (for example) types of operations performed, functionality, types of results generated, types of associated agents, specific associated agents, resource accessibility, and/or geographical locations [0055]. FIG. 4 shows an example block diagram of a system 400 to support sub-system conformance of a systemwide protocol. Each of one, more or all of the depicted components may be assigned to, at least partly allocated to and/or configured to perform operations or store data for a particular client [0054]. The protocol may identify constraints on resource accesses (e.g., to pertain to agents and/or agent devices), such as indications as to which types of resources are available for use, types of permitted use and/or times of permitted use [0054].)
Carter teaches identifying one or more distributed actors capable of providing the required skill….with the plurality of network groups (Carter e.g. FIG. 9 is a simplified block diagram of one or more components of a system environment 900 by which services provided by one or more components of an embodiment system may be offered as cloud services, [0109]. Cloud infrastructure system 902 may comprise one or more computers and/or servers [0114]. Cloud infrastructure system 902 may include a suite of applications, middleware, and database service offerings that are delivered to a customer in a self-service, subscription-based, elastically scalable, reliable, highly available, and secure manner [0117]. Services may be provided under a private cloud model in which cloud infrastructure system 902 is operated solely for a single organization and may provide services for one or more entities within the organization [0118]. At operation 942, upon receiving an order for a new subscription, order orchestration module 922 sends a request to order provisioning module 924 to allocate resources and configure those resources needed to fulfill the subscription order [0134]. Order provisioning module 924 enables the allocation of resources for the services ordered by the customer. Order provisioning module 924 provides a level of abstraction between the cloud services provided by cloud infrastructure system 900 and the physical implementation layer that is used to provision the resources for providing the requested services [0134].)
Carter teaches wherein addressing the unfulfilled need includes performing the at least one skill offered by the one or more assigned non-human distributed actors by executing one or more interactions on a respective electronic interface specific to each assigned non-human distributed actor without human intervention, wherein executing the one or more interactions includes: (Carter e.g. FIG. 9 is a simplified block diagram of one or more components of a system environment 900 by which services provided by one or more components of an embodiment system may be offered as cloud services, [0109]. System environment 900 includes one or more client computing devices 904, 906, and 908 that may be used by users to interact with a cloud infrastructure system 902 that provides cloud services [0109]. The client computing devices may be configured to operate a client application such as a web browser, a proprietary client application (e.g., Oracle Forms), or some other application, which may be used by a user of the client computing device to interact with cloud infrastructure system 902 to use services provided by cloud infrastructure system 902 [0109]. Network(s) 910 may facilitate communications and exchange of data between clients 904, 906, and 908 and cloud infrastructure system 902 [0113]. In certain embodiments, services provided by the cloud infrastructure system may include a host of services that are made available to users of the cloud infrastructure system on demand, such as online data storage and backup solutions, Web-based e-mail services, hosted office suites and document collaboration services, database processing, managed technical support services, and the like [0115]. In some examples, a service in a computer network cloud infrastructure may include protected computer network access to storage, a hosted database, a hosted web server, a software application, or other service provided by a cloud vendor to a user, or as otherwise known in the art [0116].)
Carter teaches processing the respective electronic interface specific to each assigned non-human distributed actor by identifying content of the respective electronic interface and functionality of the respective electronic interface and (Carter e.g. Cloud infrastructure system 902 may comprise one or more computers and/or servers [0114]. Cloud infrastructure system 902 may include a suite of applications, middleware, and database service offerings that are delivered to a customer in a self-service, subscription-based, elastically scalable, reliable, highly available, and secure manner [0117]. In certain embodiments, the customer may access a cloud User Interface (UI), cloud UI 912, cloud UI 914 and/or cloud UI 916 and place a subscription order via these Uls [0129]. At operation 940, information regarding the order is communicated to an order orchestration module 922. Order orchestration module 922 may utilize the order information to orchestrate the provisioning of services and resources for the order placed by the customer [0133].
Carter teaches processing the content and functionality for the respective electronic interface to perform the one or more interactions on the electronic interface. (Carter e.g. At operation 942, upon receiving an order for a new subscription, order orchestration module 922 sends a request to order provisioning module 924 to allocate resources and configure those resources needed to fulfill the subscription order [0134]. Order provisioning module 924 enables the allocation of resources for the services ordered by the customer. Order provisioning module 924 provides a level of abstraction between the cloud services provided by cloud infrastructure system 900 and the physical implementation layer that is used to provision the resources for providing the requested services [0134]. At operation 944, once the services and resources are provisioned, a notification of the provided service may be sent to customers on client devices 904, 906 and/or 908 by order provisioning module 924 of cloud infrastructure system 902 [0135].)
The Examiner submits that before the effective filing date, it would have been obvious to one of ordinary skill in the art to modify Horvitz’s Crowdsourcing Service to include assigning non-human distributed actors to one or more of a plurality of network groups that are associated with a separate entity to address unfulfilled needs by executing one or more interactions on a respective electronic interface as taught by Carter in order to include additional resources to fulfill user requests and to manage access to network resources (Carter e.g. [0116]).
As per claims 2, 14, and 26 (Currently Amended), Horvitz in view of Carter teach the computer-implemented method of claim 1, the computer program product of claim 13, and the computing system of claim 25, Horvitz teaches wherein assigning the request to the one or more qualified distributed actors to address the unfulfilled need includes one or more of: immediately assigning to the one or more qualified distributed actors; inquiring on the availability of the one or more qualified distributed actors; and allowing the requesting distributed actor to choose the one or more qualified distributed actors from a group of potential distributed actors (Horvitz e.g. The spatiotemporal crowdsourcing service selects an actor set (e.g., one or more human workers and/or entities) for accomplishing the task, including having the task-related criteria and actor-related data used to determine inclusion in the actor set [0005]. Note that the selection of actors for the actor set may be dynamic, e.g., selection may change as a task progresses [0025]. The planning component 112 operates in conjunction with the other components 106, 114 and 116 to coordinate the summoning of the equipment and personnel to a specified location at a desired time, based upon who is available, when and where, and their pricing, along with any other criteria such as experience, reputation and so forth [0027]. When the summoning is done and the appropriate actors have confirmed their availability, step 414 represents tracking the task completion state, e.g., versus the deadline, as task state information becomes available (Fig. 4 and [0060]).).
As per claims 3, 15, and 27 (Currently Amended), Horvitz in view of Carter teach the computer-implemented method of claim 1, the computer program product of claim 13, and the computing system of claim 25, Horvitz teaches wherein monitoring an environment to detect a request from the requested distributed actor concerning an unfulfilled need includes: detecting the existence of a request (Horvitz e.g. FIG. 1 shows a task being received at a planning component 112, in which the task includes any number of criteria. Example criteria include a task deadline, a maximum cost, any reputation requirements, any acquaintance requirements and so on [0024]. FIG. 4 is a flow diagram summarizing some example steps that may be taken by a geospatial crowdsourcing service or the like when a task is received, which may be in real time, or based upon a scheduled task [0057].).
As per claims 4, 16, and 28 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 3, the computer program product of claim 15, and the computing system of claim 27, Horvitz teaches wherein detecting the existence of a request includes one or more of: receiving a request from a human distributed actor; and receiving a request from a non-human distributed actor (Horvitz e.g. FIG. 4 is a flow diagram summarizing some example steps that may be taken by a geospatial crowdsourcing service or the like when a task is received, which may be in real time, or based upon a scheduled task [0057]. Step 410 evaluates whether the needed distributed actors have confirmed and the summoning is done. Note that if the task criteria cannot be met, step 412 represents notifying the owner of the issue (i.e. human) [0059]. The actor set includes at least one human actor and at least one non-human actor (claim 14).).
As per claims 5, 17, and 29 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 1, the computer program product of claim 13, and the computing system of claim 25, Horvitz teaches wherein the group of distributed actors include one or more of: a software platform; a software application; a virtual machine; and a web-based service (Horvitz e.g. Users are one type of actor that may be summoned to accomplish a task. Although not explicitly shown in FIG. 1, other example types of actors that may have actor data stored in the data store108 include non-human participants, such as a sensor (e.g., as a security camera, traffic camera and/or microphone), an automobile equipped with communication capabilities, tagged equipment, and so forth. Such other non-human actors may be summoned as part of accomplishing a task, as described below [0020]. Via contemporary computer-aware connectedness, mobile actors also may provide current state information (e.g., via a mobile device application) such as including current GPS coordinates and velocity at a certain sampling rate, and possibly a destination. A non-human mobile actor may likewise provide such state information, e.g., via GPS coordinates and velocity, a nearby truck may be summoned to help accomplish a task, regardless of who is actually driving the truck [0021]. Embodiments can partly be implemented via an operating system, for use by a developer of services for a device or object, and/or included within application software that operates to perform one or more functional aspects of the various embodiments described herein [0063].).
As per claims 6, 18, and 30 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 1, the computer program product of claim 13, and the computing system of claim 25, Horvitz teaches wherein the one or more assigned distributed actors interact, directly or indirectly, with one or more distributed sub-actors to address at least a portion of the unfulfilled need (Horvitz e.g. Note that the selection of actors for the actor set may be dynamic, e.g., selection may change as a task progresses. If a larger task is broken up into smaller tasks, or subtasks, each subtask may have an actor set selected for that task at whatever time is appropriate including dynamically; for example, a single actor may be selected for a subtask such as part of a package delivery, with a next single actor selected ( e.g., dynamically based on proximity and availability) for the next subtask part of the delivery, and so on [0025]. The planning component 112 operates in conjunction with the other components 106, 114 and 116 to coordinate the summoning of the equipment and personnel to a specified location at a desired time, based upon who is available, when and where, and their pricing, along with any other criteria such as experience, reputation and so forth [0027]. One or more actors are matched to task-related criteria and summoned to accomplish a task, which may be divided into a set of coordinated tasks (subtasks) [0061].).
As per claims 7, 19, and 31 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 1, the computer program product of claim 13, and the computing system of claim 25, Horvitz teaches further comprising: addressing at least a portion of the unfulfilled need with the required skill (Horvitz e.g. One or more actors are matched to task-related criteria and summoned to accomplish a task, which may be divided into a set of coordinated tasks (subtasks) [0061]. Other criteria may specify a number of workers, skill sets required for the workers, non-human assets needed, and so forth. Basically any task requirement that may be matched against known data regarding actors' preferences and abilities to perform that task may be used as part of the task criteria [0024].).
As per claims 8, 20, and 32 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 7, the computer program product of claim 19, and the computing system of claim 31, Horvitz teaches wherein addressing at least a portion of the unfulfilled need with the required skill includes: generating one or more response portions with the required skill (Horvitz e.g. FIG. 4 is a flow diagram summarizing some example steps that may be taken by a geospatial crowdsourcing service or the like when a task is received [0057]. If the actor data store is arranged as a data store, an optimized query may be made against the data store to obtain the actor set of actors that meet the criteria (Fig. 4 step 402 and [0058]). One or more actors are matched to task-related criteria and summoned to accomplish a task, which may be divided into a set of coordinated tasks (subtasks) [0061]. Step 406 represents summoning the actor to appear at the specified location at the specified time. If the actor does not confirm (non-human actors may have automated confirmation or a person confirm on their behalf) within a confirmation time [0059]. The planning component 112 may specify that to be hired, each worker needs to confirm that he or she will be at the specified location at the specified time with any specified equipment [0028]. Step 410 evaluates whether the needed actors have confirmed and the summoning is done. The process continues until the needed actors have done so [0059]. Note that if the task criteria cannot be met, step 412 represents notifying the owner of the issue (Fig. 4 and [0059]).
As per claims 9, 21, and 33 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 8, the computer program product of claim 20, and the computing system of claim 32, Horvitz teaches further comprising: forming a bespoke response to the unfulfilled need based, at least in part, upon the one or more response portions (Horvitz e.g. Step 406 represents summoning the actor to appear at the specified location at the specified time. If the actor does not confirm (non-human actors may have automated confirmation or a person confirm on their behalf) within a confirmation time. Note that the candidate pool may be larger than the number of actors needed at step 404 so that the query and/or function need not be re-run each time an actor does not confirm in time [0059]. Step 410 evaluates whether the needed actors have confirmed and the summoning is done. The process continues until the needed actors have done so [0059]. The planning component 112 ( or another component of the service 102) may receive task completion state information, to ensure that tasks are completed by the deadline, with any re-planning as needed (e.g., an extra worker is needed) [0027]. Re-planning may be performed as state information comes in, e.g., the task is behind schedule and the task owner is willing to increase the budget to hire another worker, a confirmed worker did not show up, a piece of equipment broke down, and so forth. Tracking continues until the task is complete, as evaluated at step 416 [0060]. State information as to when the task is completed is distributed to the participants so as to stop working on the task [0029].).
As per claims 10, 22, and 34 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 9, the computer program product of claim 21, and the computing system of claim 33, Horvitz teaches further comprising: providing the bespoke response to a party associated with the unfulfilled need (Horvitz e.g. The planning component 112 operates in conjunction with the other components 106, 114 and 116 to coordinate the summoning of the equipment and personnel to a specified location at a desired time, based upon who is available, when and where, and their pricing, along with any other criteria such as experience, reputation and so forth [0027]. Bidding or the like may be implemented, e.g., different actors and/or groups may bid on the task [0026]. One or more actors are matched to task-related criteria and summoned to accomplish a task, which may be divided into a set of coordinated tasks (subtasks) [0061]. Note that if the task criteria cannot be met, step 412 represents notifying the owner of the issue [0059].).
As per claims 11, 23, and 35 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 9, the computer program product of claim 21, and the computing system of claim 33, Horvitz teaches further comprising: effectuating, in whole or in part, the bespoke response (Horvitz e.g. When a task needs to be performed, a subset of one or more actors is summoned by the planning component 112, which in the example of FIG. 1 [0025]. One or more actors are matched to task-related criteria and summoned to accomplish a task, which may be divided into a set of coordinated tasks (subtasks) [0061]. Users are one type of actor that may be summoned to accomplish a task… Such other non-human actors may be summoned as part of accomplishing a task [0020]. For example, crowdphysics tasks may be performed using spatiotemporal crowdsourcing such as reducing traffic congestion. Given a sufficient percentage of participants' locations and velocities, a traffic flow model may be implemented, according to which participants may be notified ( e.g., audibly while driving) to get into a certain lane, drive at a certain speed, detour to avoid an accident scene and so forth. Participants may be separately notified of an optimal or advantageous departure time, (e.g., "Based upon traffic, the system recommends leaving no earlier than 5:15 pm") ([0029] and [0031]).).
As per claims 12, 24, and 36 (Original), Horvitz in view of Carter teach the computer-implemented method of claim 1, the computer program product of claim 13, and the computing system of claim 25, Horvitz teaches wherein maintaining a group of distributed actors includes: maintaining a database that defines the group of distributed actors (Horvitz e.g. The preference and qualification information is stored in an actor data store 108, and may include a list of capabilities, competencies and/or experience (e.g., a math tutor for algebra to calculus, five years teaching), price/rate (including overtime), preferences (e.g., evenings OK but not weekends, will work within thirty minutes of a general location), assets e.g., (have a bike or car), calendar data, schedule data and/or possibly other pertinent information. This information may be updated in real time as it changes, either with explicit instructions from the user and/or automatically through sensing and inference [0019]. Users are one type of actor that may be summoned to accomplish a task. Although not explicitly shown in FIG. 1, other example types of actors that may have actor data stored in the data store108 include non-human participants, such as a sensor (e.g., as a security camera, traffic camera and/or microphone), an automobile equipped with communication capabilities, tagged equipment, and so forth. An entity such as a truck or airplane thus may be entered into the service 102 as an actor along with its ability data, such as cargo capacity, weight, cost per mile, cost per hour, and so forth [0020]. Reputation data may be associated with a user's data, e.g., in the data store 108, such as provided via evaluations, manual ratings, automatic ratings and the like, such as entered by a task owner. A certain reputation measure ( e.g., a minimum average rating level) may be specified in the task related criteria [0022].).
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Ayanna Minor whose telephone number is (571)272-3605. The examiner can normally be reached M-F 9am-5 pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an