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.
Temps partagéLe temps partagé ou pseudo-parallélisme, est une approche permettant de simuler le partage par plusieurs utilisateurs de temps processeur. Il ne faut pas le confondre avec le terme de multitâche : un système peut être multitâche sans être à temps partagé (par exemple s'il dispose de pilotes effectuant des tâches de fond asynchrones) ; il a également existé quelques systèmes de temps partagé qui n'étaient pas multitâches : le processeur divisait simplement son temps en tranches fixes.
Unconventional computingUnconventional computing is computing by any of a wide range of new or unusual methods. It is also known as alternative computing. The term unconventional computation was coined by Cristian S. Calude and John Casti and used at the First International Conference on Unconventional Models of Computation in 1998. The general theory of computation allows for a variety of models. Computing technology first developed using mechanical systems and then evolved into the use of electronic devices.
Sciences numériquesLes sciences numériques (traduction de l'anglais computational sciences), autrement dénommées calcul scientifique ou informatique scientifique, ont pour objet la construction de modèles mathématiques et de méthodes d'analyse quantitative, en se basant sur l'utilisation des sciences du numérique, pour analyser et résoudre des problèmes scientifiques. Cette approche scientifique basée sur un recours massif aux modélisations informatiques et mathématiques et à la simulation se décline en : médecine numérique, biologie numérique, archéologie numérique, mécanique numérique, par exemple.
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.
Point d'inflexionthumb|Représentation graphique de la fonction x ↦ x montrant un point d'inflexion aux coordonnées (0, 0). thumb|Point d'inflexion de la fonction arc tangente. En mathématiques, et plus précisément en analyse et en géométrie différentielle, un point d'inflexion est un point où s'opère un changement de concavité d'une courbe plane. En un tel point, la tangente traverse la courbe. C'est pourquoi les points d'inflexion, quand on arrive à les déterminer explicitement, aident à bien représenter l'allure de la courbe.
Optimisation convexevignette|320x320px|Optimisation convexe dans un espace en deux dimensions dans un espace contraint L'optimisation convexe est une sous-discipline de l'optimisation mathématique, dans laquelle le critère à minimiser est convexe et l'ensemble admissible est convexe. Ces problèmes sont plus simples à analyser et à résoudre que les problèmes d'optimisation non convexes, bien qu'ils puissent être NP-difficile (c'est le cas de l'optimisation copositive). La théorie permettant d'analyser ces problèmes ne requiert pas la différentiabilité des fonctions.
Peephole optimizationPeephole optimization is an optimization technique performed on a small set of compiler-generated instructions; the small set is known as the peephole or window. Peephole optimization involves changing the small set of instructions to an equivalent set that has better performance.
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.
Computational engineeringComputational Engineering is an emerging discipline that deals with the development and application of computational models for engineering, known as Computational Engineering Models or CEM. At this time, various different approaches are summarized under the term Computational Engineering, including using computational geometry and virtual design for engineering tasks, often coupled with a simulation-driven approach In Computational Engineering, algorithms solve mathematical and logical models that describe engineering challenges, sometimes coupled with some aspect of AI, specifically Reinforcement Learning.