Respuesta

Pregunta para Mark - ¿Detalles sobre la evolución genética?

4 respuestas

mikeyc

Cliente, bbp_participant, comunidad, 877 respuestas.

Visitar el perfil

hace 8 años #114067

Hola,

 

Tengo algunas preguntas, ¿qué ocurre exactamente durante la mutación/apareamiento de estrategias en el modo de evolución genética?

 

¿Se trata de dos estrategias del grupo inicial o de más de dos?

¿Toma aleatoriamente la regla de entrada de uno y la combina con la regla de salida de otro?

¿Este proceso modifica los parámetros de alguna manera (como lo hace la optimización)?

¿Existe alguna aleatoriedad y a qué durante el proceso de combinación?

 

Intento comprender a qué es más importante dedicar tiempo:

 

  1. Crear más estrategias aleatorias
  2. Dedicar más tiempo a mejorar y optimizar las estrategias aleatorias
  3. Dedicar tiempo a la construcción genética

Conocer los detalles de lo que ocurre con los componentes básicos y las reglas durante el proceso genético sería de gran ayuda.

 

Gracias,

 

Mike

0

gentmat

Cliente, bbp_participante, comunidad, 234 respuestas.

Visitar el perfil

hace 8 años #132028

Hola Mike creo que Mark utilizar la función de Matlab como él es un desarrollador. Para entender GA es necesario leer o tomar un curso para eso. 

Intentaré explicar lo que recuerdo de mis estudios universitarios.

 

Primero se elige un grupo aleatorio y el primer gen aleatorio tendrá una aptitud de digamos 1... luego vienen más y se les dará un número de aptitud dependiendo de los criterios elegidos para esa aptitud. 

Cuando se crean todas las estrategias al azar ... Ellos algoritmo más probable será girando en torno a la estrategia más en forma y es por eso que usted ve que muchas estrategias se parece al elegir genética vs al azar . Genética dará lugar a estrategias más similares debido a la aptitud. 

Así que digamos que es un enorme círculo dentro de él pequeños puntos ... Usted verá todos los puntos tratando de ir en su lugar, pero relativamente a que la aptitud.

 

Ahora se produce la mutación, pero su tan raro 10% es tan alta . recuerde Algoritmo Genético se utiliza para encontrar muchos problemas como la evolución humana .. Así mutación le sucede a los seres humanos es millones de años de una manera insignificante . Así que usted puede sentarse la mutación a 0,1 a ser más realista, incluso en el comercio. 

 

Ahora Crossover es la forma de resolver las cosas más rápido y esto vino por muchos investigadores que trabajaron con GA y lo hizo mejor. Recuerde también GA es todavía NAIVE no gran manera, pero lo que realmente ayudó incluso en problemas de la NASA y se encontró crossover a ser el mejor. 

Crossover cambiará A Z Y de la cadena y empezar a intercambiarlos no va a cambiar A o B sólo la combinación hará que cambie lógicamente, pero como parámetros dudo que va a cambiar nada, Por teoría se debe mantener A y Z e Y el mismo y cruzarlos hasta que la aptitud mejora . 

 

¿Existe una forma predeterminada o una mejor forma o configuración? NO 

Es un hecho que si se aumenta el número de la piscina de la generación aleatoria obtendrá mejores resultados genéticos, pero recuerde que es mucho tiempo y se necesita una gran cantidad de cpu para hacerlo (y gran piscina a veces dará lugar a la estrategia más similares, porque de 1000, 1 de estos oficios siempre viene a ser el mejor ajuste aquí usted estará viviendo un círculo y u ll tiene que hacerlo más como 100 piscina) . y, a veces 1000 ayuda más y de hecho aumentará la posibilidad de mejores estrategias (sólo que la cosa podría fallar u pero u puede tratar de 1000 o 2000 y comprobar lo que va a pasar)

Random puede hacer los mismos resultados que genetic pero tardará más tiempo en hacerlo... pero como el consumo de SQ de la cpu es un poco raro te puedo decir que random es mucho más rápido que genetic.

Así que por la teoría genética debe ser más rápido, pero con la búsqueda genética SQ consumir más tiempo para preparar la piscina y el cruce y así sucesivamente . por lo que conduce a la misma.

 

Espero haber tratado de ayudar y ahora MARK responderá, pero creo que no tendrá ninguna configuración específica, ya que incluso los profesores y las personas que crearon GA todavía no saben cuál es la mejor configuración para el GA.

Pero la mayoría de los matemáticos están de acuerdo en la mutación 0,1 y el cruce 65%  

0

mikeyc

Cliente, bbp_participant, comunidad, 877 respuestas.

Visitar el perfil

hace 8 años #132031

Supongo que el quid de lo que estoy tratando de entender es, ¿GA simplemente combinar partes de dos estrategias y luego ver si es mejor que las estrategias de los padres, y en qué nivel se combinan las piezas? ¿Es en la entrada, salida, stop loss nivel, o piezas individuales de la entrada, salida y stop nivel de lógica, y son constantes como el período de indicador cambiado? ¿Se combina en los niveles de operador/bloque de construcción?

 

¿El enfoque GA da mejores resultados que dedicar tiempo a mejorar seguido de optimizar o es mejor ir:

 

Aleatorio -> Mejorar partes de la estrategia -> Optimizar, ¿y no utilizar GA en absoluto?

0

gentmat

Cliente, bbp_participante, comunidad, 234 respuestas.

Visitar el perfil

hace 8 años #132033

Soy un desarrollador, pero no escribir sq pero aquí están los hechos de lo que creo que es verdad.
1- Ga combina reglas entery digamos estrategia 1 tiene cci > rsi y estrategia 2 tiene wp > bbands
ga tomará el más adecuado de estos 2 vamos a quedarnos str 1 y hace lo siguiente
añadir o sustituir o intercambiar
así que 1 senario ne cci>wp
o cci>rsi && wp>bandas
etc.
Ga haría lo mismo para sl y tomar ganancias
Ga no intercambiará el tipo de orden por lo que mantendrá el tipo de orden del más apto pero sólo hará cambios para entrada y salida.
2- mejorador sólo se utiliza si tiene algo en mente para hacer la búsqueda más rápida .
3- No hay manera de responder si al azar y luego mejorar y luego optimizar hacerlo mejor o no. nadie va a responder a que a menos que él es ignorante y cree que sabe pero no lo hace.
Todo es cuestión de suerte y velocidad, estoy seguro de que si usted tiene un 200 núcleos a 50ghz ull obtener una probabilidad en la búsqueda de buenas estrategias que un usuario normal.
aleatorio tiene pros y contras , así que GA
-radom pros:
a-muy rápido especialmente en sq3 comparado con ga
b-puede encontrar variedad de nuevas combinaciones diferentes entre sí
c-doesn uso de un montón de carneros y no espera contar luego esperar unos segundos para comprobar fitest luego comenzar a procesar las nuevas generaciones(velocidad de nuevo)
contras:
a-Así como es más rápido encontrar estrategias, es más lento encontrar una buena, ya que a veces el azar encuentra grandes entradas pero no grandes salidas, por lo que si fuera ga tal estrategia conduciría a algo en lugar de ser ignorada por el azar.
Profesionales de GA
1- mejor en encontrar soluciones para problemas complejos que tardarían 400 años en resolverse podrían tardar 1 año con GA. Pro los científicos usan AG no al azar para resolver problemas
GA cons:
-Lento debido a sq multithreaded manera (tiene smth mal esperemos sq4 es mejor) . al azar también el uso de múltiples núcleos, pero se siente mucho más rápido
-Como te dije antes, el problema del algoritmo genético es que puede dar vueltas alrededor del mayor ajuste y rendir infinitamente en las mismas estrategias.
esto se debe a un indicador que da el mejor ajuste con cualquier estrategia aleatoria por lo ga va a utilizar siempre.
para resolver que u necesidad de reducir el número de piscina generada al azar, pero recuerde mayor número de azar da una mejor oportunidad de una mejor estrategia. su espada con 2 lados
qué es mejor qué es mejor no lo puedo decir ni el que creó ga lo puede decir 🙂 .
prueba piscina grande , prueba piscina pequeña , prueba solo al azar .
no creo que forex es muy complejo y al azar puede hacerlo solo .
solo necesitas velocidad , ordenador spped. no te molestes en mejorar y optimizar solo banco estricto a estabilidad > 0.85
como este ull obtener 10 estrategias en 1 día y poner el número de oficios> max oficios en ur mente, de esa manera sólo las estrategias que están a medio terminar son la tienda y no mucho trabajo que se dont que no sea probar la estrategia en diferentes símbolos y diferentes timefrsmes

0

seaton

Cliente, bbp_participante, comunidad, 161 respuestas.

Visitar el perfil

hace 8 años #132038

Los AG en general son una forma de buscar rápidamente en grandes espacios de entrada para obtener resultados que, aunque no son óptimos, suelen ser muy buenos, a diferencia de un enfoque de fuerza bruta que tardará mucho tiempo en buscar en el mismo espacio de entrada y encontrar los mismos resultados. MEJOR Obviamente, el enfoque aleatorio es sólo eso, buscará aleatoriamente en el espacio de entrada y, con suerte, encontrará algo que valga la pena.

 

La teoría detrás de los AG es que las entradas a un gran espacio de búsqueda se mapean/codifican en un genoma (es decir, podría ser una matriz o cadena que representa las entradas a buscar), en este caso con SQ son las funciones las que se mapean para formar una estrategia, y el espacio de búsqueda el mercado, una función de aptitud basada en reglas se aplica al genoma para determinar cuál es un buen resultado y quién consigue sobrevivir a la siguiente población, en este caso la aptitud son las reglas que se aplican, como el beneficio y la reducción y es lo que determina qué estrategia se selecciona como padres para la siguiente generación.

 

Se crea una población inicial utilizando genomas generados aleatoriamente (o a veces sembrados con genomas prepoblados, es decir es posible que tenga algunas soluciones no óptimas que desee seguir buscando) y, al igual que en la teoría de la evolución, los genomas que son aptos sobreviven (resultado de aplicar la función de aptitud a cada genoma de la población), por lo que sólo los aptos sobreviven y, junto con los nuevos genomas generados aleatoriamente para formar la población, se producirán cruces y mutaciones, donde el cruce simula la reproducción y un par de genomas parentales intercambiarán parte de su genoma para formar los hijos que formarán la nueva generación, cada genoma en la nueva población tiene una pequeña posibilidad aleatoria de mutación, esta mutación ayuda a la población a no quedarse atascada en situaciones de máximos locales, la función de aptitud se aplica y todo comienza de nuevo.

 

Con el tiempo, el valor global de la aptitud de la población suele aumentar hasta un punto en el que ya no aumentará mucho más, es decir, se produce un estancamiento de la aptitud. Cuando esto ocurre, suele ser el resultado de haber encontrado un máximo local en el espacio de búsqueda y suele ser una señal de que no puede seguir evolucionando. Por tanto, lo mejor es volver a empezar con una nueva población para intentar encontrar otro máximo local.

 

Así que para responder a su pregunta, en SQ los resultados utilizando GA VS aleatoria, IMHO es que GA encontrará estrategias rentables más rápido que al azar, sin embargo, la población resultante será todo similar y puede no ser más óptima que las estrategias generadas al azar por lo que ambos necesitarán algún tipo de optimización. Así que en realidad ambos son sólo una forma de búsqueda, sólo que Ga encontrará soluciones más rápido, pero la solución encontrada a pesar de ser buena puede no ser óptima, es decir, como no está en el máximo global. Lo que hago es empezar con el azar y mis mejores allí se utilizan para sembrar GA

 

Hace muchas lunas (allá por finales de los 90) para mi proyecto final de carrera escribí un SO multitarea para sistemas embebidos en la MPU Motorola 68HC11 que utilizaba GA como programador de tareas.

 

Stephen...

1

Viendo 4 respuestas - de la 1 a la 4 (de un total de 4)