Unfortunately, one is still used to see the companies scheduling problems being addressed based on the experience. This type of approach, practically made by rough estimate becomes risky once there may be a sub-exploitation of the available resources (e.g., machinery, man power, raw materials), thus taking to the loss of money by the part of the company and consequently making it diff icult to expand and modernise. This type of scheduling never or rarely constitutes itself as the best solution, given the overwhelming number of variables to consider. These goals compete with each other originating conflicting situations, making the problem extremely complex, turning altogether impossible to reach acceptable solutions. In order to find a solution to these kind of problems, the goal of the present work is to study and implement the Job Shop Scheduling Problem using Evolutionary Algorithms. Finally, a real situation, taken from the company Tipografia Tadinense Lda, where the goal is to minimise the total time that an order takes to be performed, having into account the format, the colour of the printing and the priority that each order has associated with, will be discussed. INTRODUCTION The scheduling problems are numerous and varied, however they share two basic characteristics: they are diff icult to solve and a good solution, once achieved, produces very tangible results. In general, the scheduling problems are NP-complete, not having consequently the warranty of being solvable in polynomial time. Indeed, although there has been a long and steady evolution in the scientific areas of Artificial Intelli gence (AI) and Operational Research (OR) aiming at the development of techniques and procedures to give solution to this type of problems, the basic question has not yet been solved. These included heuristics, stochastic techniques, or a combination of both. However, due to the complexity of this type of problems, the results were not deeds. The Evolutionary Algorithms (EAs) mimic the biological process of natural selection, and have been used to address complex combinatory optimisation problems. Using an evolutionary strategy, the EAs objective is to maximise/minimise an objective function f: S → R, where S is the solution's space; i.e., to find a state s∈ S in such a way that f(s) is its major/minor. EAs are self contained processes, once they optimise a function using a strategy independent of the problem under consideration; i.e., EAs require littl e knowledge of the structure of the universe of discourse. Scheduling techniques will t herefore stick on EAs to address the Job Shop Scheduling Problem (JSSP). This work is part of a more large project on Evolutionary Computation (EC), where the problem of knowledge representation is addressed in terms of Independent and Indirect Representations of the genotype (the genetic constitution of an organism, as a first approach), once it does not introduce alterations to the EAs’s code. One's problems start with the decoding part of the chromosome, once it works with a considerable amount of variables. This work was structured into three slopes. The former one that goes through the second and third chapters gives an introduction to EAs, to the JSSP and its data representational techniques. In the second slope, in terms of the fourth chapter, some practical results, concerning the scheduling process at a Small or Medium Enterprise (SME),the Tipografia Tadinense, Lda, will be presented. Finally one comes to the conclusions and prospective work. EVOLUTIONARY ALGORITHMS The Evolutionary Algorithms (EAs) are stochastic adaptive systems whose search methods model natural genetic inheritance and the Darwinian struggle for survival; i .e., mimicking the abilit y of adaptation and evolution of the alive organisms. EAs have been used successfully in applications involving parameter optimisation of unknown, possibly non-smooth and discontinuous functions, where the traditional algorithmic approaches have been faili ng (e.g., in industrial drawing, planning, financial calculation, data mining or genetic classification). However, it still constitutes a relatively unexplored field to which it is dedicated a great deal of attention by part of the scientific community. In a EA one begins with a set of possible solutions to the problem, which are not necessary the ideal ones, and proceeds towards that goal; i .e., as in Nature, this evolution takes place through two fundamental steps: Selection and Crossing or Sexed Reproduction. Figure 1Schematic of the Evolutionary Algorithm Framework The EAs operate on an evolving population of potential solutions to a problem, applying operators modelled in accordance to the Darwinian view of the species struggle for survival; i .e., the population undergoes a simulated evolution through the basic operations of selection, mutation, and reproduction. It does so by maintaining a population of proposed solutions, the chromosomes, for a given problem. Each solution is represented in a fixed alphabet with a wellestablished meaning. A chromosome, that makes the individual's genotype, is constituted by a group of genes, being a gene's value designated by allele. A quality measure defined in terms of an aptitude or fitness function, that measures the quality of each chromosome; i.e., its value of usefulness. A new population is formed from stochastically best samples, and the process continues with the mutation and crossover operations, with the former one introducing random variabilit y into the population, and the last one performing random exchanges of pieces of (two) chromosomes in order to propagate partial solutions. The process that goes on throughout time until a proper goal is reached or failure occurs (Figure 1). ANALYSIS OF THE SCHEDULING PROCESSES The scheduling problem is concerned with the allocation of scarce resources to tasks throughout time; i.e., it is a decisionmaking process that produces a plan of procedure for a project, allotting the work to be done and the time for it. The resources and tasks can take varied forms. The resources can be machines in a factory or tracks in an airport. The tasks can be operations in a production process, landings and li ft-offs in an airport or executions of computer programs. Each task can have a different level of priority, or a finalisation time. The plans may take different forms; it may be concerned either with the minimisation of the last task finalisation time, or the minimisation of the number of tasks to be completed at an earlier time. Most part of the scheduling problems can be described in terms of the JSSP. Eff icient methods of implementing it must be looked at, if one intends to take advantage of the process either in terms of the quality of a product or in terms of its commercialisation. Being one of most diff icult problems to solve inside the family of the NP-complete ones, with no satisfactory solution insight, one is lead to consider non conventional problem solving schemes, as the ones that operate on evolving populations of potential solutions, rather than on a single one, as conventional approaches do. Consider an industrial atmosphere where n tasks (operations) will be processed by m machines. Each task is associated with a set of restrictions with respect to the machine’s sequence, as well as to the processing time in each one of those machines. The tasks can have different duration times and involve different subsets of machines. One's ordeal aims at an ideal sequence of tasks for each machine in order to minimise a pre-defined objective function, in accordance to restrictions such as: the task’s scheduling for each machine is to be processed in order to guarantee the order’s sequence; a machine cannot process two (or more) tasks at the same time; different tasks for the same order cannot be processed simultaneously by different machines. The Scheduling Procedures in an Organisation The scheduling process in an organisation or system necessarily interacts with other ones going on that universe. These interactions are clearly dependent on the system and may differ substantially from one situation to another. In the example displayed bellow one can see a production system inside out an organisation, where the scheduling process takes place. Schedul ing 's Deta i ls Schedu ing Rest r ic t ions Product ion P lann ing/ Cent ra l Schedu l ing Needs for raw mater ia ls, p lanning, product ion 's capaci ty insta l led