Introduction

Sheet metal parts are widely used in many applications such as machine tools, ship building, civil construction, agricultural equipments, etc., Manufacturing of a sheet metal part begins with a 3D modelling using a CAD tool and then converting it (unfolded) into a 2D flat shape. The unfolded 2D shape(s) with required quantity are arranged in a large imaginary sheet with an objective of minimizing the wastage of the sheet. This optimal arrangement of 2D parts for cutting is referred as Nesting (Babu and Babu 1999). The nesting process is completed by an Artificial Intelligent (AI) algorithm which generates effective parts layout that includes necessary allowances to execute subsequent cutting process (Anand and Babu 2015). There are several AI algorithms such as Genetic Algorithm (GA), Simulated Annealing algorithm, Particle Swarm Optimization, Gravitational search algorithm, Cuckoo search algorithm etc., are used in literature for different engineering applications (Karen et al. 2006; Kiani and Yildiz 2016; Yıldız et al. 2016a, b; Yildiz and Saitou 2011; Yıldız and Lekesiz 2017). Detailed studies have been carried out to compare the performance of above mentioned AI algorithms (Karagöz and Yıldız 2017; Yildiz 2013). Among these AI algorithms, Genetic Algorithm is well suited for nesting, other optimization problems and outperforms other techniques, as the crossover and mutation operators finds the better population at each iteration and avoids local trapping of the solution (Onwubolu and Mutingi 2003; Yildiz and Saitou 2011).

Fig. 1
figure 1

Different bed designs used in laser/plasma cutting machines to support sheet metal being cut. a Pin type bed, b heavy pins to handle thick plates, c flat bed with slats of straight edges, d, e slats with toothed edges of different designs and f Honey comb type bed

Fig. 2
figure 2

Damage caused to the bed (slats) during cutting process, a laser beam pierces the sheet and further penetrates to the supporting bed, b portion of the slat removed during frequent cutting in plasma cutting machine and c slat damaged by laser beam

With the optimized nested parts layout, the 2D parts are produced from a large metal sheet using any one of the cutting process such as laser cutting, plasma cutting, abrasive water jet (AWJ) cutting, Blanking, Profile Blanking etc., (Nye 2000; Bowman 2014). Among these processes laser cutting, plasma cutting and AWJ cutting are widely used, as these can cut simple to complex geometrical profiles that include linear and curvilinear edges (Anand and Babu 2015; Hayasi and Asiabanpour 2013). They are also versatile in handling thickness of sheets in adequate range. The nested parts layout is exported to a CAM system which is usually an integrated part of the cutting machine (Buchfink 2006; http://www.trumpf-machines.com/fileadmin/DAM/trumpf-machines.com/Ueber_TRUMPF/Mediathek/Bibliothek/Library_Laser_Laser_Cutting.pdf , accessed: 11 Jan 2017). This system generates tool path and Numerical Control (NC) codes for guiding the tool head (laser/plasma/AWJ).

In order to cut the parts, the sheet is loaded on the machine bed and clamped. Figure 1 shows different types of machine bed used in laser and plasma cutting machines to support the sheet metal being cut (Weeks et al. 1993). The design of the bed varies among the machine manufacturers and depends on the capacity (size of the bed) of the machine. The bed structure is also constructed from simple to robust in nature to support higher to lower gauge (Bowman 2014) of the sheet metal. For example, Fig. 1a, b shows the pin type bed, in which pins are made in such a way that it suits light and heavy duty cutting respectively. Figure 1c shows the slat/blade type bed, in which the slats are arranged in equal spacing (say 60–80 mm). In some cases, the spacing is increased suitably in order to cut large dimension parts. The edges of the slats are made either straight or toothed edge, such that it offers a nail kind of support to the sheets (Buchfink 2006). Figure 1d and e shows the bed arrangement, with tooth edged slats. The slats are inserted into the slots provided in the bed frame as indicated in Figure 1d. For cutting small dimensional components (say less than 40 mm) the slat type bed is not suitable, as the cut parts may fall inside the gaps. In such cases, a honeycomb bed is used to offer a better support (Fig. 1f).

After placing the sheet on the bed, by following the coding instructions (NC program), the tool (laser/plasma/AWJ head) travels along the edges of the parts (toolpath) and removes the required parts from the sheet. During the cutting process, laser/plasma beam pierces the sheet metal (say steel or stainless steel) and further extends to the slats of the bed. The laser beam melts the sheet metal along the kerf area (Anand and Babu 2015; Fagan 2008; Chaki et al. 2015) and also partially melts the supporting slats. Figure 2 shows the damages caused to the slats at some stage during the cutting process. From Fig. 2a it can be observed that the laser beam has cut the part from the sheet and extends to the slats. Figure 2b and c shows the portion of slats getting damaged during the cutting process. This eventually spoils the flatness of the bed and therefore periodic maintenance is required. Other than damage of slats, while cutting, the laser/plasma beam tends to weld the parts and slats at the contact area (http://www.trumpf-machines.com/fileadmin/DAM/trumpf-machines.com/Ueber_TRUMPF/Mediathek/Bibliothek/Library_Laser_Laser_Cutting.pdf, accessed: 11 Jan 2017) which can affect the quality of the cut edges. To overcome these issues, machine manufacturers prefer bed with individual slats and toothed edges (Figs. 1d, e and 2a, c). This enables defect free edges, by providing minimal contact between the sheet and its supports, and also help to avoid welding that happens between the sheet and the parts being cut (http://www.trumpf-machines.com/fileadmin/DAM/trumpf-machines.com/Ueber_TRUMPF/Mediathek/Bibliothek/Library_Laser_Laser_Cutting.pdf, accessed: 11 Jan 2017). This further reduces the tear of slats to some extent. However, the problem still exists in the design of the bed. As of now, the damaged slats are replaced with new slats once in a while to maintain the flatness of the bed.

On a whole, it is evident that, during the cutting process, the bed gets damaged considerably, thereby affecting the machine down time and the cost. The existing literature does not showcase any notable remedy to avoid/reduce the damage caused to the bed. It is well known that, the damage to bed is caused beneath the tool path area (kerf) which is associated with the parts layout. Also it is possible to provide supports to the parts and sheet effectively by considering the parts layout. The present work is to provide the supports to the sheet wherever required and avoid the supports from getting damaged. For this, a novel pin type machine bed design with genetic algorithmic approach is proposed, which adaptively identifies the position of pins with respect to the given parts layout. In contrast to the existing bed designs, of using pins and slats at fixed positions, the present approach provide effective supports and also improves the life of the bed. In this work, the effective pin configuration is generated by considering three criteria namely, (i) the tool path, (ii) the minimum distance between the pins and (iii) the centroid of the parts. With these criterions, genetic algorithm is framed to deliver an optimal pin configuration. This work will have a significant contribution to improve the life of the bed (slats) in the sheet metal cutting process, as machine manufacturers continuously intend to enhance the performance of the machine, thereby increasing the lifetime of their product.

Fig. 3
figure 3

Conceptual design of adaptive pin configured bed a 3D view—all the pins are positioned in its location (enabled) and b its corresponding top view

Methodology

In the present work, a novel adaptive pin type machine bed design in combination with genetic approach is proposed for laser/plasma/AWJ cutting machines. This minimizes the damage caused to the bed during the cutting process and also provides an effective support to the sheet and the parts being cut. This algorithmic based method finds an effective pin arrangement by considering three criterions mainly (i) the tool path of the parts layout (ii) the distance to be maintained between the supporting pins, and (iii) the centroid of the parts geometry. The conceptual design of the bed and the framework of genetic approach are explained below.

Conceptual design of the bed

The conceptual design of the proposed pin type bed is shown in Fig. 3, which is constructed using the following components: the bed frame, the slats and the pins. Figure 3a shows the 3D view of the bed. This particular bed arrangement has 4 slats and each slat can accommodate a maximum of 8 pins. The rectangular outer frame acts as a base to hold the slats. Each slat can be inserted in any one pair of slots in the frame. Several holes are drilled in a specific pattern on top of the slats and the pins are inserted into it. The sheet being cut is supported by the pins. Figure 3b shows the top view of the machine bed, where all the pins are placed (enabled) in its respective location.

Fig. 4
figure 4

A particular pin configuration model a 3D view of slat and pin arrangement and b its corresponding top view

Genetic representation of the slats and its position of the pins

As mentioned earlier, the present initiative is to support the sheet in the pin type bed by providing pins at useful positions and removing some unnecessary pins, thereby generating an effective pin configuration for the given parts layout. An effective pin configuration is one that avoids tool path, and also provides effective support based on the geometry of the parts being cut. Among several pin configurations, the best possible outcome is identified through genetic algorithmic search process, by considering the given data. The data includes dimensions of the bed, slats, pin, details from parts layout such as part boundaries and tool path. In the present method, the position of the slat and its pins are represented by a genetic string in binary form. Consider a particular pin configuration as shown in Fig. 4. The pins on each of the four slats are arranged differently. Also it can be observed that the positions of the first and second slat are different from the third and fourth slat. For this particular pin configuration, the genetic string for each slat is represented in the following way.

figure a

For ease of understanding, the string representing each slat is shown near the corresponding slat in Fig. 4a. In the string, the first element (with darken outline) represents the slat position and the following elements represents the position of pins which is placed in the same order as in the slat. Based on the genetic string (for the particular slat) the slat is fixed in either slot and then the pins are positioned in the holes. For example, consider the string (01 0 0 1 1 0 0 1) for the first slat. The first element ‘\({{\varvec{0}}}\)’ represents the slot. The slat ‘1’ is inserted in the first pair of the slot (if the element is ‘\({{\varvec{1}}}\)’, then the second pair of slot is chosen). Next, the second element is ‘\(\textit{1}\)’ which represents the first hole; a pin is inserted into it (hole 1). Similarly the 3rd element is ‘\(\textit{0}\)’, in which the pin is not inserted into the second hole and it’s removed. Likewise, the remaining pins are positioned based on the following elements in the string. In the same way, it can be observed that the other slats in the bed and its pins are arranged by considering their respective strings (Fig. 4a). For example, slat ‘3’ is inserted in the second pair of slots as per it’s string representation. The Fig. 4b shows the top view of the bed with this particular pin configuration. The supporting pins are alone visible (enabled) in each slat. The working of algorithm and scoring of the string are explained below.

Algorithmic approach

The present work generates an effective pin configuration for the given parts layout through genetic algorithmic process, by considering the bed specification such as size, dimensions and parts layout data such as tool path, part boundaries etc., For this pin configuration, the bed (slats and pins) is arranged for cutting process. The working of genetic search process for this proposed work is demonstrated by considering a typical parts layout as shown in Fig. 5. The layout of the 4 parts that has to be cut, and their profile contains both linear and curvilinear edges to understand the method in a better way.

Fig. 5
figure 5

A 2D diagram of the parts layout

Fig. 6
figure 6

A sheet is loaded over the bed for cutting

Fig. 7
figure 7

Demonstration of a arrangement of imaginary sheet over the bed and superimposing the parts layout being cut and btop view showing toolpath and c centroid circles and their corresponding points

To cut these parts, a large enough sheet is loaded on the machine bed as shown in Fig. 6. It is assumed that the sheet is clamped in this setup. Then the parts layout is superimposed on the loaded sheet which is shown in Fig. 7. A three dimensional view in Fig. 7a shows the layout kept over the sheet. Figure 7b and c shows the top view of the setup with tool path, centroid points and centroid circles. From Fig. 7b it can be observed that the tool path passing over some of the supporting pins interface during cutting. In this current method, other than preventing the pins from damage, it is also ensured that the adjacent pins are arranged with certain gaps so that the cut parts will not fall below the bed after cutting. It is also confirmed that the part is properly supported, by considering centroid location of that part, thereby giving preference to position the supporting pins. Figure 7c shows the centroid points and centroid circles of the geometry of parts. The centroid of a part is calculated and the centroid circle is drawn based on bounding rectangle of that part. The diameter of the centroid circle of particular part geometry is 1/3 times of the diagonal distance of the bounding rectangle of that part. Hence it is sure that for varying part sizes and geometry, the centroid and the centroid circles can be effectively used for identifying the support pins. With this data and by genetic algorithmic approach, the effective pin configuration is generated. The steps in algorithm are given below.

  • Step 1 Fix the sheet over bed.

  • Step 2 Get the parts layout with toolpath and centroid data.

  • Step 3 Place the first slat over the bed.

  • Step 4 Execute Genetic process.

    1. 4.1.

      Generate initial population.

    2. 4.2.

      Execute crossover and mutation operation to get offsprings.

    3. 4.3.

      Evaluate score for each genetic string.

    4. 4.4.

      Select the best strings for reproduction.

    5. 4.5.

      Repeat the steps 4.2–4.4 until the iteration satisfies the terminating criteria

  • Step 5 Fix the slat and pins in its position according to the genetic string obtained through step 4.

  • Step 6 Repeat the process (steps 3–5) for the next slat in the bed.

The significant steps in this method are (i) execution of the genetic process and (ii) finding the score for genetic string, which are explained in detail with Fig. 8.

Fig. 8
figure 8

A schematic approach to generate an effective pin configuration based on genetic algorithm

Obtaining the parts layout data The parts layout is created in AutoCAD software and corresponding .dxf files are generated. This layout comprises of part boundaries, toolpath, centroid locations and bounding box of the parts. Similarly the bed and the slat dimensions are retrieved from .dxf files. Figure 8a shows the parts layout and Fig. 8b shows the placement of parts layout over the bed.

Identifying effective slat and pin positions through genetic approach After retrieving the data, each slat in placed on the bed one by one by identifying its position along with its pins position through genetic algorithm based search process. Figure 8c shows the first slat being placed effectively in its position. It can be observed that the slat is inserted into the second slot in the bed (encircled in dashed lines). The pins \(\hbox {P}_{2}\), \(\hbox {P}_{3}\), \(\hbox {P}_{4}\), \(\hbox {P}_{6}\) and \(\hbox {P}_{8}\) are enabled i.e., used as support and the pins \(\hbox {P}_{1}\), \(\hbox {P}_{5}\) and \(\hbox {P}_{7}\) are disabled i.e., removed. This arrangement of pins and slat avoids pins to lie beneath the tool path and provides closer support to the centroid circle of the cut part and also ensures even distribution of support pins over the entire slat. The working of genetic search process is further explained in detail.

It is evident from the literature that, the genetic algorithm finds optimal or near optimal solution for most of the optimization problems (Babu and Babu 1999; Anand and Babu 2015). The formulation of genetic string is specific to the particular problem. In this case the representation of genetic string with respect to the slat is explained earlier through Fig. 4. The genetic process comprises of the following steps: formulation of genetic string, generation of initial population, evaluation of fitness function, reproduction, crossover, mutation and generation of new population, and the steps are repeated for the next iteration.

Figure 8d–f shows the working of genetic process in the present work. The string length (number of elements) is equal to one slot position and the number of holes in a slat. First, the initial population is generated with predefined size. In general, the population size is at least equal to the element size, so that there will be sufficient search space for identifying a better solution (Leung et al. 2001). Figure 8d shows the initial population of 1st to Nth strings. Each string in the population is evaluated for its fitness function. In this work, the fitness function (‘score f’) is the combination of the following three criterions, namely

$$\begin{aligned} f_{{1}}= & {} \hbox {number of instances in which the}\\&\hbox {``tool path passing over the support pins''}\\ f_{{2}}= & {} \hbox {number of instances in which the ``pins do not maintain}\\&\hbox {a minimum distance between adjacent pins''} \\ f_{{3}}= & {} \hbox {number of instances in which the ``support pins}\\&\hbox {are located near any one of the centroid circles''} \end{aligned}$$

From the above criterions, \(f_{{1}}\) and \(f_{{2}}\) should be minimized and \(f_{{3}}\) should be maximized. The total score of the fitness function for a particular string ‘f\(= (f_{{1}}+f_{{2}})-f_{{3}}\). To understand the evaluation process, let us select one string from the initial population in Fig. 8d and consider the situation of placing second slat in the bed. From the population, first string (01 1 0 1 0 0 1 1) is chosen for evaluation. With respect to the elements (binary bits), the slot and the position of its pins are fixed. For example in this case, according to the 1st element ‘0’, the slat is fixed in the 1st position and for the second element ‘1’, the pin \(\hbox {P}_{1}\) is inserted (Fig. 8g). Similarly further pins are inserted and/or removed according to the string elements. Thus the pins \(\hbox {P}_{1}\), \(\hbox {P}_{2}\), \(\hbox {P}_{4}\), \(\hbox {P}_{5}\), \(\hbox {P}_{7}\) and \(\hbox {P}_{8}\) are inserted and other pins \(\hbox {P}_{3}\) and \(\hbox {P}_{6}\) are left blank. The slat is evaluated with this condition. The \(f_{{1}}\) count is derived as 3, as the pins \(\hbox {P}_{1}\), \(\hbox {P}_{4}\) and \(\hbox {P}_{7}\) lies beneath the tool path at three instances. Next the \(f_{{2}}\) count is derived as 1, where the distance between the pin \(\hbox {P}_{4}\) and its adjacent pins are far away and there is no support for the sheet. And the \(f_{{3}}\) count is derived as 2 based on two instances, \(\hbox {P}_{2}\) and \(\hbox {P}_{4}\) which are located on/nearer to the centroid circles. So the total score f is obtained as \((3 + 1) - 2 = 2\), hence the fitness function of the string, \(f = 2\).

Similarly the next string in initial population (string 2) is evaluated. Figure 8h shows the 2nd slat being positioned with respect to the string 2 (11 1 1 0 1 1 0 1). This slat is positioned in the 2nd slot. The fitness values of \(f_{{1}}\), \(f_{{2}}\) and \(f_{{3}}\) are 1 (\(\hbox {P}_{2})\), 1 (\(\hbox {P}_{8})\), and 3 (\(\hbox {P}_{3}\), \(\hbox {P}_{5}\) and \(\hbox {P}_{6})\) respectively. Then the total score \(f = -1\). Similarly the fitness function for other strings in the population is identified.

Reproduction After finding the fitness function of the strings in the population, they are sorted in ascending order of the fitness value (f). The strings with minimum fitness value have effective support pins. So these strings are taken forward for the reproduction process.

Crossover In genetic algorithmic process, two strings are chosen from population named as parents (parent 1 and parent 2) for crossover operation. Certain portions of the strings are exchanged between them, thereby forming new offsprings. These offsprings may or may not be better than parents. In the present work, two point crossover is followed (Goldberg 2014) as shown in Fig. 8e. To demonstrate the crossover operation, two parents namely 4th and Nth strings are chosen and the crossover sites are randomly selected as 1 and 5 in this case. The elements in 4th string (1 0 1 1 0) and the elements in Nth string (0 1 1 1 0) within the crossover sites are exchanged. The new offspring 1 (0 1 1 1 0 0 0 0 1) and offspring 2 (1 0 1 1 0 0 1 0 0) are formed.

Mutation The offsprings from the crossover operation are subjected to Mutation, in which a small correction is made within a string to avoid the search process getting trapped at local optimum (Anand and Babu 2015). Two mutation sites are randomly chosen for each offspring and the binary digits are swapped (\(\textit{0} \rightarrow \textit{1}\) and \(\textit{1} \rightarrow \textit{0}\)). The Fig. 8f shows the mutation operation. Mutation sites 2 and 7 are for offspring 1, and the sites 6 and 9 are for offspring 2. The binary digits are converted and the final offspring 1 (0 0 1 1 0 0 1 0 1) and offspring 2 (1 0 1 1 0 1 1 0 1) are obtained.

The newly generated offsprings are evaluated for their fitness function. The slat and pin arrangement for offspring 1 and 2 are shown in Fig. 8i, j respectively. From the Fig. 8j, it can be observed that the offspring 2 with lowest score (\(f = -2\)) is better than others shown in Fig. 8g–i. Figure 8j further shows the pins avoiding toolpath intersection and also has one instance where pin \(\hbox {P}_{8}\) is away from adjacent supports, thereby increasing the distance between the support pins. In addition, the three pins (\(\hbox {P}_{3}\), \(\hbox {P}_{5}\) and \(\hbox {P}_{6}\)) are located near the centroid circles. This exhibits the signs of improvement in generating effective positions for the slat and the pins. Similarly, other slats in the bed are placed through genetic algorithmic process. Figure 9 shows the final slat and pin arrangement of the bed for the given layout. Multiple iterations for each slat through genetic algorithm, can generate an effective pin configuration for the parts layout.

Fig. 9
figure 9

Final pin configuration for the parts layout

Results and discussion

The present work is developed in C\({++}\) programming language and executed through VC\({++}\) application on PC (specification: Windows 8 OS, Intel Core i5 2.5 GHz processor, 4 GB RAM). This application is interfaced with AutoCAD for retrieving Bed dimensions (slats and pins) and parts layout through .dxf files and output pin configuration is viewed via OpenGL and also in AutoCAD through script files.

Fig. 10
figure 10

The test case considered for evaluation of the proposed algorithm. a Parts layout with required data, b Bed dimensions with slats and pins and c Intersections of toolpath and supporting pins

Evaluation of algorithm in finding effective pin configuration for typical parts layout

The proposed approach is evaluated by generating an effective pin configuration for a typical parts layout of 5 parts as shown in Fig. 10. Figure 10a shows the parts layout with other data such as parts boundary, toolpath, centroid points of the parts and centroid circles. The dimensions of the bed are considered as \(200 \times 300\) mm with 40 mm spacing between consecutive slats. The pin diameter is considered as 4 mm. The dimensions of the bed are shown in Fig. 10b. The parts layout (tool path) with centroid circles is superimposed on the bed as shown in Fig. 10c. It can be observed from the figure that, the toolpath intersects with several supporting pins on the bed which is indicated by small arrows. Around 22 pins are being cut by the toolpath in this condition. The supporting pins are in uniform manner (fixed) which doesn’t consider the toolpath and/or geometry of the parts (centroid).

For this layout, the effective pin configuration is generated through genetic algorithmic process. Each slat in the bed is subjected to genetic search process and finally optimized pin configuration for the entire bed is obtained. The population size is considered as 30, which is decided based on the string length of 20 elements (1 for slot position \(+\) 19 for pin positions). Each slat is executed for genetic process for 100 iterations (reproductions). The first population is generated, followed by evaluation of each genetic string for ‘score f’, and sorting them in ascending order. Figure 11a shows the pin configuration at the beginning of the genetic process, from which more pins intersecting the toolpath can be observed (indicated with single arrow mark). Also there is no uniform distribution of pins around the centroid circle (indicated with double arrow mark).

Fig. 11
figure 11

Generation of effective pin configuration. a Pin configuration during first iteration (reproduction), b pin configuration after 100th iteration and c genetic process, converging towards near optimal solution

After the genetic algorithmic process, from 1st to 100th iteration, the problem is converged to a near optimal solution. The solution obtained is shown in Fig. 11b. It can be noted from the figure that, (i) almost all the intersections between the toolpath and the pins has been avoided, (ii) there are no pins denser in a specific portion of the sheet thereby enabling uniform distribution of pins over the parts and provide the required minimal support and (iii) there is an effective support of pins along the centroid circle.

The resulting pin configuration in Fig. 11b, shows the uniform distribution of supporting pins and the formation of supports near the centroid circle. The supporting pins near the centroid circle are in a triangular manner and this will ensure the effective support to the part. It is sufficient to hold a sheet metal part at a location based on mass concentration. Also most of the intersections between the toolpath and the pins has been eliminated.

The completed genetic process is represented in a graph by “iteration number versus score f” as shown in Fig. 11c. From the graph it is clear that, the maximum improvement in f is obtained within 10 iterations. But there is no considerable improvement towards 100 iterations. So there is a step by step improvement in the score f, thereby generating an effective pin configuration by the end of the process.

Evaluation of algorithm with varying user inputs

In the proposed concept of generating effective pin configuration, three constraints were considered namely (i) avoiding toolpath and pin intersection (\(f_{{1}})\), (ii) Maintain sufficient gap between the supporting pins (\(f_{{2}})\) and (iii) providing effective support for different shapes of parts considering centroid of the geometries (\(f_{{3}}\)). The user has an option to give priority to any one criteria based on their requirement. The requirement depends upon the quantity of parts, thickness of the sheet and similarity between the parts geometries etc., The effectiveness of the proposed algorithm in terms of disabling any one of the constraints was demonstrated with the same set of parts (parts layout used for previous test case). The results are shown in Fig. 12 in which the number of iterations is 10.

Fig. 12
figure 12

Generation of pin configuration with different user preferences. a Without considering the toolpath and pin intersection, b without considering the distance between pins and c without considering the support based on centroid of the parts geometry

Figure 12a shows the pin configuration generated by not considering the toolpath and pin intersection (\(f_{{1}})\). But it considers the other constraints \(f_{{2}}\) and \(f_{{3}}\). From Fig. 12a it can be observed that, the toolpath - pin intersections are more (indicated with arrow marks). However the pin gaps are maintained and distributed over the sheet, and also supports are provided near the centroid circles. In another case, the \(f_{{1}}\) and \(f_{{3}}\) are taken as constraints, whereas \(f_{{2}}\) is not considered. In this case the user need not mention the gap between the pins. Under this condition, the generated pin configuration has denser pins (encircled region) at some regions and more gaps between pins in some regions. This is indicated through double arrow lines in the Fig. 12b. Similarly, \(f_{{3}}\) is not considered during optimization. So during the progression in the genetic process, the solution is converged without considering the centroid of the geometry. The resulting pin configuration is shown in Fig. 12c. It can also be noted that, there are no effective supporting pins for the parts near their corresponding centroid circles. In this case, there is no toolpath—pin intersection, no denser pins but there are sufficient gaps between the pins. However there is no guarantee that the cut parts will not fall because the supports are not provided based on geometry. Hence there is a possibility that, the parts may fall due to unbalanced support. For example in Fig. 12c, the circular part is supported by 4 pins. But these pins are not focused in a location where mass of the part geometry is concentrated. At the same time, considering the Fig. 12b, the same circular part geometry is supported by some pins, in which 3 pins are located in the centroid circle in a triangular manner. This ensures an effective support to that part.

From the above statements, it is confirmed that, the present algorithm works well for varying user requirements. Also it is demonstrated that, the genetic process converges towards the solution as per the user preference.

Fig. 13
figure 13

An another test case considered for evaluation of the proposed algorithm. a Bed with pins and b layout with 34 parts having irregular geometries

Fig. 14
figure 14

Generation of effective pin configuration. a Pin layout before optimization, b pin configuration after optimization and c improvement in ‘score f’ during genetic process

Evaluation of algorithm for wide variety of geometries with typical size of bed

To test the performance of the algorithm in generating effective pin configuration, a set of 34 parts with different irregular geometrical shapes and size of the bed in real industrial situation are considered. Figure 13 shows the bed and the parts layout. The bed has the dimensions of \(600\,\text {mm} \times 1200\,\text {mm}\), as shown in Fig. 13a. The inner distances of the slats and the dimensions of the pins are same as that of the previous case (Fig. 10b). The dimensions of the bed and the parts layout resemble the real industrial application. Figure 13b shows the parts layout, having the toolpath for 34 parts. For clarity, the part boundaries and the centroid circles are not shown in the layout. In the same way, the algorithm is executed for 100 iterations for each slat with the population size of 30.

The Fig. 14a shows the pin arrangement without considering the present approach, in which the toolpath and the pins intersects at 164 instances. After executing the genetic algorithmic process, the final pin configuration is shown in Fig. 14b. As a result it is observed that the toolpath - pin intersection can be avoided, thereby maintaining enough pin gaps for effective support at the centroid circles. The genetic process in identifying the solution and the steps of improvement is graphically shown in Fig. 14c. It can be noted that, the ‘score f’ has been reduced from 62 to 49 within 10 iterations. From the 10th to the 100th iteration, there is no notable improvement in the score f, hence the iteration number is limited to 50 in the graph.

From the above results, it is evident that, the proposed bed design works well with the genetic algorithmic approach. The genetic process is capable of generating effective pin configuration. In this bed design and genetic approach, the user can vary the constraints, along with the dimensions of the bed (slats and pins). Also the user can increase the centroid circles for a part, so that they form concentric circles, which may be useful for relatively large parts in a layout. Thus the effective pin configuration is generated adaptively to the parts layout being cut, thereby increasing the life of the bed (slats and pins).

Conclusions

This paper proposes a novel sheet metal cutting machine bed design of pin type that adaptively supports the parts being cut by considering the parts layout. The bed is constructed with several slats, and pins are inserted in the holes of the slats. The position of both the slats and the pins can be changed (removed and inserted) as required. The gap between the pins can be defined by the user and it can be easily maintained so that the pins are distributed over the entire parts layout uniformly. The supporting pins are provided in the bed by considering the geometry of the parts being cut, based on the location of mass concentration (centroids). By using the bounding box of the geometry, a circle is created focusing the centroid and the pins are allowed to position near the circle, to ensure an effective support. The effective pin configuration is identified through genetic algorithmic approach. The slats and pins are represented as genetic strings, and each slat is subjected to genetic operation with an objective to minimize the ‘score f’. The scoring of a genetic string is based on three constraints, i.e., (i) \(f_{{1}}\) = number of instances that the tool path passes over the support pins, (ii) \(f_{{2}}\) = number of instances in which the pins do not maintain minimal distance between the adjacent pins and (iii) \(f_{{3}}\) = number of instances where the support pins appear near to any one of the centroid circles.

The effectiveness of the proposed work is evaluated with typical parts layout having 5 parts, and the bed size of \(200 \times 300\) mm with specific dimension are considered (Fig. 10). Without considering the proposed adaptive pin configuration, the intersection between the toolpath and the pins are found at 22 instances. The optimization process is executed for 100 iterations and the resulting pin configuration is acceptable. Through this process, the damage to the pins can be minimized, uniform gaps between the adjacent pins can be maintained and effective supports can also be provided at centroid circles (Fig. 11). The significant improvement in the genetic process is attained within 10 iterations.

The same parts layout is considered to test the effectiveness of the algorithm by giving last priority to any one of the three constraints (Fig. 12). The algorithm delivers a pin configuration based on the user preference. For example, if the user preferred to generate a pin configuration only by avoiding toolpath—pin intersection and to maintain sufficient gap between the pins, the genetic process delivers the solution (pin configuration) in which there is no focus on providing effective support in the centroid circle. This is well illustrated in Fig. 12c. Thus the proposed genetic algorithm based approach works well for given set of constraints. To evaluate the working of this approach with real time industrial conditions, bed size of \(600 \times 1200\) mm and a set of 34 parts with different geometrical profiles are considered (Fig. 13). There are 164 toolpath and pin intersections without considering this approach. Then after executing the algorithmic process, results show the significant improvement in generating an effective pin configuration (Fig. 14).

From the results, it is observed that, the algorithm generates pin configuration in effective way for the given combination of the bed and the parts layout. In contrast to the fixed slat type bed used in existing industrial practices, the proposed adaptive pin type bed design is very much useful for laser cutting, plasma cutting and AWJ cutting machines, as they adaptively change the support pins effectively and avoid toolpath—pin intersections, thereby increasing the life of the bed. The genetic algorithm performs well for the present approach in finding near optimal solution at an acceptable level. Further the bed can be automated with respect to the pin configuration for production of the sheet metal parts.