Question after the release of BIG:
I need to build a ranking using a genetic algorithm, I have the following data:
P(a>b)=0.9 P(b>c)=0.7 P(c>d)=0.8 P(b>d)=0.3
now, interprets a,b,c,d as the names of football teams, and P(x>y) is the probability that x will win with y . We want to create a team rating, we are missing some observations P(a>d) , P(a>c) absent due to the lack of matches between vs d and vs c. The goal is to find the order of the team names that best describes the current situation in these four team leagues.
If we have only 4 teams than a simple solution, first we calculate the probabilities for all 4!=24 orders from four teams, ignoring the missing values:
P(abcd)=P(a>b)P(b>c)P(c>d)P(b>d)
P(abdc)=P(a>b)P(b>c)(1-P(c>d))P(b>d)
...
P(dcba)=(1-P(a>b))(1-P(b>c))(1-P(c>d))(1-P(b>d))
and we choose the ranking with the highest probability. I do not want to use any other fitness function.
My question is:
Like the number of permutations of n elements n! the calculation of the probabilities for all orderings is impossible for large n (my n is about 40). I want to use a genetic algorithm for this problem.
The mutation operator is a simple switching of the places of two (or more) ranking elements.
But how to make a crossover of two orders?
Can P(abcd) interpreted as a cost function of the path “abcd” in the asymmetric TSP problem, but the cost of moving from x to y differs from the cost of moving from y to x, P(x>y)=1-P(y<x) ? There are so many crossover operators for the TSP problem, but I think I need to develop my own crossover operator because my problem is slightly different from TSP. Do you have ideas for a solution or a framework for conceptual analysis?
The easiest way, at the conceptual and implementation level, is to use the crossover operator, which makes sub-users exchange between two solutions:
CrossOver(ABcD,AcDB) = AcBD
for a random subset of elements (in this case, "a, b, d" in capital letters), we copy and paste the first subordination - the sequence of elements "a, b, d" in the second order.
Edition : Asymmetric TSP can be turned into a symmetric TSP, but with forbidden suborders that make the GA approach unusable.