Optimisation de codeEn programmation informatique, l'optimisation de code est la pratique consistant à améliorer l'efficacité du code informatique d'un programme ou d'une bibliothèque logicielle. Ces améliorations permettent généralement au programme résultant de s'exécuter plus rapidement, de prendre moins de place en mémoire, de limiter sa consommation de ressources (par exemple les fichiers), ou de consommer moins d'énergie électrique. La règle numéro un de l'optimisation est qu'elle ne doit intervenir qu'une fois que le programme fonctionne et répond aux spécifications fonctionnelles.
Optimisation (mathématiques)L'optimisation est une branche des mathématiques cherchant à modéliser, à analyser et à résoudre analytiquement ou numériquement les problèmes qui consistent à minimiser ou maximiser une fonction sur un ensemble. L’optimisation joue un rôle important en recherche opérationnelle (domaine à la frontière entre l'informatique, les mathématiques et l'économie), dans les mathématiques appliquées (fondamentales pour l'industrie et l'ingénierie), en analyse et en analyse numérique, en statistique pour l’estimation du maximum de vraisemblance d’une distribution, pour la recherche de stratégies dans le cadre de la théorie des jeux, ou encore en théorie du contrôle et de la commande.
Optimisation multiobjectifL'optimisation multiobjectif (appelée aussi Programmation multi-objective ou optimisation multi-critère) est une branche de l'optimisation mathématique traitant spécifiquement des problèmes d'optimisation ayant plusieurs fonctions objectifs. Elle se distingue de l'optimisation multidisciplinaire par le fait que les objectifs à optimiser portent ici sur un seul problème. Les problèmes multiobjectifs ont un intérêt grandissant dans l'industrie où les responsables sont contraints de tenter d'optimiser des objectifs contradictoires.
Parc éolienthumb|Parc éolien de Neuenkirchen (Allemagne). thumb|Parc éolien de Tauern (Autriche). Une centrale éolienne, parc éolien, ou ferme éolienne, est un site regroupant plusieurs éoliennes produisant de l'électricité. Il se trouve dans un lieu où le vent est fort et/ou régulier. vignette|centre|Parc de Guazhou (Chine).|upright=3 La ferme éolienne de Gansu, province du Gansu, en Chine, est le plus important parc du monde avec de puissance en novembre 2010.
Algorithme de colonies de fourmisLes algorithmes de colonies de fourmis (, ou ACO) sont des algorithmes inspirés du comportement des fourmis, ou d'autres espèces formant un superorganisme, et qui constituent une famille de métaheuristiques d’optimisation. Initialement proposé par Marco Dorigo dans les années 1990, pour la recherche de chemins optimaux dans un graphe, le premier algorithme s’inspire du comportement des fourmis recherchant un chemin entre leur colonie et une source de nourriture.
Wind-turbine aerodynamicsThe primary application of wind turbines is to generate energy using the wind. Hence, the aerodynamics is a very important aspect of wind turbines. Like most machines, wind turbines come in many different types, all of them based on different energy extraction concepts. Though the details of the aerodynamics depend very much on the topology, some fundamental concepts apply to all turbines. Every topology has a maximum power for a given flow, and some topologies are better than others.
Interprocedural optimizationInterprocedural optimization (IPO) is a collection of compiler techniques used in computer programming to improve performance in programs containing many frequently used functions of small or medium length. IPO differs from other compiler optimizations by analyzing the entire program as opposed to a single function or block of code. IPO seeks to reduce or eliminate duplicate calculations and inefficient use of memory and to simplify iterative sequences such as loops.
Optimizing compilerIn computing, an optimizing compiler is a compiler that tries to minimize or maximize some attributes of an executable computer program. Common requirements are to minimize a program's execution time, memory footprint, storage size, and power consumption (the last three being popular for portable computers). Compiler optimization is generally implemented using a sequence of optimizing transformations, algorithms which take a program and transform it to produce a semantically equivalent output program that uses fewer resources or executes faster.
Algorithmethumb|Algorithme de découpe d'un polygone quelconque en triangles (triangulation). Un algorithme est une suite finie et non ambiguë d'instructions et d’opérations permettant de résoudre une classe de problèmes. Le domaine qui étudie les algorithmes est appelé l'algorithmique. On retrouve aujourd'hui des algorithmes dans de nombreuses applications telles que le fonctionnement des ordinateurs, la cryptographie, le routage d'informations, la planification et l'utilisation optimale des ressources, le , le traitement de textes, la bio-informatique L' algorithme peut être mis en forme de façon graphique dans un algorigramme ou organigramme de programmation.
Algorithme génétiqueLes algorithmes génétiques appartiennent à la famille des algorithmes évolutionnistes. Leur but est d'obtenir une solution approchée à un problème d'optimisation, lorsqu'il n'existe pas de méthode exacte (ou que la solution est inconnue) pour le résoudre en un temps raisonnable. Les algorithmes génétiques utilisent la notion de sélection naturelle et l'appliquent à une population de solutions potentielles au problème donné.
Global optimizationGlobal optimization is a branch of applied mathematics and numerical analysis that attempts to find the global minima or maxima of a function or a set of functions on a given set. It is usually described as a minimization problem because the maximization of the real-valued function is equivalent to the minimization of the function . Given a possibly nonlinear and non-convex continuous function with the global minima and the set of all global minimizers in , the standard minimization problem can be given as that is, finding and a global minimizer in ; where is a (not necessarily convex) compact set defined by inequalities .
Optimisation combinatoireL’optimisation combinatoire, (sous-ensemble à nombre de solutions finies de l'optimisation discrète), est une branche de l'optimisation en mathématiques appliquées et en informatique, également liée à la recherche opérationnelle, l'algorithmique et la théorie de la complexité. Dans sa forme la plus générale, un problème d'optimisation combinatoire (sous-ensemble à nombre de solutions finies de l'optimisation discrète) consiste à trouver dans un ensemble discret un parmi les meilleurs sous-ensembles (ou solutions) réalisables, la notion de meilleure solution étant définie par une fonction objectif.
Énergie éolienneL’énergie éolienne est l'énergie du vent, dont la force motrice (énergie cinétique) est utilisée dans le déplacement de voiliers et autres véhicules ou transformée au moyen d'un dispositif aérogénérateur, comme une éolienne ou un moulin à vent, en une énergie diversement utilisable. L'énergie éolienne est une énergie renouvelable. L'énergie éolienne est une source d'énergie intermittente qui n'est pas produite à la demande, mais selon les conditions météorologiques ; elle nécessite donc des installations de production ou de stockage en remplacement pendant ses périodes d'indisponibilité.
Couche limitevignette|redresse=2|Couches limites laminaires et turbulentes d'un écoulement sur une plaque plane (avec profil des vitesses moyennes). La couche limite est la zone d'interface entre un corps et le fluide environnant lors d'un mouvement relatif entre les deux. Elle est la conséquence de la viscosité du fluide et est un élément important en mécanique des fluides (aérodynamique, hydrodynamique), en météorologie, en océanographie vignette|Profil de vitesses dans une couche limite.
Recherche locale (optimisation)En algorithmique, la recherche locale est une méthode générale utilisée pour résoudre des problèmes d'optimisation, c'est-à-dire des problèmes où l'on cherche la meilleure solution dans un ensemble de solutions candidates. La recherche locale consiste à passer d'une solution à une autre solution proche dans l'espace des solutions candidates (l'espace de recherche) jusqu'à ce qu'une solution considérée comme optimale soit trouvée, ou que le temps imparti soit dépassé.
ÉolienneUne éolienne est un dispositif qui transforme l'énergie cinétique du vent en énergie mécanique, dite énergie éolienne, laquelle est ensuite le plus souvent transformée en énergie électrique. Les éoliennes produisant de l'électricité sont appelées « aérogénérateurs », tandis que les éoliennes qui pompent directement de l'eau sont parfois dénommées « éoliennes de pompage » ou « pompes à vent ». Une forme ancienne d'éolienne est le moulin à vent.
Iterated local searchIterated Local Search (ILS) is a term in applied mathematics and computer science defining a modification of local search or hill climbing methods for solving discrete optimization problems. Local search methods can get stuck in a local minimum, where no improving neighbors are available. A simple modification consists of iterating calls to the local search routine, each time starting from a different initial configuration. This is called repeated local search, and implies that the knowledge obtained during the previous local search phases is not used.
Recherche tabouLa recherche tabou est une métaheuristique d'optimisation présentée par Fred W. Glover en 1986. On trouve souvent l'appellation recherche avec tabous en français. Cette méthode est une métaheuristique itérative qualifiée de recherche locale au sens large. L'idée de la recherche tabou consiste, à partir d'une position donnée, à en explorer le voisinage et à choisir la position dans ce voisinage qui minimise la fonction objectif.
Sillage (phénomène physique)vignette|Sillage occasionné par un bateau à faible vitesse. Le sillage est la trace marquant le passage d'un bateau dans un liquide ou d'un avion dans l'air. Dans les milieux incompressibles tels que l'eau, les molécules du liquide s'écartent à l'avant du bateau et forment une vague en forme de V dont l'amplitude décroit au fur et à mesure qu'elle s'écarte. Ces vagues peuvent être destructrices dans des milieux avec des berges fragiles. L'angle formé par le sillage est toujours égal a environ 39°.
Algorithme de rechercheEn informatique, un algorithme de recherche est un type d'algorithme qui, pour un domaine, un problème de ce domaine et des critères donnés, retourne en résultat un ensemble de solutions répondant au problème. Supposons que l'ensemble de ses entrées soit divisible en sous-ensemble, par rapport à un critère donné, qui peut être, par exemple, une relation d'ordre. De façon générale, un tel algorithme vérifie un certain nombre de ces entrées et retourne en sortie une ou plusieurs des entrées visées.