VIETNAM NATIONAL UNIVERSITY – HOCHIMINH CITYINTERNATIONAL UNIVERSITY SCHOOL OF INDUSTRIAL ENGINEERING & MANAGEMENT INTEGRATED PRICING AND LOT-SIZING DECISIONS IN A SERIAL SUPPLY CHAIN IN
SCOPE
This article explores a sequential supply chain managed by a decision-maker focused on optimizing raw material procurement from selected suppliers, effectively managing product transfers between stages to avoid inventory shortages, and setting the final product's selling price, all with the goal of maximizing profit over time Importantly, the simultaneous coordination of these complex decisions has been insufficiently addressed in current literature.
The authors propose a mixed-integer nonlinear programming model to tackle the identified deficiency, effectively integrating raw material procurement, product transfers between stages, and pricing strategies into a unified framework aimed at maximizing profitability.
This model introduces a unique requirement that the order quantity from each supplier must be an integer multiple of the quantity sent to the next stage, enabling the assignment of different multiplicative factors to individual suppliers This advancement surpasses traditional models that apply a uniform factor to all suppliers, thereby enhancing the model's objective function As a result, this nuanced coordination mechanism improves predictive accuracy and optimizes decision-making processes.
The article presents a heuristic algorithm that efficiently produces near-optimal solutions, highlighting its ability to deliver results that closely align with the best possible outcomes within a reasonable timeframe, making it highly applicable in real-world situations.
This article presents an innovative integrated approach utilizing a mixed-integer nonlinear programming model, which highlights the importance of coordinating decisions across the supply chain simultaneously The customized coordination mechanism, along with the creation of an effective heuristic algorithm, signifies substantial progress in enhancing decision-making processes within sequential supply chains.
LIMITATIONS
Translating general constraints from the case study into specific, applicable constraints poses a significant challenge The complexity of the serial system, illustrated in Figure 1, arises from the interdependence of inventory across various stages Specifically, inventory at one stage is utilized to replenish the subsequent stage, creating a complex flow of inter-stage inventory This intricate relationship complicates the modeling of constraints and decision-making processes.
Conducting sensitivity analyses by testing various factors and running the model multiple times aids in comprehending how changes in different parameters impact the overall solution.
Python was selected for implementation because of its cost-effectiveness, utilizing the Gekko optimization library However, there were concerns about Gekko's reliability in verifying the accuracy of the solutions, particularly in confirming the feasibility of the results obtained.
The lack of a top-down approach in the research's explanation and implementation created challenges for our group, particularly due to our limited coding experience This absence likely led to confusion in interpreting the paper and managing the implementation process.
Implementing a complex optimization model requires a thorough understanding of the problem's constraints and requirements Inexperienced coding skills and difficulties in translating general constraints into specific contexts can create significant challenges in the process.
METHODOLOGY 8 2.1 PROBLEM DESCRIPTION 8 2.2 MATHEMATICAL FORMULATION 10 2.2.1 NOTATIONS
MODEL M1
Constraint (1) represents the total quantity ordered from all the selected suppliers during a cycle time.
Constraint (2)requires that a supplier’s replenishment rate does not exceed the supplier’s capacity rate.
Constraint (3) imposes the manufacturer’s restriction on the minimum acceptable quality level.
Constraints (4) and (5) ensure that the order quantity from each supplier is an integer multiple of the quantity ordered in stage 2, allowing for a unique multiplicative factor for each supplier.
Constraint sets (6) and (7)ensure that the order quantity at each stage is an integer multiple of the order quantity at the immediate downstream stage.
Constraint (8) establishes a maximum limit on the total orders placed with suppliers during each order cycle This limitation is crucial for managing the duration of the cycle time, as highlighted by Mendoza and Ventura.
Constraint set (9)imposes the integrality condition on the number of orders placed to the selected suppliers during an order cycle
Constraint set (10)represents the non-negativity conditions.
Constraint set (11) and (12)ensure avoiding the division by zero.
MODEL M1’
A GENERALIZE POWER-OF-TWO PROCEDURE
Step I If𝑄 𝑙 𝑃𝑂𝑇 is known, then go to Step II Otherwise, set𝑄 𝑙 𝑃𝑂𝑇 to𝑄 𝑙 𝑅
Step II For𝑠 = 𝑙 − 1, …, 2, find the non-negative integer r, such that
Step III For𝑠 = 1and𝑖 = 1, …, 𝑛, find the non-negative integerr, such that
HEURISTICS ALGORITHM
Let𝑡 = 0, and set𝑃 = 𝑃 0 Where𝑃 0 is an initial value for the selling price.
Step I Obtain initial values for the order quantities:
Step II Modify the initial order quantities:
Use Procedure 1 to find 𝑄 1𝑖 𝑃𝑂𝑇 and 𝑋 1𝑖 , 𝑖 = 1, …, 𝑛,and to find 𝑄 𝑠 𝑃𝑂𝑇 and
Step III Update the selling price and find the number of orders per supplier per cycle:
Solve Model (M1’) given 𝑄 𝑃𝑂𝑇 1𝑖 , 𝑖 = 1, …, 𝑛, to obtainPand
Step IV Refine the order quantity placed at the last stage:
Use Equation (25) to find a new value for𝑄 𝑙
1 If𝑡 = 0, let 𝑡 = 𝑡 + 1and go to Step 1.
2 Otherwise, if the number of orders placed to the selected suppliers during a cycle time and the multiplicative factors at iteration are the𝑡 same as those obtained in iteration𝑡 − 1, then go to Step 6 Else, let and go to Step 1
Step VI Get the heuristic solution:
Return 𝐽 𝑖 , 𝑄 𝑃𝑂𝑇 1𝑖 , and𝑋 1𝑖 , 𝑖 = 1, …, 𝑛, 𝑄 𝑠 𝑃𝑂𝑇 and𝑋 𝑠 , 𝑠 = 2, …, 𝑙and , and stop.𝑃
Table 1: Supplier’s quantity and Cost parameters:
Supplier Quality level Unit setup cost Unit purchasing cost Capacity rate i 𝑞 1 𝑘 1𝑖 𝑣 1𝑖 c i
Table 2: Cost parameters for each stage:
Stage Unit holding cost Unite echelon cost Unit setup cost s ℎ 𝑠 𝑒 𝑠 𝑘 𝑠
Table 3: Several values for the selling price:
Supplier Optimal selling price Selling price at full capacity i
Table 4: Optimal solution for model M1:
Stage 1 Stage 2 Stage 3 Stage 4 Stage 5 i
Profit per time unit $ 4,102,424 per month
2.4 MODEL IN PYTHON from gekko import GEKKO import math m = GEKKO(remotese) # Initialize gekko m.options.SOLVER=1 # APOPT is an MINLP solver m.solver_options = ['minlp_maximum_iterations 5000', \
# minlp iterations with integer solution
'minlp_max_iter_with_int_sol 100', \
# nlp sub-problem max iterations
# maximum deviation from whole number
'minlp_gap_tol 0.01'] qi = [0.94, 0.92, 0.96, 0.98] k1i = [5000, 1500, 4500, 3500] v1i = [18, 15, 24, 30] c = [30000, 25000, 36000, 28000] alpha = 4*10**8 delta = 2 e1 = 5 es_2_5= [15, 30, 45, 50]
#calculate Y1[i] product_of_Xs = 1 for value in Xs: product_of_Xs *= value
Y_1 = [X1[i] * product_of_Xs for i in range(len(X1))]
J = m.Array(m.Var, 4, lb=0, integer=True) # Assuming you have 4 variables
# Constraint 1 m.Equation(Q1 == m.sum([J[i] * Q_1[i] for i in range(4)]))
#constraint 2 for i in range(4): m.Equation(alpha * P**(-delta) * J[i] * Q_1[i] = Q1 * qa)
# Constraint 8 m.Equation(m.sum([J[i] for i in range(4)])