Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page [2022/05/02 14:27] tahmwail [Discussions et Réunions] |
groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page [2022/05/23 20:35] (Version actuelle) tahmwail [Résumé et première idée après 3 semaines] |
||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
Contact : <[email protected]> | Contact : <[email protected]> | ||
- | ====== Étude des impacts du scalingde plusieurs composantes du solveur NOMAD: ====== | + | ====== Étude des impacts du scaling de plusieurs composantes du solveur NOMAD: ====== |
Le solveur NOMAD est conçu pour l’optimisation de problèmes de type "boîte noire”. Or, lors de la définition d’un tel problème, plusieurs problématiques, reliées à des échelles de valeurs différentes, peuvent apparaître. Par exemple, une variable peut être définie entre 0 et 1 et une autre entre 0 et 10 000. On retrouve aussi ces problèmes dans la définition des contraintes et des objectifs si on est en présence d’un problème multi-objectifs. Il est donc primordial d’effectuer plusieurs mises à l’échelle (scaling). Cependant, ces aspects ont jusqu’ici été négligés pour NOMAD, sous l’hypothèse que l’algorithme MADS, en arrière de NOMAD, est naturellement robuste face à un mauvais scaling. Le projet consiste donc tout d’abord à étudier les impacts sur l’efficacité de NOMAD de changements d’échelles des variables et des contraintes. Ensuite, il faudra concevoir des méthodes d’apprentissage permettant tout d’abord de repérer des mauvaises mises à l’échelle, puis de les corriger automatiquement. On pourra aussi considérer des mises à l’échelle spécifiques et différentes de traditionnelles transformations linéaires (par exemple des échelles logarithmiques, logit, bilog, etc. rencontrées en intelligence artificielle). Si le temps le permet, ou dans le cadre de la poursuite du projet en MSc/PhD, on pourra aussi considérer le scaling lors de la construction des modèles dynamiques (comme les modèles quadratiques). Les modèles semblent en effet très sensibles à cela. Encore à plus long terme, il faudra aussi examiner le scaling de nos méthodes multi-objectifs. | Le solveur NOMAD est conçu pour l’optimisation de problèmes de type "boîte noire”. Or, lors de la définition d’un tel problème, plusieurs problématiques, reliées à des échelles de valeurs différentes, peuvent apparaître. Par exemple, une variable peut être définie entre 0 et 1 et une autre entre 0 et 10 000. On retrouve aussi ces problèmes dans la définition des contraintes et des objectifs si on est en présence d’un problème multi-objectifs. Il est donc primordial d’effectuer plusieurs mises à l’échelle (scaling). Cependant, ces aspects ont jusqu’ici été négligés pour NOMAD, sous l’hypothèse que l’algorithme MADS, en arrière de NOMAD, est naturellement robuste face à un mauvais scaling. Le projet consiste donc tout d’abord à étudier les impacts sur l’efficacité de NOMAD de changements d’échelles des variables et des contraintes. Ensuite, il faudra concevoir des méthodes d’apprentissage permettant tout d’abord de repérer des mauvaises mises à l’échelle, puis de les corriger automatiquement. On pourra aussi considérer des mises à l’échelle spécifiques et différentes de traditionnelles transformations linéaires (par exemple des échelles logarithmiques, logit, bilog, etc. rencontrées en intelligence artificielle). Si le temps le permet, ou dans le cadre de la poursuite du projet en MSc/PhD, on pourra aussi considérer le scaling lors de la construction des modèles dynamiques (comme les modèles quadratiques). Les modèles semblent en effet très sensibles à cela. Encore à plus long terme, il faudra aussi examiner le scaling de nos méthodes multi-objectifs. | ||
Ligne 26: | Ligne 26: | ||
* scale = min(a_, b_, ...) | * scale = min(a_, b_, ...) | ||
* alpha_1 = a/(10^(a_- scale)), alpha_2 = b/(10^(b_- scale)) | * alpha_1 = a/(10^(a_- scale)), alpha_2 = b/(10^(b_- scale)) | ||
- | - Evaluer la fonction h avec les pondérations alpha_i: h(x_i) = sum( max( 0 , alpha_i * c_i(x_i) ) ) | + | - Evaluer la fonction h avec les pondérations alpha_i: h(x_i) = sum( max( 0 , alpha_i * c_i(x_i) )² ) |
**Question:** Est-ce qu'on ne travail qu'avec des contraintes d'inégalités et pas d'égalités? | **Question:** Est-ce qu'on ne travail qu'avec des contraintes d'inégalités et pas d'égalités? | ||
Ligne 32: | Ligne 32: | ||
Le résumé n'est qu'une compréhension partiel du sujet à un instant donné (le début du stage), il a pour but de montrer ce qui est compris et ce qui ne l'est pas encore. L'idée n'est pas parfaite et doit être testé afin d'être modifié et amélioré. La réponse à la question est non et m'a été donné par [[groupe-dfo-bbo:acteurs:profs:sebastien-le-digabel:main-page|Sébastien Le Digabel]] lors de notre discussion du [[groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page:semaine4|26 avril 2022]]. Les contraintes d'égalités sont mals gérées pour le moment par Nomad mais il est possible que cela évolue à l'avenir. | Le résumé n'est qu'une compréhension partiel du sujet à un instant donné (le début du stage), il a pour but de montrer ce qui est compris et ce qui ne l'est pas encore. L'idée n'est pas parfaite et doit être testé afin d'être modifié et amélioré. La réponse à la question est non et m'a été donné par [[groupe-dfo-bbo:acteurs:profs:sebastien-le-digabel:main-page|Sébastien Le Digabel]] lors de notre discussion du [[groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page:semaine4|26 avril 2022]]. Les contraintes d'égalités sont mals gérées pour le moment par Nomad mais il est possible que cela évolue à l'avenir. | ||
- | + | ====== Première contribution ? ====== | |
+ | Je débute les implémentations dans le Runner pour mettre à jour certains problème et ajouter quelques option utile à mon travail (détails cosmétiques mais pratiques). J'ai également pris en main les outils de développement collaboratif comme GitHub afin de partager mon travail. | ||
====== Discussions et Réunions ====== | ====== Discussions et Réunions ====== | ||
- | ===== Avril ===== | + | ==== Avril ==== |
- [[groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page:Semaine1|Semaine du 4 avril au 8 avril 2022]] | - [[groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page:Semaine1|Semaine du 4 avril au 8 avril 2022]] | ||
Ligne 46: | Ligne 46: | ||
- [[groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page:Semaine4|Semaine du 25 avril au 29 avril 2022]] | - [[groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page:Semaine4|Semaine du 25 avril au 29 avril 2022]] | ||
- | ===== Mai ===== | ||
+ | |||
+ | ==== Mai ==== | ||
+ | |||
+ | - [[groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page:Semaine5|Semaine du 02 mai au 6 mai 2022]] | ||
+ | - [[groupe-dfo-bbo:acteurs:intern:wail-tahmaoui:main-page:Semaine6|Semaine du 09 mai au 13 mai 2022]] |