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
This action is in reply to application 19/194,869 filed 4/30/2025. Claims 1-13 are pending. This action is non-final.
Claim Interpretation
Regarding claim 10, the claim limitation “a computer program” in is interpreted as referring to the same computer program previously recited in claim 8. If this is Applicant’s intended interpretation, Examiner suggest changing “a computer program” to “the computer program” in order to maintain consistent antecedent basis for the recitation.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claim 13 is rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention. Specifically, claim 13 recites “A user communication device, a driver communication device, or a merchant communication device for a platform provider, the user communication device, the driver communication device, or the merchant communication device comprising a processor and a memory, the user communication device , the driver communication device, or the merchant communication device being configured, under control of the processor, to execute instructions stored in the memory, to perform the method according to claim 1.” However, none of the “a user communication device, a driver communication device, or a merchant communication device” are taught in the specification to be able to perform the method according to claim 1. Therefore, claim 13 does not comply with the written description requirement of 112(a).
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claim 13 is rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. Claim 13 is considered indefinite because it directly conflicts with independent claim 1, from which it depends. Claim 1 recites that its method is performed by a communication server apparatus and its processor. Claim 13 recites that the method of claim 1 is performed by either “a user communication device, a driver communication device, or a merchant communication device” and their associated processors. This direct conflict between the language of claim 1 and claim 13 renders claim 13 indefinite under 35 USC § 112(b). For examination purposes, Examiner will be interpreting claim 13 as merely claiming “a user communication device, a driver communication device, or a merchant communication device” performing functions associated with the method of claim 1.
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.
Claim 8 is rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter. The claim does not fall within at least one of the four categories of patent eligible subject matter because “a computer program or computer program product” interpreted in light of the specification comprises only software. Therefore, Claim 8 is directed to software per se, which is non-statutory subject matter. See MPEP §2106.03(I).
Claim 9 is rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter. The claim does not fall within at least one of the four categories of patent eligible subject matter because “an electronic signal, optical signal, radio signal” are signals. Therefore, Claim 8 is directed to signals per se, which is non-statutory subject matter. See MPEP §2106.03(I).
Claims 1-13 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
Step 1: Claims 1 and 12 each recite a method and a system, respectively, for receiving real-time data relating to proposed bookings and available vehicles over a geographic territory; clustering the proposed bookings and available vehicles into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings; clustering a respective batch into further batches if the respective batch has a number of bookings over a predetermined threshold, and allocating the proposed bookings and the available vehicles within each batch separately. Therefore, claims 1 and 12 are each directed to one of the four statutory categories of invention: a method and a machine, respectively.
Step 2A – Prong One: The limitations receiving real-time data relating to proposed bookings and available vehicles over a geographic territory; clustering the proposed bookings and available vehicles into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings; clustering a respective batch into further batches if the respective batch has a number of bookings over a predetermined threshold, and allocating the proposed bookings and the available vehicles within each batch separately, as drafted, is a method that, under its broadest reasonable interpretation, only covers concepts of “Certain Methods of Organizing Human Activity” (e.g., commercial interactions – business relations). That is, nothing in the claim elements disclose anything outside the groupings of “Certain Methods of Organizing Human Activity” (e.g., commercial interactions – business relations). Accordingly, the claim recites an abstract idea.
Step 2A – Prong Two: The judicial exception is not integrated into a practical application. Claims 1 and 12 merely describe how to generally “apply” the concept of the aforementioned abstract idea using generic computer components. The additional elements of claims 1 and 12, a computer (claim 1), a communication server apparatus (claims 1 and 12), and at least one processor (claims 1 and 12), are recited at a high level of generality and are merely invoked as generic computer tools to perform the aforementioned abstract idea. Simply implementing the abstract idea on a generic computerized system is not a practical application of the abstract idea. Accordingly, alone and in combination, the additional elements of claims 1 and 12 do not integrate the abstract idea into a practical application. The claims are directed to an abstract idea.
Step 2B: The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above, the claims as a whole merely describe the abstract idea generally “applied” to a generic computer environment. The additional elements of claims 1 and 12, a computer (described in spec. para. [0033]), a communication server apparatus (described in spec. para. [0032]), and at least one processor (described in spec. para. [0032]), are recited at a high level of generality and are merely invoked as generic computer components upon which the abstract idea is “applied.” The high level of generality in which this additional element is described indicates that the additional element is sufficiently known such that the specification does not need to describe the particulars of the additional element to satisfy the statutory disclosure requirements. Thus, even when viewed as a whole, nothing in the claims add significantly more to the abstract idea. Therefore, the claims are not patent eligible.
Claims 2-11 and 13 have been given the full two-part analysis including analyzing the limitations both individually and in combination. Claims 2-11 and 13 when analyzed individually, and in combination, are also held to be patent ineligible under 35 U.S.C. 101. The recited limitations of the dependent claims fail to establish that the claims do not recite an abstract idea because the recited limitations of the dependent claims merely further narrow the abstract idea.
Step 2A – Prong Two: The limitations of the dependent claims fail to integrate an abstract idea into a practical application because the claims as a whole merely describe how to generally “apply” a method of the aforementioned abstract idea. Although claim 8 recites the additional elements a computer program, a computer program product, a programmable computer device, claim 9 recites the additional elements a computer program carrier, an electronic signal, an optical signal, a radio signal, and a non-transitory tangible computer-readable storage medium, and claim 13 recites the additional elements a user communication device, a driver communication device, a merchant communication device, and a memory, the claims as a whole merely describe how to generally “apply” the aforementioned abstract idea in a generic computer environment. Thus, even when viewed as a whole, nothing in the claims integrates the abstract idea into a practical application.
Step 2B: Performing the further narrowed abstract ideas of the dependent claims on the additional elements of the independent claim, individually or in combination, does not impose any meaningful limits on practicing the abstract ideas and amount to merely using a computer, in its ordinary capacity, as a tool to perform the abstract idea. Similarly, the recited limitations of the dependent claims fail to establish that the claims provide an inventive concept because claims that merely use a computer, in its ordinary capacity, as a tool to perform the abstract idea cannot provide an inventive concept. Although claim 8 recites the additional elements a computer program (described in spec. para. [0010]), a computer program product (described in spec. para. [0010]), a programmable computer device (described in spec. para. [0010]), claim 9 recites the additional elements a computer program carrier (not described in the spec., but part of the originally filed claims), an electronic signal (not described in the spec., but part of the originally filed claims), an optical signal (not described in the spec., but part of the originally filed claims), a radio signal (not described in the spec., but part of the originally filed claims), and a non-transitory tangible computer-readable storage medium (not described in the spec., but part of the originally filed claims), and claim 13 recites the additional elements a user communication device (described in spec. para. [0036]), a driver communication device (described in spec. para. [0038]), a merchant communication device (described in spec. para. [0037]), and a memory (described in spec. para. [0036]), they are recited at a high level of generality and are merely invoked as generic computer components upon which the abstract idea is “applied.” The high level of generality in which the additional elements are described indicates that the additional elements are sufficiently known such that the specification does not need to describe the particulars of the additional elements to satisfy the statutory disclosure requirements. Thus, even when viewed as a whole, nothing in the claims add significantly more to the abstract idea. Therefore, the claims are not patent eligible.
Step 1: Claim 11 recites a system to initiate a booking which includes a booking pickup location; at least one driver communication device having an associated driver vehicle and configured to provide driver vehicle location data; and communication network equipment configured to establish communication with the communications server, the at least one user communication device, and the at least one driver communication device; wherein the communications server comprises at least one processor(s), at least one memory, the server being configured, under control of one or more of the at least one processor(s), to execute instructions stored in one or more of the at least one memory to: cluster the proposed booking locations and driver vehicle locations into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings; cluster a respective batch into further batches if the respective batch has a number of bookings over a predetermined threshold, and allocate the proposed bookings and the available vehicles within each batch separately.. Therefore, claim 11 is directed to one of the four statutory categories of invention: a machine.
Step 2A – Prong One: The limitations initiate a booking which includes a booking pickup location ... provide driver vehicle location data ... establish communication with ... the at least one user ... and the at least one driver ... cluster the proposed booking locations and driver vehicle locations into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings; cluster a respective batch into further batches if the respective batch has a number of bookings over a predetermined threshold, and allocate the proposed bookings and the available vehicles within each batch separately, as drafted, is a method that, under its broadest reasonable interpretation, only covers concepts of “Certain Methods of Organizing Human Activity” (e.g., commercial interactions – business relations). That is, nothing in the claim elements disclose anything outside the groupings of “Certain Methods of Organizing Human Activity” (e.g., commercial interactions – business relations). Accordingly, the claim recites an abstract idea.
Step 2A – Prong Two: The judicial exception is not integrated into a practical application. Claim 11 merely describes how to generally “apply” the concept of the aforementioned abstract idea using generic computer components. The additional elements of claim 11, a system, a communication server, at least one user communication device, at least one driver communication device, communication network equipment, at least one processor(s), and at least one memory, are recited at a high level of generality and are merely invoked as generic computer tools to perform the aforementioned abstract idea. Simply implementing the abstract idea on a generic computerized system is not a practical application of the abstract idea. Accordingly, alone and in combination, the additional elements of claim 11 do not integrate the abstract idea into a practical application. The claims are directed to an abstract idea.
Step 2B: The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above, the claims as a whole merely describe the abstract idea generally “applied” to a generic computer environment. The additional elements of claim 11, a system (described in spec. para. [0027]), a communication server (described in spec. para. [0032]), at least one user communication device (described in spec. para. [0036]), at least one driver communication device (described in spec. para. [0038]), communication network equipment (described in spec. para. [0040]), at least one processor(s) (described in spec. para. [0036]), and at least one memory (described in spec. para. [0036]), are recited at a high level of generality and are merely invoked as generic computer components upon which the abstract idea is “applied.” The high level of generality in which this additional element is described indicates that the additional element is sufficiently known such that the specification does not need to describe the particulars of the additional element to satisfy the statutory disclosure requirements. Thus, even when viewed as a whole, nothing in the claims add significantly more to the abstract idea. Therefore, the claims 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.
Claims 1-2 and 4-13 are rejected under 35 U.S.C. 103 as being unpatentable over Levanon (U.S. Pub. No. 2015/0227888) in view of Hopson (U.S. Pub. No. 2004/0068443).
Regarding claims 1 and 12, Levanon discloses the following limitations:
A computer implemented method performed in a communication server apparatus for a platform provider, the method comprising, under control of a processor of the communication server apparatus: [See [0016] Levanon teaches a system for managing a fleet of delivery couriers for fulfilling delivery requests. Levanon [0037]; (Fig. 1) further teaches its system may be a server computer (i.e., A computer implemented method performed in a communication server apparatus for a platform provider). Levanon [0037]; (Fig. 1) further teaches the server computer comprising at least one processor (i.e., under control of a processor of the communication server apparatus).]
receiving real-time data relating to proposed bookings and available vehicles over a geographic territory; [See Levanon [0017] teaches the system including an order receiving unit for receiving orders placed (i.e., receiving real-time data). (Fig. 3A); [0042] Levanon teaches a series of operations involving optimally assigning each received order to a courier vehicle (i.e., proposed bookings). Levanon [0073] further teaches that this series of operations may be repeated and updated every time a new order is received (i.e., receiving real-time data relating to proposed bookings). Levanon [0072-0073] further teaches that the series of operations may be repeated and updated when an available courier (i.e., available vehicle) is either added to or subtracted from a list of available couriers. For example, Levanon [0068] teaches that a courier may get in an accident and be removed from the list of available couriers (i.e., receiving real-time data relating to proposed bookings and available vehicles). Levanon [0044-0045] further teaches that the system is configured to manage order fulfillment for a single area of delivery (i.e., a geographic territory).]
clustering the proposed bookings and available vehicles into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings; [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier (i.e., clustering the proposed bookings and available vehicles into batches). Levanon (Fig. 3A, element 330); [0045] further teaches that part of optimizing the batching of orders into sets and assigning the sets to couriers involves estimating aa traveling time between the at least two points of delivery associated with each of the orders in the set (i.e., clustering the proposed bookings and available vehicles into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings). Levanon [0051] further teaches that this may be based on maximal allowed traveling time to the point of delivery, maximal allowed traveling time between two points of delivery, maximal allowed traveling time between all the delivery points in the set of orders, a predefined maximal time for delivery of the order (i.e., an estimated time of arrival between each vehicle and adjacent proposed bookings). Levanon [0051] further teaches the system may combine together two orders having, for example, maximum of 7 minute of traveling time, but may add to the set a third order only if the order is located less than 3 minutes of traveling time from the second order (i.e., clustering the proposed bookings and available vehicles into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings).]
clustering a respective batch into further batches if the respective batch has ... over a predetermined threshold [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier. Levanon (Fig. 3A, element 330); [0045] further teaches that part of optimizing the batching of orders into sets and assigning the sets to couriers involves estimating aa traveling time between the at least two points of delivery associated with each of the orders in the set. Levanon [0051] further teaches that this may be based on maximal allowed traveling time to the point of delivery, maximal allowed traveling time between two points of delivery, maximal allowed traveling time between all the delivery points in the set of orders, a predefined maximal time for delivery of the order (i.e., clustering a respective batch into further batches if the respective batch has ... over a predetermined threshold). Levanon [0051] further teaches the system may combine together two orders having, for example, maximum of 7 minute of traveling time, but may add to the set a third order only if the order is located less than 3 minutes of traveling time from the second order (i.e., clustering a respective batch into further batches if the respective batch has ... over a predetermined threshold).]
and allocating the proposed bookings and the available vehicles within each batch separately. [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier (i.e., allocating the proposed bookings and the available vehicles within each batch separately). Levanon [Table 1] further shows a plurality of couriers each assigned to fulfill a plurality of orders assigned to different sets of orders.]
Although Levanon teaches assigning a maximum number of orders to each courier based on the time each order would take to be delivered, Levanon does not explicitly teach that the maximum number of orders for each courier is based on a predetermined “number of orders” threshold for each courier. Therefore, Levanon does not, however Hopson does, disclose the following limitations:
clustering a respective batch into further batches if the respective batch has a number of bookings over a predetermined threshold [See [0066] Hopson teaches that orders are assigned to a route according to priority up to a maximum number of orders. For example, a pick cart has a maximum capacity of six totes; and therefore, the maximum number of orders that would normally be assigned to a pick route is six (i.e., clustering a respective batch into further batches if the respective batch has a number of bookings over a predetermined threshold). When the maximum number of items for a pick route is reached (i.e., if the respective batch has a number of bookings over a predetermined threshold), the pick route is considered complete and a new cart is required to pick more totes (i.e., clustering a respective batch into further batches).]
It would have been obvious to one of ordinary skill in the art before the time of filing to combine the batching techniques of Levanon with the batching techniques of Hopson. By making this combination, the system of Levanon would be able to account for the physical capacity of each courier vehicle. For example, if the courier vehicles were all scooters, only 2-3 orders should be assigned to those vehicles, since that is all that they can carry. This would help avoid situations in which a courier is assigned more orders than they can physically handle.
Regarding claim 2, Levanon in view of Hopson discloses all claim 1 limitations. Levanon further discloses the following limitations:
wherein the clustering of the proposed bookings and available vehicles into batches is done over an entire geographic territory. [See Levanon [0017] teaches the system including an order receiving unit for receiving orders placed. (Fig. 3A); [0042] Levanon teaches a series of operations involving optimally assigning each received order to a courier vehicle (i.e., clustering of the proposed bookings and available vehicles into batches). Levanon [0073] further teaches that this series of operations may be repeated and updated every time a new order is received. Levanon [0072-0073] further teaches that the series of operations may be repeated and updated when an available courier (i.e., available vehicle) is either added to or subtracted from a list of available couriers. For example, Levanon [0068] teaches that a courier may get in an accident and be removed from the list of available couriers. Levanon [0044-0045] further teaches that the system is configured to manage order fulfillment for a single area of delivery (i.e., wherein the clustering of the proposed bookings and available vehicles into batches is done over an entire geographic territory).]
Regarding claim 4, Levanon in view of Hopson discloses all claim 1 limitations. Levanon further discloses the following limitations:
wherein the clustering the respective batch into further batches further comprises disconnecting the respective batch into the further batches based on a level of connection between each vehicle and a pick up point for each proposed booking in the respective batch. (Examiner’s Note: The term “level of connection” is not clearly defined in the specification. A broadest reasonable interpretation of this term includes the “level of connection” indicating the total number of tasks assigned to each vehicle based on the distance and/or time between each location. This is how Examiner will be interpreting this term.) [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier (i.e., clustering the respective batch). Levanon (Fig. 3A, element 330); [0045] further teaches that part of optimizing the batching of orders into sets and assigning the sets to couriers involves estimating aa traveling time between the at least two points of delivery associated with each of the orders in the set. Levanon [0051] further teaches that this may be based on maximal allowed traveling time to the point of delivery, maximal allowed traveling time between two points of delivery, maximal allowed traveling time between all the delivery points in the set of orders, a predefined maximal time for delivery of the order (i.e., a level of connection between each vehicle and a pick up point for each proposed booking in the respective batch). Levanon [0051] further teaches the system may combine together two orders having, for example, maximum of 7 minute of traveling time, but may add to the set a third order only if the order is located less than 3 minutes of traveling time from the second order (i.e., wherein the clustering the respective batch into further batches further comprises disconnecting the respective batch into the further batches based on a level of connection between each vehicle and a pick up point for each proposed booking in the respective batch). In other words, if the third order would add more than 3 minutes of traveling time from the second order (i.e., a level of connection between each vehicle and a pick up point for each proposed booking in the respective batch), the third order is assigned to a different courier instead (i.e., disconnecting the respective batch into the further batches). Levanon [0072] teaches that the sets of items assigned to each courier may dynamically change based on delays such as traffic. Levanon [0072] further teaches that the selection of a first courier to fulfill an order may be changed based on a delay in the arrival time of the courier to the preparation facility where goods are received for delivery (i.e., a level of connection between each vehicle and a pick up point).]
Regarding claim 5, Levanon in view of Hopson discloses all claim 1 and 4 limitations. Levanon further discloses the following limitations:
wherein the level of connection between each vehicle and pick up point is determined based on a total number of connected vehicles each pick up point contains (Examiner’s Note: The term “level of connection” is not clearly defined in the specification. A broadest reasonable interpretation of this term includes the “level of connection” indicating the total number of tasks assigned to each vehicle based on the distance and/or time between each location. This is how Examiner will be interpreting this term.) [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier. Levanon (Fig. 3A, element 330); [0045] further teaches that part of optimizing the batching of orders into sets and assigning the sets to couriers involves estimating aa traveling time between the at least two points of delivery associated with each of the orders in the set. Levanon [0051] further teaches that this may be based on maximal allowed traveling time to the point of delivery, maximal allowed traveling time between two points of delivery, maximal allowed traveling time between all the delivery points in the set of orders, a predefined maximal time for delivery of the order (i.e., level of connection between each vehicle and pick up point). Levanon [0051] further teaches the system may combine together two orders having, for example, maximum of 7 minute of traveling time, but may add to the set a third order only if the order is located less than 3 minutes of traveling time from the second order. In other words, if the third order would add more than 3 minutes of traveling time from the second order (i.e., level of connection between each vehicle and pick up point), the third order is assigned to a different courier instead. Levanon [0072] teaches that the sets of items assigned to each courier may dynamically change based on delays such as traffic. Levanon [0072] further teaches that the selection of a first courier to fulfill an order may be changed based on a delay in the arrival time of the courier to the preparation facility where goods are received for delivery (i.e., level of connection between each vehicle and pick up point). Levanon [0017] further teaches the system including an order receiving unit for receiving orders placed. (Fig. 3A); [0042] Levanon further teaches a series of operations involving optimally assigning each received order to a courier vehicle. Levanon [0073] further teaches that this series of operations may be repeated and updated every time a new order is received. Levanon [0072-0073] further teaches that the series of operations may be repeated and updated when an available courier (i.e., available vehicle) is either added to or subtracted from a list of available couriers. For example, Levanon [0068] further teaches that a courier may get in an accident and be removed from the list of available couriers. Levanon [0072] further teaches that the assignment of a task to a first courier may be changed to a second courier based on the first courier no longer being available to perform the originally assigned task. In this case, the total number of vehicles associated with making deliveries from a preparation facility in the area are reduced by one. The first courier’s assignments are therefore reduced (i.e., level of connection between each vehicle and pick up point ... based on a total number of connected vehicles each pick up point contains is reduced) and the second courier’s assignments for that preparation facility in the area are increased (i.e., level of connection between each vehicle and pick up point ... based on a total number of connected vehicles each pick up point contains is increased).]
Regarding claim 6, Levanon in view of Hopson discloses all claim 1 and 4 limitations. Levanon further discloses the following limitations:
wherein the level of connection between each vehicle and pick up point is determined based on a total number of connected pick up points each vehicle contains. (Examiner’s Note: The term “level of connection” is not clearly defined in the specification. A broadest reasonable interpretation of this term includes the “level of connection” indicating the total number of tasks assigned to each vehicle based on the distance and/or time between each location. This is how Examiner will be interpreting this term.) [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier. Levanon (Fig. 3A, element 330); [0045] further teaches that part of optimizing the batching of orders into sets and assigning the sets to couriers involves estimating aa traveling time between the at least two points of delivery associated with each of the orders in the set. Levanon [0051] further teaches that this may be based on maximal allowed traveling time to the point of delivery, maximal allowed traveling time between two points of delivery, maximal allowed traveling time between all the delivery points in the set of orders, a predefined maximal time for delivery of the order (i.e., level of connection between each vehicle and pick up point). Levanon [0051] further teaches the system may combine together two orders having, for example, maximum of 7 minute of traveling time, but may add to the set a third order only if the order is located less than 3 minutes of traveling time from the second order. In other words, if the third order would add more than 3 minutes of traveling time from the second order (i.e., level of connection between each vehicle and pick up point), the third order is assigned to a different courier instead. Levanon [0072] teaches that the sets of items assigned to each courier may dynamically change based on delays such as traffic. Levanon [0072] further teaches that the selection of a first courier to fulfill an order may be changed based on a delay in the arrival time of the courier to the preparation facility where goods are received for delivery (i.e., level of connection between each vehicle and pick up point). Levanon [0017] further teaches the system including an order receiving unit for receiving orders placed. (Fig. 3A); [0042] Levanon further teaches a series of operations involving optimally assigning each received order to a courier vehicle. Levanon [0073] further teaches that this series of operations may be repeated and updated every time a new order is received. Levanon [0072-0073] further teaches that the series of operations may be repeated and updated when an available courier (i.e., available vehicle) is either added to or subtracted from a list of available couriers. For example, Levanon [0068] further teaches that a courier may get in an accident and be removed from the list of available couriers. Levanon [0072] further teaches that the assignment of a task to a first courier may be changed to a second courier based on the first courier no longer being available to perform the originally assigned task. In this case, the total number of vehicles associated with making deliveries from a preparation facility in the area are reduced by one. The first courier’s assignments are therefore reduced (i.e., level of connection between each vehicle and pick up point ... based on a total number of connected pick up points each vehicle contains is reduced) and the second courier’s assignments for that preparation facility in the area are increased (i.e., level of connection between each vehicle and pick up point ... based on a total number of connected pick up points each vehicle contains is increased).]
Regarding claim 7, Levanon in view of Hopson discloses all claim 1 limitations. Levanon further discloses the following limitations:
wherein the clustering is done without dividing the territory based on historical transactions and/or geographically pre-zoning the territory. [See (Fig. 3A); [0038-0066]; Levanon teaches a process of assigning tasks to couriers (i.e., clustering). Levanon’s disclosure describes clustering and is silent on dividing the associated delivery area as part of the clustering process (i.e., wherein the clustering is done without dividing the territory based on historical transactions and/or geographically pre-zoning the territory).]
Regarding claim 8, Levanon in view of Hopson discloses all claim 1 limitations. Levanon further discloses the following limitations:
A computer program or computer program product comprising computer implementable instructions which, when run on a programmable computer device, cause the programmable computer to perform the method of claim 1. (Examiner’s Note: As shown in the rejection of claim 1 above, Levanon in view of Hopson disclose all limitations of the method of claim 1.) [See [0024]; (Fig. 1, elements 100, 110, 112, 116); [0037] Levanon teaches the server 100 (i.e., a programmable computer device) comprising a processor 112 and a memory 116. Levanon further teaches that the memory may store an executable code (e.g., a program) (i.e., computer implementable instructions), and that the executable code may include codes for performing methods according to embodiments of its invention (i.e., A computer program or computer program product comprising computer implementable instructions which, when run on a programmable computer device, cause the programmable computer to perform the method of claim 1).]
Regarding claim 9, Levanon in view of Hopson discloses all claim 1 and 8 limitations. Levanon further discloses the following limitations:
A computer program carrier carrying a computer program according to claim 8, wherein the computer program carrier is one of an electronic signal, optical signal, radio signal or non-transitory tangible computer-readable storage medium. (Examiner’s Note: As shown in the rejection of claim 1 above, Levanon in view of Hopson disclose all limitations of the method of claim 1.) [See [0024]; (Fig. 1, elements 100, 110, 112, 116); [0037] Levanon teaches the server 100 comprising a processor 112 and a memory 116. Levanon further teaches that the memory may store an executable code (e.g., a program) (i.e., a computer program), and that the executable code may include codes for performing methods according to embodiments of its invention. Levanon [0035] further teaches that the server may include a non-transitory computer readable medium (i.e., A computer program carrier carrying a computer program according to claim 8, wherein the computer program carrier is ... non-transitory tangible computer-readable storage medium), such as a memory, for storing computer-executable instructions, which, when executed by a processor, carry out methods disclosed.]
Regarding claim 10, Levanon in view of Hopson discloses all claim 1 and 8 limitations. Levanon further discloses the following limitations:
A non-transitory tangible computer-readable storage medium storing a computer program according to claim 8. (Examiner’s Note: As shown in the rejection of claim 1 above, Levanon in view of Hopson disclose all limitations of the method of claim 1.) [See [0024]; (Fig. 1, elements 100, 110, 112, 116); [0037] Levanon teaches the server 100 comprising a processor 112 and a memory 116. Levanon further teaches that the memory may store an executable code (e.g., a program) (i.e., a computer program), and that the executable code may include codes for performing methods according to embodiments of its invention. Levanon [0035] further teaches that the server may include a non-transitory computer readable medium (i.e., A non-transitory tangible computer-readable storage medium storing a computer program according to claim 8.), such as a memory, for storing computer-executable instructions, which, when executed by a processor, carry out methods disclosed.]
Regarding claim 11, Levanon discloses the following limitations:
A system comprising a communication server; [See [0016] Levanon teaches a system for managing a fleet of delivery couriers for fulfilling delivery requests. Levanon [0037]; (Fig. 1) further teaches its system may be a server computer (i.e., A system comprising a communication server).]
at least one user communication device having an associated user and configured to initiate a booking which includes a booking pickup location; [See [0028]; [0038] Levanon teaches receiving an order from a user via an application running on their mobile device (i.e., at least one user communication device having an associated user and configured to initiate a booking). Levanon (Fig. 3A, elements 320, 360); [0043]; [0055-0056]; further teaches that each order comprises a preparation facility (i.e., a booking pickup location) where, according to an order, goods are picked up for fulfillment of a delivery (i.e., a booking which includes a booking pickup location).]
at least one driver communication device having an associated driver vehicle and configured to provide driver vehicle location data; [See [0029]; (Fig. 1, element 200); Levanon teaches that each courier (i.e., driver) has a mobile device 200 for communicating with the system. Levanon [0020] further teaches that the mobile device may be a localization system (e.g., Global Positioning System – GPS) attached to the courier’s vehicle in order to indicate the location of the courier (i.e., at least one driver communication device having an associated driver vehicle and configured to provide driver vehicle location data).]
and communication network equipment configured to establish communication with the communications server, the at least one user communication device, and the at least one driver communication device; [See (Fig. 1, elements 100, 130, 140, 200); [0021]; [0037]; Levanon teaches a computerized communication network (i.e., communication network equipment) which allows communication between the server system 100 (i.e., the communications server) and the courier mobile devices 200 (i.e., the at least one driver communication device). Levanon (Fig. 1, element 130); [0028]; [0038] further teaches receiving an order from a user via an application running on their mobile device (i.e., the at least one user communication device) via the order receiving unit 130 (i.e., communication network equipment configured to establish communication with ... the at least one user communication device).]
wherein the communications server comprises at least one processor(s), at least one memory, the server being configured, under control of one or more of the at least one processor(s), to execute instructions stored in one or more of the at least one memory to: [See (Fig. 1, elements 100, 110, 112, 116); [0021-0022]; [0037] Levanon teaches its server system 100 comprising a processor 112 (i.e., at least one processor(s)) and a memory 116 (i.e., at least one memory). Levanon further teaches that the processor 112 may be configured to execute instructions stored in the memory 116 (i.e., the server being configured, under control of one or more of the at least one processor(s), to execute instructions stored in one or more of the at least one memory).]
cluster the proposed booking locations and driver vehicle locations into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings; [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier (i.e., cluster the proposed booking locations and driver vehicle locations into batches). Levanon (Fig. 3A, element 330); [0045] further teaches that part of optimizing the batching of orders into sets and assigning the sets to couriers involves estimating aa traveling time between the at least two points of delivery associated with each of the orders in the set (i.e., cluster the proposed booking locations and driver vehicle locations into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings). Levanon [0051] further teaches that this may be based on maximal allowed traveling time to the point of delivery, maximal allowed traveling time between two points of delivery, maximal allowed traveling time between all the delivery points in the set of orders, a predefined maximal time for delivery of the order (i.e., an estimated time of arrival between each vehicle and adjacent proposed bookings). Levanon [0051] further teaches the system may combine together two orders having, for example, maximum of 7 minute of traveling time, but may add to the set a third order only if the order is located less than 3 minutes of traveling time from the second order (i.e., cluster the proposed booking locations and driver vehicle locations into batches according to an estimated time of arrival between each vehicle and adjacent proposed bookings).]
cluster a respective batch into further batches if the respective batch has ... over a predetermined threshold [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier. Levanon (Fig. 3A, element 330); [0045] further teaches that part of optimizing the batching of orders into sets and assigning the sets to couriers involves estimating aa traveling time between the at least two points of delivery associated with each of the orders in the set. Levanon [0051] further teaches that this may be based on maximal allowed traveling time to the point of delivery, maximal allowed traveling time between two points of delivery, maximal allowed traveling time between all the delivery points in the set of orders, a predefined maximal time for delivery of the order (i.e., cluster a respective batch into further batches if the respective batch has ... over a predetermined threshold). Levanon [0051] further teaches the system may combine together two orders having, for example, maximum of 7 minute of traveling time, but may add to the set a third order only if the order is located less than 3 minutes of traveling time from the second order (i.e., cluster a respective batch into further batches if the respective batch has ... over a predetermined threshold).]
allocate the proposed bookings and the available vehicles within each batch separately. [See (Fig. 3A, element 340, 380); [0046]; [0041] Levanon teaches batching orders into sets of orders which may be assigned to, and delivered by, a single courier (i.e., allocate the proposed bookings and the available vehicles within each batch separately). Levanon [Table 1] further shows a plurality of couriers each assigned to fulfill a plurality of orders assigned to different sets of orders.]
Although Levanon teaches assigning a maximum number of orders to each courier based on the time each order would take to be delivered, Levanon does not explicitly teach that the maximum number of orders for each courier is based on a predetermined “number of orders” threshold for each courier. Therefore, Levanon does not, however Hopson does, disclose the following limitations:
cluster a respective batch into further batches if the respective batch has a number of bookings over a predetermined threshold [See [0066] Hopson teaches that orders are assigned to a route according to priority up to a maximum number of orders. For example, a pick cart has a maximum capacity of six totes; and therefore, the maximum number of orders that would normally be assigned to a pick route is six (i.e., cluster a respective batch into further batches if the respective batch has a number of bookings over a predetermined threshold). When the maximum number of items for a pick route is reached (i.e., if the respective batch has a number of bookings over a predetermined threshold), the pick route is considered complete and a new cart is required to pick more totes (i.e., cluster a respective batch into further batches).]
It would have been obvious to one of ordinary skill in the art before the time of filing to combine the batching techniques of Levanon with the batching techniques of Hopson. By making this combination, the system of Levanon would be able to account for the physical capacity of each courier vehicle. For example, if the courier vehicles were all scooters, only 2-3 orders should be assigned to those vehicles, since that is all that they can carry. This would help avoid situations in which a courier is assigned more orders than they can physically handle.
Regarding claim 13, Levanon in view of Hopson discloses all claim 1 limitations. Levanon further discloses the following limitations:
A user communication device, a driver communication device, or a merchant communication device for a platform provider, the user communication device, the driver communication device, or the merchant communication device comprising a processor and a memory; the user communication device, the driver communication device, or the merchant communication device being configured, under control of the processor, to execute instructions stored in the memory, to perform the method according to claim 1. [See [0028]; [0038] Levanon teaches receiving an order from a user via an application running on their mobile device (i.e., a user communication device). Levanon (Fig. 1, element 200); [0029] further teaches its system comprising mobile devices 200 associated with each courier (i.e., a driver communication device). Levanon (Fig. 1, elements 100, 110); [0021]; [0027] further teaches its system comprising a processing unit 110 for processing and displaying information for a preparation facility (i.e., a merchant communication device). Levanon teaches that each of these devices performs functions associated with the method of claim 1 (i.e., the user communication device, the driver communication device, or the merchant communication device being configured, under control of the processor, to execute instructions stored in the memory, to perform the method according to claim 1.) (Examiner’s Note: See claim interpretation under 35 USC § 112(b) in the corresponding rejection above.).]
Claim 3 is rejected under 35 U.S.C. 103 as being unpatentable over Levanon (U.S. Pub. No. 2015/0227888) in view of Hopson (U.S. Pub. No. 2004/0068443) in view of Lin (U.S. Pub. No. 2021/0207963).
Regarding claim 3, Levanon in view of Hopson discloses all claim 1 limitations. Although Levanon teaches a system and method for generating combinations of couriers and orders, Levanon in view of Hopson does not, however Lin does, explicitly disclose the following limitations:
wherein the clustering ... is done using a Depth-first search (DFS) algorithm. [See [0047-0048] Lin teaches forming groups of data using a depth-first algorithm.]
Since each individual element and its function are shown in the prior art, albeit shown in separate references, the difference between the claimed subject matter and the prior art rests not on any individual element or function, but in the very combination itself- that is in the substitution of the depth-first algorithm of Lin for the clustering techniques described in Levanon. Thus, the simple substitution of one known element for another producing a predictable result renders the claim obvious.
Prior Art
The following prior art is relevant to the invention but was not used in prior art rejections:
Andeev (U.S. Pub. No. 2017/0091677) – Vehicle booking technique
Andreoli (U.S. Pat. No. 6,732,361) – Generating combinations of offers and using action identifiers from the offers to obtain performance of combinations of actions
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHRIS GOMEZ whose telephone number is (571) 272-0926. The examiner can normally be reached on 7:30 AM – 4:30 PM EST.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, SHANNON CAMPBELL can be reached at (571) 272-5587. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
/CHRISTOPHER GOMEZ/ Examiner, Art Unit 3628