Ont ma demandé de faire un programme de gestion de groupe sauf que je ne sais pas du tout pas ou commencer donc si quelqu’un pouvais m’aiguiller .
Voici le debut du sujet qui explique les base :
Your task is to implement an application that assigns students to groups. There are a few rules to follow:
There are cycles, where groups are reorganized.
There are as many cycles as there are groups.
At the end, a student must have been through every group.
At the end, a student must have met a maximum of other students
The algorithm used to assign the groups will be a genetic algorithm.
a. Student-id to login
The application may take as argument a file containing a mapping of a student-id (starting from 1) to a student login. When printing the solution, the application must replace the ids by the logins if available.
The file will be a list of logins, one per line. The first line corresponds to the student-id 1, the second line corresponds to 2, and so on.
b. Output format specification
The application will output a CSV file. The first line is the header line and will contain “Cycle” for the cycle number and “Group X” for the X-th group. Each student will be written on a single cell. A group will expand on multiple columns, as much as there are students per group. Since CSV doesn’t allow merging cells, the otherwise merged cells will be kept empty.
Below is an example of output with 7 students and 3 cycles (students are named “a”-“g” for brevity, colours only for emphasis):
c. Fitness function
The fitness function can be adapted if needed. An example is given below.
The evaluation will be based on the criteria described above. A solution where a student doesn’t visit every group is not a valid solution but may have a non-zero fitness: 30% of the fitness will be evaluated from the groups, the 70% remaining will be evaluated from the partners each student has.
Let S be the number of students, G be the number of groups (and cycles), Gs be the group size.
For each student, we will count how many groups it has visited. Each student visiting a new group awards 1 point. That sum will be divided by S*G, that is the maximum available points for that step. That total is scaled up to 25% and the 5% remaining are only awarded if every student visited every group (that is, if the solution is valid).