¿Cómo puedo aprender el modelado matemático?

Respuesta corta: necesita obtener un problema y comenzar a trabajar en él.

Respuesta larga: Para explicar, déjame dar una analogía. Supongamos que la pregunta era: ¿cómo tratas a la gente? Por supuesto, uno puede dar muchos consejos sobre cómo tratar con las personas (por ejemplo, ser amable, expresar las cosas en términos de lo que la otra persona quiere, etc.), pero solo puede hacer un progreso sustancial ensuciándose las manos y haciendo cosas. que quieres hacer. Dicho esto, aquí hay algunas sugerencias generales:

(1) El modelado matemático es un campo increíblemente diverso, muchas técnicas que son útiles en un área no serán aplicables a otras áreas. Elige un problema y quédate con él durante unos meses.

(2) Aprende a codificar bien.
(a) Comprenda la programación orientada a objetos: cuando esté construyendo una simulación por computadora compleja, estará constantemente modificando aspectos de su programa. Si diseña bien su programa (por ejemplo, usando programación orientada a objetos), podrá realizar estos cambios fácilmente sin interrumpir su programa. También mantener el código puede ser difícil cuando intenta implementar muchas funciones.
(b) Desarrolle buenos casos de prueba y siempre pruebe partes intermedias de su código. P.ej. Supongamos que su programa tiene varios módulos que procesan sus entradas y las pasan al siguiente módulo. La gente a menudo ejecuta estas tuberías y solo mira el resultado final, sin mirar los resultados intermedios. Explorar los resultados de sus datos en cada paso de la tubería puede ahorrarle mucho tiempo para que su código funcione.
(c) Haga un prototipo de código rápidamente y desarrolle un código de producción optimizado: dependiendo de su aplicación, recomendaría conocer un idioma que pueda usar para hacer que las cosas funcionen rápidamente (por ejemplo, python, matlab, matemática) y un idioma que pueda usar para hacer que las cosas funcionen realmente rápido (por ejemplo, C / C ++).
(d) Gran comprensión de las estructuras de datos: cuando realice simulaciones, la mayoría de las veces estará limitado por la memoria y / o la velocidad de procesamiento de su hardware. Tienes que administrar la memoria de la computadora con cuidado para que el programa se ejecute. Será bueno entender el tiempo de ejecución asintótico, etc.
(e) Aprender programación en paralelo. Cada vez más, los problemas se están moviendo al punto en que los necesita para ejecutarse en varias computadoras. Para este fin, necesita aprender a escribir un programa donde el cómputo se pueda subdividir y las diferentes subdivisiones se comuniquen raramente.

(3) Nuevamente, las habilidades que necesitas conocer varían ampliamente según lo que estás tratando de modelar, pero sugeriré algunas técnicas importantes que debes conocer.
(a) Aprenda a configurar ecuaciones diferenciales dado un problema físico y cómo hacer aproximaciones apropiadas. En la mayoría de las áreas, una ecuación de los primeros principios será completamente intratable. Para resolver estos problemas en la práctica, necesita hacer ciertas simplificaciones.
(b) Tenga a su disposición una amplia variedad de algoritmos de álgebra lineal. Por lo general, es mejor tener una idea general de cuántos algoritmos funcionan (por ejemplo, qué tipo de problemas resuelven, su tiempo de ejecución, etc.), y puede aprender el Detalles cuando necesitas usarlos.
(c) Usa la teoría para guiar tus simulaciones. Lo que termina sucediendo es que tendrás una simulación y muchos parámetros. Para la mayoría de los valores de esos parámetros, obtienes un comportamiento aburrido. Hay partes especiales del espacio de parámetros que darán resultados interesantes y puede utilizar la teoría para ayudarlo a encontrar estos. En particular, debe acostumbrarse a los argumentos heurísticos para encontrar estas relaciones de parámetros.

De todos modos, he dicho todas estas cosas, pero es bastante inútil a menos que realmente empieces a trabajar en un problema.

Creo que la respuesta a la que se llega a esto depende exactamente de lo que quiere decir con modelos matemáticos y de lo que pretende obtener.

La concepción (modelo) de los modelos que me gusta usar es cualquier procedimiento / función general que asigna un conjunto de “observaciones” a un conjunto de “salidas” o “acciones”. Ahora esto puede sonar un poco como una especie de algoritmo, y lo es, esencialmente. Sin embargo, el corazón del modelado está en averiguar qué es el algoritmo que desea y lo que hace en el contexto de un modelo / sistema más grande (su cerebro, su empresa, su sociedad, etc.). Estoy confundiendo las ideas de un sistema con un modelo de ese sistema, tal vez, pero cualquier concepción que tengamos de un “sistema” es a través de algún modelo intrínseco que tenemos.

Habiendo dicho eso, los algoritmos de todo y cualquier cosa son claramente útiles, y estudiar los sistemas que desea modelar también será esencial. El llamado “Investigación de Operaciones” también puede ser un lugar útil para buscar, en particular debido a la variedad de recursos que existen y cómo se relacionan con algunos tipos de modelos.

Comprender el contexto en el que intenta ubicar su modelo es lo que creo que es la parte más interesante y difícil de todo el proceso. Para esta tarea, encuentro que algunos intentos de IA son bastante esclarecedores; Para hacer algo que simule la “inteligencia humana”, es muy importante tener una comprensión sólida de lo que eso significa. Además, los intentos de hacer esto a través del alcance de la IA son típicamente de personas que tienen conocimientos de matemáticas y CS.

En particular, me gustan los recursos en http://intelligence.org/blog , pero puede ser mucho para analizar, y no está particularmente organizado en un formato de libro de texto. Sin embargo, tengo dos libros en la parte superior de mi lista de lecturas que parecen prometedores y relevantes para este campo, a saber, Razonamiento probabilístico en sistemas inteligentes y causalidad: modelos, razonamiento e inferencia, ambos de Judea Pearl.

Sinceramente, esta pregunta se plantea mejor como una discusión, y no puedo pensar en una buena manera de resumir y concluir esta divergencia en este momento. Ve a releer el segundo párrafo, supongo.

No dijiste en qué etapa de tus estudios / carrera estás.

Si tiene una licenciatura en matemáticas, puede solicitar una maestría en Matemática Aplicada / Modelado Matemático, hay muchas buenas en muchas universidades.

Si se encuentra en Europa, conozco un par de programas que involucran a muchas universidades y brindan una excelente capacitación, como el Master modelo ECMI en matemáticas industriales. ECMI es el Consorcio Europeo de Matemáticas en la Industria. Para capacitación de modelado a corto plazo, puede unirse a una de las semanas de modelado organizadas por ECMI en toda Europa. Estoy seguro de que SIAM en los Estados Unidos está realizando actividades similares.

http://www.mathworks.com/service

http://egtheory.wordpress.com/20

La plataforma RiskSolver y algunos otros paquetes en Excel también permiten el modelado.

Meterse en problemas de modelización de todas las ciencias. Usted quiere cosas simples como los problemas de física de un “con aplicaciones”, por ejemplo, libro de texto de cálculo. Pero con el tiempo y el poder, también quieres aprender a hacer cosas terriblemente increíblemente simples, como la economía del comportamiento.

Luego, también debe encontrar las fuentes más relevantes y actuales sobre el modelado. ¡Y cursos sobre las técnicas matemáticas! Como prueba de fallos, pedirle a un profesor universitario o dos debería llevarte a encontrar la veta madre. En Internet, quiero decir, la respuesta siempre es buscar en Internet, podría ser un área caótica en este momento. No sé el lugar / términos para sugerir, aquí y ahora.

Verás, solo soy un fanático del modelado de rango C. Los superiores no me dicen nada.