You are on page 1of 13

The International Journal of Advanced Manufacturing Technology (2019) 103:1721–1733

https://doi.org/10.1007/s00170-019-03691-5

ORIGINAL ARTICLE

An advanced IoT system for assisting ubiquitous manufacturing


with 3D printing
Toly Chen 1 & Yu-Cheng Wang 2

Received: 30 January 2019 / Accepted: 31 March 2019 / Published online: 10 April 2019
# Springer-Verlag London Ltd., part of Springer Nature 2019

Abstract
An advanced Internet-of-things (IoT) system for assisting ubiquitous manufacturing with three-dimensional (3D) printing was
designed. The system receives orders from customers on the move online and then distributes the required pieces to nearby 3D
printing facilities. After the printing is completed, a freight truck visits the printing facilities sequentially to collect the printed
pieces. To minimize the cycle time for delivering the order, an optimization approach that combines workload balancing and
finding the shortest delivery path was proposed in this study. However, the optimization problem remained difficult; to solve this,
an algorithm was developed. The effectiveness of the proposed methodology was assessed through an experiment conducted in
Taichung City, Taiwan. According to the experimental results, the proposed methodology outperforms two existing methods by
reducing the cycle times by an average of 33%. It also successfully balances the workloads of the 3D printing facilities,
incentivizing these facilities to join the system.

Keywords Ubiquitous manufacturing . 3D printing . Cycle time . Internet of things

1 Introduction major research trend is to increase the number of types or


suitability of materials that supports the printing of a specific
Three-dimensional (3D) printing mainly refers to additive 3D object [8]. Another focus is on how to improve the qual-
fabrication—a continual, incremental process that stacks ity of a printed item [9, 10].
layers of materials under computer control [1–3]. A 3D printer is easy and cheap to acquire, and the 3D model
Traditionally, 3D printing is applied to prototyping. of a product can be transmitted through the Internet. For these
However, some recent attempts have shown that it can also reasons, Chen and Tsai [6] asserted that 3D printing can contrib-
support mass customization [4, 5] and mass production [6]. ute to ubiquitous manufacturing; that is, a product can be
There are various types of 3D printing technologies, such as manufactured anywhere and at any time by using 3D printing.
stereolithography (SLA), selective laser sintering (SLS), Advances in computer and communication technologies
fused deposition modeling (FDM), laminated object have contributed to the rapid development of interactive sys-
manufacturing (LOM), inkjet printing techniques, and others tems for modeling, simulating, and even prototyping 3D ob-
[7] that are suitable for applications in different fields. A jects [11]. A ubiquitous manufacturing system is an interactive
system aimed at serving ubiquitous customers. In this study,
an advanced Internet-of-things (IoT) system for assisting
* Yu-Cheng Wang ubiquitous manufacturing [12, 13] with 3D printing was de-
tony.cobra@msa.hinet.net signed. In the proposed methodology, each customer uses a
Toly Chen
smartphone to place an order of 3D objects. The customer’s
tolychen@ms37.hinet.net location is detected using the global positioning system (GPS)
module on the smartphone. Then, the customer’s location and
1
Department of Industrial Engineering and Management, National order content are transmitted to the system server. In theory,
Chiao Tung University, 1001, University Road, the system server can be placed anywhere, or even outside the
Hsinchu 300, Taiwan, Republic of China
IoT system service area. The system server distributes the
2
Department of Industrial Engineering and Management, Chaoyang required pieces to the 3D printing facilities. Finally, a freight
University of Technology, 168, Jifeng E. Rd., Wufeng District,
Taichung 41349, Taiwan, Republic of China
truck visits 3D printing facilities to pick up the printed pieces.
1722 Int J Adv Manuf Technol (2019) 103:1721–1733

Fig. 1 The organization of this Section 1 Section 2 Section 3 Section 4


study Introduction Methodology Experiment Conclusions

A review on 3D-printing Experimental details:


based manufacturing Area, 3DP facilities,
Important findings
location-aware service customers, orders, etc.
Section 2.1
Two important issues Workload Balancing
found: Application of the Future research
Workload balancing & proposed methodology directions
Section 2.2
transportation planning Transportation
Planning
Comparison with
existing methods

The novelty of the proposed methodology lies in the following delivery path, are simultaneously addressed in the pro-
four aspects: posed methodology. In Lee and Ueng [15], the

(1) Ubiquitous manufacturing systems are not easy to estab-


lish using the existing manufacturing technologies be- A customer places an
cause most machines, unlike 3D printers, are dedicated order online
to specific products.
(2) Incorporating e-commerce into 3D printing has been
studied by a few researchers (e.g., [14]). However, incor- Detect the customer’s
porating mobile commerce into 3D printing has been location
limitedly investigated. The proposed methodology ad-
dresses this problem.
(3) Recent studies, such as that by Chen and Lin [4], have tried
Receive and record the
order and the
to identify nearby 3D printing facilities that can print 3D
customer’s location
objects in a just-in-time manner for customers on the move.
However, these methods do not support mass production.
(4) Two common challenges, namely balancing the work- Sense the availability
loads of 3D printing facilities and identifying the shortest of each 3D printing
facility

Search for nearby and


available 3D printing
facilities

Distribute the required


pieces to the 3D
printing facilities

Each 3D printing
facility prints the
assigned pieces

Pick up the pieces


printed by all 3D
System printing facilities
Server
Deliver the order to the
customer
Internet
Fig. 3 The operational procedure of the advanced IoT system for
Fig. 2 The advanced IoT system as an internet of 3D printers assisting ubiquitous manufacturing
Int J Adv Manuf Technol (2019) 103:1721–1733 1723

Table 1 Possible statuses of a 3D printer optimization problems and the algorithm that helps solve the
Status no. Status optimization problems. Section 3 details the experiment for
assessing the effectiveness of the proposed methodology, and
1 The 3D printer has not been initialized compares the results with those obtained using the existing
2 The 3D printer is ready methods. Finally, Section 4 concludes this study and provides
3 The computer is sending/spooling a job to the 3D printer some directions for future investigation.
4 The extruder is heating
5 3D printing is in progress
6 3D printing has stopped
2 The proposed methodology

workloads of multiple freight trucks were balanced. The The flowchart in Fig. 1 helps to clarify the organization of
shortest paths for the freight trucks to several facilities this study.
were also identified. Both objectives belonged to the An advanced IoT system for assisting ubiquitous
freight trucks and were simultaneously optimized by manufacturing with 3D printing was established in this study.
solving an integer programming (IP) problem. Zhu The advanced IoT system is an internet of 3D printers that
et al. [16] distributed tasks among multiple autonomous connect to each other on the Internet through an intermediate
underwater vehicles (AUVs) to balance the workloads. system server [17], as illustrated in Fig. 2.
To this end, a self-organizing map (SOM) neural network The operational procedure of this system is illustrated in
was constructed. Then, they proposed the velocity syn- Fig. 3 and described as follows:
thesis approach to plan the shortest path for each AUV.
Although both objectives belonged to AUVs, the two (1) A customer places an order of products that can be
objectives were optimized sequentially. In contrast, in printed in 3D online with a smartphone.
this study, workload balancing and the shortest delivery (2) The customer’s location is detected using the GPS mod-
path are the objectives of 3D printing facilities and the ule on the smartphone.
freight truck, respectively. In addition, the two objectives (3) Then, the content of the order as well as the customer’s
influence each other and cannot be separated. detected location are transmitted to the system server.
(4) The availability of each 3D printing facility, including the
The rest of the paper is organized as follows: Section 2 status of a 3D printer (Table 1) and the remaining printing
introduces the proposed methodology, including the time, is sensed and transmitted to the system server.

Table 2 Differences between the proposed methodology and existing methods

Method Supporting Makespan Finding the shortest delivery Considering Simultaneous optimization
mass minimization path uncertainty
production

The No No No No No
distributed-to-the-nearest--
facilities method
Chen and Wu [18] No No Globally optimized (using No No
mixed-integer quadratic
programming)
Fang et al. [19] Yes No No No No
Zhong et al. [20] Yes Yes No No No
Chen and Lin [4] No Yes Locally optimized (using Yes No
Google maps)
Lin and Chen [21] No Yes Locally optimized (using No No
Google maps)
The proposed methodology Yes Yes Globally optimized (using No Globally optimized (using
mixed-integer quadratic mixed-integer quadratic
programming) programming + branch & bound)
1724 Int J Adv Manuf Technol (2019) 103:1721–1733

Fig. 4 B&B algorithm * *


Initialize: Incumbent := ∞; LB( P0 ) := max( Z1 -rlx( P0 ), Z 2 -rlx( P0 )); Live := {( P0 , LB( P0
))}
Repeat until Live =
Select the node P from Live to be processed; Live := Live \ {P};
Branch on P generating P1 , ..., Pk ;

For 1 ≤ l ≤ k do
* *
Bound Pl : LB( Pl ) := max( Z1 -rlx( Pl ), Z 2 -rlx( Pl ));

If LB( Pl ) = f(X) for a feasible solution X and f(X) < Incumbent then

Incumbent := f(X); Solution := X;


go to EndBound;
If LB( Pl ) ≥ Incumbent then fathom Pl

else Live := Live {( Pl , LB( Pl ))}

EndBound;
OptimalSolution := Solution; OptimumValue := Incumbent

(5) After receiving all of this information, the system server (7) After printing, a freight truck visits each 3D printing
searches the system database for 3D printing facilities that facility sequentially to pick up the printed pieces and
are not only available but also located close to the customer. deliver them to the customer.
(6) The required pieces are distributed among the 3D print-
ing facilities.
The differences between the proposed methodology and
some existing methods are listed in Table 2.

2.1 Balancing the workloads on the 3D printing


facilities

Balancing the workloads of 3D printing facilities helps avoid


the starvation or congestion of a particular 3D printing facility.
To this end, the number of pieces that are sent for printing at
each 3D printing facility was determined as follows:
Min Z 1 ¼ max ðai þ ni pi Þ ð1Þ
i

subject to
m
∑ ni ¼ N ð2Þ
i¼1

ni ∈Z þ ∪f0g; i ¼ 1∼m ð3Þ

where Z1 is the cycle time for completing the order, ai is the


available time of the ith 3D printing facility, i = 1~m, ni is the
number of pieces to be printed at the ith 3D printing facility, and
pi is the time required to print a piece in the ith 3D printing
facility. In theory, the number of feasible solutions is countable
Fig. 5 Experimental region as (N + 1)m, which grows rapidly as the number of printing
Int J Adv Manuf Technol (2019) 103:1721–1733 1725

Table 3 Details about the 3D


printing facilities 3D printing facility Location (latitude, longitude) Products or services provided

A (24.182927, 120.647053) • 3D figure design


• 3D printing service
B (24.209775, 120.618585) • 3D printer
•3D scanner
• 3 D printing service
C (24.137893, 120.682739) • 3D printing service
D (24.246608, 120.697008) • 3D modeling
• 3D printing service
E (24.170409, 120.662192) • 3D printer
•3D scanner
• 3D printing service
• 3D reversed engineering
F (24.156303, 120.659433) • 3D modeling
3D printing service

facilities increases. Only the 3D printing facilities located close to subject to


the customer were considered. The objective function minimized
ri ≥ X Oi ðt þ d Oi Þ; i ¼ 1∼m ð6Þ
the maximal completion time (i.e., the makespan), which can be
m
replaced with the following constraints:
∑ X Oi ¼ 1 ð7Þ
i¼1
Z 1 ≥ ai þ ni pi ; i ¼ 1∼m: ð4Þ 
ri ≥ X ji r j þ d ji ; i; j ¼ 1∼m; j≠i ð8Þ
In total, there were N pieces to be printed. This model is a 
mixed integer linear programming (MILP) problem that is r j ≥ X ij ri þ d ij ; i; j ¼ 1∼m; j≠i ð9Þ
NP-hard. The simplest way to solve this type of problem is X ij þ X ji ≤ 1; i; j ¼ 1∼m; j≠i ð10Þ
to remove the integer assumption and then solve it as a linear
X Oi þ ∑ X ji ¼ 1; i ¼ 1∼m ð11Þ
programming (LP) problem (also known as the LP relaxation). j≠i
The optimal solution to the LP relaxation is then rounded to
X iO þ ∑ X ij ¼ 1; i ¼ 1∼m ð12Þ
the nearest integer [22]; alternatively, a branch-and-bound j≠i
(B&B) algorithm can be used to facilitate a systematic search
Z 2 ≥ X iO ðri þ d iO Þ; i ¼ 1∼m ð13Þ
for the global optimal solution.
m
∑ X iO ¼ 1 ð14Þ
i¼1
2.2 Planning the shortest delivery path
X Oi ; X iO ; X ij ∈f0; 1g; i; j ¼ 1∼m; j≠i ð15Þ
Determining the shortest path that can be traveled to visit the 3D
printing facilities that print at least one piece and collect the where r(i) is the arrival time at the ith 3D printing facility; O
printed pieces was calculated using the following formula: indicates the start location as well as the destination; t is the
current time; dOi is the distance between O and the 3D printing
Min Z 2 ð5Þ facility i; and dij is the distance between 3D printing facilities i
and j, which is set to the length of the shortest path between them.
Table 4 Distance matrix (unit: min)
If two pieces are made by the same 3D printing facility, then i = j
and dij = 0. XOi = 1 if the freight truck goes from O to 3D printing
3D printing facility A B C D E F facility j; otherwise, XOi = 0. Similarly, if the freight truck goes
from 3D printing facility i to 3D printing facility j, Xii = 1; oth-
A 0 13 26 18 13 16
erwise, Xii = 0. Moreover, obviously,
B 13 0 29 18 16 19
C 26 29 0 34 20 11 d ij ¼ d ji : ð16Þ
D 18 18 34 0 23 20
E 13 16 20 23 0 7 The objective function minimized the length of the delivery
F 16 19 11 20 7 0 path [23–25]. Constraints (6) and (7) request that the freight truck
began from O and move toward one of the 3D printing facilities.
1726 Int J Adv Manuf Technol (2019) 103:1721–1733

Table 5 Customers’ locations


and order details Customer no. Detected location (latitude, longitude) Time Item Quantity

1 (24.341994, 120.621749) 2017/7/9 09:24 AF-OP-032 3


2 (24.305049, 120.710761) 2017/7/9 10:13 AF-OP-007 2
3 (24.176088, 120.883106) 2017/7/9 11:27 AF-OP-014 2
4 (24.226762, 120.579322) 2017/7/9 12:35 AF-OP-007 5
5 (24.255779, 120.741556) 2017/7/9 13:31 AF-OP-020 2
6 (24.144924, 120.730244) 2017/7/9 15:37 AF-OP-019 4
7 (24.072015, 120.643963) 2017/7/9 16:08 AF-OP-014 4
8 (24.192493, 120.545827) 2017/7/9 16:47 AF-OP-014 3
9 (24.265551, 120.574647) 2017/7/9 16:49 AF-OP-009 2
10 (24.189488, 120.812462) 2017/7/9 18:15 AF-OP-028 3

m
Constraints (8) to (10) show the two possible directions of mov- ∑ X Oi ¼ 1 ð19Þ
ing between 3D printing facilities i and j. The distance between i¼1

two 3D printing facilities dji is expressed in terms of the required ci ¼ ai þ ni pi ; i ¼ 1∼m ð20Þ
transportation time, and therefore can be added up with the ar- m
rival time rj. Constraints (11) and (12) request that a 3D printing ∑ ni ¼ N ð21Þ
i¼1
facility be visited once. Then, the freight truck continues to one of
the other 3D printing facilities and finally returns to O as required l i ≥ ri ; i ¼ 1∼m ð22Þ
by constraint (13). l i ≥ ci ; i ¼ 1∼m ð23Þ
This model is a mixed-integer quadratic programming 
(MIQP) problem that is NP-hard [26]. Relaxing the integer var- ri ≥ X ji l j þ d ji ; i; j ¼ 1∼m; j≠i ð24Þ

iables leads to a quadratic programming (QP) problem, which is r j ≥ X ij l i þ d ij ; i; j ¼ 1∼m; j≠i ð25Þ
not only slightly easier but also NP-hard if the constraints are not
convex. Another B&B algorithm can be used to help find the X ij þ X ji ≤ 1; i; j ¼ 1∼m; j≠i ð26Þ
global optimal solution. In contrast, Chen and Lin [27] applied X Oi þ ∑ X ji ≤ 1; i ¼ 1∼m ð27Þ
j≠i
Google maps to achieve the same purpose.
X Oi þ ∑ X ji ≥ 0þ ni ; i ¼ 1∼m ð28Þ
j≠i
2.3 The optimization problem X iO þ ∑ X ij ¼ X Oi þ ∑ X ji ; i ¼ 1∼m ð29Þ
j≠i j≠i
The two previous models were then merged as follows: m
Z 3 ¼ ∑ X iO ðl i þ d iO Þ; i ¼ 1∼m ð30Þ
Min Z 3 ð17Þ i¼1
m
subject to ∑ X iO ¼ 1 ð31Þ
i¼1
ri ≥ X Oi ðt þ d Oi Þ; i ¼ 1∼m ð18Þ X Oi ; X iO ; X ij ∈f0; 1g; i; j ¼ 1∼m; j≠i ð32Þ

Table 6 Time required for printing one piece of each item (unit: min) Table 7 Distance from a customer to each 3D printing facility (unit:
min)
Item 3D printing facility
3D printing facility Customer no.
A B C D E F
1 2 3 4 5 6 7 8 9 10
AF-OP-007 88 88 71 88 71 71
AF-OP-009 122 122 98 122 98 98 A 32 25 56 26 29 24 22 27 30 36
AF-OP-014 82 82 62 82 62 62 B 27 23 56 22 27 25 25 20 18 36
AF-OP-019 92 92 72 92 72 72 C 47 39 61 39 37 13 23 35 42 40
AF-OP-020 110 110 85 110 85 85 D 20 13 47 29 16 28 31 29 21 39
AF-OP-028 119 119 97 119 97 97 E 35 27 58 29 30 19 27 30 33 37
AF-OP-032 104 104 78 104 78 78 F 38 29 63 29 32 19 25 29 32 43
Int J Adv Manuf Technol (2019) 103:1721–1733 1727

Fig. 6 MILP model (customer 1) min=Z1;

Z1>=0+n1*104;

...

Z1>=0+n6*78;

n1+n2+n3+n4+n5+n6=3;

@gin(n1);...;@gin(n6);

ni ∈Z þ ∪f0g ð33Þ of the required transportation time, and therefore can be added up
with the leaving time li. This model is also a MIQP problem.
where ci is the completion time at the ith 3D printing facility and
li is the time when the freight truck leaves the ith 3D printing
facility. Constraint (28) forces the freight truck to visit a 3D 2.4 B&B algorithm
printing facility that prints at least one piece, and 0+ is a very
small positive value. In Eq. (30), the distance between a 3D The following properties are useful for proposing a B&B algo-
printing facility and the start location diO is expressed in terms rithm for this problem.

Fig. 7 MIQP model (customer 1) min=Z2;

r3>=XO3*0+XO3*47;

...

r6>=XO6*0+XO6*38;

XO3+XO5+XO6=1;

r3>=X53*r5+X53*20;

r5>=X35*r3+X35*20;

X35+X53<=1;

...

r5>=X65*r6+X65*7;

r6>=X56*r5+X56*7;

X56+X65<=1;

XO3+X53+X63=1;

...

XO6+X56+X36=1;

X3O+X35+X36=1;

...

X6O+X63+X65=1;

Z2>=X3O*r3+X3O*47;

...

Z2>=X6O*r6+X6O*38;

X3O+X5O+X6O=1;

@bin(X35);...;@bin(X65);

@bin(X3O);...;@bin(X6O);@bin(XO3);...;@bin(XO6);
1728 Int J Adv Manuf Technol (2019) 103:1721–1733

Table 8 Production plan for


customer 1 Time Event

2017/7/9 • The order was received


09:24 • 3D printing facilities C, E, and F started to print the required items
• The freight truck left the start location and began traveling to 3D printing facility C
2017/7/9 • The freight truck arrived at 3D printing facility C
10:11
2017/7/9 • 3D printing facility C printed 1 item
10:42 • The freight truck picked up the item printed by 3D printing facility C, and moved to 3D
printing facility F
• 3D printing facility E printed 1 item
•3D printing facility F printed 1 item
2017/7/9 • The freight truck arrived at 3D printing facility F, picked up the printed item, and moved to 3D
10:53 printing facility E
2017/7/9 • The freight truck arrived at 3D printing facility E, picked up the printed item, and began
11:00 traveling back to the start location
2017/7/9 • The freight truck arrived at the start location
11:35

Property 1 After receiving this information, the system server searched


the system database for nearby 3D printing facilities to print
Both Z *1 and Z *2 serve as lower bounds on Z *3 . the order collaboratively.
There were six 3D printing facilities in the experimental
Property 2 region, and details about the facilities are presented in
Table 3. The distance between any two 3D printing facili-
The optimal objective function value of the LP relaxation ties, in terms of the required travel time, was estimated
of the MILP model, indicated by Z *1 -rlx, serves as a lower using Google Maps. The results formed a distance matrix,
bound on Z *3 . which is revealed in Table 4. At the beginning of the ex-
periment, all six 3D printing facilities were available.
Property 3 Ten customers were recruited to participate in the exper-
iment; their detected locations and order details are re-
The optimal objective function value of the QP relaxation vealed in Table 5. The time required for printing one piece
of the first MIQP model, indicated by Z *2 -rlx, serves as a of each item is shown in Table 6. The distance from a
customer to each 3D printing facility was also estimated
lower bound on Z *3 .
using Google Maps, and the results are summarized in
Based on these properties, the B&B algorithm shown in
Table 7. All the required details have been provided for
Fig. 4 was proposed to search for the global optimal solution
ensuring repeatability.
to the optimization problem.
The first customer is taken as an example. The MILP
In contrast, Chen and Lin [27] proposed a heuristic to find a
model for distributing the required pieces among the 3D
locally optimal solution.
printing facilities was coded using Lingo, and is shown in
Fig. 6. The optimal solution was {ni} = {0, 0, 1, 0, 1, 1}
and the optimal objective function value was Z *1 ¼ 78. In
3 Experiment other words, the required pieces could be finished in
78 min through the collaboration of 3D printing facilities
To assess the effectiveness of the proposed methodology, an C, E, and F.
experiment was conducted in Taichung City, Taiwan, in an Subsequently, the MIQP model for finding the shortest deliv-
area of approximately 26 km2 (Fig. 5). During the experiment, ery path around the three 3D printing facilities was coded (again
each customer placed an order through a smartphone. The using Lingo) and is shown in Fig. 7. The shortest delivery path
customer’s location was detected using the GPS module on was O (start location) → C → F → E → O, and the optimal ob-
the smartphone. Then, the customer’s order and detected lo- jective function value was Z *2 ¼ 100. The results of the two
cation were transmitted to the system server. The system serv- models were then combined to form the production plan
er is located in a lab of a university in the experimental region. (Table 8). Notably, the cycle time required for fulfilling the order
Int J Adv Manuf Technol (2019) 103:1721–1733 1729

Fig. 8 Optimization model min=Z3;


(customer 1)
r1>=XO1*0+XO1*32;

...

r3>=XO3*0+XO3*47;

XO1+XO2+XO3+XO4+XO5+XO6=1;

n1+n2+n3+n4+n5+n6=3;

l1>=r1;

l1>=0+n1*104;

...

l6>=r6;

l6>=0+n6*78;

r1>=X21*l2+X21*13;

r2>=X12*l1+X12*13;

X12+X21<=1;

...

r5>=X65*l6+X65*7;

r6>=X56*l5+X56*7;

X56+X65<=1;

XO1+X21+X31+X41+X51+X61<=1;

...

XO6+X16+X26+X36+X46+X56<=1;

XO1+X21+X31+X41+X51+X61>=0.01*n1;

...

XO6+X16+X26+X36+X46+X56>=0.01*n6;

X1O+X12+X13+X14+X15+X16=XO1+X21+X31+X41+X51+X61;

...

X6O+X61+X62+X63+X64+X65=XO6+X16+X26+X36+X46+X56;

Z3=X1O*l1+X1O*32+X2O*l2+X2O*27+X3O*l3+X3O*47+X4O*l4+X4O*20+X5O*l5+X5O*35+X6
O*l6+X6O*38;

X1O+X2O+X3O+X4O+X5O+X6O=1;

@bin(XO1);...;@bin(XO6);@bin(X1O);...;@bin(X6O);@bin(X12);...;@bin(X65);

@gin(n1);...;@gin(n6);

was 2017/7/9 11:35–2017/7/9 09:24 = 131 (min), which was (1) The optimization objective function value was Z *3 ¼ 125
greater than Z *1 or Z *2 but much less than Z *1 þ Z *2 . This result when {ni} = {0, 0, 0, 1, 1, 1} and the delivery path was O
highlights the benefits of shortening the cycle time through the (start location) → E → F → D → O.
collaboration of the three 3D printing facilities. (2) After enumerating all potentially feasible solutions to
The optimization model is presented in Fig. 8. Because make a comparison, the solution obtained using the pro-
Lingo did not return a good solution, even with considerable posed B&B algorithm was determined to be the global
time, the proposed B&B algorithm was applied instead: optimal solution.
1730 Int J Adv Manuf Technol (2019) 103:1721–1733

Table 9 Production plan


generated from the aggregate Time Event
optimization model
2017/7/9 •The order was received
09:24 • 3D printing facilities D, E, and F started to print the required items
• The freight truck left the start location and began traveling to 3D printing facility E
2017/7/9 • The freight truck arrived at 3D printing facility E
09:59
2017/7/9 • 3D printing facility E printed 1 item
10:42 •3D printing facility F printed 1 item
• The freight truck picked up the item printed by 3D printing facility E, and moved to 3D printing
facility F
2017/7/9 • The freight truck arrived at 3D printing facility F, picked up the printed item, and moved to 3D
10:49 printing facility D
2017/7/9 • 3D printing facility D printed 1 item
11:08
2017/7/9 • The freight truck arrived at 3D printing facility D, picked up the printed item, and began
11:09 traveling back to the start location
2017/7/9 • The freight truck arrived at the start location
11:29

(3) The performance was substantially enhanced from that (2) The distributed-to-the-fastest-facilities method: The re-
when the two problems were addressed separately. The quired pieces are assigned to the 3D printing facilities
production plan is shown in Table 9, and the total cycle with the shortest processing times. The fastest 3D print-
time was 125 min. ing facility is visited first, followed by the second fastest,
and so on.

The results of applying the proposed methodology to the The results for customers 1–10 when these two methods
other customers are summarized in Table 10. were adopted are summarized in Tables 11 and 12.
For comparison, two existing methods, the distributed-to- Based on the experimental results, the following observa-
the-nearest-facilities method and the distributed-to-the-fastest- tions were made:
facilities method, were also applied to the collected data.
These methods are described as follows: (1) The performance of the three methods, in terms of cycle
times for fulfilling the orders, is compared in Fig. 9, which
(1) The distributed-to-the-nearest-facilities method: The re- shows that the cycle times became shorter after applying the
quired pieces are assigned to the nearest 3D printing proposed methodology. Compared with the two existing
facilities. The nearest 3D printing facility is visited first, methods, the proposed methodology reduced the cycle
followed by the second nearest, and so on. times by an average of 39% and 26%, respectively.

Table 10 Results of applying the proposed methodology to customers Table 11 Results via the distributed-to-the-nearest-facilities method
2–10
Customer no. Optimal delivery path Cycle time (min)
Customer no. Optimal delivery path Cycle time (min)
1 O→D→B→A→O 167.0
2 O→C→A→O 122.0 2 O→D→B→O 183.8
3 O→F→E→O 128.0 3 O→D→A→O 224.4
4 O→C→F→E→A→B→O 137.0 4 O→B→A→D→E→F→O 229.9
5 O→F→D→O 136.0 5 O→D→B→O 269.9
6 O→C→F→E→A→O 127.0 6 O→C→E→F→A→O 139.0
7 O→C→F→E→A→O 120.5 7 O→C→A→B→F→O 200.6
8 O→F→E→B→O 105.0 8 O→B→A→D→O 233.6
9 O→C→D→O 153.0 9 O→B→D→O 284.0
10 O→F→E→A→O 155.0 10 O→A→B→E→O 330.3
Int J Adv Manuf Technol (2019) 103:1721–1733 1731

Table 12 Results via the distributed-to-the-fastest-facilities method summarized in Fig. 11. Obviously, the actual cycle
Customer no. Optimal delivery path Cycle time (min) times were very close to the planned cycle times.
The correlation coefficient (R) between the two series
1 O→C→E→F→O 143.0 of data was up to 0.986.
2 O→C→E→O 146.8
3 O→C→E→O 165.4
4 O→C→E→F→A→B→O 168.9 (5) The proposed methodology was robust because the
5 O→C→E→O 169.9 production plan remained optimal even with a minor
6 O→C→E→F→A→O 139.0 disturbance of the production conditions. Taking the
7 O→C→E→F→A→O 168.6 first customer as an example. According to Table 9,
8 O→C→E→F→O 182.6 even if the printing process at 3D printing facility D
9 O→C→E→O 275.5 failed 27 min after the start of printing, the printing
10 O→C→E→F→O 302.9 process could be re-started at the same 3D printing
facility immediately and the optimal production plan
remained unchanged.

(2) Without considering the availability of the different


3D printing facilities, queues at some 3D printing fa-
cilities formed, which unnecessarily lengthened the
cycle times and worsened the performance of the 4 Conclusions
two existing methods.
(3) For a ubiquitous manufacturing system, it is crucial to Both ubiquitous computing and 3D printing are recent ad-
distribute the workloads among various service pro- vances in information and communication technologies. By
viders or resources. To analyze the occurrence of such combining these two technologies, an advanced IoT system
distribution in the present study, the number of pieces for assisting ubiquitous manufacturing with 3D printing was
printed at each 3D printing facility was counted; the re- designed in this study. First, the advanced IoT system receives
sults are summarized in Fig. 10. In this regard, both the an online order from a customer who is on the move. The
proposed methodology and the distributed-to-the- customer’s location is detected using the GPS unit on the
nearest-facilities method successfully distributed the re- smartphone. The detected location and order details are then
quired pieces among all of the 3D printing facilities. By transmitted to the system server, which distributes the required
contrast, in the distributed-to-the-fastest-facilities meth- pieces to the nearby 3D printing facilities. A freight truck then
od, most of the required pieces were printed by 3D print- visits the 3D printing facilities sequentially to collect the
ing facilities C and E. printed pieces. To minimize the cycle time and ensure a quick
delivery, an optimization problem is formulated and solved
using the proposed B&B algorithm. Thus, the proposed meth-
(4) The actual cycle time for completing each order was odology is able to simultaneously balance the workloads
compared with the planned cycle time to evaluate the among the 3D printing facilities and plan the shortest delivery
correctness of the production plan. The results are path for the freight truck.

Fig. 9 Performance of the three 350


methods
300

250
cycle time (min)

Nearest
200

150 Fastest

100
The proposed
50 methodology

0
0 2 4 6 8 10 12
customer no.
1732 Int J Adv Manuf Technol (2019) 103:1721–1733

Fig. 10 Number of pieces printed 12


at each 3D printing facility

10

no. of pieces
Nearest
6
Fastest
4
The proposed
2 methodology

0
A B C D E F
3D printing facility no.

To assess the effectiveness of the proposed advanced IoT words, the business opportunities faced by expensive
system and compare it with those of some existing methods, 3D printers, such as metal 3D printers, are not neces-
an experiment was conducted. Based on the results, the fol- sarily small. A good metal 3D printer may cost more
lowing conclusions were drawn: than 250K USD [28].

(1) After addressing the two problems simultaneously, the Some directions for future research and development are
proposed methodology was determined to reduce the cy- listed as follows:
cle times considerably.
(2) The proposed methodology was superior to the two ex- (1) In the proposed methodology, the distance between a 3D
amined existing methods in shortening the cycle times by printing facility and the start location or between two 3D
an average of 33%. printing facilities is expressed in terms of the required
(3) The established advanced IoT system successfully dis- transportation time, which is obviously based on the as-
tributed the required pieces among the 3D printing facil- sumption of a constant speed. Such an assumption may
ities, which not only avoided unnecessary waiting but need to be relaxed, and the transportation time will be
also increased the willingness of the facilities to join uncertain. A stochastic or fuzzy production and transpor-
the system. tation model is suitable for dealing with this situation.
(4) With cheaper 3D printers, it is more likely to build a (2) The IoT system established in this study employs a cen-
ubiquitous manufacturing network. However, cheap tralized control mechanism [29]. As a result, orders are
3D printers are easy to acquire. In contrast, customers planned strictly according to the times that the ordered
have to resort to the services of external 3D printing were placed. However, more flexibility can be gained by
facilities for making 3D objects that are more compli- employing a decentralized control mechanism so that the
cated than their 3D printers can process. In other assigned pieces at each 3D printing facility can be

Fig. 11 A comparison of the 180


planned cycle time and actual 160
cycle time
140
cycle time (min)

120
planned
100 cycle time
80
actual cycle
60 time
40
20
0
0 2 4 6 8 10
order #
Int J Adv Manuf Technol (2019) 103:1721–1733 1733

processed in a sequence that favors the local objective of 13. Ryoo I, Sun K, Lee J, Kim S (2018) A 3-dimensional group man-
agement MAC scheme for mobile IoT devices in wireless sensor
the 3D printing facility.
networks. J Ambient Intell Humaniz Comput: 9(4)1223–1234
(3) In addition, an advanced algorithm should be devised to 14. Yoo B, Ko H, Chun S (2016) Prosumption perspectives on additive
solve the optimization problem more efficiently. manufacturing: reconfiguration of consumer products with 3D
(4) Further, it is common for a printing process to be stopped printing. Rapid Prototyp J 22(4):691–705
15. Lee TR, Ueng JH (1999) A study of vehicle routing problems with
at an early stage if the printing result is not satisfactory. In
load-balancing. Int J Phys Distrib Logist Manag 29(10):646–657
such a situation, whether the piece should be reassigned 16. Zhu D, Huang H, Yang SX (2013) Dynamic task assignment and
and how the planning result should be modified are two path planning of multi-AUV system based on an improved self-
questions that have yet to be addressed. organizing map and velocity synthesis method in three-
dimensional underwater workspace. IEEE Trans Cybern 43(2):
(5) Furthermore, a printed piece, or the combination of many
504–514
printed pieces, needs to be put into a box. How to min- 17. Guo L, Qiu J (2018) Combination of cloud manufacturing and 3D
imize the packaging volume is another interesting topic printing: research progress and prospect. Int J Adv Manuf Technol
worth exploring [30]. 96(5–8):1929–1942
18. Chen T, Wu H-C (2013) Finding the just-in-time service location
and path in a ubiquitous service network. Int J Internet Manuf Serv
3(2):137–147
19. Fang J, Huang GQ, Li Z (2013) Event-driven multi-agent ubiqui-
References tous manufacturing execution platform for shop floor work-in-
progress management. Int J Prod Res 51(4):1168–1185
20. Zhong RY, Huang GQ, Lan S, Dai QY, Zhang T, Xu C (2015) A
1. Petersen EE, Pearce J (2017) Emergence of home manufacturing in
two-level advanced production planning and scheduling model for
the developed world: return on investment for open-source 3-D
RFID-enabled ubiquitous manufacturing. Adv Eng Inform 29(4):
printers. Technologies 5:7
799–812
2. Thomas DJ (2018) Developing nanocomposite 3D printing fila- 21. Lin Y-C, Chen T (2017) A ubiquitous manufacturing network sys-
ments for enhanced integrated device fabrication. Int J Adv tem. Robot Comput Integr Manuf 45:157–167
Manuf Technol 95(9–12):4191–4198 22. Karlof JK (2006) Integer programming: theory and practice. CRC
3. Wang YC, Chen T, Yeh YL (2018) Advanced 3D printing technol- Press, Boca Raton
ogies for the aircraft industry: a fuzzy systematic approach for 23. Cherkassky BV, Goldberg AV, Radzik T (1994) Shortest paths al-
assessing the critical factors. Int J Adv Manuf Technol 1–11. gorithms: theory and experimental evaluation. ACM-SIAM
https://doi.org/10.1007/s00170-018-1927-8 Symposium on Discrete Algorithms, p 516–525
4. Chen T, Lin Y-C (2017) Feasibility evaluation and optimization of a 24. Deng Y, Chen Y, Zhang Y, Mahadevan S (2012) Fuzzy Dijkstra
smart manufacturing system based on 3D printing. Int J Intell Syst algorithm for shortest path problem under uncertain environment.
32:394–413 Appl Soft Comput 12:1231–1237
5. Schubert C, Van Langeveld MC, Donoso LA (2014) Innovations in 25. Majumder S, Kar S (2018) Multi-criteria shortest path for rough
3D printing: a 3D overview from optics to organs. Br J Ophthalmol graph. J Ambient Intell Humaniz Comput 9(6):1835–1859
98(2):159–161 26. Dijkstra EW (1959) A note on two problems in connexion with
6. Chen T, Tsai H-R (2017) Ubiquitous manufacturing: current prac- graphs. Numer Math 1:269–271
tices, challenges, and opportunities. Robot Comput Integr Manuf 27. Chen T-CT, Lin YC (2019) A three-dimensional-printing-based ag-
45:126–132 ile and ubiquitous additive manufacturing system. Robot Comput
7. Rengier F, Mehndiratta A, Von Tengg-Kobligk H, Zechmann CM, Integr Manuf 55:88–95
Unterhinninghofen R, Kauczor HU, Giesel FL (2010) 3D printing 28. Cherdo L (2019) The best metal 3D printers in 2019. https://www.
based on imaging data: review of medical applications. Int J aniwaa.com/best-of/3d-printers/best-metal-3d-printer/. Accessed
Comput Assist Radiol Surg 5(4):335–341 21 Mar 2019
8. Chia HN, Wu BM (2015) Recent advances in 3D printing of bio- 29. Chen T, Wang Y-C (2016) Estimating simulation workload in cloud
materials. J Biol Eng 9(1):4 manufacturing using a classifying artificial neural network ensem-
9. Kim H, Lin Y, Tseng TLB (2018) A review on quality control in ble approach. Robot Comput Integr Manuf 38:42–51
additive manufacturing. Rapid Prototyp J 24(3):645–669 30. Xu ML, Gu NB, Xu WW, Li MY, Xue JX, Zhou B (2017)
10. Wu HC, Chen TCT (2018) Quality control issues in 3D-printing Mechanical assembly packing problem using joint constraints. J
manufacturing: a review. Rapid Prototyp J 24(3):607–614 Comput Sci Technol 32(6):1162–1171
11. Xu M, Li M, Xu W, Deng Z, Yang Y, Zhou K (2016) Interactive
mechanism modeling from multi-view images. ACM Trans Graph Publisher’s note Springer Nature remains neutral with regard to jurisdic-
35(6):236 tional claims in published maps and institutional affiliations.
12. Ko E, Kim T, Kim H (2018) Management platform of threats in-
formation in IoT environment. J Ambient Intell Humaniz Comput
9(4):1167–1176

You might also like