Campeonato de optimización de algoritmos. - página 14

 
Реter Konow:
El espacio sólo puede ser tridimensional. Mi imaginación se niega a imaginar otra cosa. Según tengo entendido, un solo FF no es adecuado para un campeonato porque su superficie es demasiado simple. Para complicar la superficie, ¿quieres usar múltiples FF? ¿Superponiendo las curvas que crean unas sobre otras se crearía una superficie lo suficientemente compleja como para probar la universalidad de los algoritmos?

Muy bien. Si insiste, tengamos un espacio de búsqueda tridimensional.

La tarea tendrá entre 100 y 500 parámetros optimizables, y esto es lo principal.

 
Yuri Evseenkov:

EN MI OPINIÓN. La discusión se ha alejado...

¿Qué tal si empezamos la primera ronda del campeonato con una tarea sencilla que todo el mundo pueda entender?

Por ejemplo, un ejemplo sencillo:

Encuentra las raíces de la ecuación: 34a+43b+16c+30d+23e=4492;

Se pueden utilizar todos los algoritmos: de fuerza bruta, evolutivos, prerrevolucionarios...

Los participantes resuelven una ecuación dada por el organizador. La respuesta más rápida y precisa es la ganadora.

La discusión es libre de ir a la distancia de cualquier distancia, y el campeonato nos esperael 11 de julio de 2016.

En el ejemplo que has presentado hay 5 variables, o según tú 5 raíces. ¿Puedes resolver niveles con 100 raíces? ¿Y con 500? - Si es así, ¡bienvenido al campeonato!

 
Alexey Burnakov:
Me gustaría participar, pero para mí sólo es aceptable que los organizadores expongan los datos y pidan resolver de cualquier manera y en cualquier idioma.
Esto es exactamente lo que supone el campeonato: encontrar el máximo de una función desconocida con 100 a 500 variables (raíces) de cualquier manera y en cualquier lenguaje. Lee las normas.
 
Dmitry Fedoseev:
No es necesario encontrar todos los baches, con uno más o menos alto es suficiente. Es una tarea de optimización, no una tarea de matan.

Sí. No es necesario. Tenemos que encontrar todo el valor posible del campeonato de FF.

¿Qué es matan?

 
Реter Konow:
La pregunta es: ¿hasta dónde me desvío en mi comprensión (siguiendo las analogías aceptadas) del tema del campeonato?

¿Por qué preguntas así? - tanto si lo haces como si no.

La tarea consiste en encontrar el máximo de una función desconocida con parámetros entre 100 y 500. Eso es todo lo que necesitas saber para entrar en el campeonato. No importa cuántas dimensiones tenga realmente el espacio de búsqueda, lo que cuenta es la respuesta. ¡Encuéntralo!

 
Andrey Dik:

La discusión es libre de derivar hacia los confines de cualquier distancia, y el campeonato nos esperael 11 de julio de 2016.

Hay 5 variables en el ejemplo que has presentado, o según tú 5 raíces. ¿Puedes resolver niveles con 100 raíces? ¿Y con 500? - Si es así, ¡bienvenido al campeonato!

Fácil. Con toda la fuerza bruta. Pero esa es la opción más larga. Puede haber tantas raíces como quieras. Puedes hacerlo. La cuestión es ver quién puede encontrar las raíces más rápido y con más precisión. Y no es necesario enviar algoritmos.
 
Obviamente, la optimización tiene que ver con la búsqueda. Es decir, en lugar de una búsqueda completa por fuerza bruta, la búsqueda aplica una estrategia para encontrar el valor buscado más rápidamente. Está claro que la búsqueda de nodos de superficie puede optimizarse. Pero, ¿qué se entiende por optimización de parámetros? ¿Parámetros de qué?
 
Yuri Evseenkov:
Fácil. Por la fuerza bruta total. Pero esta es la opción más larga. Puede haber tantas raíces como quieras. Puedes hacerlo. La cuestión es ver quién puede encontrar las raíces más rápido y con más precisión. Y no es necesario enviar algoritmos.

¿Fácil? ¡Genial!

¿Cómo se comprueba "más rápido" y "más preciso" si los algoritmos están en manos de los participantes? ¿Cómo se comprueba que un participante ha encontrado una solución en menos pasos que una fuerza bruta completa?

 
Реter Konow:
Obviamente, la optimización tiene que ver con la búsqueda. Es decir, en lugar de una búsqueda completa, la búsqueda aplica una estrategia para encontrar el valor deseado más rápidamente. Está claro que la búsqueda de nodos de superficie puede optimizarse. Pero, ¿qué se entiende por optimización de parámetros? ¿Parámetros de qué?

Parámetros de la función.

Ok, déjame ponerlo de esta manera, tu algoritmo debería ser capaz de pasar valores, parámetros como un array a una biblioteca con FF y obtener de vuelta una respuesta de esta manera:

double FF(double &array []);

Esto es muy fácil de entender, ¿no? Array[] tiene dimensiones de 100 a 500 (que se resolverán más adelante). La tarea de los participantes es encontrar esos valores en la matriz, en los que la respuesta FF será máxima.