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

 
Реter Konow:

No entiendo en absoluto de qué estamos hablando. Las llamadas de FF se cuentan en su biblioteca mediante una función especial.

Aquí también se encuentra la función de escritura de archivos.

Si en la primera llamada de la biblioteca con el FF, pasa allí (en una función especial) el nombre del participante, entonces esta función introducirá el nombre del participante en el nombre de su archivo con el resultado.

Allí, en el archivo estará el número de llamadas de FF.

En este caso, la secuencia de comandos satisfará todas las solicitudes.

P.S. Por cierto, me sorprendió, lo mal diseñada que está la función de crear un archivo de resultados, para la tarea con texto. Podrías haber añadido el número de llamadas a FF junto a la cadena de resultados. Para demostrar el resultado. Como el participante no tendrá acceso al código fuente abierto de la biblioteca FF, las cifras del archivo serán una prueba de la veracidad del resultado.
 

He desarrollado el siguiente concepto:

1. Se crea una biblioteca con FF y un conjunto de funciones estándar, entre las que se encuentran: contar las llamadas, componer el nombre del archivo de resultados, escribir el resultado y el número de llamadas al FF en el archivo.

2. El árbitro compila la fórmula FF y la introduce en la función FF. Compila la biblioteca con el FF.

3. La biblioteca compilada con el FF se entrega a todos los participantes.

4. Los participantes importan funciones de la biblioteca, resuelven el problema y compilan sus guiones.

5. Los participantes suben sus guiones al foro en una fecha determinada.

6. A continuación, los participantes se descargan los guiones de los demás y los comprueban en sus terminales. Miran los archivos de resultados, creados al lanzar los scripts de la biblioteca compilada con el FF, y ven y comparan sus propios resultados y los de los demás.

7. De este modo, se revela automáticamente un ganador.


Lo único que se necesita es un árbitro, para compilar la fórmula FF y coserla en la función, y compilar la biblioteca final.

Es mucho más fácil, ¿no? )

 
Реter Konow:

He desarrollado el siguiente concepto:

1. Se crea una biblioteca con FF y un conjunto de funciones estándar, entre las que se encuentran: contar las llamadas, componer el nombre del archivo de resultados, escribir el resultado y el número de llamadas al FF en el archivo.

2. El árbitro compila la fórmula FF y la escribe en la función FF. Compila la biblioteca con el FF.

3. La biblioteca FF compilada se distribuye a todos los participantes.

4. Los participantes importan funciones de la biblioteca, resuelven el problema y compilan sus guiones.

5. Los participantes suben sus guiones al foro en una fecha determinada.

6. Después, los participantes se descargan los guiones y los comprueban en sus terminales. Miran los archivos de resultados, creados al lanzar los scripts compilados de la biblioteca con el FF, y ven y comparan sus propios resultados y los de los demás.

7. De este modo, se revela automáticamente un ganador.


Lo único que se necesita es un árbitro, para compilar la fórmula FF y coserla en la función, y compilar la biblioteca final.

Es mucho más fácil, ¿no? )

NO.

Antes era más fácil, ahora será más difícil. Previamente, se acordó que FF se calculará en el rango [-10,0;10,0] en incrementos de 0,1. Los participantes debían incorporar estas restricciones en sus algoritmos con fines de protección, para que ningún tercero pudiera utilizarlos en sus tareas, y luego, al inicio del Campeonato, publicar la biblioteca de algoritmos compilada. El script de comprobación debería haber llamado a la biblioteca del concursante, que funciona de forma independiente con FF. Todo era sencillo y transparente, la pureza del experimento y los intereses de los participantes para proteger la propiedad intelectual. Pero no, surgió una ola de indignación del tipo "pero, ¿por qué se eligió este rango? ¿Por qué con este paso en particular? - Expliqué lúcidamente que el rango y el paso no importan, pueden ser elegidos de cualquier manera para el campeonato, y los fijos y conocidos de antemano son sólo para limitar la aplicabilidad de los algoritmos de los participantes en tareas reales por parte de terceros, pero el público no quedó satisfecho con mi explicación. De acuerdo, he dicho que se eliminen todas las restricciones de alcance y paso, pero entonces ya no se pueden poner bibliotecas de participantes en el dominio público, ya que no hay restricciones de uso, y esto significa que no hay protección. Así que ahora se necesita un jurado que acepte los algoritmos de los concursantes y realice las pruebas.

¡Ahora no puedes poner los algoritmos de los participantes en el dominio público, porque la tarea del campeonato no tendrá restricciones en el rango de parámetros y pasos! Y todo esto a su merced.

 
Реter Konow:
Bien, en ese caso la solución debería estar en la biblioteca. Pero quizás haya una opción en la que no sea necesario un jurado. Como si no necesitáramos un jurado para determinar la mejor solución en el problema del texto.

Nadie ha definido nada. Ni tú ni yo publicamos algoritmos para comprobarlo, todo son palabras.

La única cosa -Evento mostró su algoritmo con la capacidad de comprobarlo, pero de hecho resultó no ser un algoritmo de optimización en absoluto, sino un exceso completo inteligentemente adaptado.

Mostré intencionadamente el código fuente de la tarea junto con el texto, para que los participantes pudieran ver cómo se realizan las llamadas de las funciones principales. Pero en lugar de tenerlo en cuenta y crear la misma interfaz para el campeonato, tú yEvento no dejaron de utilizar el conocimiento del contenido de la tarea para resolverla directamente. Bueno, eso no va a funcionar para la tarea del campeonato. Habrá una comprobación real de los algoritmos y tales maquinaciones con FF no funcionarán, así como tu sugerencia de "algoritmo en un script".

 
Andrey Dik:

Nadie ha definido nada. Ni tú ni yo publicamos algoritmos para comprobarlo, todo son palabras.

La única cosa -Evento mostró su algoritmo con la capacidad de comprobarlo, pero de hecho resultó no ser un algoritmo de optimización en absoluto, sino un exceso completo inteligentemente adaptado.

Mostré intencionadamente el código fuente de la tarea junto con el texto, para que los participantes pudieran ver cómo se realizan las llamadas de las funciones principales. Pero en lugar de tenerlo en cuenta y crear la misma interfaz para el campeonato, tú yEvento no dejaron de utilizar el conocimiento del contenido de la tarea para resolverla directamente. Bueno, eso no va a funcionar para la tarea del campeonato. Habrá una comprobación real de los algoritmos y tales maquinaciones con FF no funcionarán, al igual que tu sugerencia sobre el "algoritmo en un script".

¿Así que crees que hice trampa?

Tenías exactamente las mismas condiciones que yo y que el Evento. Dije que podía publicar el script compilado. (¿Colocar?)

Tú,como participante del concurso para resolver el problema de las palabras, debes publicar tu versión. No la has publicado y ni siquiera me has dicho tus resultados. Aunque, miento - sus resultados de resolver el problema con el texto que usted dijo al principio, y yo y Evento le ganaron por más de 20 veces el resultado. Hice la vista gorda. Bueno, creo que - un hombre crea algoritmos universales, y tales tareas no son graves para él ...

(Aunque es extraño - un algoritmo universal, que, debido a su universalidad, pierde en eficacia a los algoritmos no universales. Algo está mal aquí...)

¿Y qué tiene que ver el conocimiento del contenido con esto? Puedes cambiar la cadena por cualquier otra.

 
Andrey Dik:

NO.

Antes era más fácil, ahora será más complicado. Previamente, se acordó que el FF se calculará en el rango [-10,0;10,0] en incrementos de 0,1, se pidió a los participantes que incorporaran estas restricciones en sus algoritmos con fines de protección para evitar que terceros los utilizaran en sus tareas, y luego, al inicio del Campeonato, que publicaran los algoritmos compilados de la biblioteca. El script de comprobación debería haber llamado a la biblioteca del concursante, que funciona de forma independiente con FF. Todo era sencillo y transparente, la pureza del experimento y los intereses de los participantes para proteger la propiedad intelectual. Pero no, surgió una ola de indignación del tipo "pero, ¿por qué se eligió este rango? ¿Por qué con este paso en particular? - Expliqué lúcidamente que el rango y el paso no importan, pueden ser elegidos de cualquier manera para el campeonato, y los fijos y conocidos de antemano son sólo para limitar la aplicabilidad de los algoritmos de los participantes en problemas reales por terceros, pero el público no estaba satisfecho con mi explicación. De acuerdo, he dicho que se eliminen todas las restricciones de alcance y paso, pero entonces ya no se pueden poner bibliotecas de participantes en el dominio público, ya que no hay restricciones de uso, y esto significa que no hay protección. Así que ahora es necesario que el jurado acepte los algoritmos de los concursantes y realice las pruebas.

Ahora no puedes poner los algoritmos de los participantes en el dominio público, ¡porque la tarea del campeonato no tendrá restricciones en el rango de parámetros y pasos! Y todo esto a su merced.

Acepto sus condiciones de conexión. Como quieras. Compitamos. Desafiemos. Vamos a dar un plazo y una fecha para el algoritmo. Lo haré de todos modos.
 
Реter Konow:

¿Así que crees que hice trampa?

Tenías exactamente las mismas condiciones que yo y que el Evento. Dije que podía publicar el script compilado. (¿Colocar?)

Tú,como participante en el concurso de resolución de problemas de texto, deberías haber publicado tu versión. No la has publicado, y ni siquiera me has dicho tus resultados. Aunque, miento - sus resultados de resolver el problema con el texto que usted dijo al principio, y yo y Evento le ganaron por más de 20 veces el resultado. Hice la vista gorda. Bueno, creo que - un hombre crea algoritmos universales, y tales tareas no son graves para él ...

(Aunque es extraño - un algoritmo universal, que, debido a su universalidad, pierde en eficacia a los algoritmos no universales. Algo está mal aquí...)

¿Y qué tiene que ver el conocimiento del contenido con esto? Puedes cambiar una cadena por cualquier otra. Es imposible crear un algoritmo sin conocer la esencia del problema.

Como siempre, todo está mezclado y revuelto.

¿Por qué iba a publicar mi algoritmo para un problema con texto? No lo prometí, ni lo exigí a los demás. Este es un ejemplo de conexión, una interfaz. ¡Utiliza esta interfaz para conectar el algoritmo de tu biblioteca con la FF en el campeonato, luego en el campeonato y hablaremos de cómo y por qué y quién logró qué y cómo!

 
Реter Konow:
Acepto sus condiciones de conexión. Como quieras. Compitamos. Desafiemos. Vamos a dar un plazo y una fecha para la entrega del algoritmo. Lo haré de todos modos.
Ahora, esto es una charla seria. En cuanto esperemos a los representantes de MQ, empezaremos a formar la FF para el campeonato de inmediato. Sin ellos, nada funcionará, ni la FF ni el campeonato.
 
Andrey Dik:
Ahora, esto es una charla seria. En cuanto esperemos a los representantes de MQ, empezaremos a formar la FF para el campeonato. Sin ellos, nada funcionará, ni la FF ni el campeonato.
Desde el momento en que lleguen, habrá que destinar un periodo de tiempo a la preparación.
 
Реter Konow:
A partir del momento en que aparezcan, habrá que dejar de lado un periodo de preparación.
¿Por qué?