48 resultados para C (Linguagem de programação de computador)


Relevância:

20.00% 20.00%

Publicador:

Resumo:

Dans Fin de partie, Beckett se révèle de nouveau un maître du théâtre de l’âme, mais d’une façon pas du tout conventionnelle. On doit classer cette pièce dans l’antithéâtre parce qu’elle manque d’intrigue, il n’y a que de situations cycliques toujours répétées, le temps ne veut pas passer, c’est plutôt un moment éternel, les personnages manquent de consistance et d’individualité : ils sont davantage des incarnations d’attitudes humaines, et ils parlent un langage décousu, un bourdonnement dépourvu de sens. Bien que tous ces aspects contribuent à l’ambiguïté de la pièce, rien n’y est laissé au hasard : tout sert à communiquer l’incommunicable. La scène se passe dans un lieu clos, avec une lumière crépusculaire qui suggère la fin du jour. Les personnages et les objets se trouvent dans des poubelles (Nagg et Nell) ou couverts par des draps : peu à peu, les objets et les personnages se dévoilent d’une façon fragmentée. C’est Clov qui nous dit qu’il s’agit de la fin de quelque chose, mais déjà le décor, la lumière, la déchéance physique des personnages et les dialogues à peine esquissés suggèrent un stage final qui n’en finit plus, qui devient un moment éternel, car la mort, elle non plus, ne se présente pas comme une solution pour le problème de notre existence absurde. Et nous voilà de nouveau face à face avec l’absurdité de la condition humaine, où l’homme se sent privé de toute certitude et incapable decouvrir un sens à son existence. Le tragique de la condition humaine, et le désir de lui mettre fin est le fil conducteur de Fin de partie. Les personnages montrent tout au long de la pièce que la condition humaine est intolérable et qu’ils sont écrasés par la routine et l’ennui. Ils se sentent perdus et abandonnés par un dieu quiconque, un monstre qui a créé la nature humaine. La vie est une pile de moments infernaux ; tout le monde est dans l’attente de quelqu’un ou d’un événement qui puisse changer son cours. Mais rien ne change, les personnages sont trop passifs – Clov se prépare pour son voyage, cependant, au lieu de partir, il reste là, immobile, jusqu’à la fin. Mais c’est juste pour ce danger que Beckett veut nous alerter : si nous ne faisons pas usage de notre liberté en nous recréant par une succession de choix, nous serons damnés, c’est-à-dire, condamnés à vivre dans le désespoir, le néant, l’absurde – la vie sera toujours un infini recommencement de rien.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

A operação dos Mercados de Energia Eléctrica passa, actualmente, por uma profunda reestruturação, com o principal foco nas transacções do sistema de transmissão entre os diferentes agentes. Tendo isso em conta, o serviço de transmissão neste novo esquema de funcionamento do Mercado de Energia Eléctrica deve ser provido de máxima eficiência económica, atendendo sempre às restrições de segurança do sistema. Com esta reorganização do sector eléctrico da última década surgiu também a necessidade de rever os modelos tradicionais de optimização económica do Sistema Eléctrico de Energia, como por exemplo o despacho e prédespacho (unit commitment). A reestruturação e liberalização dos mercados de energia eléctrica trouxeram novas restrições a alguns dos problemas tradicionais associados aos Sistemas Eléctricos de Energia. Um desses problemas é o Escalonamento da Produção de Energia Eléctrica, que no contexto actual, implica quase sempre negociação entre os diferentes agentes do mercado e consequentemente reescalonamento. A maioria dos métodos usados para a resolução do problema não permitem reformular o prédespacho, algo para que a Programação Lógica por Restrições é extremamente adequada. O trabalho desenvolvido nesta dissertação visa criar uma aplicação computacional com base na Programação Lógica por Restrições, através da plataforma ECLiPSe, para resolver o problema do Escalonamento da Produção de Energia Eléctrica dos grupos térmicos, demonstrando assim a versatilidade e flexibilidade deste tipo de programação aplicada a problema combinatoriais deste género.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Recentemente, tem-se assistido à utilização de ambientes imersivos 3D em vários domínios tais como: actividades empresariais, educativas, lúdicas, entre outras devido à expansão do Second Life. A finalidade deste conceito é oferecer aos utilizadores um acesso alternativo a valências existentes no mundo real, a partir de um computador ligado à Internet. Uma aplicação prática pode ser a sua utilização em laboratórios remotos, com a finalidade de controlar remotamente instrumentos de medição, a partir de um ambiente imersivo. Para isso, o mesmo deve permitir a construção de um laboratório virtual e respectivos instrumentos, também virtuais. Este tipo de solução é viável, devido a existirem dispositivos com interfaces de acesso remoto, e ambientes 3D desenvolvidos em linguagens de programação que possuem bibliotecas de código para protocolos de redes de computadores. A finalidade deste trabalho é desenvolver uma metodologia de acesso remoto, a instrumentos de medição em laboratórios de electricidade e electrónica, usando ambientes imersivos 3D. Como caso de estudo, o instrumento utilizado é um multímetro, controlado remotamente a partir de uma reprodução num mundo virtual, construído no ambiente 3D Open Wonderland. Nessa reprodução virtual, numa primeira fase, só serão disponibilizadas para medição, um conjunto limitado das variáveis eléctricas passíveis de medir através do multímetro seleccionado.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Ao longo deste projecto são efectuados vários passos para a realização de um sistema de levitação magnética controlado por computador. O objectivo deste projecto é a levitação de um objecto de material ferromagnético. Para a sua realização foi essencialmente necessário um electroíman, que exerce a força electromagnética sobre a bola, um circuito de potência para accionar o electroíman, um circuito sensor constituído por um LDR e por fim, o circuito constituído pelo PIC 18F4550. Para a comunicação entre o sistema e o PC foi estabelecida a comunicação série RS232. No que concerne ao controlo do sistema, foi aplicado um controlador PD e um controlador em avanço, ambos projectados directamente no domínio digital, através do método do Lugar de raízes. Posteriormente foi desenvolvida uma interface gráfica em ambiente MATLAB, para comunicação, via RS232, entre o PC e o sistema.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Ao longo dos tempos foi possível constatar que uma grande parte do tempo dos professores é gasta na componente de avaliação. Por esse facto, há já algumas décadas que a correcção automática de texto livre é alvo de investigação. Sendo a correcção de exercícios efectuada pelo computador permite que o professor dedique o seu tempo em tarefas que melhorem a aprendizagem dos alunos. Para além disso, cada vez mais as novas tecnologias permitem o uso de ferramentas com bastante utilidade no ensino, pois para além de facilitarem a exposição do conhecimento também permitem uma maior retenção da informação. Logo, associar ferramentas de gestão de sala de aula à correcção automática de respostas de texto livre é um desafio bastante interessante. O objectivo desta dissertação foi a realização de um estudo relativamente à área de avaliação assistida por computador em que este trabalho se insere. Inicialmente, foram analisados alguns correctores ortográficos para seleccionar aquele que seria integrado no módulo proposto. De seguida, foram estudadas as técnicas mais relevantes e as ferramentas que mais se enquadram no âmbito deste trabalho. Neste contexto, a ideia foi partir da existência de uma ferramenta de gestão de sala de aula e desenvolver um módulo para a correcção de exercícios. A aplicação UNI_NET-Classroom, que foi a ferramenta para a qual o módulo foi desenvolvido, já continha um componente de gestão de exercícios que apenas efectuava a correcção para as respostas de escolha múltipla. Com este trabalho pretendeu-se acrescentar mais uma funcionalidade a esse componente, cujo intuito é dar apoio ao professor através da correcção de exercícios e sugestão da cotação a atribuir. Por último, foram realizadas várias experiências sobre o módulo desenvolvido, de forma a ser possível retirar algumas conclusões para o presente trabalho. A conclusão mais importante foi que as ferramentas de correcção automática são uma mais-valia para os professores e escolas.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Para dar resposta aos grandes avanços tecnológicos e, consequentemente, à postura mais exigente dos clientes, a empresa Francisco Parracho – Electrónica Industrial, Lda., que tem actividade no ramo dos elevadores, decidiu introduzir no mercado um controlador dedicado de ecrãs Liquid Crystal Display / Thin Film Transistor (LCD / TFT). O objectivo é substituir um sistema suportado por um computador, caracterizado pelas suas elevadas dimensões e custos, mas incontornável até à data, nomeadamente para resoluções de ecrã elevadas. E assim nasceu este trabalho. Com uma selecção criteriosa de todos os componentes e, principalmente, sem funcionalidades inúteis, obteve-se um sistema embebido com dimensões e custos bem mais reduzidos face ao seu opositor. O ecrã apontado para este projecto é um Thin Film Transistor – Liquid Crystal Display (TFT-LCD) da Sharp de 10.4” de qualidade industrial, com uma resolução de 800 x 600 píxeis a 18 bits por píxel. Para tal, foi escolhido um micro-controlador da ATMEL, um AVR de 32 bits que, entre outras características, possui um controlador LCD que suporta resoluções até 2048 x 2048 píxeis, de 1 a 24 bits por píxel. Atendendo ao facto deste produto ser inserido na área dos elevadores, as funcionalidades, quer a nível do hardware quer a nível do software, foram projectadas para este âmbito. Contudo, o conceito aqui exposto é adjacente a quaisquer outras áreas onde este produto se possa aplicar, até porque o software está feito para se tornar bem flexível. Com a ajuda de um kit de desenvolvimento, foram validados os drivers dos controladores e periféricos base deste projecto. De seguida, aplicou-se esse software numa placa de circuito impresso, elaborada no âmbito deste trabalho, para que fossem cumpridos todos os requisitos requeridos pela empresa patrocinadora: - Apresentação de imagens no ecconsoante o piso; - Possibilidade de ter um texto horizontalmente deslizante;Indicação animada do sentido do elevador; - Representação do piso com deslizamento vertical; - Descrição sumária do directório de pisos também com deslizamento vertical; - Relógio digital; - Leitura dos conteúdos pretendidos através de um cartão SD/MMC; - Possibilidade de actualização dos conteúdos via USB flash drive.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Os laboratórios de experimentação remota estão normalmente associados a tecnologias ou soluções proprietárias, as quais restringem a sua utilização a determinadas plataformas e obrigam ao uso de software específico no lado do cliente. O ISEP possui um laboratório de experimentação remota, baseado em instrumentação virtual, usado no apoio ao ensino da electrónica e construído sobre uma plataforma NIELVIS da National Instruments. O software de controlo da plataforma recorre à linguagem gráfica de programação LabVIEW. Esta é uma ferramenta desenvolvida pela National Instruments que facilita o desenvolvimento de aplicações de sistemas de experimentação remota, mas que possui várias limitações, nomeadamente a necessidade de instalação do lado do cliente de um plug-in, cuja disponibilidade se encontra limitada a determinadas versões de sistemas operativos e de Web Browsers. A experiência anterior demonstrou que estas questões limitam o número de clientes com possibilidade de acesso ao laboratório remoto, para além de, em alguns casos, se ter verificado não ser transparente a sua instalação e utilização. Neste contexto, o trabalho de investigação consistiu no desenvolvimento de uma solução que permite a geração de interfaces que possibilitam o controlo remoto do sistema implementado, e que, ao mesmo tempo, são independentes da plataforma usada pelo cliente.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Actualmente verifica-se que a complexidade dos sistemas informáticos tem vindo a aumentar, fazendo parte das nossas ferramentas diárias de trabalho a utilização de sistemas informáticos e a utilização de serviços online. Neste âmbito, a internet obtém um papel de destaque junto das universidades, ao permitir que alunos e professores possam interagir mais facilmente. A internet e a educação baseada na Web vêm oferecer acesso remoto a qualquer informação independentemente da localização ou da hora. Como consequência, qualquer pessoa com uma ligação à internet, ao poder adquirir informações sobre um determinado tema junto dos maiores peritos, obtém vantagens significativas. Os laboratórios remotos são uma solução muito valorizada no que toca a interligar tecnologia e recursos humanos em ambientes que podem estar afastados no tempo ou no espaço. A criação deste tipo de laboratórios e a sua utilidade real só é possível porque as tecnologias de comunicação emergentes têm contribuído de uma forma muito relevante para melhorar a sua disponibilização à distância. A necessidade de criação de laboratórios remotos torna-se imprescindível para pesquisas relacionadas com engenharia que envolvam a utilização de recursos escassos ou de grandes dimensões. Apoiado neste conceito, desenvolveu-se um laboratório remoto para os alunos de engenharia que precisam de testar circuitos digitais numa carta de desenvolvimento de hardware configurável, permitindo a utilização deste recurso de uma forma mais eficiente. O trabalho consistiu na criação de um laboratório remoto de baixo custo, com base em linguagens de programação open source, sendo utilizado como unidade de processamento um router da ASUS com o firmware OpenWrt. Este firmware é uma distribuição Linux para sistemas embutidos. Este laboratório remoto permite o teste dos circuitos digitais numa carta de desenvolvimento de hardware configurável em tempo real, utilizando a interface JTAG. O laboratório desenvolvido tem a particularidade de ter como unidade de processamento um router. A utilização do router como servidor é uma solução muito pouco usual na implementação de laboratórios remotos. Este router, quando comparado com um computador normal, apresenta uma capacidade de processamento e memória muito inferior, embora os testes efectuados provassem que apresenta um desempenho muito adequado às expectativas.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Os sistemas de tempo real modernos geram, cada vez mais, cargas computacionais pesadas e dinâmicas, começando-se a tornar pouco expectável que sejam implementados em sistemas uniprocessador. Na verdade, a mudança de sistemas com um único processador para sistemas multi- processador pode ser vista, tanto no domínio geral, como no de sistemas embebidos, como uma forma eficiente, em termos energéticos, de melhorar a performance das aplicações. Simultaneamente, a proliferação das plataformas multi-processador transformaram a programação paralela num tópico de elevado interesse, levando o paralelismo dinâmico a ganhar rapidamente popularidade como um modelo de programação. A ideia, por detrás deste modelo, é encorajar os programadores a exporem todas as oportunidades de paralelismo através da simples indicação de potenciais regiões paralelas dentro das aplicações. Todas estas anotações são encaradas pelo sistema unicamente como sugestões, podendo estas serem ignoradas e substituídas, por construtores sequenciais equivalentes, pela própria linguagem. Assim, o modo como a computação é na realidade subdividida, e mapeada nos vários processadores, é da responsabilidade do compilador e do sistema computacional subjacente. Ao retirar este fardo do programador, a complexidade da programação é consideravelmente reduzida, o que normalmente se traduz num aumento de produtividade. Todavia, se o mecanismo de escalonamento subjacente não for simples e rápido, de modo a manter o overhead geral em níveis reduzidos, os benefícios da geração de um paralelismo com uma granularidade tão fina serão meramente hipotéticos. Nesta perspetiva de escalonamento, os algoritmos que empregam uma política de workstealing são cada vez mais populares, com uma eficiência comprovada em termos de tempo, espaço e necessidades de comunicação. Contudo, estes algoritmos não contemplam restrições temporais, nem outra qualquer forma de atribuição de prioridades às tarefas, o que impossibilita que sejam diretamente aplicados a sistemas de tempo real. Além disso, são tradicionalmente implementados no runtime da linguagem, criando assim um sistema de escalonamento com dois níveis, onde a previsibilidade, essencial a um sistema de tempo real, não pode ser assegurada. Nesta tese, é descrita a forma como a abordagem de work-stealing pode ser resenhada para cumprir os requisitos de tempo real, mantendo, ao mesmo tempo, os seus princípios fundamentais que tão bons resultados têm demonstrado. Muito resumidamente, a única fila de gestão de processos convencional (deque) é substituída por uma fila de deques, ordenada de forma crescente por prioridade das tarefas. De seguida, aplicamos por cima o conhecido algoritmo de escalonamento dinâmico G-EDF, misturamos as regras de ambos, e assim nasce a nossa proposta: o algoritmo de escalonamento RTWS. Tirando partido da modularidade oferecida pelo escalonador do Linux, o RTWS é adicionado como uma nova classe de escalonamento, de forma a avaliar na prática se o algoritmo proposto é viável, ou seja, se garante a eficiência e escalonabilidade desejadas. Modificar o núcleo do Linux é uma tarefa complicada, devido à complexidade das suas funções internas e às fortes interdependências entre os vários subsistemas. Não obstante, um dos objetivos desta tese era ter a certeza que o RTWS é mais do que um conceito interessante. Assim, uma parte significativa deste documento é dedicada à discussão sobre a implementação do RTWS e à exposição de situações problemáticas, muitas delas não consideradas em teoria, como é o caso do desfasamento entre vários mecanismo de sincronização. Os resultados experimentais mostram que o RTWS, em comparação com outro trabalho prático de escalonamento dinâmico de tarefas com restrições temporais, reduz significativamente o overhead de escalonamento através de um controlo de migrações, e mudanças de contexto, eficiente e escalável (pelo menos até 8 CPUs), ao mesmo tempo que alcança um bom balanceamento dinâmico da carga do sistema, até mesmo de uma forma não custosa. Contudo, durante a avaliação realizada foi detetada uma falha na implementação do RTWS, pela forma como facilmente desiste de roubar trabalho, o que origina períodos de inatividade, no CPU em questão, quando a utilização geral do sistema é baixa. Embora o trabalho realizado se tenha focado em manter o custo de escalonamento baixo e em alcançar boa localidade dos dados, a escalonabilidade do sistema nunca foi negligenciada. Na verdade, o algoritmo de escalonamento proposto provou ser bastante robusto, não falhando qualquer meta temporal nas experiências realizadas. Portanto, podemos afirmar que alguma inversão de prioridades, causada pela sub-política de roubo BAS, não compromete os objetivos de escalonabilidade, e até ajuda a reduzir a contenção nas estruturas de dados. Mesmo assim, o RTWS também suporta uma sub-política de roubo determinística: PAS. A avaliação experimental, porém, não ajudou a ter uma noção clara do impacto de uma e de outra. No entanto, de uma maneira geral, podemos concluir que o RTWS é uma solução promissora para um escalonamento eficiente de tarefas paralelas com restrições temporais.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Este trabalho é uma parte do tema global “Suporte à Computação Paralela e Distribuída em Java”, também tema da tese de Daniel Barciela no mestrado de Engenharia Informática do Instituto Superior de Engenharia do Porto. O seu objetivo principal consiste na definição/criação da interface com o programador, assim como também abrange a forma como os nós comunicam e cooperam entre si para a execução de determinadas tarefas, de modo a atingirem um único objetivo global. No âmbito desta dissertação foi realizado um estudo prévio relativamente aos modelos teóricos referentes à computação paralela, assim como também foram analisadas linguagens e frameworks que fornecem suporte a este mesmo tipo de computação. Este estudo teve como principal objetivo a análise da forma como estes modelos e linguagens permitem ao programador expressar o processamento paralelo no desenvolvimento das aplicações. Como resultado desta dissertação surgiu a framework denominada Distributed Parallel Framework for Java (DPF4j), cujo objetivo principal é fornecer aos programadores o suporte para o desenvolvimento de aplicações paralelas e distribuídas. Esta framework foi desenvolvida na linguagem Java. Esta dissertação contempla a parte referente à interface de programação e a toda a comunicação entre nós cooperantes da framework DPF4j. Por fim, foi demonstrado através dos testes realizados que a DPF4j, apesar de ser ainda um protótipo, já demonstra ter uma performance superior a outras frameworks e linguagens que possuem os mesmos objetivos.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Atualmente o sistema produtivo do tipo job shop é muito comum nas PMEs (Pequenas e Médias Empresas). Estas empresas trabalham por encomenda. Produzem grande variedade de modelos, e em pequenas quantidades. Os prazos de entrega são um fator de elevada importância, pois os clientes exigem um produto de qualidade no tempo certo. O presente trabalho, pretende criar uma ferramenta de programação da produção para a secção da costura, usando dados reais da empresa, que tem uma implantação do tipo job shop com máquinas multi-operação (Multi-Purpose -Machines Job Shop). No final, são reunidas as principais conclusões e perspetivados futuros desenvolvimentos. Os resultados obtidos comprovam que o algoritmo desenvolvido, com base no algoritmo de Giffler & Thompson, consegue obter com grande precisão e de forma rápida o escalonamento / balanceamento da secção da costura. Com a ferramenta criada, a empresa otimiza a programação da secção da costura e fornece informação importante á gestão da produção, possibilitando uma melhoria do planeamento da empresa.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

A colaboração multidisciplinar é essencial para uma interacção homem-computador (IHC) efectiva. Historicamente a ciência dos computadores, a psicologia e as ciências sociais actuavam como disciplinas independentes, mas com o aumento da frequência na utilização das tecnologias da informação e comunicação em vários aspectos do dia-a-dia, a funcionalidade e acessibilidade assumiram uma importância cada vez maior. Neste artigo é apresentada uma reflexão sobre a multidisciplinaridade e transversalidade da IHC em termos tecnológicos e tendências futuras.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Os métodos clínicos que são realizados com recurso a tecnologias de imagiologia têm registado um aumento de popularidade nas últimas duas décadas. Os procedimentos tradicionais usados em cirurgia têm sido substituídos por métodos minimamente invasivos de forma a conseguir diminuir os custos associados e aperfeiçoar factores relacionados com a produtividade. Procedimentos clínicos modernos como a broncoscopia e a cardiologia são caracterizados por se focarem na minimização de acções invasivas, com os arcos em ‘C’ a adoptarem um papel relevante nesta área. Apesar de o arco em ‘C’ ser uma tecnologia amplamente utilizada no auxílio da navegação em intervenções minimamente invasivas, este falha na qualidade da informação fornecida ao cirurgião. A informação obtida em duas dimensões não é suficiente para proporcionar uma compreensão total da localização tridimensional da região de interesse, revelando-se como uma tarefa essencial o estabelecimento de um método que permita a aquisição de informação tridimensional. O primeiro passo para alcançar este objectivo foi dado ao definir um método que permite a estimativa da posição e orientação de um objecto em relação ao arco em ‘C’. De forma a realizar os testes com o arco em ‘C’, a geometria deste teve que ser inicialmente definida e a calibração do sistema feita. O trabalho desenvolvido e apresentado nesta tese foca-se num método que provou ser suficientemente sustentável e eficiente para se estabelecer como um ponto de partida no caminho para alcançar o objectivo principal: o desenvolvimento de uma técnica que permita o aperfeiçoamento da qualidade da informação adquirida com o arco em ‘C’ durante uma intervenção clínica.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

A alta e crescente participação da energia eólica na matriz da produção traz grandes desafios aos operadores do sistema na gestão da rede e planeamento da produção. A incerteza associada à produção eólica condiciona os processos de escalonamento e despacho económico dos geradores térmicos, uma vez que a produção eólica efetiva pode ser muito diferente da produção prevista. O presente trabalho propõe duas metodologias de otimização do escalonamento de geradores térmicos baseadas em Programação Inteira Mista. Pretende-se encontrar soluções de escalonamento que minimizem as influências negativas da integração de energia eólica no sistema elétrico. Inicialmente o problema de escalonamento de geradores é formulado sem considerar a integração da energia eólica. Posteriormente foi considerada a penetração da energia eólica no sistema elétrico. No primeiro modelo proposto, o problema é formulado como um problema de otimização estocástico. Nesta formulação todos os cenários de produção eólica são levados em consideração no processo de otimização. No segundo modelo, o problema é formulado como um problema de otimização determinística. Nesta formulação, o escalonamento é feito para cada cenário de produção eólica e no fim determina-se a melhor solução por meio de indicadores de avaliação. Foram feitas simulações para diferentes níveis de reserva girante e os resultados obtidos mostraram que a alta participação da energia eólica na matriz da produção põe em causa a segurança e garantia de produção devido às características volátil e intermitente da produção eólica e para manter os mesmos níveis de segurança é preciso dispor no sistema de capacidade reserva girante suficiente capaz de compensar os erros de previsão.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Este artigo apresenta uma nova abordagem (MM-GAV-FBI), aplicável ao problema da programação de projectos com restrições de recursos e vários modos de execução por actividade, problema conhecido na literatura anglo-saxónica por MRCPSP. Cada projecto tem um conjunto de actividades com precedências tecnológicas definidas e um conjunto de recursos limitados, sendo que cada actividade pode ter mais do que um modo de realização. A programação dos projectos é realizada com recurso a um esquema de geração de planos (do inglês Schedule Generation Scheme - SGS) integrado com uma metaheurística. A metaheurística é baseada no paradigma dos algoritmos genéticos. As prioridades das actividades são obtidas a partir de um algoritmo genético. A representação cromossómica utilizada baseia-se em chaves aleatórias. O SGS gera planos não-atrasados. Após a obtenção de uma solução é aplicada uma melhoria local. O objectivo da abordagem é encontrar o melhor plano (planning), ou seja, o plano que tenha a menor duração temporal possível, satisfazendo as precedências das actividades e as restrições de recursos. A abordagem proposta é testada num conjunto de problemas retirados da literatura da especialidade e os resultados computacionais são comparados com outras abordagens. Os resultados computacionais validam o bom desempenho da abordagem, não apenas em termos de qualidade da solução, mas também em termos de tempo útil.