ça y est, j'ai enfin terminé un soft basé sur un composant programmé en Delphi qui permet de minimiser la perte sur des Cds. On passe en entrée une liste de fichiers et/ou répertoires et le soft pioche dans cette liste afin de minimiser les cds spécifiés (leur taille en Mo + leur capacité supplémentaire, elle aussi en Mo). Après calcul, on obtient par cd, la liste des fichiers à placer dessus.
Rem: le soft n'est pas obliger de caser tous les fichiers spécifiés en entrée.
pour résoudre ce pb d'ordonnancement, il y a 4 méthodes :
- LPT : classement dans l'ordre décroissant de taille des fichiers (cette méthode donne rarement l'optimal),
- Combinatoire : teste toutes les combinaisons (on a à coups sûr la meilleure solution mais au prix d'une longue attente, (nb_cd+1)^(nb fichiers) combinaisons),
- Séquences : algo très performant basé sur la génétique, c'est la meilleur méthode. En saisissant les paramètres corrects, on a la meilleur solution avec la vitesse de l'algo LPT,
- par Tournoi : algo génétique en cours de développement,
- aléatoire : donne de bons résultats (entre le combinatoire et les séquences en terme de vitesse). En donnant un nb d'itérations suffisant (environ 1/12 du nb de combinaisons possibles), on a la meilleur solution à coups sûr.
Sur mon site (http://perso.libertysurf.fr/chris.jav), vous pouvez télécharger mon soft (Opt CD) sur la page située dans le menu "Programmation"->rubrique "Opt CD". Sur cette page, il y a aussi le composant en Delphi.
Dites-moi ce que vous en pensez.