Next Article in Journal
Impact of Social Media on Knowledge of the COVID-19 Pandemic on Bangladeshi University Students
Previous Article in Journal
Mathematical Modeling of SARS-CoV-2 Omicron Wave under Vaccination Effects
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Benders Decomposition Method on Adjustable Robust Counterpart Optimization Model for Internet Shopping Online Problem

1
Department of Mathematics, Faculty of Mathematics and Natural Science, Universitas Padjadjaran, Sumedang 45363, Indonesia
2
Department of Computer Science, Faculty of Mathematics and Natural Science, Universitas Padjadjaran, Sumedang 45363, Indonesia
*
Author to whom correspondence should be addressed.
Computation 2023, 11(2), 37; https://doi.org/10.3390/computation11020037
Submission received: 29 November 2022 / Revised: 9 February 2023 / Accepted: 14 February 2023 / Published: 16 February 2023

Abstract

:
In this paper, the implementation of the Benders decomposition method to solve the Adjustable Robust Counterpart for Internet Shopping Online Problem (ARC-ISOP) is discussed. Since the ARC-ISOP is a mixed-integer linear programming (MILP) model, the discussion begins by identifying the linear variables in the form of continuous variables and nonlinear variables in the form of integer variables. In terms of Benders decomposition, the ARC-ISOP model can be solved by partitioning them into smaller subproblems (the master problem and inner problem), which makes it easier for computational calculations. Pseudo-codes in Python programming language are presented in this paper. An example case is presented for the ARC-ISOP to determine the optimal total cost (including product price and shipping cost) and delivery time. Numerical simulations were carried out using Python programming language with case studies in the form of five products purchased from six shops.

1. Introduction

The Internet is an electronic communication network that connects computer networks and facilities. Internet use in business has changed Internet function from information exchange to strategic business tool use, such as marketing, sales, and customer service. Because of the Internet, marketing companies, products, and services have become an interactive process nowadays; consumers can even do shopping using the Internet. The Internet is used to access smart gadgets, and users may perform surveillance using sensors, cameras, smart cities and employ decision support systems [1,2,3], known as online shopping.
Online shopping is defined as buying products or services from a seller in an interactive way and in real-time through the Internet. Online shopping is a new communication activity that does not need to be conducted face-to-face but separately through communication media connected to Internet services. The advantages of online shopping include customers enjoying online shopping 24 h per day, buying various products and services anytime and anywhere, comparing product prices from multiple shops, and so on. Furthermore, the biggest benefit of online purchasing is the abundance of possibilities [4].
However, the disadvantages of online shopping are the following: The products cannot be touched and felt, delivery time can be late, total costs increase because of additional shipping costs, and so on [4]. In some cases of products purchase, there are difficulties in optimizing the total cost by considering product prices, shipping costs, and delivery times from various online shops. Customers usually take time to choose which shop gives the best price and shipping cost.
Refers to [5], this problem is known as the Internet Shopping Optimization Problem (ISOP), which can be solved to minimize the total costs. Optimization is an action to obtain the best results in a certain situation [6]. The process of determining conditions that yield a function’s maximum or least value is known as optimization, and an optimization model can be created from optimization problems [7]. More than one method is used in solving optimization problems [8]. In any case of construction, design, and maintenance, decision-makers must be able to make many technological decisions. The ultimate goal of all these decisions is to minimize the effort required or maximize the desired benefits.
Chung [9] introduces an ISOP optimization model that involves delivery constraints in the form of cost and delivery time using a multi-objective optimization model. Chaerani et al. [10] consider that Chung’s model can be viewed as a maximum flow problem with circular demand (MFP-CD) because it has multiple sources in the form of several products and multiple sinks in the form of several shops. Chung’s model includes a decision variable of delivery. Chaerani et al. [10] made the decision variable of delivery time into an adjustable variable using the adjustable robust counterpart (ARC) method with the maximum uncertainty set of delivery time.
It can be seen that previous research discussed the Internet Shopping Online Problem (ISOP) using various methods, but none of them used the Benders decomposition method. It can be seen in [11] that there are only 6 articles on ARC Optimization Model using the Benders Decomposition but none of them discuss about ISOP. This research describes the solution of the Adjustable Robust Counterpart for the Internet Shopping Online Problem (ARC-ISOP) model using the Benders decomposition method [12]. Based on [12], the mixed-integer linear programming (MILP) model can be separated based on integer variables that are difficult to solve and continuous variables that are easy to solve, as well as the ARC-ISOP. Therefore, the Benders decomposition method makes it easier to solve the computational calculation of the MILP model because the model is partitioned into smaller subproblems. Then, a numerical simulation is carried out using secondary data from Tokopedia and Python programming language to help calculate the numerical simulation.

2. Literature Review

A literature review was conducted to determine the potential of research on optimization models for Internet shopping online problems that were solved using the Benders decomposition method. Topic-related journals comprised this literature review [13]. The literature review was carried out using the Google Scholar databases and helped by Publish or Perish (PoP) software. The keyword searches of “internet shopping online”, “robust optimization”, and “benders decomposition” produced 992 articles published from 2010 to 2022. Then, preferred reporting items for systematic review and meta-analyses (PRISMA) [14] were used to analyze all the articles obtained. Several related articles were selected based on the four PRISMA steps shown in Figure 1.
The first step is to choose the keywords associated with the intended study topic based on Figure 1. For the article results to be as precise as possible, keyword classification is required. It is possible to organize keywords into categories ranging from general to particular topics before entering them into at least one preferred database to determine the total number of articles found.
Furthermore, article limits are enforced as necessary when entering keywords into the database. The screening phase makes up the second stage. At this point, the first task is to check for duplicate articles. Using multiple article databases may result in duplicate content, i.e., articles with the same author and title. Until the total of the most recent articles is gathered, duplication checks can be carried out either manually or with the aid of the Jabref or Mendeley software. The articles that have been successfully chosen for the duplicate screening stage are filtered in the following stage of the screening process based on the title and abstract.
Additionally, each of the articles chosen at the screening stage is properly checked and read before moving on to the eligibility stage, where non-conforming articles are sent back. Checking is performed by looking at the research’s goals, methods, and results. The outcomes of the article selection at the eligibility stage are articles that proceed to the last stage, which includes state-of-the-art preparation, bibliometric map mapping, and article usage as material for literature reviews.
From the literature review that was conducted with the three keywords already mentioned, 992 articles were identified. Then, several articles were selected at the screening stage. At the screening stage, 718 articles were eliminated because they were not English articles, peer-reviewed articles, or articles published by journals. At the eligibility stage, 20 articles from 714 articles were selected, and 254 other articles were eliminated because the titles and abstracts did not match the qualification. Furthermore, 4 articles were selected, and 16 other articles were eliminated because the manuscript’s content did not match the qualification. In the included stage, four articles were selected as the final result. A summary of the selected articles can be seen in Table 1.
In this literature review, we discuss the potential of research on optimization models for Internet shopping online problems that were solved using the Benders decomposition method. Our review complements existing reviews on this topic (Table 1). Table 1 summarizes the differences between our article and the previous review articles. One difference is that we focus on the use of the Benders decomposition method. Based on Table 1, none of the four articles used this method. Therefore, based on this statement, the review provides a gap to be addressed in future research to improve efficiency and accuracy, which is explained in the next section.

3. Materials

3.1. Internet Shopping Optimization Problem with Delivery Constraint (DISOP)

Referring to [9], the formulation for Delivery Constrained Internet Shopping Online Problem (DISOP) is shown in (1)–(5).
min i j p i j x i j + j f j y j
min max i , j ( d i j , x i j )
s . t   j x i j = 1 , i = 1 , , n
  i x i j n y j , j = 1 , , m
x i j , y j { 0 , 1 }
where m is the number of shops with index j and n is the number of products with index i . Meanwhile, the price of product i at shop j is denoted by p i j , and the delivery costs at shop j is denoted by f j . Note that f j   is a fixed value regardless of the number of products to buy. In addition, x i j is a binary decision variable that has a value of one if product i is selected from shop j , while y j   is a binary decision variable regardless of whether there incurs a delivery cost at shop j . The delivery time of the selected product until it reaches the customer is denoted by d i j .
The objective Function (1) means that we try to minimize the purchasing cost, including the price of products and delivery cost. The objective Function (2) means that we want to minimize the delivery time of all products. Constraint (3) means that all products to buy must be selected from available shops, and Constraint (4) means that fixed delivery cost incurs whenever there is any product selection from the shop. Constraint (5) requires binary decision variables. Equations (1)–(5) can be reformulated as (6)–(10) by replacing the objective Function (2) with a new Constraint (9). The variable d _ m a x is an upper limit of the delivery time in the objective Function (2).
min i j p i j x i j + j f j y j
s . t   j x i j = 1 , i = 1 , , n
  i x i j n y j , j = 1 , , m
  i d i j x i j d m a x , i = 1 , , n
x i j , y j { 0 , 1 }

3.2. Adjustable Robust Counterpart for Internet Shopping Online Problem (ARC-ISOP)

The ISOP model introduced by Chung [9] is extended as a maximum flow problem with circular demand (MFP-CD), as discussed by Chaerani et al. [4]. In [4], the ISOP model fulfills the MFP-CD assumption, which involves multiple sources in the form of several products and multiple sinks in the form of several shops. The MFP-CD can be formulated by adding a source node ( s * ) connected to s nodes and sink nodes ( t * ) connected to t   nodes [16]. This problem can be solved using the adjustable robust counterpart because it has an uncertain delivery time.
The d _ m a x in [9] is a decision variable of delivery time that needs to be adjusted so that it can be stated as an uncertain maximum flow problem with circular demand (UMFP-CD) [10]. The formulation of UMFP-CD can be seen as follows:
max d m a x s . t   i , j a i j z i j = 0   0 z i j d i j , i , j   d i j U
The optimal z i j * must be determined where d _ m a x donates the total maximum delivery time of each product i which is delivered from shop j . Matrix A is the incidence matrix for the ISOP network, as illustrated in Figure 2. The delivery time of product i from shop j is denoted as d i j , which is in the polyhedral uncertainty set. This is based on the result of the robust counterpart, which yields linear optimization with a close-convex feasible set [4].
The complete formulation in [4] for Adjustable Robust Counterpart for Internet Shopping Online Problem (ARC-ISOP) with polyhedral uncertainty set is the following:
Min i j p i j x i j + j f j y j ,
s . t   j x i j = 1 ,   i = 1 , , n
  x i j n y j , j = 1 , , m
  d i j x i j t , i = 1 , , n
d ¯ m a x + d x T y x t 0
A z = 0
  z i j d ¯ i j ω i j p k T y k 0 , i , j , k
D k T y k = P k T ω i j ;
D x T y x = Q
ω i j = 1 ;
y x , y k , z i j , t 0 ,   i , j
x i j , y j { 0 , 1 }
The values of the variables P , D x , D k , d x , and d k are random numbers obtained through Python using the Random Library. Referring to [4], problems (12)–(23) involve the integer variables x i j   and y j so that the ARC-ISOP can be solved as a two-stage robust optimization problem. Refer to [17], one of the alternative procedures in solving the mixed-integer linear programming (MILP) is the Benders decomposition method.

4. Methods

4.1. Duality Theory

In linear programming, there are primal and dual problems. These two problems are exciting and closely related. If the optimal solution for one is known, the other optimal solution can be easily obtained [8]. The linear programming calculation depends more on the number of constraint functions than the number of variables. The dual problem is expected to have fewer constraint functions than the primal problem; thus, it is more efficient to use the dual problem to obtain a solution to the primal problem. According to [8], the rules for constructing dual problems are stated in Table 2.

4.2. Benders Decomposition Method

Jacques F. Benders first discovered Benders decomposition in 1962. As defined in [12], Benders decomposition is the basis of a mathematical model that is required to partition or divide into linear parts that are easy to solve and nonlinear parts that are difficult to solve. According to [12], the Benders decomposition method is an optimization method for solving problems with feasible subproblems. Consider the formulation of the minimization problem called the initial problem P(x,y) as follows. Then, apply the Benders decomposition algorithm (Figure 3) to the partitioned mathematical model.
  min c T x + f ( y )   s . t   A x + F ( y ) = b   x 0 ,   y Y
where A R m × n , x , c R n , b R m , y Y R p , in cases f ( y ) and F ( y ) , can be nonlinear and Y can be discrete or a continuous range. The main concept in the Benders decomposition algorithm is to partition the variable into two sets, i.e., x , and y , then solve the problem on the difficult variable Y .
The Benders decomposition method algorithm can be seen in Figure 3 based on [12] and discussed by Chaerani et al. [18], the steps for working on the Benders decomposition method are as follows:
(1)
First, observe that the fixed value of y Y becomes a linear programming problem in terms of x . In addition, P ( x | y ) is the notation of a feasible subproblem. Next, assume that P ( x | y ) has a finite optimal solution x     y Y so that Equation (24) can be reformulated into a constraint equivalent to P 1 ( x , y ) :
min y   { f ( y ) + min x   { c T x   : A x = b F ( y ) , x 0 } }
where
min x   { c T x   : A x = b F ( y ) , x 0 }
is an inner optimization problem assumed to have an optimal solution x for every y Y .
(2)
Second, find a dual problem formulation for the inner optimization problem. Equation (24) can be rewritten as
min y   { f ( y ) + max u   { ( b F ( y ) ) T u   : A T u c } }  
The constraint function in the inner optimization problem is independent of the y variable. The optimal solution of the inner optimization problem is finite because it assumes that (26) has an optimal solution x for every y Y and the optimal solution is at the extreme point u U . Equation (27) can be rewritten as follows:
min y   { f ( y ) + max u   ( b F ( y ) ) T u }  
(3)
Third, determine the full master problem by rewriting (28), which is formulated into a simple minimization problem as follows:
min f ( y ) + m s . t   ( b F ( y ) ) T u m , u U y Y
From Equation (29), the relaxed master problem M ( y , m ) is defined:
min f ( y ) + m s . t   ( b F ( y ) ) T u m , u B y Y
where B is an empty set and m is initialized as 0 . The Benders subproblem solves an extreme point u with a fixed value y Y so that it can be considered a maximization problem.
S ( u | y ) = max   { ( b F ( y ) ) T u   : A T u c }
where u R and S ( u | y ) has a finite optimal solution. The subproblem S ( u | y ) is solved to obtain u given the value determined from solving the master problem M ( x , y ) . Then, a simple test is performed to determine whether a constraint that includes u should be added to the master problem. If so, the next problem is solving the master problem to generate a new value of y . Then, input the new value of y to the subproblem, which is solved again. This iteration continues until the optimization is reached.

5. Result and Discussion

5.1. Application of the Benders Decomposition Method in Completing the ARC-ISOP Optimization Model

Using the theory of decomposition and duality, an Internet Shopping Online Problem (ISOP) can be divided into a master problem and a dual subproblem. To perform the Benders decomposition method, the variables and constraints need to be divided into two groups, linear variables and nonlinear variables, in the ARC-ISOP model (Formulations (12)–(23)). To simplify the work, some variables are denoted as follows:
(1)
The continuous variables z i j , y x , y k , and t are denoted as v , with Constraints (16)–(20) and (22) representing the linear parts that will be formulated into dual form.
(2)
The integer variables x i j and y j   are denoted as w , with Constraints (13)–(15) and (23) representing the set Y .
(3)
As detailed below, α , β , γ , σ , and π are dual variables denoted as u , introduced for Constraints (16)–(20).
Based on the denotations mentioned, the model indicators in the Benders decomposition algorithm are equivalent to P ( v , w ) as the initial problem M ( w , r ) as the master problem and S ( u | w ) as the subproblem. After identifying the linear and nonlinear variables, the next step is to use the Benders decomposition algorithm.
(1)
First Stage
The first stage is carried out to find the optimal solution of the variables considered difficult to solve; in this case, the integer variables ( x and y ) are denoted as w .
  • Step 1
Solve the initial master problem M ( w , r = 0 ) as an initial step, obtained from the ARC-ISOP model, which only contains integer variables. Note that B is the empty set, and the limit of the model is . Since B is an empty set and r = 0 , then M ( w , r = 0 ) can be written as follows:
min   i j p i j x i j + j f j y j s . t   j x i j = 1 ,   i = 1 , , n   x i j n y j , j = 1 , , m   d i j x i j t , i = 1 , , n x , y { 0 , 1 }
Note that Benders cut is not added to this problem (since r = 0 ).
2.
Step 2
Determine the inner optimization model P ( v , w ) , which contains an objective function and a constraint that only has continuous variables ( z , y x , y k , t ) . The term P ( v , w ) can be written as follows:
min   0
s . t   d ¯ m a x + d x T y x t 0
A z = 0
  z i j d ¯ i j ω i j p k T y k 0 , i , j
D k T y k = P k T ω i j ; ω i j = 1
D x T y x = Q
z i j , y x , y k , t 0 , i , j
Because the objective function in the minimization optimization model in Equations (33)–(39) is zero, it is necessary to carry out a duality process to avoid a zero value using the duality theory. The zero value in the minimization objective function results in the solution being zero. By introducing the five dual variables α , β , γ , σ , and π corresponding to five Constraints (34)–(38), respectively, the following is a dual formulation known as subproblem S ( u | w ) of the inner optimization problem (see Equation (27)):
M a x   α d ¯ m a x + β i j ( 0 ) + γ i j d i j ¯ ω i j + σ i j P T w i j + π Q s . t   A β + γ 0 d x T α + D x T π 0 d k T γ + D k T σ 0 α 0 γ 0 β , σ , π   free
Equation (40) can be solved by substituting the value of w obtained from Step 1 to obtain the value of the dual variables.
3.
Step 3
Test whether the u p p e r   b o u n d < l o w e r   b o u n d + ε | l o w e r   b o u n d | , where ε > 0 .
  • U p p e r   b o u n d < l o w e r   b o u n d + ε | l o w e r   b o u n d | , where ε > 0 , then stop the iteration and proceed to the second stage.
  • U p p e r   b o u n d > l o w e r   b o u n d + ε | l o w e r   b o u n d | , where ε > 0 , then the iteration continues to the next step.
4.
Step 4
Each iteration will add a Benders cut, which is derived from the objective function in Subproblem S ( u | w ) . Here is Benders cut as a new constraint:
C = ( α d ¯ m a x + β i j ( 0 ) + γ i j d ¯ ω i j + σ i j P k T ω i j + π Q r )
where α , β , γ , σ , π are parameters and r is unknown. By adding a new constraint to the initial master problem M ( w , r = 0 ) in (32), the regular master problem M ( w , r ) can be obtained after introducing the set B of Benders cut generated so far. Note that the dual optimal variables have been assigned an additional index b for each Benders cut. The regular master problem M ( w , r ) is stated as follows:
min   i j p i j x i j + j f j y j + r s . t   j x i j = 1 ,   i = 1 , , n   x i j n y j , j = 1 , , m   d i j x i j t , i = 1 , , n   α d ¯ m a x + β i j ( 0 ) + γ i j d ¯ ω i j   + σ i j P k T ω i j + π Q r x , y { 0 , 1 }   α , β , γ , σ , π B
Solve (42), then return to Step 3. The calculation continues until the limit test in Step 3 stops.
(2)
Second Stage
The second stage is carried out to find the optimal solution of the inner optimization model P ( v , w ) (see Equations (33)–(39)), which only contains continuous variables by completing the initial model that has been substituted with the value of w from the first stage.
The solution obtained from the second stage, added to the optimal solution from the first stage, becomes the total optimal solution from the Benders decomposition method.

5.2. Numerical Simulation

5.2.1. Python Algorithm

The Python algorithm to solve the ARC-ISOP optimization model with the Benders decomposition method is as follows:
Before starting the algorithm, open https://colab.research.google.com/ (accessed on 27 July 2022) or open a programming application that supports Python.
Algorithm 1: Solving the initial master problem.
      Begin
      Step 1: Define the problem using the syntax “LpMinimize” and the variables using the syntax “LpVariable”.
      Step 2: Use the Pulp module to initiate initial_master_model.
      Step 3: Read intial_master_model using the syntax “print()”.
      Step 4: Use the Pulp module to solve initial_master_model using the syntax “solve()”.
      Step 5: Print the results using the following syntax:
            For all j m  do
                  Print y j
                  For all i n  do
                        Print x i j .
                  End for
            End for
      End
Algorithm 2: Solving the subproblem model.
      Begin
      Step 1: Define the problem using the syntax “LpMaximize” and the variables using the syntax “LpVariable”.
      Step 2: Use the Pulp module to initiate subproblem_model.
      Step 3: Read subproblem_model using the syntax “print()”.
      Step 4: Use the Pulp module to solve subproblem_model using the syntax “solve()”.
      Step 5: Print the results using the following syntax:
            For all i V  do
            For all j V  do
                        Print β i j .
                        Print γ i j .
                        Print σ i j .
                  End for
            End for
      Step 6: Print α and π .
      End
Algorithm 3: Solving inner optimization model.
      Begin
      Step 1: Define the problem using the syntax “LpMinimize” and the variables using the syntax “LpVariable”.
      Step 2: Use the Pulp module to initiate inner_model.
      Step 3: Read inner_model using the syntax “print()”.
      Step 4: Use the Pulp module to solve inner_model using the syntax “solve()”.
      Step 5: Print the results using the following syntax:
            For all i V  do
            For all j V  do
                     Print z i j .
                     Print y k .
                  End for
            End for
      Step 6: Print y x and t .
      End
Algorithm 4: Library installation and data upload.
      Begin
      Step 1: Install the pulp library with the following syntax: “pip install pulp”.
      Step 2: Import the required libraries using the following syntax: “import pulp as lp”, “import pandas as pd”, “import numpy as np”, and “import random as rd”.
      Step 3: Upload the research data using the following syntax:
            “from google.colab import files”
            “upload=files.upload()”
      Step 4: Import the sheet in Excel files that has been uploaded using the following syntax:
            “import io”
            “name = pd.read_excel(io.BytesIO(upload[‘file name.xlsx’]),sheet_name=’name’)”
Algorithm 5: Solving the maximum flow problem model.
      Begin
      Step 1: Define the set of points in the form of an array.
      Step 2: Define the problem using the syntax “LpProblem” then “LpMaximize” and the variables using the syntax “LpVariable”.
      Step 3: Define the objective function and the constraint function.
            For all i V  do
            Define the entry point.
            End for
            For all i V  do
                  Define the exit point.
            End for
      Step 4: Use the Pulp module to initiate mfp_model.
      Step 5: Use the Pulp module to solve mfp_model using the syntax “solve()”.
      Step 6: Print the results using the following syntax:
            For all i V  do
                  For all j V  do
                        Print z i j .
                  End for
            End for
      End
The Benders decomposition method is divided into two stages. The first stage is to find the optimal value of the nonlinear variable using Algorithm 1 and Algorithm 2, while the second stage is to find the optimal value of the linear variable using Algorithm 3. Meanwhile, Algorithm 4 and Algorithm 5 are used before starting the Benders Decomposition Method.

5.2.2. Case Study 1

The data used in this numerical simulation are the secondary data obtained from Tokopedia, accessed on 15 June 2022, using the skincare product category [19]. Data that have previously been collected from primary sources and made easily accessible for academics to use for their own research are known as secondary data. This is the category of information that has previously been collected [20,21]. The data collected include the selling prices of five products from six different online shops in Bandung, including shipping costs and delivery times from each online shop. The data can be seen in Table 3.
To find the optimal solution on the data in Table 3, the Benders decomposition algorithm consists of two stages.
(1)
First Stage
The first stage is to find the optimal solution for the nonlinear or integer variables.
  • Step 1
Solve initial master problem M ( w , r = 0 ) as an initial step. Note that B is an empty set, and the limit of the model is . Substitute data from Table 3 into (32), then use Algorithm 1 in Python to get the optimal solution.
Based on Table 4 and Table 5, the following is obtained:
x 14 = x 24 = x 34 = x 44 = x 54 = 1 and y 4 = 1 with a minimum total cost of R p   130.100 (lower bound).
2.
Step 2
Solve the subproblem (see Equation (40)) to obtain the values of dual variables. However, in this case, (40) does not contain x and y variables, so the subproblem can be solved immediately using Algorithm 2 in Python.
α = β = γ = σ = π = 0 with a maximum value of Z = 0.
min ( , ( 130.100 + 0 = 130.100 ) ) = 130.100 (upper bound).
3.
Step 3
Bound test: 130.100 130.100 + ε | 130.100 | , where ε > 0 .
Since u p p e r   b o u n d < l o w e r   b o u n d + ε | l o w e r   b o u n d | , where ε > 0 , the first stage is discontinued. The case in this research did not pass Step 4, namely the addition of the Benders cut. Then, the calculation continues to the second stage. From the first stage, the optimal solution is x 14 = x 24 = x 34 = x 44 = x 54 = 1   a n d   y 4 = 1 with a minimum total cost of R p   130.100 .
(2)
Second Stage
The solutions in Table 6 and Table 7 are the optimal solutions that minimize the total cost of purchasing skincare products at six online shops. The total cost is optimal if products 1, 2, 3, 4, and 5 are purchased from the fourth shop, with a total cost of Rp130.100, and the delivery time is about two days.

5.2.3. Case Study 2

The data used in this numerical simulation are the secondary data obtained from Tokopedia, accessed on 22 June 2022, using the skincare product category [20]. The data collected include the selling prices of five products from six different online shops in various cities across Java, including shipping costs and delivery times from each online shop. The data can be seen in Table 8.
To find the optimal solution based on the data in Table 8, the Benders decomposition algorithm consists of two stages.
(1)
First Stage
The first stage is to find the optimal solution for the nonlinear or integer variables.
  • Step 1
Solve initial master problem M ( w , r = 0 ) as an initial step. Note that B is an empty set, and the limit of the model is . Substitute data from Table 8 into (32), then use Algorithm 1 in Python to obtain the optimal solution.
Based on Table 9 and Table 10, the following is obtained:
x 15 = x 25 = x 35 = x 45 = x 55 = 1 and y 5 = 1 with a minimum cost of Rp 119.000 (lower bound).
2.
Step 2
Solve the subproblem (see Equation (40)) to obtain values of dual variables. However, in this case, (40) does not contain x and y variables so the subproblem can be solved immediately using Algorithm 2 in Python.
α = β = γ = σ = π = 0 with a maximum value of   Z = 0 .
min ( , ( 119.000 + 0 = 119.000 ) ) = 119.000 (upper bound).
3.
Step 3
Bound test: 119.000 119.000 + ε | 119.000 | , where ε > 0 .
Since u p p e r   b o u n d < l o w e r   b o u n d + ε | l o w e r   b o u n d | , where ε > 0 , the first stage is discontinued.
The case in this research did not pass Step 4, namely the addition of the Benders cut. Then, the calculation continues to the second stage. From the first stage, the optimal solution is x 15 = x 25 = x 35 = x 45 = x 55 = 1 and y 5 = 1 , with a minimum total cost of Rp 119.000.
(2)
Second Stage
The solutions in Table 11 and Table 12 are the optimal solutions that minimize the total cost of purchasing skincare products at six different online shops. The total cost is optimal if products 1, 2, 3, 4, and 5 are purchased from the fifth shop, with a total cost of Rp. 119.000 and delivery time is about three days. With the emergence of an optimal solution that satisfies the objective function and all constraints on the model, it can be concluded that the Benders decomposition method can be used to complete a robust optimization model in the case of internet shopping online.

6. Conclusions

The Adjustable Robust Counterpart for the Internet Shopping Online Problem (ARC-ISOP) is a mixed-integer linear programming (MILP) model, so the ARC-ISOP model can be solved using the Benders decomposition method. Benders decomposition is a method for solving cases that have feasible subproblems. This is a feasible subproblem that is determined based on the initial MILP model, which is partitioned into linear/continuous parts (considered easy variables) and nonlinear/integer parts (considered hard variables). In this research, an example case is given, namely the optimization of internet shopping online on the ARC-ISOP model to minimize the total cost (including product prices and delivery cost) and delivery time so that the optimal robust solution is obtained. The result indicates that the Benders decomposition method can solve problems by partitioning them into smaller subproblems, which makes it easier for computational calculations and provides computationally tractable solutions. With the emergence of an optimal solution that satisfies the objective function and all constraints on the model, it can be concluded that the Benders decomposition method can be used to complete a robust optimization model in the case of internet shopping online.

Author Contributions

Conceptualization, D.C.; methodology, D.C, E.H., E.R.; software, E.P.,S.S. and A.Z.I.; validation, D.C., S.S. and A.Z.I.; formal analysis, D.C., S.S. and A.Z.I.; investigation, D.C., S.S. and A.Z.I.; resources, D.C., S.S. and A.Z.I.; data curation, S.S. and A.Z.I.; writing—original draft preparation, S.S.; writing—review and editing, D.C., S.S. and A.Z.I.; visualization, D.C., S.S. and A.Z.I.; supervision, D.C., E.H., E.R. and E.P.; project administration, D.C.; funding acquisition, D.C. All authors have read and agreed to the published version of the manuscript.

Funding

This research is supported by the Indonesian Ministry of Education, Culture, Research, and Technology under the project with Basic Research Scheme 2022 entitled “Adjustable Robust Counterpart Optimization Model and Social Media Analysis for Internet Shopping Online Problem” under contract number 2064/UN6.3.1/PT.00/2022.

Data Availability Statement

Not applicable.

Acknowledgments

Directorate of Research and Community Service (DRPM) Universitas Padjadjaran, Indonesia.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Zamir, M.; Ali, N.; Naseem, A.; Frasteen, A.A.; Zafar, B.; Assam, M.; Othman, M.; Attia, E. Face Detection & Recognition from Images & Videos Based on CNN & Raspberry Pi. Computation 2022, 10, 148. [Google Scholar]
  2. Afzal, K.; Tariq, R.; Aadil, F.; Iqbal, Z.; Ali, N.; Sajid, M. An optimized and efficient routing protocol application for IoV. Math. Probl. Eng. 2021, 2021, 9977252. [Google Scholar] [CrossRef]
  3. Malik, U.M.; Javed, M.A.; Zeadally, S.; Islam, S.U. Energy efficient fog computing for 6G enabled massive IoT: Recent trends and future opportunities. IEEE Internet Things J. 2021, 9, 14572–14594. [Google Scholar] [CrossRef]
  4. Kumar, S. Online Shopping-A Literature Review. Natl. Conf. Innov. Trends Comput. 2015, 129–131. [Google Scholar]
  5. Błazewicz, J.; Kovalyov, M.; Musiał, J.; Urbański, A.; Wojciechowski, A. Internet shopping optimization problem. Int. J. Appl. Math. Comput. Sci. 2010, 20, 385–390. [Google Scholar]
  6. Yakovlev, S.; Kartashov, O.; Podzeha, D. Mathematical Models and Nonlinear Optimization in Continuous Maximum Coverage Location Problem. Computation 2022, 10, 119. [Google Scholar] [CrossRef]
  7. Chaerani, D.; Irmansyah, A.Z.; Perdana, T.; Gusriani, N. Contribution of robust optimization on handling agricultural processed products supply chain problem during COVID-19 pandemic. Uncertain Supply Chain. Manag. 2022, 10, 239–254. [Google Scholar] [CrossRef]
  8. Rao, S.S. Engineering Optimization: Theory and Practice, 4th ed.; John Wiley & Sons Inc: Hoboken, NJ, USA, 2009. [Google Scholar]
  9. Chung, J.B. Internet shopping optimization problem with delivery constraints. J. Distrib. Sci. 2017, 15, 15–20. [Google Scholar] [CrossRef]
  10. Chaerani, D.; Rusyaman, E.; Mahrudinda; Marcia, A.; Fridayana, A. Adjustable robust counterpart optimization model for internet shopping online problem. J. Phys. Conf. Ser. 2021, 1722, 012074. [Google Scholar] [CrossRef]
  11. Irmansyah, A.Z.; Chaerani, D.; Rusyaman, E. A Systematic Review on Integer Multi-objective Adjustable Robust Counterpart Optimization Model Using Benders Decomposition. JTAM J. Teor. Dan Apl. Mat. 2022, 6, 678–698. [Google Scholar]
  12. Bisschop, J. AIMMS Optimization Modeling; Paragon Decision Technology, B.V.: Haarlem, The Netherlands, 1999. [Google Scholar]
  13. Mahrudinda, M.; Chaerani, D.; Rusyaman, E. Systematic literature review on adjustable robust counterpart for internet shopping optimization problem. Int. J. Data Netw. Sci. 2022, 6, 581–594. [Google Scholar] [CrossRef]
  14. Moher, D. Preferred Reporting Items for Systematic Reviews and Meta-Analyses: The PRISMA Statement. Ann. Intern. Med. 2009, 6, 264–269. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  15. Lopez-Loces, M.C.; Musial, J.; Pecero, J.E.; Fraire-Huacuja, H.J.; Blazewicz, J.; Bouvry, P. Exact and heuristic approaches to solve the Internet shopping optimization problem with delivery costs. Int. J. Appl. Math. Comput. Sci. 2016, 26, 391–406. [Google Scholar] [CrossRef] [Green Version]
  16. Kingsford, C. CMSC 451: Max-Flow Extensions Circulations with Demands; University of Maryland: College Park, MD, USA, 2017. [Google Scholar]
  17. Agustini, R.A.; Chaerani, D.; Hertini, E. Adjustable robust counterpart optimization model for maximum flow problems with box uncertainty. World Sci. News 2020, 141, 91–102. [Google Scholar]
  18. Chaerani, D.; Setiawan, H.; Kartiwa, A. Penyelesaian Metode Dekomposisi Benders pada Model Optimisasi Robust Masalah Mixed Integer Linear Programming Dua Tahap yang melibatkan Variabel Recourse. J. Mat. Integr. 2020, 16, 19–28. [Google Scholar]
  19. Tokopedia. Pencarian Produk Skincare Merek ‘Emina’ di Kota Bandung. Available online: https://www.tokopedia.com/search?fcity=165&srp_component_id=02.01.00.00&st=product&q=emina (accessed on 15 June 2022).
  20. What is Secondary Data? + [Examples, Sources, & Analysis]. Available online: https://www.formpl.us/blog/secondary-data#:~:text=Secondary%20data%20is%20the%20data,been%20collected%20in%20the%20past (accessed on 19 October 2022).
  21. Tokopedia. Pencarian Produk Skincare Merek ‘Emina’ di Berbagai Kota. Available online: https://www.tokopedia.com/search?st=product&q=emina&srp_component_id=01.07.00.00 (accessed on 22 June 2022).
Figure 1. PRISMA flowchart of ISOP model.
Figure 1. PRISMA flowchart of ISOP model.
Computation 11 00037 g001
Figure 2. Network illustration of ISOP as MFP-CD.
Figure 2. Network illustration of ISOP as MFP-CD.
Computation 11 00037 g002
Figure 3. Benders decomposition algorithm flowchart [12].
Figure 3. Benders decomposition algorithm flowchart [12].
Computation 11 00037 g003
Table 1. State of the art for ISOP.
Table 1. State of the art for ISOP.
ResearchOptimization MethodsBenders Decomposition Method
Blazewicz et al. [5], 2010Minimizing costsNo
Lopez-Loces et al. [15], 2016Integer linear programmingNo
Chung [9], 2017Multi-objective optimization, Pareto setNo
Chaerani et al. [4], 2021Adjustable robust counterpart optimizationNo
Table 2. Rules for constructing dual problem.
Table 2. Rules for constructing dual problem.
Primal ProblemDual Problem
Objective function min c T x max b T y
Variable x i 0 i th constraint : A i T y c i
Variable x i free i th constraint : A i T y = c i
Constraint A i x = b j j th variable free
Constraint A i x b j j th variable : y j 0
Technology coefficient A A T
Right side b c
Cost coefficient c b
Table 3. Rules for constructing dual problems.
Table 3. Rules for constructing dual problems.
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Product 14243.54040.743.246.5
Product 215.51414.512.713.916.5
Product 320.9211817.819.322.5
Product 421.521.519.520.320.724.5
Product 5323127.527.629.735
Shipping cost ( f j )10131311108
Delivery time ( d i j )2 days1 day1 day2 days2 days3 days
Table 4. Numerical solution results of the initial master (products).
Table 4. Numerical solution results of the initial master (products).
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Product 1000100
Product 2000100
Product 3000100
Product 4000100
Product 5000100
Table 5. Numerical solution results of the initial master (shops).
Table 5. Numerical solution results of the initial master (shops).
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Shipping cost indicator000100
Delivery time211223
Table 6. The result of numerical solution (products).
Table 6. The result of numerical solution (products).
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Product 1000100
Product 2000100
Product 3000100
Product 4000100
Product 5000100
Table 7. The result of numerical solution (shops).
Table 7. The result of numerical solution (shops).
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Shipping cost indicator000100
Delivery time211223
Table 8. Skincare sales data on Tokopedia.
Table 8. Skincare sales data on Tokopedia.
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Product 13842.135.337.637.239.5
Product 212.415.216.512.312.913.5
Product 318.219.919.218.418.519.9
Product 417.520.32317.217.418.5
Product 525.528.927.627.62428.5
Shipping cost ( f j )9101015915
Delivery time ( d i j )2 days3 days3 days4 days3 days4 days
Table 9. Numerical solution results of the initial master (products).
Table 9. Numerical solution results of the initial master (products).
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Product 1000010
Product 2000010
Product 3000010
Product 4000010
Product 5000010
Table 10. Numerical solution results of the initial master (shops).
Table 10. Numerical solution results of the initial master (shops).
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Shipping cost indicator000010
Delivery time211223
Table 11. The result of numerical solution (products).
Table 11. The result of numerical solution (products).
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Product 1000010
Product 2000010
Product 3000010
Product 4000010
Product 5000010
Table 12. The result of numerical solution (shops).
Table 12. The result of numerical solution (shops).
Shop 1Shop 2Shop 3Shop 4Shop 5Shop 6
Shipping cost indicator000010
Delivery time211223
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Chaerani, D.; Saksmilena, S.; Irmansyah, A.Z.; Hertini, E.; Rusyaman, E.; Paulus, E. Benders Decomposition Method on Adjustable Robust Counterpart Optimization Model for Internet Shopping Online Problem. Computation 2023, 11, 37. https://doi.org/10.3390/computation11020037

AMA Style

Chaerani D, Saksmilena S, Irmansyah AZ, Hertini E, Rusyaman E, Paulus E. Benders Decomposition Method on Adjustable Robust Counterpart Optimization Model for Internet Shopping Online Problem. Computation. 2023; 11(2):37. https://doi.org/10.3390/computation11020037

Chicago/Turabian Style

Chaerani, Diah, Shenya Saksmilena, Athaya Zahrani Irmansyah, Elis Hertini, Endang Rusyaman, and Erick Paulus. 2023. "Benders Decomposition Method on Adjustable Robust Counterpart Optimization Model for Internet Shopping Online Problem" Computation 11, no. 2: 37. https://doi.org/10.3390/computation11020037

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop