Projets

Algorithmes de flot à coût minimal sur des réseaux source–puits aléatoires

Étude expérimentale d’algorithmes d’optimisation de flots de réseau – Projet de cours aux cycles supérieurs, Université Concordia, Montréal, Québec, [November, 01, 2024]

  • Implémentation de l’algorithme du plus court chemin successif (Successive Shortest Path) à partir de zéro, incluant la construction du graphe résiduel, l’extraction de chemins de coût minimal basée sur Bellman–Ford et la logique d’augmentation de flot.
  • Conception et réalisation d’une évaluation expérimentale à grande échelle sur des graphes euclidiens orientés aléatoires selon 28 configurations, avec variation de la densité (𝑟), des bornes de capacité et des régimes de coûts.
  • Comparaison des algorithmes SSP, mise à l’échelle des capacités (Capacity Scaling), Scaling-SSP et primal–dual à l’aide de métriques incluant le coût total, la valeur du flot, le nombre de chemins augmentants, la longueur moyenne des chemins et la longueur proportionnelle des chemins.
  • Mise en évidence que l’algorithme primal–dual atteint systématiquement le coût minimal optimal, tandis que SSP offre des performances compétitives dans des régimes clairsemés et se dégrade dans les graphes denses.
  • Rapport de projet Cliquez ici
  • Code et dépôt GitHub : Cliquez ici
Capture d’écran du rapport
Capture d’écran du rapport

Optimisation des réseaux de neurones sur graphes pour la détection de communautés à grande échelle

Évaluation de stratégies d’entraînement évolutives pour les réseaux de neurones sur graphes – Projet de cours aux cycles supérieurs, Université Concordia, Montréal, Québec, [November, 01, 2024]

  • Conception et mise en œuvre de pipelines évolutifs de détection de communautés basés sur des GNN, utilisant les architectures GCN et GraphSAGE avec des stratégies d’entraînement en lot complet (full-batch), d’échantillonnage de voisins et de partitionnement de graphe.
  • Réalisation d’expériences approfondies sur les ensembles de données SBM (1K, 10K), CORA et Reddit, démontrant que l’échantillonnage de voisins et le partitionnement de graphe permettent l’entraînement sur de grands graphes lorsque les méthodes en lot complet échouent en raison de contraintes mémoire.
  • Atteinte d’une précision allant jusqu’à 90 % sur SBM (10K nœuds) avec le partitionnement de graphe tout en réduisant l’empreinte mémoire, et activation d’un entraînement évolutif sur Reddit où les méthodes en lot complet entraînaient des erreurs de mémoire insuffisante.
  • Analyse des compromis entre précision, temps d’entraînement et utilisation de la mémoire, en proposant des lignes directrices pratiques pour le déploiement évolutif de GNN dans des réseaux sociaux de grande taille en contexte réel.
  • Diapositives de présentation Cliquez ici
  • Proposition de projet Cliquez ici
  • Rapport de projet Cliquez ici
  • Code et dépôt GitHub : Cliquez ici
Capture d’écran du rapport
Capture d’écran du rapport

Plusieurs projets relatifs au cours d’exploration de données

Projet de cours de premier cycle, Université Vali-e-Asr de Rafsanjan, Département de génie informatique, Rafsanjan, Kerman, Iran, [September, 01, 2022]

Conception et implémentation de :

  • Prétraitement des données
  • Algorithmes de classification (Naive Bayes, k-NN, arbres de décision)
  • Algorithmes de regroupement (k-means, DBSCAN)
  • Règles d’association (Apriori)
  • Réduction de dimensionnalité (PCA)
Logo DTM
Logo DTM

Plusieurs projets relatifs au cours de recherche d’information

Projet de cours de premier cycle, Université Vali-e-Asr de Rafsanjan, Département de génie informatique, Rafsanjan, Kerman, Iran, [February, 01, 2022]

Conception et implémentation de :

  • Moteurs de recherche Web
  • Indexation et récupération de documents
  • Modèles de récupération d’information
  • Évaluation des systèmes de recherche
  • Web scraping et crawling
Logo RI
Logo RI

SYMPHONYC : La base de données d’un service de streaming musical similaire à Spotify.

Projet de cours de premier cycle, Université Vali-e-Asr de Rafsanjan, Département de génie informatique, Rafsanjan, Kerman, Iran, [September, 01, 2021]

Un projet concernant le cours de bases de données. Ce projet consiste en :

  • Collecte d’informations initiales pour la construction d’une base de données
  • Modèle entité-relation amélioré
  • Modèle relationnel
  • Normalisation
  • Implémentation de la base de données
  • Requêtes SQL

Plusieurs projets relatifs au cours de structures de données

Projet de cours de premier cycle, Université Vali-e-Asr de Rafsanjan, Département de génie informatique, Rafsanjan, Kerman, Iran, [September, 01, 2021]

Conception et implémentation de :

  • Listes, piles, files
  • Arbres, arbres binaires de recherche
  • Tables de hachage
  • Graphes et leurs implémentations
  • Tri et recherche
Logo DS
Logo DS

Plusieurs projets relatifs au cours de conception et analyse d’algorithmes

Projet de cours de premier cycle, Université Vali-e-Asr de Rafsanjan, Département de génie informatique, Rafsanjan, Kerman, Iran, [September, 01, 2021]

Conception et implémentation de :

  • Plusieurs problèmes d’algorithmes classiques
  • Tri fusion, tri rapide
  • Problèmes de programmation dynamique
  • Problèmes d’algorithmes gloutons
  • Algorithmes de graphes
Logo DA
Logo DA

Plusieurs projets relatifs au cours d’intelligence artificielle

Projet de cours de premier cycle, Université Vali-e-Asr de Rafsanjan, Département de génie informatique, Rafsanjan, Kerman, Iran, [September, 01, 2021]

Conception et implémentation de :

  • BFS, DFS, IDS, UCS (stratégies de recherche non informées)
  • Résolveur de puzzle 8 utilisant A* et IDA (stratégies de recherche informées heuristiques)
  • Algorithmes génétiques, recuit simulé (recherche locale)
  • Min-Max, Alpha–Beta (recherche adversariale)
  • Classification d’un ensemble de données (apprentissage automatique de base)
  • Représentation des connaissances utilisant prolog (système basé sur les connaissances)
Logo IA
Logo IA

Projet ‘Uncertainty’ : Un jeu vidéo et projet de laboratoire de génie logiciel

Projet de cours de premier cycle et pour le plaisir !, Université Vali-e-Asr de Rafsanjan, Département de génie informatique et Null References : Équipe de développement de jeux, Rafsanjan, Kerman et Yazd, Iran, [February, 01, 2021]

  • Uncertainty est un jeu de tir spatial d’action-aventure, et il est actuellement en développement.
  • Nous avons utilisé la version bêta de ce jeu comme projet de cours pour notre « Laboratoire de génie logiciel ».
  • Notre jeu est un jeu open-source hébergé sur GitHub.
  • Il est créé avec Unity3D
  • Actuellement, notre équipe n’est pas à son apogée car tous ses membres sont occupés à l’université. Néanmoins, nous sommes impatients de continuer Uncertainty et de le terminer éventuellement lorsque nous serons libres.
  • Ce projet consiste en :
    • Utilisation soigneuse de patrons de conception
    • Suivi des principes SOLID dans le code
    • Exigences du projet
    • Évaluation des besoins du projet
    • Scénario du projet
    • Diagramme de cas d’utilisation
    • Diagramme d’activité
    • Diagramme de classes
    • Diagramme de séquence
    • Art accrocheur et modèles 3D
    • Base de code évolutive et réutilisable
    • Intégration continue
    • Tests unitaires
Capture d'écran du gameplay
Capture d’écran du gameplay

Plusieurs projets utilisant le framework Qt

Projet de cours de premier cycle et pour le plaisir !, Université Vali-e-Asr de Rafsanjan, Département de génie informatique, Rafsanjan, Kerman, Iran, [September, 01, 2020]

Conception et implémentation de :

  • Applications de bureau en utilisant Qt
  • Interfaces graphiques utilisateur (GUI)
  • Gestion d’événements
  • Connexions signal-slot
  • Applications multi-fenêtres
Logo Qt
Logo Qt

Projets de systèmes d’exploitation, VHDL, conception de circuits et assembleur x64

Projet de cours de premier cycle, Université Vali-e-Asr de Rafsanjan, Département de génie informatique, Rafsanjan, Kerman, Iran, [September, 01, 2020]

Conception et implémentation de :

  • Projets de systèmes d’exploitation
  • Conception de circuits numériques en VHDL
  • Projets de conception de circuits
  • Programmation en assembleur x64
Logo OS/VHDL/CD/x64
Logo OS/VHDL/CD/x64

Apprentissage d’Unity3D et développement de jeux

Juste pour le plaisir !, Null References : Équipe de développement de jeux, Kerman et Yazd, Iran, [February, 01, 2020]

Apprentissage et pratique de :

  • Moteur Unity3D
  • Programmation de jeux en C#
  • Physique de jeu
  • Animation et graphiques
  • Conception de niveaux
  • Patrons de conception pour le développement de jeux
Logo Unity
Logo Unity