J'ai une liste de services web demandés ; traduit par L(T1,T2,T3)
chaque service T1, T2,T3 a un ensemble de services candidats
T1(S1,S2,S3,S4) qui sont ordonnés de 1 jusqu'à 4 selon des critères de QoSW
T2(Sa ,Sb ,Sc, Sd) qui sont ordonnées
T3(Sα,Sβ,Sµ,SƟ) qui sont ordonées
maintenant pour chaque service Si j'ai un calcul de probabilité de changement de contexte ( mon contexte est le changement de localisation et de réseau de connexion). cette probabilité est à calculer avec une formule que j'ai déjà défini. donc je doit parcourir toutes les sous listes T1,T2,T3 et calculer pour chaque Si la valeur f.
si f=1 ça veut dire que la probabilité de changement de contexte est maximale. donc j'aurais plus les mêmes services que j'ai découvert avant le changement de contexte. donc j'élimine ces services de mes listes.
si f=0 ça veux dire que la proba est minimale, y'a pas de changement de contexte donc tous les services qui ont f=0 vont participer à la construction de la liste de services à composer. et j'ai a remplir cette liste par seulement les services qui n'ont aucune proba de changement qui sont sûr.
dans ce cas la liste a préparer va contenir un service de chaque sous liste de valeur f=0. je peux avoir plusieurs liste biensur chacune a 4 éléments Si de chaque Ti dont son f=0)

sinon, ça veux dire que la proba maintenant est entre 0 et 1. donc j'ai des listes a préparer avec un service Si de chaque sous liste Ti de valeur f entre 0 et 1. j'aurais plusieurs listes de 4 éléments aussi, avec ces éléments des Si dont la valeur f entre 0 et 1.

f= P1*P2 avec P1 (proba de changement de localisation) et P2( proba de changement de réseau) donc f est une fonction qui est déjà faite et a appeler dans cet algo. de meme P1 et P2 deux fonctions a appeler dans f. dans cet algo on admet que les fonctions sont faites, on fait juste l'appel.

ces listes que j'ai préparer vont être de deux types . des liste avec des élements tous leurs f=1 donc sa proba d'exécution = 1.
d'autres avec des élements dont leurs f entre 0 et 1 que je dois les ordonner pour pouvoir les exécuter.

je veux ecrire un algorithme qui permet de parcourir ces listes et faire les test ainsi que les combinaisons possibles. je suis débutante en algorithmique. pouvez vous m'aider svp?

Merci