Multidimensional Dynamic Programming Algorithm for -Level Batching with Hierarchical Clustering Structure
Hindawi
Mathematical Problems in Engineering
Volume 2017, Article ID 6021708, 12 pages
https://doi.org/10.1155/2017/6021708
Research Article
Multidimensional Dynamic Programming Algorithm for
𝑁-Level Batching with Hierarchical Clustering Structure
Seung-Kil Lim,1 June-Young Bang,1 and Jae-Gon Kim2
1
Department of Industrial and Management Engineering, Sungkyul University, 400-10 Anyang-dong, Manan-gu, Anyang-si,
Gyeonggi-do 14097, Republic of Korea
2
Department of Industrial and Management Engineering, Incheon National University, 12-1 Songdo-dong, Yeonsu-gu,
Incheon 22012, Republic of Korea
Correspondence should be addressed to Jae-Gon Kim;
Received 23 December 2016; Revised 3 March 2017; Accepted 6 March 2017; Published 11 April 2017
Academic Editor: Sergii V. Kavun
Copyright © 2017 Seung-Kil Lim et al. This is an open access article distributed under the Creative Commons Attribution License,
which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
This study focuses on the 𝑁-level batching problem with a hierarchical clustering structure. Clustering is the task of grouping a set
of item types in such a way that item types in the same cluster are more similar (in some sense or another) to each other than to
those in other clusters. In hierarchical clustering structure, more and more different item types are clustered together as the level
of the hierarchy increases. 𝑁-level batching is the process by which items with different types are grouped into several batches
passed from level 1 to level 𝑁 sequentially for given hierarchical clustering structure such that batches in each level should satisfy
the maximum and minimum batch size requirements of the level. We consider two types of processing costs of the batches: unit
processing cost and batch processing cost. We formulate the 𝑁-level batching problem with a hierarchical clustering structure as a
nonlinear integer programming model with the objective of minimizing the total processing cost. To solve the problem optimally,
we propose a multidimensional dynamic programming algorithm with an example.
1. Introduction
According to Wikipedia, clustering problem is the task of
grouping a set of item types in such a way that item types
in the same cluster are more similar (in some sense or
another) to each other than to those in other clusters. It is
the main task of exploratory data mining and a common
technique for statistical data analysis, used in many fields,
including machine learning, pattern recognition, image analysis, information retrieval, bioinformatics, data compression,
and computer graphics. Hierarchical clustering (also called
hierarchical cluster analysis or HCA) is a method of cluster
analysis which seeks to build a hierarchy of clusters. Strategies
for hierarchical clustering generally fall into two types:
agglomerative clustering and divisive one. Agglomerative
clustering is a bottom-up approach: that is, each observation
starts in its own cluster, and pairs of clusters are merged as one
moves up the hierarchy. To the contrary, divisive clustering
is a top-down approach: that is, all observations start in one
cluster, and splits are performed recursively as one moves
down the hierarchy. In general, the merges and splits are
determined in a greedy manner. The results of hierarchical
clustering are usually presented in a dendrogram.
The hierarchical clustering problem has been studied
for several decades in a wide range of fields including
manufacturing, biotechnology, information technology (IT),
logistics and transportation, financial, and postal industries.
In the manufacturing sector, hierarchical clustering has been
used to form manufacturing cells and processing batches.
Vakharia and Wemmerlöv [1] investigated the performance
of seven hierarchical agglomerative clustering techniques and
eight dissimilarity measures in the context of cell formation
in the cellular manufacturing system. Chen et al. [2] proposed
a constrained agglomerative clustering algorithm for the
single batch processing machine scheduling problem often
encountered in semiconductor manufacturing and metal
heat treatment. Hierarchical clustering is one of the most
commonly used methods in biotechnology for classification.
Cheng et al. [3] suggested hierarchical model-based clustering of DNA sequences by upgrading Bayesian model-based
2
clustering. Cameron et al. [4] proposed hierarchical clustering of gene expression patterns consistent with the lineage
of differentiating excitatory neurons during early neocortical
development. Saunders et al. [5] used Markov clustering
and hierarchical clustering to classify protein families of rust
pathogens and rank them according to their likelihood of
being effectors. Barzinpour et al. [6] proposed a spectral
approach to community detection, where the multiplex is
mapped onto Euclidean Space (using the top few eigenvectors) and applied 𝑘-mean clustering. See Andreopoulos et
al. [7] for a review of the clustering algorithms applied in
bioinformatics.
Clustering is one of the most important techniques for
image segmentation and data analytics in the IT industry.
Arifin and Asano [8] presented a histogram thresholding algorithm using hierarchical cluster analysis for image
segmentation. Nunez-Iglesias et al. [9] proposed an active
machine learning approach for performing hierarchical
agglomerative clustering from superpixels to improve segmentation of 2D and 3D images. See Zaitoun and Aqel [10]
for a survey of image segmentation techniques. In relation
to data analytics, Bouguettaya et al. [11] proposed a set of
agglomerative hierarchical clustering methods, and Costa et
al. [12] proposed a hierarchical approach for clustering XML
documents with multiple forms of structural components.
Hierarchical clustering also has been successfully applied to
the logistics and transportation sector. Özdamar and Demir
[13] proposed a multilevel clustering algorithm that groups
demand nodes into smaller clusters at each planning level
for coordinating vehicle routing in large-scale postdisaster
distribution and evacuation activities. Zhu and Guo [14]
extended the traditional hierarchical clustering method by
generalizing flows to different hierarchical levels to aggregate
and map large taxi flow data in an urban area. The hierarchical
clustering problem arises in the postal industry as well.
Lim et al. [15] studied the three-level presorting loading
problem which occurs in the commercial bulk mail service.
They considered the problem as a three-level hierarchical
clustering problem and proposed an optimal solution algorithm. For the financial sector application, Aghabozorgi and
Teh [16] suggested a novel three-phase clustering model to
categorize companies based on the similarity in the shape of
their stock markets. See Murtagh and Contreras [17] for an
extensive survey on the agglomerative hierarchical clustering
algorithms.
In this st (...truncated)