Mobile robotA mobile robot is an automatic machine that is capable of locomotion. Mobile robotics is usually considered to be a subfield of robotics and information engineering. Mobile robots have the capability to move around in their environment and are not fixed to one physical location. Mobile robots can be "autonomous" (AMR - autonomous mobile robot) which means they are capable of navigating an uncontrolled environment without the need for physical or electro-mechanical guidance devices.
Visiteur (patron de conception)En programmation orientée objet et en génie logiciel, le patron de conception comportemental visiteur est une manière de séparer un algorithme d'une structure de données. Le Gang of Four définit le visiteur comme: Représentant [ing] une opération à effectuer sur des éléments d'une structure d'objet. Visitor permet de définir une nouvelle opération sans changer les classes des éléments sur lesquels elle opère.
Robotvignette|Atlas (2013), robot androïde de Boston Dynamics vignette|Bras manipulateurs dans un laboratoire (2009) vignette|NAO (2006), robot humanoïde éducatif d'Aldebaran Robotics vignette|DER1 (2005), un actroïde d'accueil vignette|Roomba (2002), un robot ménager Un robot est un dispositif mécatronique (alliant mécanique, électronique et informatique) conçu pour accomplir automatiquement des tâches imitant ou reproduisant, dans un domaine précis, des actions humaines.
Robot autonomevignette|exemple de robot autonome de type rover Un robot autonome, également appelé simplement autorobot ou autobot, est un robot qui exécute des comportements ou des tâches avec un degré élevé d'autonomie (sans influence extérieure). La robotique autonome est généralement considérée comme un sous-domaine de l'intelligence artificielle, de la robotique et de l'. Les premières versions ont été proposées et démontrées par l'auteur/inventeur David L. Heiserman.
Patron de conceptionEn informatique, et plus particulièrement en développement logiciel, un patron de conception (souvent appelé design pattern) est un arrangement caractéristique de modules, reconnu comme bonne pratique en réponse à un problème de conception d'un logiciel. Il décrit une solution standard, utilisable dans la conception de différents logiciels. Un patron de conception est issu de l'expérience des concepteurs de logiciels. Il décrit un arrangement récurrent de rôles et d'actions joués par des modules d'un logiciel, et le nom du patron sert de vocabulaire commun entre le concepteur et le programmeur.
Open sourceOpen source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized software development model that encourages open collaboration. A main principle of open-source software development is peer production, with products such as source code, blueprints, and documentation freely available to the public.
Poids-mouche (patron de conception)En génie logiciel, le poids-mouche (anglais : flyweight) est un patron de conception (design pattern) structurel décrit en 1995 par le Gang of Four. Lorsque de nombreux (petits) objets doivent être manipulés, mais qu'il serait trop coûteux en mémoire s'il fallait instancier tous ces objets, il est judicieux d'implémenter le poids-mouche. Dans le cas d'une classe représentant des données, il est parfois possible de réduire le nombre d'objets à instancier si tous ces objets sont semblables et se différencient sur quelques paramètres.
Prototypage logicielLe prototypage logiciel (ou « software prototyping » en anglais) désigne l'ensemble des activités de création de prototypes pour les logiciels, c'est-à-dire des versions incomplètes du programme en cours de développement. Cette activité est donc assez proche de la création et la validation de prototypes, telle qu'on la pratique dans l'industrie. Ainsi, un prototype permet d'explorer de façon interactive des scénarios d'utilisation du produit pour en valider les orientations.
Matériel librevignette|Zynthian, un projet de synthétiseur musical libre Le matériel libre, matériel ouvert ou matériel open source désigne, par analogie avec le logiciel libre et le logiciel open source, les technologies des matériels et produits physiques développés selon les principes des ressources libres de droits ou sous licence libre. . Chris Anderson, rédacteur en chef de Wired et auteur de la longue traîne, affirme que et évoque la voiture libre Rally Fighter, une des premières voitures de course open source (ses spécifications sont « libres »), développée de façon communautaire, par production participative.
Robot navigationRobot localization denotes the robot's ability to establish its own position and orientation within the frame of reference. Path planning is effectively an extension of localisation, in that it requires the determination of the robot's current position and a position of a goal location, both within the same frame of reference or coordinates. Map building can be in the shape of a metric map or any notation describing locations in the robot frame of reference. For any mobile device, the ability to navigate in its environment is important.
Pile graphique Linuxthumb|300px| à OpenGL. La pile graphique Linux (Linux graphics stack) désigne, dans une distribution GNU/Linux, l’ensemble des composants logiciels qui interviennent dans le processus d’affichage. Fichier:Linux graphics drivers 2D.svg|Pilotes 2D inclus dans [[serveur d'affichage|X server]] Fichier:Linux graphics drivers Utah GLX.svg|Rendu indirect par-dessus [[GLX]], utilisant [[Utah GLX]] Fichier:Linux graphics drivers DRI early.svg|Infrastructure de rendu direct et [[Linux framebuffer|framebuffer]] Fichier:Linux graphics drivers DRI current.
Histoire du logiciel libreLhistoire du logiciel libre est intimement imbriquée avec celle de l'informatique et celle du génie logiciel. Elle ne commence en tant que telle qu'à partir du moment où est apparu le besoin de distinguer le logiciel libre du logiciel propriétaire, selon le principe énoncé pour Le Cru et le Cuit. Ces prémices datant de la fin du , il ne peut s'agir d'une discipline académique. L'histoire du logiciel libre est donc présentée ici de façon informelle. thumb|Manipulation des nombres sur un boulier.
Robot militairethumb|Un THeMIS, robot militaire de fabrication estonienne. Un robot militaire, aussi appelé arme autonome, est un robot, autonome ou contrôlé à distance, conçu pour des applications militaires. Les drones sont une sous-classe des robots militaires. Des systèmes sont déjà actuellement en service dans un certain nombre de forces armées, où ils s'avèrent efficaces. Le drone "Predator", par exemple, est capable de prendre des photographies de surveillance, et même à lancer des missiles air-sol AGM-114N "Hellfire" II ou des GBU-12 "Paveway" II dans le cas du MQ-1 et du MQ-9.
Prototypevignette|Photographie d'un prototype BMW : la BMW Nazca C2 Dans le domaine de l'industrie et plus généralement de la recherche et développement (R&D), un prototype est selon la définition de l'OCDE , mais il s'agit aussi parfois d'un exemplaire incomplet (et non définitif) de ce que pourra être un produit (éventuellement de type logiciel, ou de type « service »Djellal, F., Gallouj, C., Gallouj, F., Francoz, D., & Jacquin, Y. (2001).
OpenCLOpenCL (Open Computing Language) est la combinaison d'une API et d'un langage de programmation dérivé du C, proposé comme un standard ouvert par le Khronos Group. OpenCL est conçu pour programmer des systèmes parallèles hétérogènes comprenant par exemple à la fois un CPU multi-cœur et un GPU. OpenCL propose donc un modèle de programmation se situant à l'intersection naissante entre le monde des CPU et des GPU, les premiers étant de plus en plus parallèles, les seconds étant de plus en plus programmables.
Accélération matérielleL'accélération matérielle consiste à confier une fonction spécifique effectuée par le processeur à un circuit intégré dédié qui effectuera cette fonction de façon plus efficace. Pendant longtemps, les calculs effectués par les ordinateurs grand public étaient entièrement pris en charge par le processeur central (CPU). Or, ce processeur s'avérait insuffisant dans un certain nombre de domaines. On eut l'idée de créer des circuits plus efficaces que le processeur pour ces tâches afin de le décharger.
Mesa 3DMesa 3D est une bibliothèque graphique libre, initialement développée par Brian Paul, à partir d', qui fournit une implémentation générique d'OpenGL pour réaliser des en temps réel, et ce sur de multiples plates-formes. Bien que Mesa 3D ne soit pas une implémentation officielle d'OpenGL, les structures, syntaxe et sémantique de son API sont celles d'OpenGL. En , Mesa 3D était la seule implémentation d'OpenGL complètement open source. Elle est principalement utilisée par l'implémentation X.
Pattern languageA pattern language is an organized and coherent set of patterns, each of which describes a problem and the core of a solution that can be used in many ways within a specific field of expertise. The term was coined by architect Christopher Alexander and popularized by his 1977 book A Pattern Language. A pattern language can also be an attempt to express the deeper wisdom of what brings aliveness within a particular field of human endeavor, through a set of interconnected patterns.
AntipatternEn génie logiciel, les anti-patrons ou antipatterns sont des erreurs courantes de conception des logiciels. Leur nom vient du fait que ces erreurs sont apparues dès les phases de conception du logiciel, notamment par l'absence ou la mauvaise utilisation de patrons de conception, appelés design pattern en anglais. Les anti-patrons se caractérisent souvent par une lenteur excessive du logiciel, des coûts de réalisation ou de maintenance élevés, des comportements anormaux et la présence de bugs.
Régularité (perception)thumb|Carreaux de faïence d'Iznik (seconde moitié du , Musée du Louvre, Département des arts de l'Islam). La nature, les arts et techniques et les abstractions peuvent présenter des régularités, qu'on désigne en anglais par le mot pattern. La traduction de pattern en français varie beaucoup selon le contexte. On peut le traduire notamment par patron (dont il est issu étymologiquement), modèle, forme, motif, schéma, structure ou régularité. Les éléments d'une régularité se répètent de façon prévisible.