A factory has a four workstations assembly line which produces a bluetooth speaker. This production requires twelve assembly operations, respecting some precedence constraints. Table 4 indicates the duration of every task (in minutes) and the list of its immediate predecessors (the abbreviation PCB used in this table stands for ’printed circuit board’). The order of processing of the tasks should respect the precedences that are given in this table and illustrated on the graph of Figure 2. The production manager would like to distribute the tasks among the four workstations, subject to the precedence constraints, in order to balance the line to obtain the shortest possible cycle time, that is, the total time required for assembling a bluetooth speaker. Every task needs to be assigned to a single workstation that has to process it without interruption. Every workstation deals with a single operation at a time. We talk about cycle time because the operations on every workstation will be repeated for every speaker. When a product is finished, the bluetooth speaker at stations 1 to 3 advance by one station, and the assembly of a new speaker is started at the first workstation.