IP Library › Granted Patent US 12,361,369
Granted Patent B2
US 12,361,369 · App. 18/509,760 · Granted Jul 15, 2025

Systems and methods for determining duty costs associated with a supply chain network

Inventors: Tung Hoang Le (Waterloo, CA); Zheng Ouyang (Ann Arbor, MI); Seyed Ali Taghavi Behbahani (Ann Arbor, MI); Gary Robert Strickler (Ann Arbor, MI)
Assignee: Coupa Software Incorporated
G06Q10/08345
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,361,369
App. No.
18/509,760
Granted
Jul 15, 2025
Kind
B2
Abstract

Input data provides an order of a quantity of finished goods to a site. Software is programmed for: accessing data defining an architecture of the supply chain network with sites, and a location of each site; enumerating one or more path solutions along the supply chain network to fulfill the order, each path solution comprising path fragments connecting two sites, a path fragment defining movement of a sub-quantity of the finished goods or raw materials; determining a cost associated with each of the plurality of path fragments, the cost comprising a duty rate, the duty rate associated with a particular path fragment based on the locations of the two sites connected by the particular path fragment and the sub-quantity of the finished goods or finished goods raw materials moved between the two sites; determining one or more optimal path solutions; and outputting the optimal path solutions for display.

Claims (54)

1. A computer-implemented method executed using one or more processors, the method comprising:

receiving input data comprising an order to provide a quantity of one or more finished goods to a site through a supply chain network, the one or more finished goods each comprising one or more raw materials;

accessing information comprising respective locations of a plurality of sites of a supply chain network, the input data and information being stored in computer memory;

decomposing, by the one or more processors, the supply chain network into one or more sub-networks to reduce a computer memory requirement prior to an enumeration of one or more path solutions, wherein a number of the one or more sub-networks is based on a number of common raw materials of the one or more raw materials;

detecting, by the one or more processors, one or more loops in the supply chain network;

prior to the enumeration of one or more path solutions, eliminating, by the one or more processors, one or more of the detected loops to reduce model processing deadlocks or errors;

enumerating, by the one or more processors and based on the input data and the accessed information, the one or more path solutions along the supply chain network or along the one or more sub-networks to fulfill the order, wherein each enumerated path solution comprises a set of one or more path fragments, wherein each path fragment associated with an enumerated path solution defines a movement of a sub-quantity of the one or more finished goods or the one or more raw materials between two sites of the plurality of sites;

filtering, during or after the enumerating of the one or more path solutions and based on one or more site constraints or predetermined criteria, one or more invalid path fragments to decrease a number of possible path solutions to fulfill the order;

dynamically releasing computer memory associated with the one or more invalid path fragments to reduce the computer memory requirement;

determining, based on one or more decision criteria, one or more optimal path solutions for the order;

outputting one or more of the optimal path solutions for display on a client device.

2. The method of claim 1 , wherein eliminating one or more of the detected loops in the supply chain network further comprises:

assigning an influence value to each of two or more sites in the supply chain network connected in a circular manner;

generating a path from a first site of the two or more sites to a second site of the two or more sites with a highest influence value.

3. The method of claim 1 , further comprising ranking, based on one or more of the decision criteria, one or more of the optimal path solutions.

4. The method of claim 1 , further comprising determining, during or after filtering the invalid path fragments, a cost associated with each path fragment associated with each enumerated path solution based on the respective locations of the two sites connected by the respective path fragment.

5. The method of claim 4 , wherein one or more of the decision criteria are based on the determined cost associated with each path fragment associated with each enumerated path solution.

6. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

receive input data comprising an order to provide a quantity of one or more finished goods to a site through a supply chain network, the one or more finished goods each comprising one or more raw materials;

access information comprising respective locations of a plurality of sites of a supply chain network, the input data and information being stored in computer memory;

decompose the supply chain network into one or more sub-networks to reduce a computer memory requirement prior to an enumeration of one or more path solutions, wherein a number of the one or more sub-networks is based on a number of common raw materials of the one or more raw materials;

detect one or more loops in the supply chain network;

eliminate, prior to the enumeration of one or more path solutions, one or more of the detected loops to reduce model processing deadlocks or errors;

enumerate, based on the input data and the accessed information, the one or more path solutions along the supply chain network or along the one or more sub-networks to fulfill the order, wherein each enumerated path solution comprises a set of one or more path fragments, wherein each path fragment associated with an enumerated path solution defines a movement of a sub-quantity of the one or more finished goods or the one or more raw materials between two sites of the plurality of sites;

filter, during or after the enumeration of the path solutions and based on one or more site constraints or predetermined criteria, one or more invalid path fragments to decrease a number of possible path solutions to fulfill the order;

dynamically release computer memory associated with the one or more invalid path fragments to reduce the computer memory requirement;

determine one or more optimal path solutions for the order based on one or more decision criteria;

output one or more of the optimal path solutions for display on a client device, each displayed optimal path solution comprising the respective locations of the plurality of sites and the respective quantity of the finished goods.

7. The one or more computer-readable non-transitory storage media of claim 6 , wherein the software is further operable when executed to:

assign an influence value to two or more sites in the supply chain network connected in a circular manner;

generate a path from a first site of the two or more sites to a second site of the two or more sites with a highest influence value;

eliminate the one or more of the detected loops in the supply chain network.

8. The one or more computer-readable non-transitory storage media of claim 6 , wherein the software is further operable when executed to rank one or more of the optimal path solutions based on one or more of the decision criteria.

9. The one or more computer-readable non-transitory storage media of claim 6 , wherein the software is further operable when executed to determine, during or after filtering the invalid path fragments, a cost associated with each path fragment associated with each enumerated path solution based on respective locations of the two sites connected by the respective path fragment.

10. A computer system comprising:

one or more processors;

one or more computer-readable non-transitory storage media coupled to one or more of the processors and comprising instructions operable when executed by one or more of the processors to cause the system to:

receive input data comprising an order to provide a quantity of one or more finished goods to a site through a supply chain network, the one or more finished goods each comprising one or more raw materials;

access information comprising respective locations of a plurality of sites of a supply chain network, the input data and information being stored in computer memory;

decompose the supply chain network into one or more sub-networks to reduce a computer memory requirement prior to an enumeration of one or more path solutions, wherein a number of the one or more sub-networks is based on a number of common raw materials of the one or more raw materials;

detect one or more loops in the supply chain network;

eliminate, prior to the enumeration of one or more path solutions, one or more of the detected loops to reduce model processing deadlocks or errors;

enumerate, based on the input data and the accessed information, the one or more path solutions along the supply chain network or along the one or more sub-networks to fulfill the order, wherein each enumerated path solution comprises a set of one or more path fragments, wherein each path fragment associated with an enumerated path solution defines a movement of a sub-quantity of the one or more finished goods or the one or more raw materials between two sites of the plurality of sites;

filter, during or after the enumeration of the path solutions and based on one or more site constraints or predetermined criteria, one or more invalid path fragments to decrease a number of possible path solutions to fulfill the order;

dynamically release computer memory associated with the one or more invalid path fragments to reduce the computer memory requirement;

determine one or more optimal path solutions for the order based on one or more decision criteria;

output one or more of the optimal path solutions for display on a client device, each displayed optimal path solution comprising the respective locations of the plurality of sites and the respective quantity of the finished goods.

11. The computer system of claim 10 , wherein the processors are further operable when executing the instructions to:

assign an influence value to two or more sites in the supply chain network connected in a circular manner;

generate a path from a first site of the two or more sites to a second site of the two or more sites with a highest influence value;

eliminate the one or more of the detected loops in the supply chain network.

12. The computer system of claim 10 , wherein the processors are further operable when executing the instructions to rank one or more of the optimal path solutions based on one or more of the decision criteria.

13. The computer system of claim 10 , wherein the processors are further operable when executing the instructions to determine, during or after filtering the invalid path fragments, a cost associated with each path fragment associated with each enumerated path solution based on respective locations of the two sites connected by the respective path fragment.

14. The computer system of claim 13 , wherein one or more of the decision criteria are based on the determined cost associated with each path fragment associated with each enumerated path solution.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2023
From: LE, TUNG HOANG; OUYANG, ZHENG; TAGHAVI BEHBAHANI, SEYED ALI; STRICKLER, GARY ROBERT
To: COUPA SOFTWARE INCORPORATED
Reel/Frame 065570/0993 →
Continuity (2)
Continuation 17185942 · Feb 25, 2021
Related Publication 20240086830A1 · Mar 14, 2024
References Cited (34)
US 8214238B1 · Fairfield et al. · 2012 [cited by applicant]
US 8266066B1 · Wezter et al. · 2012 [cited by applicant]
US 20010032029A1 · Kauffman · 2001 [cited by applicant]
US 20020156663A1 · Weber · 2002 [cited by examiner]
US 20050171827A1 · Denton · 2005 [cited by examiner]
US 20060282346A1 · Kernodle et al. · 2006 [cited by applicant]
US 20080015721A1 · Spearman · 2008 [cited by applicant]
US 20090150208A1 · Rhodes et al. · 2009 [cited by applicant]
US 20090319070A1 · Morningred et al. · 2009 [cited by applicant]
US 20090327027A1 · Bateni et al. · 2009 [cited by applicant]
US 20110130857A1 · Budiman · 2011 [cited by applicant]
US 20110173042A1 · Riepshoff · 2011 [cited by examiner]
US 20110282476A1 · Hegemier et al. · 2011 [cited by applicant]
US 20120072431A1 · Berlener et al. · 2012 [cited by applicant]
US 20120253865A1 · Narasimhamurt · 2012 [cited by applicant]
US 20150039375A1 · Grichnik · 2015 [cited by examiner]
US 20150100365A1 · Torkian et al. · 2015 [cited by applicant]
US 20190073611A1 · Sahota · 2019 [cited by applicant]
US 20190188621A1 · Nasu · 2019 [cited by applicant]
US 20210049532A1 · Smith · 2021 [cited by applicant]
US 20210091957A1 · Ford · 2021 [cited by applicant]
US 20210158259A1 · Evans et al. · 2021 [cited by applicant]
US 20210256443A1 · Srivastava et al. · 2021 [cited by applicant]
US 20220156693A1 · Singh · 2022 [cited by examiner]
CN 110991056A · 2020 [cited by applicant]
WO 2002077917A1 · 2002 [cited by applicant]
Antonio Carlos Braz, The bullwhip effect in closed-loop supply chains: A systematic literature review. Aug. 6, 2018, Journal of Cleaner Production (Year: 2018). [cited by examiner]
Hsiao-Fan Wang, A closed-loop logistic model with a spanning-tree based genetic algorithm, Jun. 11, 2009 (Year: 2009). [cited by examiner]
N. Viswanadham, R Gaonkar, and V. Subramanian, “Optimal configuration and partner selection in dynamic manufacturing networks,” Proceedings 2001 ICRA. IEEE International Conference on Robotics and Automation (Cat. No. 0… [cited by applicant]
Eskandarpour, Majid, Pierre Dejax, and Olivier Péton. “A large neighborhood search heuristic for supply chain network.” Ecole des Mines de Nantes, Technical report AUTO/14.3 (2014). [cited by applicant]
Barbaro, R.W. et al. “Generalized Multiperiod MIP Model for Production Scheduling and Processing Facilities Selection and Location,” “Technical Papers,” Mining Engineering, SME preprint 83-123, SME-AIME Annual Meeting, … [cited by applicant]
Maravelias, Christopher T., “Mixed Integer Programming Methods for Supply Chain Optimization,” Chemical and Biological Engineering, University of Wisconsin, Madison, WI 53706, USA, for “PASI 2011,” Jul. 19-29, 2011, Ang… [cited by applicant]
Georgiadis, Georgios P. et al., “Optimization-Based Scheduling for the Process Industries: From Theory to Real-Life Industrial Applications,” “Processes 2019,” 7,438; doi: 10,3390/pr7070438, www.mdpi.com/journal/process… [cited by applicant]
Braz, Antonio Carlos, The bullwhip effect in closed-loop supply chains: A systemic literature review. Aug. 6, 2019, Journal of Cleaner Production (Year: 2019). [cited by applicant]