• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 4
  • 3
  • 3
  • 2
  • Tagged with
  • 13
  • 13
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • 3
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Advanced Electromagnetic System Analysis for Microwave Inverse and Design Problems

Song, Yunpeng 03 1900 (has links)
<p> This thesis contributes significantly to the advancement of the response sensitivity analysis with time-domain electromagnetic (EM) solvers. The proposed self-adjoint sensitivity approaches achieve unprecedented computational efficiency. The response Jacobians are computed as a simple post-process of the field solution and the approaches can be applied with any commercial time-domain solver. The proposed sensitivity solvers are a breakthrough in the sensitivity analysis of high-frequency structures since they can be implemented as standalone software or plugin for EM simulators. The goal is to aid the solution of microwave design and inverse problems.</p> <p> The sensitivity information is crucial in engineering problems such as gradient-based optimization, yield and tolerance analyses. However, due to the lack of robust algorithms, commercial EM simulators provide only specific engineering responses not their sensitivities (or derivatives with respect to certain system parameters). The sensitivities are typically obtained by response-level finite difference (FD) approximations or parameter sweeps. For each design parameter of interest, at least one additional full-wave analysis is performed. Such approaches can easily become prohibitively slow when the number of design parameters is large.</p> <p> However, no extra system analysis is needed with the self-adjoint sensitivity analysis methods. Both the responses and their Jacobian are obtained through a single system analysis. In this thesis, two self-adjoint sensitivity solvers are introduced. They are based on a self-adjoint formulation which eliminates the need to perform adjoint system analysis. The first sensitivity solver is based on a self-adjoint formula which operates on the time waveforms of the field solution. Three different approaches associated with this sensitivity solver have been presented. The first approach adopts the staggered grid of the finite-difference time-domain (FDTD) simulation. We refer it as the original self-adjoint approach. The second approach is the efficient coarse-grid approach. It uses a coarse independent FD grid whose step size can be many times larger than that of the FDTD simulation. The third approach is the accurate central-node approach. It uses a central-node grid whose field components are collocated in the center of the traditional Yee cell.</p> <p> The second self-adjoint sensitivity solver is based on a spectral sensitivity formula which operates on the spectral components of the E-field instead of its time waveforms. This is a memory efficient wideband sensitivity solver. It overcomes the drawback associated with our first sensitivity solver whose memory requirements may become excessive when the number of the perturbation grid points is very large. The spectral approach reduces the memory requirements roughly from Gigabytes to Megabytes. The focus of this approach is on microwave imaging applications where our first sensitivity solver is inapplicable due to the excessive memory requirements. The proposed sensitivity solver is also well suited for microwave design problems.</p> <p> The proposed self-adjoint sensitivity solvers in this thesis are verified by numerous examples. They are milestones in sensitivity analysis because they have finally made EM simulation-based optimization feasible.</p> / Thesis / Doctor of Philosophy (PhD)
2

Sobre a natureza dos problemas de projeto : grau de definição, coevolução e escolha de técnicas para a geração de alternativas

Aguiar, João Pedro Ornaghi de January 2011 (has links)
Esta dissertação trata das características próprias dos problemas de projeto de desenvolvimento de produtos. Os objetivos deste trabalho foram revisar parte da literatura publicada sobre a natureza dos problemas de projeto; confirmar, na prática, a mudança na definição dos componentes do problema ao longo da sua resolução; e propor uma estrutura que auxilie a escolha de ferramentas de geração de alternativas. São apresentados os resultados de uma observação do processo projetual realizado por estudantes de graduação da Engenharia e do Design, trabalhando conjuntamente. A dissertação é estruturada na forma de três artigos encadeados. Os resultados da revisão bibliográfica conformam o primeiro artigo, referente ao capítulo dois deste documento. A observação dos grupos de estudantes está no segundo artigo, referente ao capítulo três. A contribuição busca facilitar a tradução dos requisitos de um projeto em conceitos de um produto, através da proposição de uma matriz que cruza as dimensões dos problemas de projeto de produtos manufaturados industrialmente e algumas ferramentas conhecidas para a geração de alternativas. Essa matriz se encontra no terceiro artigo, referente ao capítulo quatro do documento. No quinto e último capítulo são elaboradas as conclusões do estudo, que apontam para a recursividade da atividade de definir um problema paralelamente ao seu processo de resolução. / This study is about the nature of design problems. Its objectives are: to review part of the literature about the topic; to confirm, with empirical basis, the changes in the components of design problem through the resolution process; and present a framework that helps choosing concept generating tools. The empirical data were obtained from observation and verbal protocols of graduation students from Engineering and Design courses working together. This research is presented in three linked articles, setting chapters two, three and four of this document. Chapter two represents the literature review. The observation of the students corresponds to chapter three. The contribution appears in chapter four, where the design problem dimensions are crossed with tools for concept generation. Lastly, in the fifth chapter, the conclusions pointed out to the recursiveness in the problem definition and solution generation process.
3

Sobre a natureza dos problemas de projeto : grau de definição, coevolução e escolha de técnicas para a geração de alternativas

Aguiar, João Pedro Ornaghi de January 2011 (has links)
Esta dissertação trata das características próprias dos problemas de projeto de desenvolvimento de produtos. Os objetivos deste trabalho foram revisar parte da literatura publicada sobre a natureza dos problemas de projeto; confirmar, na prática, a mudança na definição dos componentes do problema ao longo da sua resolução; e propor uma estrutura que auxilie a escolha de ferramentas de geração de alternativas. São apresentados os resultados de uma observação do processo projetual realizado por estudantes de graduação da Engenharia e do Design, trabalhando conjuntamente. A dissertação é estruturada na forma de três artigos encadeados. Os resultados da revisão bibliográfica conformam o primeiro artigo, referente ao capítulo dois deste documento. A observação dos grupos de estudantes está no segundo artigo, referente ao capítulo três. A contribuição busca facilitar a tradução dos requisitos de um projeto em conceitos de um produto, através da proposição de uma matriz que cruza as dimensões dos problemas de projeto de produtos manufaturados industrialmente e algumas ferramentas conhecidas para a geração de alternativas. Essa matriz se encontra no terceiro artigo, referente ao capítulo quatro do documento. No quinto e último capítulo são elaboradas as conclusões do estudo, que apontam para a recursividade da atividade de definir um problema paralelamente ao seu processo de resolução. / This study is about the nature of design problems. Its objectives are: to review part of the literature about the topic; to confirm, with empirical basis, the changes in the components of design problem through the resolution process; and present a framework that helps choosing concept generating tools. The empirical data were obtained from observation and verbal protocols of graduation students from Engineering and Design courses working together. This research is presented in three linked articles, setting chapters two, three and four of this document. Chapter two represents the literature review. The observation of the students corresponds to chapter three. The contribution appears in chapter four, where the design problem dimensions are crossed with tools for concept generation. Lastly, in the fifth chapter, the conclusions pointed out to the recursiveness in the problem definition and solution generation process.
4

Sobre a natureza dos problemas de projeto : grau de definição, coevolução e escolha de técnicas para a geração de alternativas

Aguiar, João Pedro Ornaghi de January 2011 (has links)
Esta dissertação trata das características próprias dos problemas de projeto de desenvolvimento de produtos. Os objetivos deste trabalho foram revisar parte da literatura publicada sobre a natureza dos problemas de projeto; confirmar, na prática, a mudança na definição dos componentes do problema ao longo da sua resolução; e propor uma estrutura que auxilie a escolha de ferramentas de geração de alternativas. São apresentados os resultados de uma observação do processo projetual realizado por estudantes de graduação da Engenharia e do Design, trabalhando conjuntamente. A dissertação é estruturada na forma de três artigos encadeados. Os resultados da revisão bibliográfica conformam o primeiro artigo, referente ao capítulo dois deste documento. A observação dos grupos de estudantes está no segundo artigo, referente ao capítulo três. A contribuição busca facilitar a tradução dos requisitos de um projeto em conceitos de um produto, através da proposição de uma matriz que cruza as dimensões dos problemas de projeto de produtos manufaturados industrialmente e algumas ferramentas conhecidas para a geração de alternativas. Essa matriz se encontra no terceiro artigo, referente ao capítulo quatro do documento. No quinto e último capítulo são elaboradas as conclusões do estudo, que apontam para a recursividade da atividade de definir um problema paralelamente ao seu processo de resolução. / This study is about the nature of design problems. Its objectives are: to review part of the literature about the topic; to confirm, with empirical basis, the changes in the components of design problem through the resolution process; and present a framework that helps choosing concept generating tools. The empirical data were obtained from observation and verbal protocols of graduation students from Engineering and Design courses working together. This research is presented in three linked articles, setting chapters two, three and four of this document. Chapter two represents the literature review. The observation of the students corresponds to chapter three. The contribution appears in chapter four, where the design problem dimensions are crossed with tools for concept generation. Lastly, in the fifth chapter, the conclusions pointed out to the recursiveness in the problem definition and solution generation process.
5

[en] ON THE PRIORITIZATION OF DESIGN-RELEVANT SMELLS / [pt] PRIORIZAÇÃO DE ANOMALIAS DE CÓDIGO RELEVANTES AO PROJETO DOS SISTEMAS DE SOFTWARE

ANDERSON JOSE SILVA DE OLIVEIRA 31 March 2020 (has links)
[pt] Sistemas de software provavelmente enfrentarão os chamados problemas de projeto. Um problema de projeto é o resultado de más decisões que podem afetar alguns atributos de qualidade importantes do sistema de software, como manutenção, desempenho e afins. Dada a típica falta de documentação do projeto, os desenvolvedores precisam confiar em sintomas que aparecem a nível de implementação para identificar e remover problemas de projeto. Um sintoma a nível de implementação geralmente se manifesta como uma anomalia de código, que se trata de uma microestrutura no programa possivelmente indicando a presença de (ou parte de) um problema de projeto. Grandes programas possuem centenas ou milhares de elementos (pacotes, classes, interfaces e afins) nos quais uma proporção significativa é afetada por anomalias. No entanto, muitas dessas anomalias não possuem relação com problemas de projeto, em outras palavras, elas não são anomalias relevantes ao problema de projeto. Desse modo, torna-se difícil e demorado priorizar os elementos anômalos do programa que são suspeitos de terem problema de projeto. Infelizmente, a literatura não fornece aos desenvolvedores heurísticas que auxiliem a priorização destes elementos de projeto suspeitos. Neste contexto, esta dissertação reporta dois estudos que objetivam auxiliar na elaboração de tais heurísticas, visando auxiliar o desenvolvedor nas decisões de priorização. O objetivo destas heurísticas é localizar uma pequena lista de elementos suspeitos de terem anomalias de código relevantes ao problema de projeto. Nosso primeiro estudo consiste em uma análise qualitativa para determinar os critérios utilizados pelos desenvolvedores para a priorização de elementos suspeitos de terem problemas de projeto. Com base nesses critérios, derivamos um conjunto preliminar de heurísticas de priorização. Nosso segundo estudo centrou-se na avaliação destas heurísticas. Como resultado, descobrimos que duas das nove heurísticas alcançaram os melhores resultados de precisão. As melhores heurísticas são baseadas em dois critérios: diversidade de anomalias e granularidade das anomalias. Nossas descobertas sugerem que fomos capazes de obter uma primeira abordagem promissora para apoiar os desenvolvedores na priorização de elementos com anomalias de código relevantes ao projeto de software. / [en] Software systems are likely to face what is called design problems. A design problem is the result of bad decisions that can aect some important quality attributes of the software system such as maintainability, performance and the like. Given the typical lack of design documentation, developers have to rely on implementation-level symptoms to identify and remove design problems. An implementation-level symptom usually manifests as a code smell, a micro-structure in the program possibly indicating the presence of (or part of) a design problem. Large programs have hundreds or thousands of program elements (packages, classes, interfaces, and the like) in which a significant proportion is aected by smells. However, many of these smells may bear no relationship with design problems, i.e. they are not design-relevant smells. Then, it becomes hard and time-consuming to prioritize smelly program elements being suspects of having a design problem. Unfortunately, the literature fails to provide developers with heuristics to support the prioritization of these suspicious program elements. In this context, this dissertation reports two studies aimed at assisting in the elaboration of such prioritization heuristics. The goal of these heuristics is to locate a short (high priority) list of smelly program elements, which are suspects of having design-relevant smells. Our first study consists of a qualitative analysis on recurring criteria used by developers, in practice, to prioritize elements suspicious of having design problems. Based on these criteria, we derived a preliminary suite of prioritization heuristics. Our second study focused on the evaluation of the proposed heuristics. As a result, we found that two out of nine heuristics reached the best results in precision. The best heuristics are based on two criteria: smell diversity and smell granularity. Our findings suggest that we were able to derive a first promising approach to support developers in prioritizing elements with design-relevant smells.
6

Designing Two-Echelon Distribution Networks under Uncertainty / Design de réseaux de distribution à deux échelons sous incertitude

Ben Mohamed, Imen 27 May 2019 (has links)
Avec la forte croissance du e-commerce et l'augmentation continue de la population des villes impliquant des niveaux de congestion plus élevés, les réseaux de distribution doivent déployer des échelons supplémentaires pour offrir un ajustement dynamique aux besoins des entreprises au cours du temps et faire face aux aléas affectant l’activité de distribution. Dans ce contexte, les praticiens s'intéressent aux réseaux de distribution à deux échelons. Dans cette thèse, nous commençons par présenter une revue complète des problèmes de design des réseaux de distribution et souligner des caractéristiques essentielles de modélisation. Ces aspects impliquent la structure à deux échelons, l’aspect multi-période, l’incertitude et les méthodes de résolution. Notre objectif est donc, d’élaborer un cadre complet pour le design d’un réseau de distribution efficace à deux échelons, sous incertitude et multi-périodicité, dans lequel les produits sont acheminés depuis les plateformes de stockage (WP) vers les plateformes de distribution (DP) avant d'être transportés vers les clients. Ce cadre est caractérisé par une hiérarchie temporelle entre le niveau de design impliquant des décisions relatives à la localisation des plateformes et à la capacité allouée aux DPs sur une échelle de temps annuelle, et le niveau opérationnel concernant des décisions journalières de transport. % sur une base journalière.Dans une première étude, nous introduisons le cadre complet pour le problème de design de réseaux de distribution à deux échelons avec une demande incertaine, une demande et un coût variables dans le temps. Le problème est formulé comme un programme stochastique à plusieurs étapes. Il implique au niveau stratégique des décisions de localisation des DPs ainsi que des décisions d'affectation des capacités aux DPs sur plusieurs périodes de design, et au niveau opérationnel des décisions de transport sous forme d'arcs origine-destination. Ensuite, nous proposons deux modèles alternatifs basés sur la programmation stochastique à deux étapes avec recours, et les résolvons par une approche de décomposition de Benders intégrée à une technique d’approximation moyenne d’échantillon (SAA). Par la suite, nous nous intéressons à la livraison du dernier kilomètre dans un contexte urbain où les décisions de transport dans le deuxième échelon sont caractérisées par des tournées de véhicules. Un problème multi-période stochastique de localisation-routage à deux échelons avec capacité (2E-SM-CLRP) est défini, dans lequel les décisions de localisation concernent les WPs et les DPs. Le modèle est un programme stochastique à deux étapes avec recours en nombre entier. Nous développons un algorithme de décomposition de Benders. Les décisions de localisation et de capacité sont déterminées par la solution du problème maître de Benders. Le sous-problème résultant est un problème multi-dépôt de tournées de véhicule avec des dépôts et véhicules capacitaires qui est résolu par un algorithme de branch-cut-and-price.Enfin, nous étudions le cadre à plusieurs étapes proposé pour le problème stochastique multi-période de design de réseaux de distribution à deux échelons et évaluons sa tractabilité. Pour ceci, nous développons une heuristique à horizon glissant qui permet d’obtenir des bornes de bonne qualité et des solutions de design pour le modèle à plusieurs étapes. / With the high growth of e-commerce and the continuous increase in cities population contrasted with the rising levels of congestion, distribution schemes need to deploy additional echelons to offer more dynamic adjustment to the requirement of the business over time and to cope with all the random factors. In this context, a two-echelon distribution network is nowadays investigated by the practitioners.In this thesis, we first present a global survey on distribution network design problems and point out many critical modeling features, namely the two-echelon structure, the multi-period setting, the uncertainty and solution approaches. The aim, here, is to propose a comprehensive framework for the design of an efficient two-echelon distribution network under multi-period and stochastic settings in which products are directed from warehouse platforms (WPs) to distribution platforms (DPs) before being transported to customers. A temporal hierarchy characterizes the design level dealing with facility-location and capacity decisions over a set of design periods, while the operational level involves transportation decisions on a daily basis.Then, we introduce the comprehensive framework for the two-echelon distribution network design problem under uncertain demand, and time-varying demand and cost, formulated as a multi-stage stochastic program. This work looks at a generic case for the deployment of a retailer's distribution network. Thus, the problem involves, at the strategic level, decisions on the number and location of DPs along the set of design periods as well as decisions on the capacity assignment to calibrate DP throughput capacity. The operational decisions related to transportation are modeled as origin-destination arcs. Subsequently, we propose alternative modeling approaches based on two-stage stochastic programming with recourse, and solve the resulting models using a Benders decomposition approach integrated with a sample average approximation (SAA) technique.Next, we are interested in the last-mile delivery in an urban context where transportation decisions involved in the second echelon are addressed through multi-drop routes. A two-echelon stochastic multi-period capacitated location-routing problem (2E-SM-CLRP) is defined in which facility-location decisions concern both WPs and DPs. We model the problem using a two-stage stochastic program with integer recourse. To solve the 2E-SM-CLRP, we develop a Benders decomposition algorithm. The location and capacity decisions are fixed from the solution of the Benders master problem. The resulting subproblem is a capacitated vehicle-routing problem with capacitated multi-depot (CVRP-CMD) and is solved using a branch-cut-and-price algorithm.Finally, we focus on the multi-stage framework proposed for the stochastic multi-period two-echelon distribution network design problem and evaluate its tractability. A scenario tree is built to handle the set of scenarios representing demand uncertainty. We present a compact formulation and develop a rolling horizon heuristic to produce design solutions for the multi-stage model. It provides good quality bounds in a reasonable computational times.
7

Vector Optimization Decision Convergence Algorithm (VODCA)

Morgan, Thomas Ward 01 May 1980 (has links)
Many professions occasionally involve the selection of an alternative from among many problem solutions which have impacts in multiple-interest areas; however, due to the very nature of his work, the practicing engineer, regardless of specialty, is unavoidably engaged in this selection process. The emergence of national concern for environmental and social consequences of technical enterprises, as reflected through legislative action, has accentuated the need for multicriteria design methodologies in some areas of engineering (i.e., automotive). Consequently, interest in the development of pragmatic and theoretically sound approaches to multi-impact design situations has been keen. Any approach to multicriteria design/decision problems involves two fundamental aspects: (1) generating information regarding the range of possible designs and their associated impacts; and (2) generating relative value information which is used to compare the relative imp-cats leading to the selection of a "preferred" or "best compromise" alternative. The methodology developed herein is the integration of a formal mathematical programming technique for generating the full range of feasible alternatives with a pragmatic and well-accepted group-interaction technique for extracting value information regarding alternatives. The integration results in an iterative group-interaction process which leads to successive reductions in the preferred range of alternatives until the most preferred alternative is identified. The methodology developed in this research represents an improvement over other methodologies reported in the literature in two areas: 1) The noninferior set is explicitly identified insuring selection of a group decision point which is noninferior, 2) a least squared error mathematical filtering technique is developed for smoothing relative value data obtained from the decision making body. In addition, a convergence proof is developed which not only indicates the theoretically sound and robust nature of the algorithm developed in this work but in addition provides a basis for an improved class of algorithms for solving classical nonlinear constrained problems. The technique was developed for and implemented in an interactive software package. The multiobjective decision problem is solved in a single encounter with a cooperative decision making group.
8

Contributions à la conception de réseaux avec coûts fixes et routes optimales pour les usagers / Contributions for the Fixed Charge Network Design Problem with User-optimal Flow

Gonzalez Silva, Pedro Henrique 03 September 2015 (has links)
Etudes sur des problèmes de conception de réseau .Ce travail trouve sa motivation dans le grand nombre d’applications liées aux problèmes deconception de réseau, ainsi que dans leur complexités. En particulier, nous nous focalisonsur deux problèmes de conception de réseau, le Fixed Charge Uncapacitated NetworkDesign Problem with User-optimal Flow (FCNDP-UOF) et le Transmission ExpansionPlanning Problem with Redesign (TEPR). Bien qu’appartenant tout deux à la classe desproblèmes de conception de réseau, ils ont des structures différentes et spécifiques qui lesrendent intéressants.Le FCNDP-UOF est relatif au transport de produits dans les grands centres urbainset peut être modélisé comme un problème de programmation linéaire discret à deuxniveaux. Ce type de problème implique deux agents agissant simultanément plutôt queséquentiellement lors de la prise décisions. Au niveau supérieur, le leader est chargéde choisir un sous-ensemble d’arrêtes qui seront ouvertes afin de minimiser la somme descoûts fixes (d’ouverture d’arrête) et variable (de transport des commodités sur les arrêtes).Au niveau inférieur, le suiveur doit choisir un ensemble de plus courts chemins dans leréseau, par lesquels les produits seront envoyé. L’effet d’un agent sur l’autre est indirect:la décision du suiveur est affectée par le réseau conçu par le niveau supérieur, alors quela décision du leader est affectée par les coûts variables imposés par les chemins établisau niveau inférieur.Le TEPR est un problème permettant d’établir une stratégie d’expansion des réseaux detransport d’électricité en ajoutant ou supprimant des lignes de transmission. Au contrairedes autres problèmes de conception de réseau, tels que les problème des transport public,de transport de marchandises (problème de tournées de véhicules), transport de données(conception de réseau de télécommunication), l’ajout d’une ligne de transmission peutrendre impraticable une configuration qui avant etait réalisable. Cette caractéristique estdue au fait que le gestionnaire du réseau ne peut pas choisir la façon dont les lignes detransmission seront utilisées. Il ne peut agir que sur la répartition de la production etn’affecter qu’indirectement l’acheminement de l?énergie et ne peut que choisir les anglesde voltage. Cette caracteristique rend le problème a la fois très difficile et très intérêssant.L’objectif principal de cette thèse est d’étudier ces deux problèmes et de développer desalgorithmes exacts, des métaheuristiques et des méthodes hybrides. Pour le premièrproblème, on a étudié trois formulations mathemátiques, deux méthodes permettant detrouver des limites inférieures (une génération de colonnes et une heuristique) et on adéveloppé plusieurs méthodes qui ont été combinées pour obtenir une méthode de typeGRASP et une méthode de type Recherche Locale Itérative. Pour le deuxième problèmenous avons généré de nouvelles instances, développé deux nouvelles méthodes et testé cesdeux approches comme des alternatives à la résolution directe du modèle mathématique.La première méthode est une méthode de décomposition de Benders. La seconde est unecombinaison de la formulation mathématique avec un local branching.Toutes les méthodes ont été testées intensivement. Les résultats montrent l’efficacité desméthodes par rapport à l’état de l’art de chaque problème. / This thesis deals with two network design problems by means of exact, metaheuristic and hybrid techniques. The first problem studied here is the Fixed Charge Uncapacitated Network Design Problem with User-optimal Flow (FCNDP-UOF), which concerns routing multiple commodities from its origin to its destination by designing a network through selecting arcs, with an objective of minimizing the sum of the fixed costs of the selected arcs plus the sum of variable costs associated to the flows on each arc. Besides that, since the FCNDP-UOF is a bilevel problem, each commodity has to be transported through a shortest path, concerning the edges length, in the built network. To this problem existent mathematical formulations were studied and had its linear relaxations compared. After that, new heuristics and two new hybrid methods were tested. Computational experiments shows that the proposed algorithms for the FCNDP-UOF worked very well leading to a new state of the art method. The second problem studied is the Transmission Expansion Planning Problem with Redesign (TEPr), which given a new set of loads and an initial network, consists of adding or removing transmission lines in order to satisfy the new imposed loads, while minimizing the operational cost. The developed method is call Ring Partition Search and can be used as both exact and heuristic method. Computational experiments shows the impact of this method in comparison to the straight forward application of the mathematical formulation in a commercial solver. / Esta tese trata de dois problemas de planejamento de redes por meio de técnicas exatas,metaheurísticos e híbridos. O primeiro problema aqui estudado é o Problema de Planejamentode Redes com Rotas Ótimas para o Usuário (FCNDP-UOF), que diz respeitoao roteamento de múltiplos produtos desde sua origem até ao seu destino. Para realizareste roteamento uma rede é construída, minimizando a soma dos custos de adição dosarcos selecionados mais a soma dos custos variáveis associados aos fluxos em cada arco.Além disso, uma vez que o FCNDP-UOF é um problema de dois níveis, cada mercadoriatem que ser transportados por um caminho mais curto, relativo à ao comprimento dosarcos, na rede construída. Para este problema formulações matemáticas existentes foramestudadas e tiveram a força de suas relaxações lineares comparada. Depois disso, umanova heurística e dois novos métodos híbridos foram testados. Os experiências computacionaismostram que os algoritmos propostos para o FCNDP-UOF funcionam muito bemsuperando o estado da arte do problema. O segundo problema estudado é o problema dePlanejamento de Expansão de Redes de Transmissão com Redimensionamento (TEPR),que dado um novo conjunto de demandas e uma rede inicial, consiste na adição ou remoçãode linhas de transmissão, a fim de satisfazer as novas demandas impostas, minimizandoo custo operacional. Dois métodos foram desenvolvidos. O primeiro é uma decomposiçãode benders onde um conjunto de variáveis continuas é permitido no problema mestre,melhorando assim o limite da relaxação inicial. O segundo, chamado Busca Particionadaem Anéis, pode ser usado tanto como método exato e heurística. Experimentos computacionaismostraram o impacto destes métodos em comparação com a aplicação direta daformulação matemática em um solver comercial.
9

[pt] COMPREENDENDO A IDENTIFICAÇÃO DE PROBLEMAS DE PROJETO: COMBINANDO MULTIPLOS SINTOMAS / [en] UNVEILING DESIGN PROBLEMS IDENTIFICATION: COMBINING MULTIPLE SYMPTOMS

ANDERSON JOSE SILVA DE OLIVEIRA 02 January 2024 (has links)
[pt] O projeto de software resulta das decisões ao longo do seu desenvolvimento. Algumas dessas decisões podem levar a problemas de projeto, afetando negativamente os requisitos não funcionais (RNFs). Embora seja crucial identificar esses problemas, essa é uma tarefa complexa, especialmente quando o código-fonte é o único artefato disponível. Nessa tarefa, os desenvolvedores podem ter que considerar vários sintomas (por exemplo, anomalias de código) para identificar até mesmo um único problema de projeto. Estudos anteriores sugerem que usar um único sintoma pode ser inadequado para identificar tais problemas. Portanto, nesta tese, investigamos como múltiplos sintomas podem ser usados nessa identificação. Em nosso primeiro estudo, nos concentramos em investigar o uso de anomalias de código bem conhecidos (anomalias de manutenabilidade). Nós identificamos que os desenvolvedores podem se beneficiar desse tipo de sintoma quando as ocorrências das anomalias afetam a mesma localização do programa e formam um padrão, podendo indicar melhor a presença de um problema de projeto. No entanto, também revelamos as limitações ao depender exclusivamente desse tipo de sintoma, destacando a necessidade de contexto adicional. Isso nos levou ao segundo estudo, onde investigamos um tipo adicional de sintoma, anomalias de robustez, e seu uso combinado com anumalias de manutenabilidade. Nós identificamos que ambos os tipos de anomalia de código podem ajudar os desenvolvedores na identificação de problemas de projeto principalmente relacionados à má modularização do sistema. Através desses dois estudos, observamos a necessidade de compreender as perspectivas e estratégias dos desenvolvedores em relação aos RNFs do sistema. Ao fazê-lo, podemos potencialmente entender quem são os desenvolvedores mais capazes de prevenir, discutir e identificar problemas de projeto. Isso nos levou ao terceiro estudo, onde investigamos como os desenvolvedores discutem e abordam RNFs em seus sistemas, revelando estratégias comuns em relação a esses requisitos. Esses resultados nos proporcionaram uma compreensão mais abrangente de como os desenvolvedores podem combinar diferentes sintomas e como percebem sua importância dentro de seus sistemas. / [en] Software design results from stakeholder decisions made through software development. Some of these decisions may lead to design problems, negatively impacting non-functional requirements (NFRs). Even though identifying design problems is crucial, this is a complex task, especially when the source code is the only artifact available. Along this task, developers may have to reason about multiple symptoms (e.g., code smells and nonconformities with NFRs) to identify even a single design problem. In fact, previous studies suggest that relying on a single symptom may be inadequate for the design problem identification. Thus, in this thesis, we investigate the role that the use of multiple symptoms may have on the identification of design problems. In our first study, we focused on investigating the use of well-known code smells (called here maintainability smells) to support this task. Our results indicated that developers could benefit from this type of symptom when smell occurrences affect the same program location and form a pattern; i.e., a set of co-occurring maintainability smells may better indicate the presence of a design problem. Nevertheless, we also reveal the limitations of relying solely on this type of symptom, highlighting the need for additional context. This leads us to the second study, where we investigate an additional type of symptom, robustness smells, and its combined use with maintainability smells. Our results indicated that the use of both types of smells can help developers in the identification of design problems mainly related to bad modularization of the system (e.g. excess of responsibilities assigned to the same component). Through these two studies, we observed the need to understand the perspectives and strategies of developers toward the NFRs of the system. In doing so, we can potentially understand who are the developers better able to prevent, discuss and identify design problems. That led us to our third study, where we investigated how developers discuss and address NFRs in their systems, uncovering common strategies toward these requirements. These results led us to a more comprehensive understanding of how developers can combine different symptoms and how they perceive their significance within their systems.
10

Développement logiciel par transformation de modèles

El boussaidi, Ghizlane 07 1900 (has links)
La recherche en génie logiciel a depuis longtemps tenté de mieux comprendre le processus de développement logiciel, minimalement, pour en reproduire les bonnes pratiques, et idéalement, pour pouvoir le mécaniser. On peut identifier deux approches majeures pour caractériser le processus. La première approche, dite transformationnelle, perçoit le processus comme une séquence de transformations préservant certaines propriétés des données à l’entrée. Cette idée a été récemment reprise par l’architecture dirigée par les modèles de l’OMG. La deuxième approche consiste à répertorier et à codifier des solutions éprouvées à des problèmes récurrents. Les recherches sur les styles architecturaux, les patrons de conception, ou les cadres d’applications s’inscrivent dans cette approche. Notre travail de recherche reconnaît la complémentarité des deux approches, notamment pour l’étape de conception: dans le cadre du développement dirigé par les modèles, nous percevons l’étape de conception comme l’application de patrons de solutions aux modèles reçus en entrée. Il est coutume de définir l’étape de conception en termes de conception architecturale, et conception détaillée. La conception architecturale se préoccupe d’organiser un logiciel en composants répondant à un ensemble d’exigences non-fonctionnelles, alors que la conception détaillée se préoccupe, en quelque sorte, du contenu de ces composants. La conception architecturale s’appuie sur des styles architecturaux qui sont des principes d’organisation permettant d’optimiser certaines qualités, alors que la conception détaillée s’appuie sur des patrons de conception pour attribuer les responsabilités aux classes. Les styles architecturaux et les patrons de conception sont des artefacts qui codifient des solutions éprouvées à des problèmes récurrents de conception. Alors que ces artefacts sont bien documentés, la décision de les appliquer reste essentiellement manuelle. De plus, les outils proposés n’offrent pas un support adéquat pour les appliquer à des modèles existants. Dans cette thèse, nous nous attaquons à la conception détaillée, et plus particulièrement, à la transformation de modèles par application de patrons de conception, en partie parce que les patrons de conception sont moins complexes, et en partie parce que l’implémentation des styles architecturaux passe souvent par les patrons de conception. Ainsi, nous proposons une approche pour représenter et appliquer les patrons de conception. Notre approche se base sur la représentation explicite des problèmes résolus par ces patrons. En effet, la représentation explicite du problème résolu par un patron permet : (1) de mieux comprendre le patron, (2) de reconnaître l’opportunité d’appliquer le patron en détectant une instance de la représentation du problème dans les modèles du système considéré, et (3) d’automatiser l’application du patron en la représentant, de façon déclarative, par une transformation d’une instance du problème en une instance de la solution. Pour vérifier et valider notre approche, nous l’avons utilisée pour représenter et appliquer différents patrons de conception et nous avons effectué des tests pratiques sur des modèles générés à partir de logiciels libres. / Software engineering researchers have long tried to understand the software process development to mechanize it or at least to codify its good practices. We identify two major approaches to characterize the process. The first approach—known as transformational—sees the process as a sequence of property-preserving transformations. This idea was recently adopted by the OMG’s model-driven architecture (MDA). The second approach consists in identifying and codifying proven solutions to recurring problems. Research on architectural styles, frameworks and design patterns are part of this approach. Our research recognizes the complementarity of these two approaches, in particular in the design step. Indeed within the model-driven development context, we view software design as the process of applying codified solution patterns to input models. Software design is typically defined in terms of architectural design and detailed design. Architectural design aims at organizing the software in modules or components that meet a set of non-functional requirements while detailed design is—in some way—concerned by the contents of the identified components. Architectural design relies on architectural styles which are principles of organization to optimize certain quality requirements, whereas detailed design relies on design patterns to assign responsibilities to classes. Both architectural styles and design patterns are design artifacts that encode proven solutions to recurring design problems. While these design artifacts are documented, the decision to apply them remains essentially manual. Besides, once a decision has been made to use a design artifact, there is no adequate support to apply it to existing models. As design patterns present an ‘‘easier’’ problem to solve, and because architectural styles implementation relies on design patterns, our strategy for addressing these issues was to try to solve the problem for design patterns first, and then tackle architectural styles. Hence, in this thesis, we propose an approach for representing and applying design patterns. Our approach is based on an explicit representation of the problems solved by design patterns. Indeed, and explicit representation of the problem solved by a pattern enables to: 1) better understand the pattern, 2) recognize the opportunity of applying the pattern by matching the representation of the problem against the models of the considered system, and 3) specify declaratively the application of the pattern as a transformation of an instance of the problem into an instance of the solution. To verify and validate the proposed approach, we used it to represent and apply several design patterns. We also conducted practical tests on models generated from open source systems.

Page generated in 0.441 seconds