Campeonato de optimización de algoritmos. - página 122
![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
El campeonato está diseñado para participantes entrenados, para aquellos que tienen algoritmos preparados. Os recuerdo que si queréis leer previamente la bibliografía del perfil, el enlace está en mi perfil y aquí.
Cuando tengamos suficientes participantes capacitados con algoritmos listos, entonces tendremos algo de qué hablar. Por ahora, ¡adiós y hasta pronto!
Dediqué mucha energía y nervio al campeonato, pero un moderador puede arruinar todo con uno de sus mensajes. Ejemplos de códigos y algoritmo de trabajo, referencias a la literatura, interfaces de conexión - todo esto lo di, pero resulta que, como dijo el moderador, todo esto no está ahí, ¡debo haberlo imaginado!
Si quieres comprobar la solidez de tus algoritmos, no dudes en ponerte en contacto conmigo en el área personal, y responderé a tus preguntas.
No esperes más actividad pública por mi parte, entiéndeme bien.
Con tu permiso, Andrew, te propongo evaluarlo así, de nuevo, no insisto.
Problema: Encontrar un extremo F(x1,x2, xn) de una función desconocida para el algoritmo.
Reglas:
El ganador se determinará mediante la suma de 2 criterios
Exactitud T=Fmin_mejor/Fmin_y - (mínimo del mejor/ mínimo del participante) en caso de encontrar el mínimo
T=Fmax_y/Fmax_best en caso de búsqueda del máximo
2. Número de llamadas a la función K=Kbest/Ky (número mínimo de llamadas de todos los participantes)
Puntuación total Os=T+K.
El algoritmo del participante pasa el array doble X[x1,x2, xn] y obtiene el valor de la función, luego opera según su lógica y calcula el extremo y el número de llamadas (número de pasadas del array).
El rango de búsqueda se declara por separado.
Podemos tomar la función F(x1,x2,x3)=exp(x1+x2+x3)/(x1*x2*x2*x3*x3) para el entrenamiento;
Mi algoritmo obtuvo estos resultados
Tengo estos resultados.
El error de búsqueda especificado - 0,01 Parámetros iniciales (primera llamada) x1=x2=x3=0,5; El rango de búsqueda 0-100
Número de veces que se llama a la función - Ky=51
Mínimo Fmin_y=3,76210
x1=1,1; x2=2,1; x3=3,1;
Con tu permiso, Andrew, te propongo evaluarlo así, de nuevo, no insisto.
Problema: Encontrar un extremo F(x1,x2, xn) de una función desconocida para el algoritmo.
Reglas:
El ganador se determinará mediante la suma de 2 criterios
Exactitud T=Fmin_mejor/Fmin_y - (mínimo del mejor/ mínimo del participante) en caso de encontrar el mínimo
T=Fmax_y/Fmax_best en caso de búsqueda del máximo
2. Número de llamadas a la función K=Kbest/Ky (número mínimo de llamadas de todos los participantes)
Puntuación total Os=T+K.
El algoritmo del participante pasa el array doble X[x1,x2, xn] y obtiene el valor de la función, luego opera según su lógica y calcula el extremo y el número de llamadas (número de pasadas del array).
El rango de búsqueda se declara por separado.
Podemos tomar la función F(x1,x2,x3)=exp(x1+x2+x3)/(x1*x2*x2*x3*x3) para el entrenamiento;
Mi algoritmo obtuvo estos resultados
Tengo estos resultados.
El error de búsqueda especificado - 0,01 Parámetros iniciales (primera llamada) x1=x2=x3=0,5; El rango de búsqueda 0-100
Número de veces que se llama a la función - Ky=51
Mínimo Fmin_y=3,76210
x1=1,1; x2=2,1; x3=3,1;
Aquí te he mostrado cómo se calculan las plazas. La única aclaración no es el tiempo, sino el número de llamadas a la FF:
Andrey Dik:He aquí un ejemplo del cálculo del puesto en el campeonato para los competidores. La tabla ya está ordenada por la columna "Criterio general".
Observemos la tabla con atención. Petrov obtuvo una puntuación de 0,89 en el criterio "Exactitud", en el que el valor máximo de FF escala a 1,0 y el mínimo a 0,0. Por lo tanto, es el mejor valor de todos. Zaborov obtuvo la puntuación más baja en este criterio, sólo consiguió 0,21 y ya parecía que Zaborov se quedaría en la valla de la clasificación....
Pero según el criterio "Tiempo", Zaborov es el líder: es el algoritmo más rápido y completó la tarea en 221 segundos (pero no el más inexacto al mismo tiempo).
Ahora vamos a calcular el criterio general. ¿Y qué vemos? Quién lo iba a decir, pero Abamov está en el último lugar, ya que su criterio general es el más bajo, sólo pudo obtener 0,53.
ZS. En el criterio de precisión, el valor más alto es mejor; en el criterio de tiempo, el valor más bajo es mejor. Todas las coincidencias de los nombres son accidentales, para mí mismo fue una gran sorpresa encontrar el último lugar con Abamov, bueno, tendrás que ser más preciso... y más rápido.
ZZZI. Para calcular el criterio "Precisión" se aplica la fórmula(In - InMIN) / (InMAX - InMIN); y para calcular el criterio "Tiempo"(InMIN - In) / (InMAX - InMIN);
PS. ¿Cuántas pruebas realiza en su tarea? ¿Por qué inicializar con un valor fijo de 0,5? ¿Cuántos accesos se obtienen si se inicializa con un número de 10,0?
PPS..... cualquier pregunta, por favor envíela a la sección personal.
Aquí mostré cómo se calculan los puestos de los participantes. La única aclaración no es el tiempo, sino el número de referencias a la FF:
PS. ¿Cuántas pruebas está haciendo en su tarea? ¿Por qué inicializar con un valor fijo de 0,5? ¿Cuántos accesos se obtienen si se inicializa con el número 10.0?
G Al inicializar 10.0 se obtiene un número de aciertos de 2028 al menos 3.73722. Todavía no he comprobado en la inicialización de RSCh.
Entiende que no estoy afirmando en absoluto que mi algoritmo sea mejor que el tuyo, todavía estoy trabajando en el mío. Sólo quería saber cómo se formará la puntuación total. Cómo afinar el algoritmo.
Tienes razón, soy el único que dice tener algo preparado. Otros participantes guardan silencio públicamente. Es razonable posponer el campeonato hasta el otoño y entrenar mientras tanto.
G Al inicializar 10.0 el número de aciertos es 2028 al menos 3.73722. Todavía no he comprobado la inicialización del RNG.
Entienda que no pretendo que mi algoritmo sea mejor que el suyo, todavía estoy trabajando en el mío. Sólo quería saber cómo se formará la puntuación total. Cómo afinar el algoritmo.
ZS. Tienes razón, parece que sólo yo digo que tengo algo preparado. Otros participantes guardan silencio públicamente. Es razonable posponer el campeonato al otoño, y mientras tanto entrenar.
Bueno, eso es lo que pensé.
Esa es la cuestión. No hay que retocarlo para que se adapte a nada. El algoritmo debe ser capaz de trabajar con cualquier función que no conozca, y cualquier inicialización es equivalente, y hay que hacer varias pruebas, al menos 20.
Poner la comunicación en lo privado.
Mi abuelo solía decirme: "La diferencia entre un hombre sabio y un tonto es que éste consigue hacer las cosas.
¿No te dijo tu abuelo... ¿"No te metas con el entrometido"?
¿Está ocupado?
Aunque, eres un clásico del género - como hablar de campeonato durante dos meses, reunir a los participantes, conseguir el apoyo de MC en forma de 3000 dólares de premio, pero luego lo sueltas y no consigues nada.
La anciana de Pushkin con el abrevadero agujereado tuvo más suerte al final: al menos recuperó su abrevadero.
¿Está ocupado?
Aunque, eres un clásico del género - como hablar de campeonato durante dos meses, reunir a los participantes, conseguir el apoyo de MC en forma de 3000 dólares de premio, pero luego lo sueltas y no consigues nada.
La anciana de Pushkin con el abrevadero agujereado tuvo más suerte al final: al menos recuperó su abrevadero.