Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Problema matemático, La pescadilla que se muerde la cola

Iniciado por marcode, 22 de Enero de 2007, 10:17:32 PM

« anterior - próximo »

marcode

Me gustaría saber como abordais el siguiente problema.

Tengo 2 objetos que actuan el uno sobre el otro, cuando es requerido, la función correspondiente modifica el estado del que tenga asociado.

El problema es cuando los dos objetos influyen entre sí, por ejemplo 2 ruedas dentadas con movimientos individuales. La función de un objeto llama a la del otro, que a su vez vuelve a llamar al anterior, y así sucesivamente hasta el infinito (en nuestro caso stack overflow).

Yo creo la solución correcta estará en una función común cruzada. Pero se podría complicar si el problema por ejemplo son varias ruedas dentadas.
size=9]afortunadamente siempre ha habido alguien dispuesto a reinventar la rueda, de lo contrario seguiríamos usando un disco de piedra con un agujero.[/size]

Pogacha

Si estas implementando un sistema realimentado, tienes(conozco) dos soluciones posibles, la analitica y la de aproximaciones sucesivas.
La analitica te da el resultado exacto y consiste en armar un sistema de ecuaciones/relaciones de donde se resuelva el sistema. Lamentablemente esta requiere de un conocimiento superior del problema y de todas sus puntualiades (en simulaciones fisicas se creaban matrices inmensas para calcular la interación de fuerzas, pero era muy limitado).
La otra solucion es de aproximaciones sucesivas, la cual consiste en mandarse un numero limitado(generalmente por el tiempo) de mensajes retroalimentados. O sea, en vez de mandar el mensaje al elemento se lo pones en una cola de analisis, en la siguiente iteración este tomará el mensaje y lo procesará enviando los correspondientes mensajes de realimentación al sistema. En fisica por ejemplo se suelen hacer unas 10 iteraciones por frame.

Saludos

marcode

size=9]afortunadamente siempre ha habido alguien dispuesto a reinventar la rueda, de lo contrario seguiríamos usando un disco de piedra con un agujero.[/size]

Fran


marcode

No, es una jerarquía de objetos conectados en la que no hay padres ni hijos definidos.

...una anarquía???  :shock:
size=9]afortunadamente siempre ha habido alguien dispuesto a reinventar la rueda, de lo contrario seguiríamos usando un disco de piedra con un agujero.[/size]

Fran

Cita de: "marcode"No, es una jerarquía de objetos conectados en la que no hay padres ni hijos definidos.

...una anarquía???  :shock:

Pues más bien. Yo no veo el problema si lo que quieres es simular sinceramente. (Será q soy corto). Lo que stá claro es q en un sistema de engranajes y desde una posición 0 de situación definida es fácil hallar en el momento T la situacion de cada engranaje.

marcode

No es tan sencillo si lo que se aplican a los engranajes son desplazamientos o fuerzas (a cada uno de ellos).

Pero dejando a un lado la física, el problema ahora lo estoy teniendo porque obtengo la posición real de un objeto siguiendo la jerarquía.

Pero cuando la jerarquía no es una cadena de principio a fin el sistema se mete en un bucle y quería saber como se resuelven estas cosas.
size=9]afortunadamente siempre ha habido alguien dispuesto a reinventar la rueda, de lo contrario seguiríamos usando un disco de piedra con un agujero.[/size]






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.