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, 8, and 11-13 were amended and claims 9-10 were cancelled in the reply filed 5/11/2026. Claims 1-13 are pending. This action is final.
Response to Arguments
Regarding Applicant’s argument starting on page 6 regarding claim 13: Applicant’s arguments filed with respect to the rejections made under 35 USC § 112(a) and 112(b) have been fully considered, and are persuasive. The rejections made under 35 USC § 112(a) and 112(b) have been withdrawn.
Regarding Applicant’s argument starting on page 6 regarding claims 1-13: Applicant’s arguments filed with respect to the rejections made under 35 USC § 103 have been fully considered, but are either unpersuasive or moot. Claims 1-2 and 4-8 and 11-13 are now 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 Charles (U.S. Pub. No. 2011/0234594). Claim 3 is now 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 Charles (U.S. Pub. No. 2011/0234594) in view of Lin (U.S. Pub. No. 2021/0207963).
Applicant’s first argument is that Levanon does not teach clustering of proposed bookings and available vehicles together into batches. Examiner respectfully disagrees. Levanon clearly analyzes all bookings, clusters them into batches, and assigns these batches to respective delivery vehicles. See rejection and citations below. While Examiner agrees that Levanon does not disclose the amendments to claims 1, 11, and 12, these arguments are now moot because these claims are now 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 Charles (U.S. Pub. No. 2011/0234594).
Applicant further argues that stopping assignment to a pick route when a cart or tote capacity is reached is not clustering an already formed booking/vehicle batch into further batches. Examiner respectfully disagrees. What Hopson describes is splitting an order into smaller sub-batches because a predetermined capacity (i.e., parameter size) is breached. Combining Levanon with Hopson teaches the limitation cited below using the broadest reasonable interpretation of the claim language. While Examiner agrees that Levanon in view of Hopson does not disclose the amendments to claims 1, 11, and 12, these arguments are now moot because these claims are now 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 Charles (U.S. Pub. No. 2011/0234594).
Throughout Applicant’s arguments Applicant cites portions of the specification which are allegedly not taught by the cited prior art. Many of these cited portions of the specification are merely described as embodiments of the invention. Examiner’s broadest reasonable interpretation of the claim language will not include these narrow recitations of embodiments of the invention unless Applicant adds this specification language to the claim itself.
Regarding Applicant’s argument starting on page 10 regarding claim 10: Applicant’s arguments filed with respect to the rejections made under 35 USC § 101 have been fully considered, and but are not persuasive.
Applicant first argues the categorization of the recited abstract idea into “Certain Methods of Organizing Human Activity” (e.g., commercial interactions – business relations) is overbroad. Examiner respectfully disagrees. The recited abstract idea cited in the rejection below only covers concepts of “Certain Methods of Organizing Human Activity” (e.g., commercial interactions – business relations).
Applicant further argues that the claims integrate the abstract idea into a practical application under Step 2A Prong Two and amount to “significantly more” than the abstract idea itself under Step 2B because it improves “operation of a real-time allocation platform.” Examiner respectfully disagrees. The alleged improvements that Applicant’s invention provides are business improvements to a business related process, and not improvements to a computer system technology itself (See MPEP § 2106.04(d)(1) and 2106.05(a) for examples and description of what is considered an improvement to a computer-functionality or an improvement to a technology). "Identifying, analyzing, and presenting certain data to a user is not an improvement specific to computing." International Business Machines Corp. v. Zillow Group, Inc., (Fed. Cir. No. 2021-2350, Oct. 17, 2022, pg. 8). The claimed computer components are generic and broadly recited, and the alleged improvements are not to the generic computer components themselves, but to the abstract process being performed by the computer components. Examiner respectfully argues that the claimed limitations not analogous to the MPEP descriptions and examples of improvements to computer-functionality or improvements to a technology, and that the claims are directed to an abstract idea.
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-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, the clustering including disconnecting the respective batch into further batches by minimizing the number of edges cut in a bipartite graph representing the available vehicles and the proposed bookings in the respective batch, 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, the clustering including disconnecting the respective batch into further batches by minimizing the number of edges cut in a bipartite graph representing the available vehicles and the proposed bookings in the respective batch, 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-8 and 13 have been given the full two-part analysis including analyzing the limitations both individually and in combination. Claims 2-8 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 non-transitory computer-readable storage medium, and claim 13 recites the additional elements a communication device, 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 non-transitory computer-readable storage medium (described in spec. para. [0032]), and claim 13 recites the additional elements a communication device (described in spec. para. [0031]), 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, the clustering including disconnecting the respective batch into further batches by minimizing the number of edges cut in a bipartite graph representing the available vehicles and the proposed bookings in the respective batch, 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, the clustering including disconnecting the respective batch into further batches by minimizing the number of edges cut in a bipartite graph representing the available vehicles and the proposed bookings in the respective batch, 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-8 and 11-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) in view of Charles (U.S. Pub. No. 2011/0234594).
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.
Although Levanon in view of Hopson discloses breaking apart clusters if they have bookings over a predetermined threshold, Levanon in view of Hopson does not, however Charles does, disclose the following limitations:
the clustering including disconnecting the respective batch into further batches by minimizing the number of edges cut in a bipartite graph representing the available vehicles and the proposed bookings in the respective batch [See [0042] Charles teaches constructing an auxiliary bipartite graph such that the clustering problem is reduced to creating clusters that minimize the number of edges that are cut (e.g., removed) to form the clusters. In at least some embodiments, this can occur by operation of the clustering tool 116 to apply a minimum-cut algorithm to the auxiliary bipartite graph that is generated in the manner described above.]
It would have been obvious to one of ordinary skill in the art before the time of filing to combine the clustering method of Levanon in view of Hopson with the clustering method of Charles. 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 cluster cutting method of Charles for the cluster cutting method of Levanon in view of Hopson. Thus, the simple substitution of one known element for another producing a predictable result renders the claim obvious.
Regarding claim 2, Levanon in view of Hopson in view of Charles 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 in view of Charles 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 in view of Charles 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 in view of Charles 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 in view of Charles 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 in view of Charles discloses all claim 1 limitations. Levanon further discloses the following limitations:
A non-transitory computer-readable storage medium storing 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 in view of Charles 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 non-transitory memory 116 (i.e., a non-transitory computer-readable storage medium storing). 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 non-transitory computer-readable storage medium storing computer implementable instructions which, when run on a programmable computer device, cause the programmable computer to perform the method of claim 1).]
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.
Although Levanon in view of Hopson discloses breaking apart clusters if they have bookings over a predetermined threshold, Levanon in view of Hopson does not, however Charles does, disclose the following limitations:
the clustering including disconnecting the respective batch into further batches by minimizing the number of edges cut in a bipartite graph representing the available vehicles and the proposed bookings in the respective batch [See [0042] Charles teaches constructing an auxiliary bipartite graph such that the clustering problem is reduced to creating clusters that minimize the number of edges that are cut (e.g., removed) to form the clusters. In at least some embodiments, this can occur by operation of the clustering tool 116 to apply a minimum-cut algorithm to the auxiliary bipartite graph that is generated in the manner described above.]
It would have been obvious to one of ordinary skill in the art before the time of filing to combine the clustering method of Levanon in view of Hopson with the clustering method of Charles. 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 cluster cutting method of Charles for the cluster cutting method of Levanon in view of Hopson. Thus, the simple substitution of one known element for another producing a predictable result renders the claim obvious.
Regarding claim 13, Levanon in view of Hopson in view of Charles discloses all claim 1 limitations. Levanon further discloses the following limitations:
A communication device being configured, under control of the processor, to execute instructions stored in the memory, to communicate with the communication server apparatus of claim 1 to perform the method according to claim 1. (Examiner’s Note: As shown in the rejection of claim 1 above, Levanon in view of Hopson in view of Charles 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 communication device) comprising a processor 112 and a memory 116. Levanon further teaches that the memory may store an executable code (e.g., a program), and that the executable code may include codes for performing methods according to embodiments of its invention (i.e., A communication device being configured, under control of the processor, to execute instructions stored in the memory, to communicate with the communication server apparatus of claim 1 to perform the method according to claim 1).]
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 Charles (U.S. Pub. No. 2011/0234594) in view of Lin (U.S. Pub. No. 2021/0207963).
Regarding claim 3, Levanon in view of Hopson in view of Charles discloses all claim 1 limitations. Although Levanon teaches a system and method for generating combinations of couriers and orders, Levanon in view of Hopson in view of Charles 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 in view of Hopson in view of Charles. 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
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 CHRIS GOMEZ whose telephone number is (571) 272-0926. The examiner can normally be reached Mon-Fri 7-4 CDT.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, 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 published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/CHRISTOPHER GOMEZ/
Examiner, Art Unit 3628