181 |
Étude d'algorithmes en visualisation et exploration de grands graphes à l'aide de valuationsLambert, Jérôme January 2006 (has links) (PDF)
La visualisation est un domaine de recherche encore jeune, étudiant les représentations graphiques produite à partir d'ensembles de données afin de les analyser.
Ce domaine de recherche devient particulièrement intéressant lorsque l'on considère la quantité d'information de plus en plus importante générée de nos jours dans divers domaines de gestion et de recherche. Ce mémoire vise deux objectifs principaux. Tout d'abord, nous effectuerons une étude sommaire des algorithmes de visualisation scientifique et d'information, ainsi que des méthodes d'interaction y étant rattachées. Par la suite, nous porterons notre attention sur l'exploration de graphes de grande taille à l'aide de valuations. À partir du graphe étudié, nous produirons un volume correspondant à un histogramme tridimensionnel généré par le calcul d'un triplet de valuations. Chacun des sommets ou arêtes du graphe est associé à un point à l'intérieur du volume. On applique ensuite la convolution d'un noyau Gaussien à ce volume et celui-ci est présenté à l'utilisateur à l'aide d'un algorithme de rendu de volume. L'opération de convolution transforme le nuage de points formant l'histogramme à trois dimensions en un ensemble de nuages diffus et permet de faciliter la sélection de zones d'intérêt à l'intérieur du volume.
De plus, nous introduirons un contrôleur graphique permettant de naviguer à l'intérieur du volume et d'en extraire des régions d'intérêt. Ces régions représentent des groupes de sommets ou d'arêtes et sont dessinées à l'aide d'un algorithme de rendu de surface. Finalement, nous démontrerons qu'il est possible d'extraire des agglomérats structurels d'un graphe en utilisant notre application et d'associer ces regroupements structurels à une interprétation sémantique reliée au domaine d'application du graphe.
|
182 |
Gestion de cycle de vie des objets par aspects pour C++Sioud, Aymen January 2006 (has links) (PDF)
Les langages tels Java, Simula, Eiffel, Modula III sont des langages orientés objet qui ont gagné leur popularité grâce à la sûreté du traitement des exceptions et à là politique de sécurité qu'ils utilisent, notamment pour la gestion mémoire. En effet, Meyer a placé la gestion automatique de la mémoire en troisième position dans les "sept commandements" de la programmation orientée objet. L'entité utilisée pour assurer la gestion automatique de la mémoire est appelée Garbage Collector ou ramasse-miettes. Certains langages comme C, C"1"1", Ada, Pascal et bien d'autres utilisent une libération explicite de la mémoire. L'avantage majeur de cette libération par rapport au Garbage Collector est sans doute l'emploi des pointeurs, outil très important permettant un accès direct à certaines zones mémoires et une utilisation plus optimale de l'espace mémoire.
Le C++ est l'un des langages de programmation les plus utilisés actuellement. Il est à la fois facile à utiliser et très efficace. Les caractéristiques du C++ en font un langage idéal pour certains types de projets. Il est incontournable dans la réalisation des grands programmes. Les optimisations des compilateurs actuels en font également un langage de prédilection pour ceux qui recherchent les performances. Puisqu'il est une extension de l'ANSI-C, C++ utilise une gestion explicite de la mémoire avec les delete, new, free et malloc. Pour Ellis et Stroustrup, la gestion de mémoire explicite via le Garbage Collector n'est pas une composante du langage C++. Nous proposons dans notre travail de recherche un outil assurant une gestion implicite de la mémoire basé sur la programmation aspect, notamment avec l'extension AspectC++ qui est un préprocesseur pour un compilateur C++ usuel. L'idée est d'implémenter via AspectC++ des compteurs de références pour les objets nouvellement créés. Il s'agit d'attribuer un compteur de références à un objet, d'incrémenter ce compteur chaque fois qu'un autre objet crée une référence vers le premier objet et de décrémenter ce compteur chaque fois qu'une référence est supprimée. L'objet sera détruit dès que son compteur associé sera à zéro.
|
183 |
Développement et étude d'un système d'exploitation tolérant aux défaillances pour système un multiprocesseurGagnon, Nicolas January 1997 (has links) (PDF)
Ce projet fut développé dans le cadre d'un contrat de recherche pour le ministère de la défense nationale du Canada. Ce projet porte sur le développement d'un système d'exploitation tolérant aux défaillances pour un système multiprocesseur. Il comporte également une étude statistique sur le comportement du système d'exploitation ainsi que sur les systèmes multiprocesseurs lorsqu'ils sont soumis à des injections de pannes. Le développement de tels systèmes nécessite une connaissance approfondie des divers mécanismes utilisés pour la détection des pannes ainsi que ceux utilisés pour la récupération lorsqu'une panne est détectée.
|
184 |
Prototype de système de reconnaissance de parole par réseau de neurones utilisant une analyse par démodulationGarcia, Miguel January 1997 (has links) (PDF)
L'analyse par démodulation est un outil effectuant des transformations sur des signaux de parole, de façon à faire ressortir les caractéristiques d'enveloppe à la sortie d'un banc de filtres cochléaires.
Ce travail se propose d'étudier la pertinence de l'analyse par démodulation et d'élaborer une architecture à réseaux de neurones capable d'en extraire les paramètres les plus importants afin de concevoir un système pouvant reconnaître des voyelles avec plusieurs locuteurs.
|
185 |
Parallélisme et communications dans les applications scientifiques (fortran)Chabot, Éric January 1993 (has links) (PDF)
Ce mémoire de recherche présente une méthode d'évaluation du potentiel de concurrence contenu dans des applications scientifiques programmées en FORTRAN et ayant été écrites en vue d'une exécution séquentielle sur un ordinateur conventionnel. Cette évaluation cherche à déterminer l'impact des coûts de communication ainsi que le nombre maximal de processeurs à utiliser afin d'exécuter le plus rapidement possible une application scientifique sur un système parallèle ayant une architecture donnée. Trois classes d'architectures multi-ordinateurs ont fait l'objet d'une étude particulière, à savoir: les architectures hypercubes, en grille et à bus simple.
Un logiciel s'inspirant des techniques d'insertion de moniteurs utilisées pour obtenir des statistiques concernant les programmes exécutés sur des ordinateurs conventionnels, a été élaboré. Celui-ci permet d'établir, durant l'exécution de ces programmes, le parallélisme maximal pouvant être obtenu avec ou sans contraintes, telles que le nombre de processeurs et le coût d'une communication, et ce, en fonction de l'architecture choisie. Cet outil s'appelle OSASMO, qui est l'acronyme de: Outil de Simulation Architecturale pour Systèmes Multi-Ordinateurs permet donc l'analyse automatique de n'importe quelle application écrite en FORTRAN standard.
Dix applications scientifiques connues ont été analysées à l'aide de l'outil logiciel. Plus de 700 simulations ont été exécutées afin d'obtenir une vue d'ensemble de tous les facteurs intervenant dans l'exécution d'un programme parallèle. Plusieurs simulations confirment certains résultats expérimentaux observés par d'autres chercheurs. De plus, plusieurs autres résultats d'importance pour les utilisateurs et les concepteurs de systèmes parallèles sont présentés. La conclusion la plus intéressante de ce travail est que, généralement, peu de processeurs sont nécessaires pour réaliser l'exécution parallèle optimale d'applications scientifiques.
|
186 |
Analyse et conception d'un réseau de neurones formels pour le filtrage d'un signal dynamiqueEnnaji, Moulay Abderrahim January 1992 (has links) (PDF)
Ce travail fait une analyse approfondie des capacités d'un réseau de neurones à propagation-avant ("feed-forward") à filtrer des signaux. Ce réseau est entraîné, par l'algorithme de la rétropropagation rapide [82, 83], à mémoriser et à généraliser un signal dynamique, signal dont les paramètres varient dans le temps. Plusieurs architectures de réseaux de neurones sont étudiées pour faire ressortir les qualités spécifiques de ces modèles en ce qui a trait au filtrage d'un signal dynamique.
Le modèle proposé met en évidence la capacité d'un réseau à propagation-avant (feed-forward) à mémoriser un signal dynamique, à généraliser au niveau de l'amplitude et des fréquences, à régénérer un signal déjà appris de façon indéfinie (capacité apparente sur des architectures récurrentes), à reproduire n'importe quel signal avec un ajout de "bruit" sous forme de composantes hautes fréquences et basses fréquences, à filtrer un signal comme le fait un passe-bas, un passe-haut, un passe-bande et un coupe-bande (performances moyennes).
Ce travail met l'accent sur la possibilité de réduire la taille des données à l'apprentissage pour éventuellement diminuer le temps de convergence, sans pour autant affecter les performances du modèle. Il met en évidence l'optimisation du nombre de noeuds dans le réseau et, établit une relation entre le signal à apprendre et le nombre de noeuds dans les couches d'entrée et cachée (s).
Notre modèle est comparé à ceux de Chin'ichi Tamura et Alex Waibel [81], de Ryato Kamimura [40, 41] et de Chris Bishop [10]. Quelques applications de ces modèles sont citées dans la conclusion.
Mots clés : Feed-forward ? Propagation-avant ? Rétropropagation rapide ?Filtrage ? Traitement du signal dynamique ? Filtres : passe-bas , passe-haut, passe bande et coupe-bande ?.
|
187 |
Modélisation d'un système général de gestion intelligemment assisté par ordinateur (EIAO) : application à l'enseignement de l'algèbre de Boole et à la gestion d'un bras manipulateur (robotique)Geleyn, Linda January 1992 (has links) (PDF)
La présente recherche aborde la modélisation d'un système général de gestion de ressources (humaines ou non) agissant en temps réel dans des situations de transformations successives des dites ressources. Pour illustrer les concepts nous avons retenus deux situations de gestions: l'une concerne la modélisation de l'apprentissage d'un sujet de l'algèbre de Boole, l'autre concerne la modélisation de la manipulation d'un bras mécanique en robotique. Ces deux exemples permettent également de démontrer l'applicabilité du modèle préconisé.
Un tel système automatique doit posséder certaines qualités essentielles pour être efficace: être "intelligent", évolutif et adaptatif. Celles-ci sont fixées à partir de modèles tirés du domaine de l'éducation et de systèmes tutoriels existants dans ce dernier. Une classification des systèmes tutoriels intelligents permet de situer le nôtre dans la catégorie des systèmes tutoriels intelligents et adaptatifs.
On cherche par la suite à concevoir les composantes intelligentes du système en se basant sur un modèle pédagogique pour la gestion d'une situation d'apprentissage (Ouellet [37]). On obtient ainsi un modèle tutoriel de gestion impliquant quatre catégories d'éléments (règles et faits): programme, contexte, activité et résultat. La structure générale des règles de gestion et des formes des contenus de ces bases de connaissances est ensuite présentée. Elle permet au système de résoudre tant qu'il le peut, et ce de façon automatique, la gestion des événements en adaptant continuellement les normes de décision basées sur la compatibilité des faits. Lorsqu'il ne peut trouver la solution par lui-même, le système fait appel à l'externe pour que l'expert concerné ajoute les éléments manquants dans ses bases de connaissances.
Cette structure est concrétisée dans un exemple concernant l'apprentissage d'un sujet emprunté à l'algèbre de Boole puis implantée sur micro-ordinateur. Cette implantation du système implique la définition et la gestion explicite de tous les éléments nécessaires à la bonne marche du système. Lors de simulations de ce programme (PROLIN), l'obtention de résultats conformes à ce qui était espérés démontre l'efficacité du système.
Un deuxième exemple d'application concernant la gestion d'un bras manipulateur est présenté. Ce dernier n'a pas été programmé mais tous les éléments nécessaires à cette programmation sont présentés. Cet exemple permet de démontrer la généralisation du système à des situations autres que l'enseignement.
|
188 |
Semantic web and business applicationWei, Ran January 2011 (has links) (PDF)
Le sujet principal concerne les Techniques Sémantiques et le RDF qui est utilisé pour indiquer les ressources dans les systèmes répartis sur l'ensemble du réseau (la base des données). Il y a des mises en oeuvre pour deux projets : FOAF et un type de concept sémantique. Suit la description du modèle d'entreprise et la discussion sur le réseau sémantique et les sujets connexes sont aussi démontrés dans les chapitres suivants. Une étude des problèmes et des expériences faites sur les concepts d'un réseau sémantique a été utilisée pour intégrer une petite application; non seulement suggérer une méthodologie pratique (qui pourrait servir à exécuter ce concept), mais il y a aussi mention des restrictions de cette nouvelle technologie de logiciel. Le concept de réseau sémantique ajoute un niveau d'abstraction supplémentaire au Web: les machines peuvent manipuler les données comme des connaissances.. Le nouveau système réseau offre l'opportunité aux ordinateurs de comprendre le contenu des données. La thèse démontre que les machines comprennent l'information et l'utilisent comme leur propre connaissance. Cette étape exige une recherche supplémentaire dont la connaissance normale est similaire au complexe fonctionnement du cerveau humain. Le développement de mon sujet offre la possibilité de cela et cette thèse démontre bien la base de cette théorie.
|
189 |
A new approach to dynamic difficulty adjustment in video gamesTremblay, Jonathan January 2011 (has links) (PDF)
L'arrivée de nouvelles consoles de jeux vidéo tel que la Wii de Nintendo ont ouvert l'industrie du jeux vidéo aux «joueurs casuals ». Dans cette nouvelle réalité, joueurs expérimentés et joueurs inexpirémentés évoluent dans le même environnement. Ils cherchent a s'amuser par le biais de différentes expériences et de sessions de jeu, c'est ici que le jeu devrait se plier aux exigences du joueur. C'est important pour le joueur de s'amuser en jouant, l'industrie du jeu vidéo se repose sur cette facette afin de porter les joueurs à consommer leurs produits. Cependant, l'amusement est difficile à définir et encore plus à créer dans les jeux. Afin de comprendre l'amusement dans les jeux vidéo, les chercheurs utilisent la définition de la théorie du "flow" qui se repose fortement sur la compréhension forte d'un état émotionnel qui est lié à l'amusement.
C'est incontestable que les jeux doivent assurer que le joueur puisse expérimenter une forme de "flow", dans un tel cas, le jeu doit comprendre le niveau d'habilité du joueur afin de pouvoir offrir un défi qui est à la hauteur des habilités qui sont spécifique au joueur. Le but de cette recherche est de répondre à cette problématique en proposant un modèle adaptatif d'ajustement dynamique (DDA), en temps réel, du niveau de difficulté afin d'améliorer l'expérience de jeu pour le joueur. Ce modèle a été implémenté afin de le valider sous la forme d'un petit jeu sérieux (combat/mathématique). Grâce à ce prototype, 32 personnes ont testé et répondu à un questionnaire portant sur leur expérience de jeu. Les résultats de cette expérience sont très prometteurs, démontrant la valeur du modèle proposé et pointant vers des indices pour des améliorations futures.
|
190 |
The two-machine open shop problem with time delaysZhang, Li Chuan January 2012 (has links) (PDF)
Research on scheduling problems as we know it nowadays dates back to 1950s. Indeed, in 1954, Johnson described an exact algorithm to minimize the overall completion time (known as the makespan) for the two-machine flow shop problem. This resulted in a new discipline of operational research known as scheduling theory.
Scheduling theory deals with the attempt of using a set of scarce resources in accomplishing variegated tasks in order to optimize one or several criteria. The resources and tasks are commonly referred to as machines and jobs, respectively. There is a broad spectrum of definitions for the tasks and resources. For example, the resources can take the form of production lines in workshops, airport runways, school classrooms, etc. Furthermore, the process of fulfilling a task in a given machine is sometimes called an operation. For instance, a task may be represented by the work-pieces processed on production lines, the aircrafts taking off and landing at airports, the teachers lecturing in classrooms and so on. Let us note at this stage that machines and jobs may have been characterized by many other factors such as speed, time of availability, duplication, etc for the former, and precedence constraints, due dates, time lags for the latter. These factors must be taken into consideration when formulating a scheduling strategy if we want to produce a realistic solution.
Generally speaking, scheduling problems fall into the following three categories: A single machine model, parallel machines model and multi-operation model. The models known as multi-operation model are flow-shop, open shop and job shop.
In addition, a scheduling solution is evaluated according to a given criterion or sometimes to a set of given criteria such as the minimization of makespan, mean finish time, number of tardy jobs, etc.
This thesis is mainly concerned with the problems of minimizing the makespan criterion in a two-machine open shop environment with time delay considerations.
In order to better approach the resolution of this problem, some basic concepts on scheduling theory and related knowledge, such as the theory of NP-completeness, have been introduced. It is important to analyze the advantages and disadvantages of different algorithms, in order to come up with an adequate solution.
We presented in this dissertation the resolution of the two-machine open shop problem with time delays along the following lines. First, we start by looking at special cases to solve to optimality in polynomial time. Then, we move onto the design of heuristic algorithms, based on simple rules. Finally, we discuss two meta-heuristic algorithms and lower bounds, and undertake simulation experiments to analyze their performance in the average case. For heuristic algorithms, we discussed some approaches that evaluate their performance. Regarding the meta-heuristic approach, we used the simulated annealing and the tabu search algorithms, respectively. We then improved the second approach by adding the intensification and diversification strategies. Finally, we proposed a new hybrid approach to solve our original open shop problem in the hope to improve and speed up the quality of the solution.
|
Page generated in 0.0545 seconds