"Ton algo", comme tu dis... à mon sens, non il n'est pas prêt à être implémenté (la raison principale est que tu n'explicites pas assez, selon moi, le principe de réduction de la liste ordonnée des mines, ni la comparaison de ces listes une fois réduites). Dans tous les cas, c'est une version de l'algo à combinaisons que je proposais (et sans le traitement des mines 2 à 2) : donc pas d'amélioration de la complexité (on sera en 2^n, dans tous les cas).
C'est dommage que tu ne procèdes pas à une implémentation concrète de ton côté, dans le langage de ton choix (tu connais peut être un langage fonctionnel, caml ou autre ?). C'est juste qu'à un moment, ça me semble important pour se rendre compte !
Si on revient à notre affaire : comment progresser ??
De mon côté, je n'ai pas su aller plus loin dans ta démo mathématique concernant la dominance (je ne sais si tu as pu avancer de ton côté ?).
Pour la dominance, on a deux éléments (que tu considères ne pas être démontrés, mais qui semblent pourtant très logiques et, ok, la logique ne suffit pas toujours) :
- Dominance absolue : Si c1 < c2 et p1 > p2 alors M1 domine M2
- Dominance locale : Partant de E et un ensemble de Ti liés à l'ajout de Mi à E sont déterminés
- si pour 2 mines Mj Mk dans ces Mi, telles que Tj < Tk, il est possible d'acquérir Mj + Ml avant Tk et que P(Mj) + P(Ml) > P(Mk)
- alors Mj domine Mk
- sinon Mk domine Mj
(à prouver tout ça)
Il y a d'autres éléments à considérer :
1- L'algo qu'on cherche doit il être étendu à un problème à n ressources : n productions et n couts ?
2- Doit il être parallélisable (traité sur n machines ou sur n coeurs) ?
3- Quel contexte concret doit il traiter : y a-t-il des relations particulières entre les mines ou leurs (c,p) dans un domaine d'application significatif ?
...
Sur le plan concret, on peut également envisager les algo génétiques (post de prgasp77) qui répondent au moins aux points 1- et 2- ci-dessus.
Par contre, on se retrouve dans une situation comparable au voyageur de commerce : pour un gène donné, un élément ne doit figurer qu'une fois.
Du coup, la combinaison de deux gènes n'a pas de sens... et on se retrouve qu'avec des mutations dans la pratique (prgasp77 si tu as des billes là dessus, je suis preneur !).
Et a priori, ça diminue l'efficacité de ce type d'algo.
Cela dit, par le passé, j'avais eu des résultats plutôt bons jusqu'à 50 villes pour le voyageur de commerce (et ça fait quelques années déjà). Donc pourquoi pas essayer de nouveau pour le problème des mines ?
Bon, évidemment, dans ce cadre, pas de preuve ou de démonstration : on teste et on constate que ça marche (ou pas)... un peu comme dans la vie !! :roll:
A suivre... (?)