Esto es similar al bin packing problem, pero con algunos cambios.Algoritmo rápido para el bin de dos dimensiones con una distancia mínima de cada rectángulo y un punto
Lo que tengo es una serie de datos anotados, y cuando dibujo el gráfico, quiero colocar las anotaciones en la posición que en general minimiza la distancia desde el punto anotado.
Este cuadro, (robado gratuitamente) muestra lo que me gustaría hacer: .
Sé que este es un problema de optimización, pero no tengo idea de por dónde empezar. Lo que estaba haciendo primero, fue colocarlo en la x correspondiente, y subir y bajar y para encontrar la ubicación que estaba disponible y guardar el área que se dibujó. Si bien funcionó, realmente no hace el mejor uso del espacio disponible, y me pregunto si hay algo mejor.
Me pregunto si hay algún algoritmo conocido que ataque este o similares problemas.
Nota agregada: No necesita ser óptima, pero absolutamente necesita ser rápida. Esto se hace durante el procesamiento, por lo que la IU está bloqueada mientras se ejecuta.
Si no necesita ser óptimo (y no ha proporcionado una definición clara de lo que desea optimizar), ¿de qué manera una solución puede ser subóptima para aumentar la velocidad? –
Quiero minimizar la distancia desde el punto anotado. (Cada anotación tiene un (x, y) que anota). –
Si el algoritmo que mencionas (es decir, moviendo hacia arriba/abajo y para encontrar una ubicación que estaba disponible) es demasiado lento, entonces probablemente no hay una solución lo suficientemente buena para ti ! – ElKamina