Bonjour à tous,
cette discussion fait suite à celle-ci
Je la poursuis ici car je vais l'implémenter en Python avec scipy très certainement. N'étant pas du tout spécialiste de l'optimisation sous contrainte, j'espère que mon discours sera suffisamment clair et précis.
Je dispose :
- de 10 matrices de probabilité. Une pour chacun de mes 10 états. Chaque matrice est de taille 1000*1000. i et j sont respectivement les indices des lignes et des colonnes de chaque matrice. Chaque cellule p_ij peut se réécrire comme un vecteur p_ij = [p_1ij, p2ij, ..., p10ij] ;
- de 10 matrices binaires. 1 si la probabilité de l'état est la valeur maximale de p_ij et 0 sinon. Par exemple, si p_1ij est la probabilité maximale de p_ij, M_ij = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0] ;
- d'un vecteur Q de longueur 10 contenant pour chaque état la quantité attendue de cellules avec cet état. Par exemple Q = [50000, 25000, 37500, 100000, 25000, 200000, 15000, 50000, 400500, 97000]
J'ai trouvé plusieurs documentations et tutoriels sur internet mais toutes cherchent à minimiser une fonction, hors je ne peux exprimer mes matrices de probabilités sous forme de fonction.
Pour le moment je partirais sur une formalisation mathématique de ce type :
pour chercher à minimiser les probabilités
pour minimiser l'écart aux quantités attendues
Je résultat attendu à la fin est une matrice 1000*1000 avec les états qui minimisent les deux fonctions de coût.
J'ai plusieurs questions :
1) Ma façon de formaliser est-elle la bonne ?
2) Si oui, comment lier les deux fonctions de coût ? Par simple addition ?
3) Si oui aux questions ci-dessus, comment formater mes données pour utiliser un solveur comme ceux de scipy ? Je ne vois pas du tout.
Je vous remercie de votre aide.
Partager