Modelling, optimization and decision making techniques in ... - NOPR

8 downloads 243 Views 325KB Size Report
Page 1 ... various techniques of modelling, optimization and decision making intended for designing of ... engineering design optimization, structure-property.
Indian Journal of Fibre & Textile Research Vol. 36, December 2011, pp. 398-409

Modelling, optimization and decision making techniques in designing of functional clothing Abhijit Majumdara & Surya Prakash Singhb a

b

Department of Textile Technology, Department of Management Studies, Indian Institute of Technology, New Delhi 110 016, India and

Anindya Ghosh Government College of Engineering and Textile Technology, Berhampore 742 101, India

Functional clothing are actually engineered textiles as they require to meet the stringent performance characteristics rather than the aesthetic properties. Therefore, the trial and error approach of product design does not seem to be a viable way for functional clothing. It needs more potent approaches of modelling, optimization and decision making so that the design and functional requirements of clothing can be met with acceptable tolerance. This paper provides a brief outline of various techniques of modelling, optimization and decision making intended for designing of functional clothing. In the modelling part, regression and artificial neural network approaches have been discussed with the examples of thermal property and water repellency modelling. Subsequently, linear programming and genetic algorithm techniques have been invoked in the optimization part. Optimization of ultraviolet radiation protective clothing is taken up as a case study. Finally, multi-criteria decision making techniques have been explained with the hypothetical example of selection of best body armour vest for defense applications. Keywords: Artificial neural network, Decision making technique, Functional clothing, Genetic algorithm, Linear programming, Modeling technique, Regression

1 Introduction Functional clothing are flexible materials consisting of a network of natural or synthetic fibres and it is designed to be practically useful rather than attractive. Functional clothing has to fulfill various requirements in terms of strength, modulus, antibacterial activity, moisture management, heat resistance, electromagnetic radiation protection, water repellence and so on, depending on the domain of applications. Functional clothing are commonly used in sports, protection and medical applications. In stark contrast with normal apparels, functional clothing has to fulfill the performance requirements with accuracy and precision. Therefore, material selection, engineering design optimization, structure-property modelling and performance evaluation have to be done systematically so that the clothing meet the requirements. Several materials may be available which can fulfill the specification with different degree of satisfaction. Therefore, choosing the best ______________ a To whom all the correspondence should be addressed. E-mail: [email protected]

material often invokes the scientific knowledge of decision making. Moreover, textile structures can be of various types. For example, fabrics can be made by using weaving, knitting, nonwoven and braiding technologies and each of these technologies produces a structure which is distinct from the rest. A woven structure is preferred for soft body armour whereas knitted fabrics and nonwoven assemblies are having competitive edges in sports clothing and face masks respectively. Modelling techniques are needed to understand the intricate relationships between various structural attributes and functional properties of clothing. In most of the practical cases, functional clothing have to fulfill multiple design or performance requirements. For example, ultraviolet protective clothing should have a certain level of air permeability so that the wearer does not suffer from discomfort. Body armour should have high impact resistance and low bending stiffness so that the soldier can move with unconstrained agility. Fulfilling multiple performance requirements by choosing proper input variables often needs optimization techniques. This paper presents a brief outline of

MAJUMDAR et al.: DESIGNING OF FUNCTIONAL CLOTHING

modelling, optimization and decision making systems which can be used for designing of functional clothing. 2 Modelling Systems Model is a simplistic representation of some real phenomenon. Models are often used to simulate the performance of a product at various conditions and thus the trial and error involved in product design can be obviated to certain extent. Mathematical models are very popular in scientific fraternity as they are derived from the basic principles of science. However, the performance of the mathematical models is often marred due to the simplified assumptions used while developing the models. Statistical regression models are very easy to develop using the experimental data. Prediction accuracy of regression models is generally good provided the proper form of functional relationship has been used. In recent years, artificial neural network (ANN) has become very popular due to its excellent prediction accuracy. In the following part of the paper, regression and ANN models have been discussed. 2.1 Regression Models

Regression models are very popular to establish the relationship between the dependent and independent variables using experimental data. The number of dependent variable is only one, whereas the number of independent variable may be more than one. In most of the cases a linear form of relationship between the variables is modeled and it is known as linear regression. If the number of independent variable exceeds one then the model is called multiple linear regression. The underlying principle of developing a regression model revolves around the minimization of error function as defined below1: n

E = ∑ ( yi − yˆi ) 2

…(1)

i =1

where E is the error function i.e. the squared difference between the actual value of dependent variable ( yi ) and the predicted value of the dependent variable ( yˆi ); and n, the number of experimental observations. If the relationship between the dependent and independent variables is linear, then the following equation can be written:

399

yˆi = a + bx

…(2)

where a and b are the regression constants. ∂E ∂E and are ∂a ∂b calculated and equated with zero which finally yield the following normal equations:

To calculate the values of a and b,

n

n

i

i =1

∑ y = na + b∑ x n

n

…(3) n

∑ xy = a∑ x + b∑ x i =1

i

2

…(4)

i =1

The estimate of a and b can be obtained by solving the system of normal equations and consequently the value of dependent variable ( yˆi ) can be predicted from the given value of independent variable (x) within the experimental range. Polynomial, power, logarithmic and exponential are the popularly used forms of nonlinear models. y = a + bx + cx 2 + ..... + kx10

( Polynomial )

y = ax b

( Power )

y = a log bx

( Logarithmic)

y = ae

bx

( Exponential ) …(5)

2.2 Artificial Neural Network (ANN) Model

Artificial neural network (ANN) works by mimicking the principles of biological nervous system2,3. Therefore, the elements of ANN are analogical with the components of biological neurons. ANN is used in cases where huge number of experimental data is available but the complex functional relationship between the variables is unknown. A typical multilayer neural network is shown in Fig. 1. The ANN model consists of at least three layers, each composed of certain number of neurons or mathematical processing elements. One or more hidden layers can be placed between the input and output layers. All the input variables form the input layer. The variables to be modeled are placed in the output layer. The number of hidden layers and the number of neurons in hidden layers vary depending on the complexity of the function to be modelled. Each neuron receives inputs from the neurons of the

INDIAN J. FIBRE TEXT. RES., DECEMBER 2011

400

Fig. 1—Artificial neural network model

previous layer and these signals are multiplied by some numerical values or weights (analogical with synapse strength of biological neuron). The weighted inputs are then summed up and passed through a transfer function or activation function (analogical with membrane potential of biological neuron), which converts the output to a fixed range of values. The output of transfer function is then transmitted to the neurons of next layer. This process is continued and finally the predicted value of the output is obtained. Initially, ANN starts with random combination of weights connecting various neurons and therefore the error is generally very high. The connection weights are then optimized using some mathematical algorithm so that the error function is minimized. This process is known as training. Various algorithms are available to train the ANN and back-propagation algorithm is the most popular among the existing algorithms. Details of backpropagation algorithm can be found in published literature4. 2.3 Fuzzy Logic

Fuzzy logic is an extension of crisp logic. It was developed by Prof. Lotfi A. Zadeh at University of California at Barkley, USA in 1965 (ref. 5). Fuzzy logic is useful in imprecision handling as it is based on approximation rather than exactness. In crisp logic, such as binary logic, variables are true or false, i.e. 1 or 0. In fuzzy logic, a fuzzy set contains elements with partial membership ranging from 0 to 1 to define uncertainty for classes that do not have clearly defined boundaries. For each input and output variable of a fuzzy inference system (FIS), the fuzzy sets are created by dividing the universe of discourse into a number of sub-regions, named in linguistic terms like high, medium, and low. A classical set of strong fibre (tenacity more than 5 gpd) may be expressed as follows: A = {x | x > 5}

…(6)

Fig. 2—Fuzzy set of strong fibre

Testing of a fibre x, whether it is strong or otherwise, using the characteristic function χ is shown below: if x > 5 1,  χ A ( x) =  …(7) 0, if x ≤ 5  A fuzzy set is an extension of a classical set. If X is the universe of discourse and its elements are denoted by x, then a fuzzy set A in X is defined as a set of ordered pairs, as shown below: A = {x, µ A ( x)| x ∈ X }

…(8)

where µA(x) is the membership function of x in A. This can be extended to define the fuzzy set of strong fibre as shown below:

A = {(4.0, 0.0), (4.5,0.5), (5.0,1.0)}

…(9)

It implies that the belongingness to the fuzzy set of strong fibre at 4.0, 4.5 and 5.0 gpd is 0, 0.5 and 1 respectively. This has been represented pictorially in Fig. 2. Once the fuzzy sets are chosen, the membership function form for each set should be decided. Membership function converts the input from 0 to 1, indicating the belongingness of the input to a fuzzy set. Membership function can have various forms, such as triangle, trapezoid, sigmoid and Gaussian6,7. The linguistic terms are then used to establish fuzzy rules which relate input fuzzy sets with output fuzzy sets. A fuzzy rule base consists of a number of fuzzy if-then rules each of them has an antecedent part (if part) and a consequent part (then part). For

MAJUMDAR et al.: DESIGNING OF FUNCTIONAL CLOTHING

401

example, in the case of two-input and single-output fuzzy system, it could be expressed as follows: If x is Ai and y is Bi then z is Ci

…(10)

where x, y and z are the variables representing two inputs and one output; Ai, Bi and Ci, the linguistic fuzzy sets of x, y and z respectively. The output of each rule is also a fuzzy set. All the output fuzzy sets are aggregated into a single fuzzy set. Finally, the resulting set is resolved to a crisp number by “defuzzification”. 2.4 Applications of Modelling Systems

There are numerous examples where regression and ANN models have been used to predict the properties of functional clothing8-10. Majumdar11 predicted the thermal conductivity of various knitted structures made from bamboo-cotton blended yarns using ANN model. Knitted structure type (single jersey, rib and interlock), yarn count, bamboo fibre %, fabric thickness and areal density were used as inputs as shown in Fig. 3. Out of 27 samples, 22 were used for the training of ANN and remaining five samples were used for the testing. The correlation coefficient between actual and predicted values of thermal conductivity was higher than 0.95 for both the training and testing data. The mean absolute error was lower than 3%. The author also analyzed the developed model and found that finer yarns with higher % of bamboo fibre produces lower thermal conductivity. It was also revealed that volume porosity is the key parameter which determines the thermal conductivity of knitted fabrics. In another work, water repellence behaviour of the plasma treated disposable surgical garments was modelled by Allan et al.12 by using ANN. Cotton fabrics were treated with hexafluoroethane (C2F6) by varying three process conditions namely power level, treatment time and gas flow rate (litres per minute). The water repellency behaviour of treated fabrics was measured objectively by image processing technique and denoted by a parameter called final area index (FAI). Three ANN models were developed in stages with different numbers of training data. The final model was developed with 80 samples which resulted mean error of 3.27 FAI and R2 of 0.79. However, ANN model always underestimated the FAI value at the optimum process conditions. This may be due to the fact that most of the training data belonged to the lower values of FAI. The effect of three process conditions was also investigated with the help of trained ANN model. Higher treatment time, power and

Fig. 3—ANN model for predicting the thermal conductivity of knitted fabrics11

Treatment time (s) Fig. 4—Effect of time and gas flow rate on water repellence12

gas flow rate (SLM) increases the water repellence capability of fabrics as represented in Fig. 4. 3 Optimization Systems Optimization is a quantitative approach to produce overall best results by choosing the proper combinations of variables. In other words, problems that seek to minimize or maximize a mathematical function involving a set of variables, subject to a set of constraints, are classified as optimization problems13. The mathematical function to be minimized or maximized is known as objective function. The other conditions to be fulfilled are termed as constraints. If the objective function as well as the constraints are linear functions of variables then the problem is called linear optimization problem. If the objective function or any of the constraint equations involves nonlinearity then it is classified as nonlinear optimization. A classification of optimization problem is shown in Fig. 5. 3.1 Linear Programming

Linear programming is the simplest optimization technique which attempts to maximize or minimize a linear function of decision variables. The values of the decision variables are chosen such that a set of

INDIAN J. FIBRE TEXT. RES., DECEMBER 2011

402

Fig. 5—Classification of optimization problem

restricting conditions is satisfied. Linear programming involving only two decision variables can be solved by using graphical method. However, iterative Simplex method is used to solve linear programming problem involving three or more decision variables. Linear programming is very commonly used to solve the product mix problem of manufacturing industries. An example has been presented here for the understanding of the readers. Let, two sizes of functional clothing namely M and L are being manufactured in an industry which aims at maximization of overall profit. Profit per unit sales is Rs. 5000 and 10,000 for sizes M and L respectively. Besides, the machine hour requirement per unit production is 2 and 2.5 for sizes M and L respectively. The company must produce at least 10 functional clothing in a day to meet the market demand. The stated facts can be converted to a linear programming problem, as shown below: Objective function: Maximize : 5000 M + 10000 L …(11) Subject to:

2 M + 2.5L ≤ 24 M + L ≥ 10

…(12)

After solving the above linear programming problem, it is found that the maximum profit of the industry will be Rs. 90,000 per day provided it manufactures 2 and 8 units of functional clothing of sizes M and L respectively. A graphical representation of this linear programming problem is depicted in Fig. 6. 3.2 Multi-objective Optimization and Goal Programming

Adding multiple objectives to an optimization problem increases the computational complexity. For example, if the design of ultraviolet protective clothing has to be optimized which will provide good air permeability then these two objectives conflict and a trade-off is needed. There will be one design which

Fig. 6—Optimum point of constrained linear programming problem

Fig. 7—Pareto optimal front for UPF and air permeability

will provide maximum ultraviolet protection factor (UPF) but minimum air permeability. On the other hand, there will be another design which will provide minimum UPF but maximum air permeability. Between these two extreme designs, infinite number of designs will exist which are of some compromise between UPF and air permeability. This set of tradeoff designs is known as a Pareto set. The curve created by plotting objective one (UPF) against objective two (air permeability) for the best designs is known as Pareto frontier. None of the solutions in Pareto front is better than the other, i.e. any one of them is an acceptable solution. The choice of one design solution over other exclusively depends upon the requirement of the process engineer. Majumdar et al.14 developed Pareto optimal front for UPF and air permeability of cotton woven fabrics as depicted in Fig. 7. The optimal design fronts are different for various yarn linear densities. It is observed that for a fabric having UPF value of 30, the air permeability will be better if it is woven using 20 Ne weft yarns.

MAJUMDAR et al.: DESIGNING OF FUNCTIONAL CLOTHING

403

Goal programming technique is often used to solve the multi-objective optimization problems. In goal programming, a numeric goal is established for each goal function or constraint. The objective function minimizes the weighted sum of undesirable deviations from the respective goals. The example given in the previous section can be converted to a goal programming problem assuming that the profit goal of the organization is Rs. 90000. 5000 M + 10000 L + d1− − d1+ = 90000 2 M + 2.5 L + d 2 − − d 2 + = 24 −

…(13) Fig. 8—Function having local and global minima

+

M + L + d3 − d 3 = 10 − 1 1

+

Minimise = w d + w2 d 2 + w3 d3



…(14)

where w1, w2 and w3 are the weights assigned to the deviational variables. 3.3 Genetic Algorithm (GA)

The genetic algorithm (GA) is an unorthodox search method based on natural selection process for solving complicated optimization problems. John Holland15 of University of Michigan developed it in the early 1970s. Unlike conventional derivative based optimization that requires differentiability of the function to be optimized, GA can handle functions with discontinuities or piece-wise segments. Besides, gradient based optimization algorithms can get stuck in local minima or maxima as they rely on the slope of the function. Genetic algorithm overcomes this problem. The following function is having local and global minima (Fig. 8): f ( x) = ( x − 1)( x − 2)( x − 3)( x − 4)( x − 5)( x − 6) …(15)

Gradient based optimization, while searching for the global minima, may get stuck at 3.5 which is actually local minima. However, GA is certain to find out the global minima of the function at 1.34. To perform the optimization task, GA maintains a population of points called ‘individuals’, each of which is a potential solution to the optimization problem. Generally, the individuals are coded with a string of binary numbers. The GA repeatedly modifies the population of individual solutions using selection, crossover and mutation operators. At each step, the genetic algorithm selects individuals from the current population (parents) and uses them to produce children for the next generation, which competes for

survival. Over successive generations, the population ‘evolves’ toward an optimal solution. Genetic algorithm can be applied to solve a variety of optimization problems where the objective function is discontinuous, non-differentiable, stochastic or highly non-linear. An elaborate description of GA can be found in published literature3,8,15. 3.4 Simulated Annealing (SA)

The SA is a useful meta-heuristic for solving hard combinatorial optimization problems and the QAP in particular. It was first introduced by Kirkpatrick et al.16. The SA is a step-by-step method which could be considered as an improvement of the local optimization algorithm. The local optimization algorithm proceeds by generating, at each iteration, a solution in the neighbourhood of the previous one. If the value of criterion corresponding to the new solution is better than the previous one, the new solution is selected, otherwise it is rejected. The SA algorithm terminates either when it is no longer possible to improve the solution or the maximum number of trials decided by the user is reached. The main drawback of the local optimization algorithm is that it terminates at a local minimum which depends on the initial solution and may be far from the global minimum. The SA algorithm avoids entrapment in a local optimum. The difference with the local optimization is that a solution A0 derived from a solution A is not only accepted if A0 is better than A but it may also be accepted if A0 is worse than A. Boltzmann’s law is used to determine this acceptance probability that is given as P(accept)= e-∆z/bt, where b is Boltzmann’s constant and t (TI < t < TF, where TI and TF are the initial and final temperatures respectively) is the given parameter called the temperature which changes over

404

INDIAN J. FIBRE TEXT. RES., DECEMBER 2011

time according to some cooling schedule, and ∆z = z(A) - z(A) >=0. This is known as the Metropolis acceptance rule which implies that (i) the smaller the increase of the ∆z value, the more likely the new solution is selected, and (ii) the lower the value of ‘t’ and greater the number of trials ‘Q’, the less likely the new solution is selected. The basic algorithm of SA is given as follows: Step 1— Randomly, select the initial solution ‘i’ as a starting solution for SA. Step 2— Choose an initial temperature TI > 0. Step 3—Choose the temperature updating function i.e. annealing (or cooling) schedule. Step 4— Choose the epoch length function. Step 5—Set temperature change counter t = 0 and epoch length counter l = 0. Step 6—Generate Solution A0 in the neighbourhood of A by exchanging two facilities. Step 7—Calculate ∆z = z(A) - z(A). Step 8—If ∆z < 0 Then replace A by A’ else go to Step 10. Step 9— If random (0, 1) < exp (-∆z/ bt) then A’ = A. Step 10—Repeat steps 7 to 10 until l = Q (maximum number of trials for which the temperature is ‘t’). Step 11—Calculate the next temperature as per the temperature change function taken at step 3 and repeat steps 6 to 11 for the next temperature. Step 12—Repeat these steps until the stopping criteria becomes true. The SA procedure chosen has to set the following factors: the initial temperature, the epoch length, the cooling (annealing) schedule and the termination criterion. 3.4.1 Initial Temperature

Kirkpatrick et al.16 proposed a large initial temperature so that essentially all the solutions are accepted at the first stage of the SA process with a probability of P = 0.8. 3.4.2 Epoch Length

Let Nk be the epoch length (i.e. the number of trials to be performed with the same temperature value). Some commonly used functions are as follows: (a) Constant function: Nk = Constant, where k = 0, 1, . . . ,Q; (b) Arithmetic function: Nk = Nk-1 + Constant, where k = 0, 1, . . . ,Q;

(c) Geometric function: Nk = Nk-1/a, where ‘a’ is constant less than 1 and k = 0, 1, . . . ,Q; (d) Logarithmic function: Nk = Constant/log (Tk), where k = 0, 1, . . . ,Q; and (e) Exponential function: Nk = (Nk-1)1/a, where ‘a’ is constant less than 1 and k = 0, 1, . . . ,Q. 3.4.3 Cooling (Annealing) Schedule

Temperature is used to compute the acceptance probability of a solution which is worse than the previous one. The few functions for updating the temperature are as follows: (a) Arithmetic function tk+1 = tk - constant, k = 0, 1, . . . ,Q; (b) Geometric function tk+1 = α.tk where k = 0, 1, . . . , Q, t0 = TI (initial temperature) constant, and α < 1; (c) Logarithmic function tk = constant/log(k+2), where k = 0, 1, . . . ,Q; (d) Inverse function tk+1 = tk/ (1+α.tk), where k = 0, 1, . . . ,Q, t0=TI (initial temperature) constant, α

Suggest Documents