<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>0123-2126</journal-id>
<journal-title><![CDATA[Ingeniería y Universidad]]></journal-title>
<abbrev-journal-title><![CDATA[Ing. Univ.]]></abbrev-journal-title>
<issn>0123-2126</issn>
<publisher>
<publisher-name><![CDATA[Pontificia Universidad Javeriana]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S0123-21262009000200003</article-id>
<title-group>
<article-title xml:lang="en"><![CDATA[Solving a Two-Sided Assembly Line Balancing Problem using Memetic Algorithms]]></article-title>
<article-title xml:lang="es"><![CDATA[Solución de un problema de balanceo de línea de ensamble serial de dos lados utilizando algoritmos meméticos]]></article-title>
<article-title xml:lang="pt"><![CDATA[Solução de um problema de balanço de linha de montagem serial de dois lados utilizando algoritmos meméticos]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Rubiano-Ovalle]]></surname>
<given-names><![CDATA[Óscar]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Arroyo-Almanza]]></surname>
<given-names><![CDATA[Alonso]]></given-names>
</name>
<xref ref-type="aff" rid="A02"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad del Valle Universidad de Sevilla Escuela de Ingeniería Industrial y Estadística]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<aff id="A02">
<institution><![CDATA[,Universidad del Valle Pontificia Universidad Javeriana Departamento de Ciencias Naturales y Matemáticas]]></institution>
<addr-line><![CDATA[ ]]></addr-line>
</aff>
<pub-date pub-type="pub">
<day>00</day>
<month>07</month>
<year>2009</year>
</pub-date>
<pub-date pub-type="epub">
<day>00</day>
<month>07</month>
<year>2009</year>
</pub-date>
<volume>13</volume>
<numero>2</numero>
<fpage>267</fpage>
<lpage>280</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_arttext&amp;pid=S0123-21262009000200003&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_abstract&amp;pid=S0123-21262009000200003&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://www.scielo.org.co/scielo.php?script=sci_pdf&amp;pid=S0123-21262009000200003&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="en"><p><![CDATA[This research explores a characterization of the Two-Sided Assembly Line Problem (TALBP). There is a growing interest among researchers and assembly line practitioners in the solution to this problem, because it is more related to real-life situations than the Simple Assembly Line Balancing Problem (SALBP). Since the complexity of the TALBP is superior to that of the SALBP, this research emphasizes both the construction and the use of metaheuristics as memetic algorithms for finding a very good solution. Memetic algorithms are supported by genetic algorithms. The solution proposed was implemented in Matlab for a motorcycle assembly line at a local firm. Compared to other recognized heuristics and optimization methods, a most suitable solution was obtained in a shorter time through the use of the constructed algorithm. With this, all the restrictions and complexities inherent to the problem were overcome.]]></p></abstract>
<abstract abstract-type="short" xml:lang="es"><p><![CDATA[En este artículo se presenta una caracterización del problema de balanceo de línea de ensamble serial de dos lados (TALBP, por su sigla en inglés). Existe un creciente interés en este tipo de problemas, pues representan situaciones que se acercan mucho más a la vida real, que los problemas de líneas de ensamble serial simple (SALBP, por su sigla en inglés). Debido a que la complejidad del problema TALBP es superior a la del problema SALBP, en esta investigación se destaca la construcción y uso de metaheurísticas como algoritmos meméticos, para encontrar una muy buena solución. Los algoritmos meméticos se apoyan en los algoritmos genéticos. La solución propuesta fue implementada en el programa Matlab, para una línea de ensamble de motos en una empresa local. Mediante el uso del algoritmo construido se obtuvo una solución óptima en un tiempo más corto, frente a otras reconocidas heurísticas y métodos de optimización, que superaron todas las restricciones y complejidades inherentes al problema.]]></p></abstract>
<abstract abstract-type="short" xml:lang="pt"><p><![CDATA[Neste artigo apresenta-se uma caracterização do problema de balanço de linha de montagem serial de dois lados (TALBP, pela sua sigla em inglês). Existe um interesse crescente neste tipo de problemas, pois representam situações que se aproximam muito mais à vida real, que os problemas de linhas de montagem serial simples (SALBP, pela sua sigla em inglês). Devido que a complexidade do problema TALBP é superior à do problema SALBP, nesta pesquisa destaca-se a construção e uso de meta-heurísticas como algoritmos meméticos, para encontrar uma solução muito boa. Os algoritmos meméticos apóiam-se nos algoritmos genéticos. A solução proposta foi implementada no programa Matlab, para uma linha de montagem de motos em uma empresa local. Mediante o uso do algoritmo construído obteve-se uma ótima solução em um tempo menor, comparado com outras reconhecidas heurísticas e métodos de otimização, que superaram todas as restrições e complexidades inerentes ao problema.]]></p></abstract>
<kwd-group>
<kwd lng="en"><![CDATA[MATLAB (computer program)]]></kwd>
<kwd lng="en"><![CDATA[assembly-line methods]]></kwd>
<kwd lng="en"><![CDATA[assembly-line balancing]]></kwd>
<kwd lng="en"><![CDATA[algorithms]]></kwd>
<kwd lng="es"><![CDATA[MATLAB (programa para computador)]]></kwd>
<kwd lng="es"><![CDATA[métodos de líneas de ensamblado]]></kwd>
<kwd lng="es"><![CDATA[equilibrio de línea de montaje]]></kwd>
<kwd lng="es"><![CDATA[algoritmos]]></kwd>
<kwd lng="pt"><![CDATA[MATLAB (programa para computador)]]></kwd>
<kwd lng="pt"><![CDATA[métodos de linhas de montagem]]></kwd>
<kwd lng="pt"><![CDATA[equilíbrio de linha de montagem]]></kwd>
<kwd lng="pt"><![CDATA[algoritmos]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[   <font size="2" face="verdana">      <p align="center"><font size="4"><b>Solving a Two-Sided Assembly Line Balancing Problem using Memetic Algorithms</b></font><sup>*</sup></p>      <p align="center"><font size="3"><b>Soluci&oacute;n de un problema de balanceo de l&iacute;nea de ensamble serial de dos lados utilizando algoritmos mem&eacute;ticos</b></font><sup>**</sup></p>      <p align="center"><font size="3"><b>Solu&ccedil;&atilde;o de um problema de balan&ccedil;o de linha de montagem serial de dois lados utilizando algoritmos mem&eacute;ticos</b></font><sup>***</sup></p>      <p>    <center><i>&Oacute;scar Rubiano-Ovalle****    <br> Alonso Arroyo-Almanza*****</i></center></p>      <br>  <sup>*</sup>  This article is derived from the Master's Graduation Work, by the second author, carried out as part of the studies by the Research Group on Logistics and Production at the School of Industrial Engineering and Statistics in Universidad del Valle.    <br>  <sup>**</sup> Este art&iacute;culo se deriva del trabajo final de maestr&iacute;a del segundo autor, realizado en el marco del trabajo del grupo de investigaci&oacute;n en Log&iacute;stica y Producci&oacute;n, Escuela de Ingenier&iacute;a Industrial y Estad&iacute;stica, Universidad del Valle.    <br>  <sup>***</sup>  Data de aceita&ccedil;&atilde;o para publica&ccedil;&atilde;o: 3 de julho de 2009. Este artigo deriva do trabalho final de mestrado do segundo autor, realizado no marco do trabalho do grupo de pesquisa em Log&iacute;stica e Produ&ccedil;&atilde;o, Escola de Engenharia Industrial e Estat&iacute;stica, Universidade do Valle.    ]]></body>
<body><![CDATA[<br>  <sup>****</sup> Ingeniero industrial, Universidad del Valle, Cali, Colombia. Doctorado en Ingenier&iacute;a Industrial, Universidad de Sevilla, Espa&ntilde;a. Profesor titular de la Escuela de Ingenier&iacute;a Industrial y Estad&iacute;stica, Universidad del Valle. Correo electr&oacute;nico: <a href="mailto:oscaruba@pino.univalle.edu.co">oscaruba@pino.univalle.edu.co</a>.    <br>  <sup>*****</sup> F&iacute;sico, Universidad del Valle, Cali, Colombia. Mag&iacute;ster en Ingenier&iacute;a con &eacute;nfasis en Ingenier&iacute;a Industrial, Universidad del Valle. Profesor del Departamento de Ciencias Naturales y Matem&aacute;ticas, Pontificia Universidad Javeriana, Cali, Colombia. Correo electr&oacute;nico: <a href="mailto:alrroyo@puj.edu.co">alrroyo@puj.edu.co</a>.</center></p>      <p>Submitted on: March 29, 2009. Accepted on: July 16, 2009.    <br> Fecha de recepci&oacute;n: 29 de marzo de 2009. Fecha de aceptaci&oacute;n para publicaci&oacute;n: 16 de julio de 2009.    <br> Data de recep&ccedil;&atilde;o: 29 de mar&ccedil;o de 2009. Data de aceita&ccedil;&atilde;o para publica&ccedil;&atilde;o: 16 de julho de 2009 </p>  <hr>      <p><font size="3"><b>Abstract</b></font></p>      <p>This research explores a characterization of the Two-Sided Assembly Line Problem (TALBP). There is a growing interest among researchers and assembly line practitioners in the solution to this problem, because it is more related to real-life situations than the Simple Assembly Line Balancing Problem (SALBP). Since the complexity of the TALBP is superior to that of the SALBP, this research emphasizes both the construction and the use of metaheuristics as memetic algorithms for finding a very good solution. Memetic algorithms are supported by genetic algorithms. The solution proposed was implemented in Matlab for a motorcycle assembly line at a local firm. Compared to other recognized heuristics and optimization methods, a most suitable solution was obtained in a shorter time through the use of the constructed algorithm. With this, all the restrictions and complexities inherent to the problem were overcome.</p>      <p><b>Key words</b>: MATLAB (computer program), assembly-line methods, assembly-line balancing, algorithms.</p>  <hr>      <p><font size="3"><b>Resumen</b></font></p>      <p>En este art&iacute;culo se presenta una caracterizaci&oacute;n del <i>problema de balanceo de l&iacute;nea de ensamble serial de dos lados</i> (TALBP, por su sigla en ingl&eacute;s). Existe un creciente inter&eacute;s en este tipo de problemas, pues representan situaciones que se acercan mucho m&aacute;s a la vida real, que los problemas de l&iacute;neas de ensamble serial simple (SALBP, por su sigla en ingl&eacute;s). Debido a que la complejidad del problema TALBP es superior a la del problema SALBP, en esta investigaci&oacute;n se destaca la construcci&oacute;n y uso de metaheur&iacute;sticas como algoritmos mem&eacute;ticos, para encontrar una muy buena soluci&oacute;n. Los algoritmos mem&eacute;ticos se apoyan en los algoritmos gen&eacute;ticos. La soluci&oacute;n propuesta fue implementada en el programa Matlab, para una l&iacute;nea de ensamble de motos en una empresa local. Mediante el uso del algoritmo construido se obtuvo una soluci&oacute;n &oacute;ptima en un tiempo m&aacute;s corto, frente a otras reconocidas heur&iacute;sticas y m&eacute;todos de optimizaci&oacute;n, que superaron todas las restricciones y complejidades inherentes al problema.</p>      ]]></body>
<body><![CDATA[<p><b>Palabras clave</b>: MATLAB (programa para computador), m&eacute;todos de l&iacute;neas de ensamblado, equilibrio de l&iacute;nea de montaje, algoritmos.    <p>  <hr>      <p><font size="3"><b>Resumo</b></font></p>      <p>Neste artigo apresenta-se uma caracteriza&ccedil;&atilde;o do <i>problema de balan&ccedil;o de linha de montagem serial de dois lados</i> (TALBP, pela sua sigla em ingl&ecirc;s). Existe um interesse crescente neste tipo de problemas, pois representam situa&ccedil;&otilde;es que se aproximam muito mais &agrave; vida real, que os problemas de linhas de montagem serial simples (SALBP, pela sua sigla em ingl&ecirc;s). Devido que a complexidade do problema TALBP &eacute; superior &agrave; do problema SALBP, nesta pesquisa destaca-se a constru&ccedil;&atilde;o e uso de meta-heur&iacute;sticas como algoritmos mem&eacute;ticos, para encontrar uma solu&ccedil;&atilde;o muito boa. Os algoritmos mem&eacute;ticos ap&oacute;iam-se nos algoritmos gen&eacute;ticos. A solu&ccedil;&atilde;o proposta foi implementada no programa Matlab, para uma linha de montagem de motos em uma empresa local. Mediante o uso do algoritmo constru&iacute;do obteve-se uma &oacute;tima solu&ccedil;&atilde;o em um tempo menor, comparado com outras reconhecidas heur&iacute;sticas e m&eacute;todos de otimiza&ccedil;&atilde;o, que superaram todas as restri&ccedil;&otilde;es e complexidades inerentes ao problema.</p>      <p><b>Palavras-Chave</b>: MATLAB (programa para computador), m&eacute;todos de linhas de montagem, equil&iacute;brio de linha de montagem, algoritmos.</p>  <hr>      <p><font size="3"><b>Introduction</b></font></p>      <p>One of the most studied line balancing problems in the last decade is the balancing of the two-sided assembly line known as TALBP in the related literature. Researchers such as (Lee et al., 2001; Simaria y Vilarinho, 2007; Kim et al., 2009; Xiaofeng et al., 2008; Ozcan y Toklu, 2009) have proposed many solutions both exact and metahueristic implemented in programming languages such as C, Pascal, Visual Basic, Access 97, etc. In these languages, the programming codes and data bases require that designers have great expertise in the software thus discouraging engineers from applying it. This is why this paper explores the construction of a solution using memetic algorithms implemented in MATLAB software. The reason for using memethics algorithms was the existing possibility for integrating them to searching technicals impelemented in other metaheuristics, such as local searching and directed searching, which allow obtain solutions much more versatile in comparison to those obtained by a "pure" genetic algorithm (Moscato y Cotta, 2003).</p>      <p>The reasons for using MATLAB are: (a) Ease of adapting the algorithm whenever there is an additional restriction to the problem, (b) convenience in handling the information in matrixes and vectors, and (c) the programming language's great versatility and the facility to show results. As a pilot case, a two-sided assembly line was chosen in a local motorcycle company in Cali, Colombia.</p>      <p><font size="3"><b>1. Methodology</b></font></p>      <p>Initially the two-sided assembly line balance problem was characterized. Then, the general mathematical modeling for TALBP was done to obtain a configuration with the optimum number of stations for a given time cycle. After this, the chosen motorcycle assembly line case was described. Finally, the memetic algorithm applied to the case was developed.</p>      ]]></body>
<body><![CDATA[<p><i>1.1 Characterization of a Two-Sided Assembly Line</i></p>      <p>In a two-sided assembly line, product flows along a production line with workstations on both sides of the line (<a href="#fig1">Figure 1</a>).      <p>    <center><a name="fig1"><img src="img/revistas/inun/v13n2/v13n2a03f1.jpg"></center></p>      <p><i>1.2 TALBP-I Problem Mathematical Model</i></p>      <p>The model characteristics are the following:</p>  <ul>      <li> Objective: Minimize the number of stations for a given cycle time.</li>    <br>     <li> Side restrictions: There are tasks that due to their nature must be assigned to a specific side.</li>    <br>     ]]></body>
<body><![CDATA[<li> Precedence restrictions: There are tasks that must be done after others.</li>    <br>     <li> Simultaneity restrictions: These occur when two tasks start at the same time.</li>    <br>     <li> Start time restrictions: When a task is preceded by various tasks; it can not be started if all the other precedent tasks have not been completed. This restriction keeps in mind the termination times of precedent tasks for allowing starting the new task; this makes this type of restrictions different to precedence restrictions.</li>    <br>     <li> Cycle time restrictions: The sum of time for all the tasks assigned to one station must not be greater than the cycle time (equal to Takt time or maximum time allowed to produce a product in order to meet demand).</li>    <br>     <li> Occurrence restrictions: A task can only be assigned to one side and one station must have at least one task assigned.</p>    </ul>      ]]></body>
<body><![CDATA[<p>The following is the assigned nomenclature:</p>      <p><i>Indexes</i>:</p>  <i>i</i>: one task    <br> <i>j</i>: one station</p>  <i>k</i>: line side; <img src="img/revistas/inun/v13n2/v13n2a03e1.jpg"></p>      <p>Parameters:</p>  <i>J</i>: Set of stations; <i>J</i> = {1,2,3,..., <i>m</i>}    <br> <i>I</i>: Set of tasks; <i>I</i> = {1,2,3,..., n}    <br> <i>t<sub>i</sub></i>: Processing time of task i    <br> <i>L<sub>i</sub></i>: Task side indicator i    <br> <i>P(u,v)</i>: 1 if <i>u</i> precedes <i>v</i>; 0, in any other case    <br> <i>S(i,h)</i>: 1 if task <i>i</i> must be executed simultaneously with task <i>h</i>; 0, in any other case    <br> <i>max</i>: Maximum number of workstations    ]]></body>
<body><![CDATA[<br> <i>T<sub>max</sub></i>: Cycle time (maximum processing time in one station)    <br> <i>n</i>: Number of tasks in the assembly line</p>      <p>Decision variables:</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e2.jpg"></p>      <p><i>tf<sub>i</sub></i>: Finish time of task <i>i</i>    <br> <i>m</i>: Number of stations in the line      <p><img src="img/revistas/inun/v13n2/v13n2a03e3.jpg"></p>      <p>Subject to:    <br> A task can be assigned only to one work station</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e4.jpg"></p>      ]]></body>
<body><![CDATA[<p>Restriction of task precedence (the task u precede the task v)</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e5.jpg"></p>      <p>Dependence restriction among the termination time and the starting time of tasks</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e6.jpg"></p>      <p>Processing time at each station must not exceed the cycle time:</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e7.jpg"></p>      <p>Side restrictions:</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e8.jpg"></p>      <p>Simultaneity restrictions between tasks:</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e9.jpg"></p>      ]]></body>
<body><![CDATA[<p>Assures there are no empty stations:</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e10.jpg"></p>      <p><i>1.3 Precedence Diagram, Legend, and Initial Model Data</i></p>      <p>The addressed assembly process goes from the placement of the chassis on the conveyor system to the assembly of parts (<a href="#fig2">Figure 2</a>). The numbers in each circle correspond to the tasks, and the processing times are the values written outside the circles. Precedence between tasks is indicated by arrows with one direction. Simultaneity among tasks is shown by arrows with two directions. The side on which a task is to be executed in a specific station is designated by the letter outside the circle (L: left side, R: right side, E: either side).</p>      <p>    <center><a name="fig2"><img src="img/revistas/inun/v13n2/v13n2a03f2.jpg"></center></p>      <p>In the pilot case's current state the sum of the processing time for all the tasks is 77,875 hundredths of seconds. The daily demand is 300 units and the set cycle time is 10,200 hundredths of seconds.</p>      <p><i>1.4 Memetic Algorithm</i></p>      <p>The memetic algorithm's global structure is constructed by a methodological solution to obtain the optimum number of stations in the assembly line by assigning tasks to stations (<a href="#fig3">Figure 3</a>). This algorithm was implemented in MATLAB software version 7.1.</p>      <p>    ]]></body>
<body><![CDATA[<center><a name="fig3"><img src="img/revistas/inun/v13n2/v13n2a03f3.jpg"></center></p>      <p>In the following steps the construction of the algorithm is explained.</p>      <p>1.4.1 Initial Population Assignment (Task Assignment)</p>      <p>To carry out the initial population assignment an intentional task assignment procedure was used (<a href="#fig4">Figure 4</a>). This procedure has the advantage of accelerating the process of reaching the final solution since in the following procedure of exchanging tasks, (generation of new assignments) during the random search process in the proposed algorithm, the majority of previously obtained assignments not involved in each exchange are kept.      <p>    <center><a name="fig4"><img src="img/revistas/inun/v13n2/v13n2a03f4.jpg"></center></p>      <p>Task grouping is represented in the <i>XT<sub>i</sub></i> arrangement as indicated in <a href="#fig5">Figure 5</a>. This type of plot indicates a specific task grouping for the station. This initial task arrangement (called father assignment), is followed by a station assignment process in line with all the restrictions imposed to reach an initial feasible solution.</p>      <p>    <center><a name="fig5"><img src="img/revistas/inun/v13n2/v13n2a03f5.jpg"></center></p>      <p>1.4.2 Evaluation of initial assignment</p>      ]]></body>
<body><![CDATA[<p>The initial assignment and any of the generated solutions are evaluated through the proposed aptitude function by (Sabuncuoglu and Tanyer, 2001) shown in the following equation:</p>      <p><img src="img/revistas/inun/v13n2/v13n2a03e11.jpg"></p>      <p>Where <i>n</i> is the number of stations, <i>T<sub>max</sub></i> is the cycle time, and <i>S<sub>k</sub></i> is the processing time for the nth <i>k</i> station.</p>      <p>1.4.3 Generation of New Assignments (Sons)      <p>It is done with the following random procedure:</p>  <ol>     <li> When <i>n</i> is the total number of tasks to be programmed, n random numbers are generated with uniform distribution between 0 and 1. These random numbers are ordered from least to greatest value thus forming the <i>XY</i> arrangement depicted in <a href="#fig6">Figure 6</a>a.</li></p>      <li> Additionally, two random numbers between 0 and 1 are generated. The lower value number is called <i>Minor</i> and the greater value one <i>Major</i>, and they are placed in the lower part of the <i>XY</i> arrangement position whose value is closest (<a href="#fig6">Figure 6</a>b). Then, the tasks located between the two selected positions (4 and 45) in the <i>XT<sub>i</sub></i> arrangement are exchanged to generate a new assignment as shown in <a href="#fig6">Figure 6</a>c. This new assignment must be submitted to a new precedence check procedure between the tasks. If the precedence is complied with, this assignment replaces the previous one thus becoming the new assignment.</li></p>    </ol>      <p>    <center><a name="fig6"><img src="img/revistas/inun/v13n2/v13n2a03f6.jpg"></center></p>      ]]></body>
<body><![CDATA[<p>1.4.4 Simultaneity Check</p>      <p>The new assignment must be submitted to a checking process for simultaneity between tasks, i.e. it must be assured that two tasks that are executed at the same time must be in consecutive positions in the <i>XT<sub>i</sub></i> arrangement, for example tasks 36 and 43 (see <a href="#fig5">Figure 5</a>). To check for simultaneity, a check and exchange process is carried out between the <i>XT<sub>i</sub></i> arrangement and an arrangement that has all the tasks to be executed simultaneously.</p>      <p>1.4.5 Assignment of Tasks in the New Assignment</p>      <p>The new assignment of tasks to the workstations must be done. In line with the precedence and simultaneity already established in <i>XT<sub>i</sub></i>, the assignment tasks are assigned sequentially to the workstations in such a manner that the cycle time, task execution side and interval execution times are met.</p>      <p>1.4.6 Evaluation of New Assignment</p>      <p>The new assignment is submitted to an evaluation in accordance to the aptitude function defined in step 1.4.2. If the value of the aptitude function for this new assignment is less than that of the current father assignment, this new assignment replaces the father assignment.</p>      <p>1.4.7 Stop Condition</p>      <p>The new assignment generation process (sons) is repeated as many times as necessary until one of the following conditions is met: (i) the optimum number of stations is obtained, (ii) the number of iterations surpasses an established maximum, or (iii) a satisfactory value determined by the aptitude function is achieved. If any of the two last conditions is attained, an approximate solution has been found but not the optimum one.</p>      <p><font size="3"><b>2. Results and Discussion</b></font></p>      <p>The results are given in <a href="#tab1">Table 1</a>. An optimum number of workstations equal to 4 was obtained with a workstation time of 78,697 hundredth of seconds (13.116 minutes) and a idle time of 2,903 hundredth of seconds (0.483 minutes).</p>      ]]></body>
<body><![CDATA[<p>    <center><a name="tab1"><img src="img/revistas/inun/v13n2/v13n2a03t1.jpg"></center></p>      <p>The average time to attain the solution was approximately one minute. Related to the number of executed iterations, in 12 trials that were done, a solution was always found, i.e. there were no non convergence problems in the algorithm. <a href="#fig7">Figure 7</a> shows the algorithm's downtime versus the number of iterations. A idle time variation between 2,408 and 3,824 hundredth of seconds can be observed (0.401 and 0.637 minutes) with an average value of 3,283.25 hundredth of seconds (0.5472 minutes) and a variation coefficient of 12%. This is an acceptable variation.</p>      <p>    <center><a name="fig7"><img src="img/revistas/inun/v13n2/v13n2a03f7.jpg"></center></p>      <p><font size="3"><b>3. Conclusions</b></font></p>      <p>In this research a memetic algorithm was developed to solve a deterministic TALBP-I problem. In the literature, many researchers present metaheuristic solutions, but none of these solutions bring together all the specificities implemented in the proposed solution. These specificities are: two-sided assembly line with dependence restrictions between tasks on different sides in one station, simultaneity between tasks in the same or different stations, task execution side, cycle time restrictions and empty station control. Additionally, it is executed with a feasible initial solution (assignment). The memetic algorithm developed in MATLAB was applied to a motorcycle assembly line composed of 47 tasks with the objective of minimizing the number of stations to satisfy the Takt time. In this case, the attained solution was optimum and it was reached in a shorter time than with other heuristics and optimization methods, thus surpassing all the restrictions and complexities inherent to the problem.</p>  <hr>      <p><font size="3"><b>References</b></font></p>      <!-- ref --><p>JURADO, B. y TABORDA, S. <i>An&aacute;lisis y mejora de la capacidad a partir del estudio del trabajo y el uso de Promodel como herramienta de simulaci&oacute;n discreta en la l&iacute;nea de ensamble Honda motocicletas de la f&aacute;brica nacional de autopartes FANALCA S. A. Cali, Colombia, 2006</i>. &#91;Trabajo de grado&#93;. Cali: Universidad del Valle, 2006.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000131&pid=S0123-2126200900020000300001&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>KIM, Y. K.; SONG, W. S. and KIIM, J. H. A mathematical model and a genetic algorithm for two-sided assembly line balancing. <i>Computers & Operations Research</i>, 2009, vol. 36, num. 3, pp. 853-865.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000132&pid=S0123-2126200900020000300002&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>LEE, T.; KIM, Y. and KIM, YK. Two-sided assembly line balancing to maximize work relatedness and slackness. <i>Computers & Industrial Engineering</i>, 2001, vol. 40, num. 3, pp. 273-292.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000133&pid=S0123-2126200900020000300003&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>MOSCATO, P. y COTTA, C. Una introducci&oacute;n a los algoritmos mem&eacute;ticos. <i>Inteligencia Artificial</i>, 2003, num. 19, pp. 131-148.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000134&pid=S0123-2126200900020000300004&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>OZCAN, U. and TOKLU, B. Multiple-criteria decision-making in two-sided assembly line balancing: a goal programming and a fuzzy goal programming models. <i>Computers & Operations Research</i>, 2009, vol. 36, num. 6, pp. 1955-1965.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000135&pid=S0123-2126200900020000300005&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>SABUNCUOGLU, E. and TANYER, M. Assembly line balancing using genetic algorithms. <i>Journal of Intelligent Manufacturing</i>. 2000, vol. 11, n&uacute;m. 3, pp. 295-310.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000136&pid=S0123-2126200900020000300006&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>SIMARIA, A. and VILARINHO, P. 2-Antbal: An ant colony optimization algorithm for balancing two-sided assembly lines. <i>Computers & Industrial Engineering</i>, 2007, vol. 56, num. 2, pp. 489-506.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000137&pid=S0123-2126200900020000300007&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --><!-- ref --><p>XIAOFENG, H.; ERFEI, W. and YE, J. A station-oriented enumerative algorithm for twosided assembly line balancing. <i>European Journal of Operational Research</i>, 2008, vol. 186, num. 1, pp. 435-440.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&#160;<a href="javascript:void(0);" onclick="javascript: window.open('/scielo.php?script=sci_nlinks&ref=000138&pid=S0123-2126200900020000300008&lng=','','width=640,height=500,resizable=yes,scrollbars=1,menubar=yes,');">Links</a>&#160;]<!-- end-ref --> ]]></body><back>
<ref-list>
<ref id="B1">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JURADO]]></surname>
<given-names><![CDATA[B.]]></given-names>
</name>
<name>
<surname><![CDATA[TABORDA]]></surname>
<given-names><![CDATA[S.]]></given-names>
</name>
</person-group>
<source><![CDATA[Análisis y mejora de la capacidad a partir del estudio del trabajo y el uso de Promodel como herramienta de simulación discreta en la línea de ensamble Honda motocicletas de la fábrica nacional de autopartes FANALCA S. A. Cali, Colombia, 2006]]></source>
<year></year>
</nlm-citation>
</ref>
<ref id="B2">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KIM]]></surname>
<given-names><![CDATA[Y. K.]]></given-names>
</name>
<name>
<surname><![CDATA[SONG]]></surname>
<given-names><![CDATA[W. S.]]></given-names>
</name>
<name>
<surname><![CDATA[KIIM]]></surname>
<given-names><![CDATA[J. H.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A mathematical model and a genetic algorithm for two-sided assembly line balancing]]></article-title>
<source><![CDATA[Computers & Operations Research]]></source>
<year>2009</year>
<volume>36</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>853-865</page-range></nlm-citation>
</ref>
<ref id="B3">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LEE]]></surname>
<given-names><![CDATA[T.]]></given-names>
</name>
<name>
<surname><![CDATA[KIM]]></surname>
<given-names><![CDATA[Y.]]></given-names>
</name>
<name>
<surname><![CDATA[KIM]]></surname>
<given-names><![CDATA[YK]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Two-sided assembly line balancing to maximize work relatedness and slackness]]></article-title>
<source><![CDATA[Computers & Industrial Engineering]]></source>
<year>2001</year>
<numero>40</numero><numero>3</numero>
<issue>40</issue><issue>3</issue>
<page-range>273-292</page-range></nlm-citation>
</ref>
<ref id="B4">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MOSCATO]]></surname>
<given-names><![CDATA[P.]]></given-names>
</name>
<name>
<surname><![CDATA[COTTA]]></surname>
<given-names><![CDATA[C.]]></given-names>
</name>
</person-group>
<article-title xml:lang="es"><![CDATA[Una introducción a los algoritmos meméticos]]></article-title>
<source><![CDATA[Inteligencia Artificial]]></source>
<year>2003</year>
<numero>19</numero>
<issue>19</issue>
<page-range>131-148</page-range></nlm-citation>
</ref>
<ref id="B5">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[OZCAN]]></surname>
<given-names><![CDATA[U.]]></given-names>
</name>
<name>
<surname><![CDATA[TOKLU]]></surname>
<given-names><![CDATA[B.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Multiple-criteria decision-making in two-sided assembly line balancing: a goal programming and a fuzzy goal programming models]]></article-title>
<source><![CDATA[Computers & Operations Research]]></source>
<year>2009</year>
<volume>36</volume>
<numero>6</numero>
<issue>6</issue>
<page-range>1955-1965</page-range></nlm-citation>
</ref>
<ref id="B6">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SABUNCUOGLU]]></surname>
<given-names><![CDATA[E.]]></given-names>
</name>
<name>
<surname><![CDATA[TANYER]]></surname>
<given-names><![CDATA[M.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[Assembly line balancing using genetic algorithms]]></article-title>
<source><![CDATA[Journal of Intelligent Manufacturing]]></source>
<year>2000</year>
<volume>11</volume>
<numero>3</numero>
<issue>3</issue>
<page-range>295-310</page-range></nlm-citation>
</ref>
<ref id="B7">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SIMARIA]]></surname>
<given-names><![CDATA[A.]]></given-names>
</name>
<name>
<surname><![CDATA[VILARINHO]]></surname>
<given-names><![CDATA[P.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[2-Antbal: An ant colony optimization algorithm for balancing two-sided assembly lines]]></article-title>
<source><![CDATA[Computers & Industrial Engineering]]></source>
<year>2007</year>
<volume>56</volume>
<numero>2</numero>
<issue>2</issue>
<page-range>489-506</page-range></nlm-citation>
</ref>
<ref id="B8">
<nlm-citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname><![CDATA[XIAOFENG]]></surname>
<given-names><![CDATA[H.]]></given-names>
</name>
<name>
<surname><![CDATA[ERFEI]]></surname>
<given-names><![CDATA[W.]]></given-names>
</name>
<name>
<surname><![CDATA[YE]]></surname>
<given-names><![CDATA[J.]]></given-names>
</name>
</person-group>
<article-title xml:lang="en"><![CDATA[A station-oriented enumerative algorithm for twosided assembly line balancing]]></article-title>
<source><![CDATA[European Journal of Operational Research]]></source>
<year>2008</year>
<volume>186</volume>
<numero>1</numero>
<issue>1</issue>
<page-range>435-440</page-range></nlm-citation>
</ref>
</ref-list>
</back>
</article>
