10-01-2017, 01:31 AM
Salut,
la définition de "optimale" est toujours à préciser, car l'optimum peut prendre plein de formes: est-ce qu'on veut minimiser l'aire totale où des éléments se chevauchent (= si 4 éléments de surface 1 unité se superposent, alors la somme est 1 unité)? Est-ce qu'on veut minimiser la somme des aires de chevauchement de chaque élément (= si 4 éléments de surface 1 unité se superposent, alors la somme est 4 unités)? Ou le carré de chaque somme (= si 2 éléments se superposent à moitié, la somme est de 0.5²+0.5² = 0.5)?
En plus, en lisant l'exemple, j'ai l'impression que la solution rouge n'est pas du tout celle du problème initial posé. J'ai plutôt l'impression que tu as une surface composée de rectangles qui se chevauchent, et tu cherches à créer un ensemble d'autres rectangles, couvrant l'exacte même surface, mais de sorte que ce nouvel ensemble ait le moins de rectangles possibles, c'est ça?
(Perso, je trouve que cela sent le recodage d'une optimisation de moteur de collisions 2D et que tu perds inutilement du temps dessus si tu comptes mettre le jeu en prod derrière)
la définition de "optimale" est toujours à préciser, car l'optimum peut prendre plein de formes: est-ce qu'on veut minimiser l'aire totale où des éléments se chevauchent (= si 4 éléments de surface 1 unité se superposent, alors la somme est 1 unité)? Est-ce qu'on veut minimiser la somme des aires de chevauchement de chaque élément (= si 4 éléments de surface 1 unité se superposent, alors la somme est 4 unités)? Ou le carré de chaque somme (= si 2 éléments se superposent à moitié, la somme est de 0.5²+0.5² = 0.5)?
En plus, en lisant l'exemple, j'ai l'impression que la solution rouge n'est pas du tout celle du problème initial posé. J'ai plutôt l'impression que tu as une surface composée de rectangles qui se chevauchent, et tu cherches à créer un ensemble d'autres rectangles, couvrant l'exacte même surface, mais de sorte que ce nouvel ensemble ait le moins de rectangles possibles, c'est ça?
(Perso, je trouve que cela sent le recodage d'une optimisation de moteur de collisions 2D et que tu perds inutilement du temps dessus si tu comptes mettre le jeu en prod derrière)