¿Están las matemáticas y la ciencia mismas amenazadas por productos de caja negra de código cerrado como Mathematica?

Utilizo mucho Mathematica en el trabajo, construyendo modelos dinámicos de péndulos utilizados como sistemas de aislamiento de vibraciones en un detector de ondas de gravedad (LIGO). El hecho de que algunos de sus algoritmos sean de caja negra es una objeción totalmente académica en el 99.9% de los casos. Me permite abordar problemas mucho más complejos de lo que podría hacer a mano o comprobar a mano, y lo uso con gratitud. Me permite abordar problemas tan complicados que ni siquiera puedo tener la confianza de haberlos configurado correctamente en Mathematica a menos que haya realizado muchas verificaciones de cordura y verificaciones de consistencia más formales. Y esa es básicamente la respuesta a todo. Si no estoy comprobando que el resultado devuelto satisfaga las ecuaciones o lo que se le haya dado a Mathematica en primer lugar, entonces ni siquiera debería creer el resultado.

Tomémoslo desde arriba: Mathematica y otro software como MATLAB no tienen el monopolio de la computación científica. Puede encontrar algunas alternativas de código abierto bastante buenas para ambos, particularmente para MATLAB. Puede que no estén tan pulidos, pero pueden hacer el trabajo. Puede que no sepamos con precisión cómo Wolfram implementa Mathematica, pero los métodos de computación simbólica son conocimientos compartidos, por lo que cualquier persona con conocimientos en el área tiene una buena idea de cómo lo hacen. Vea, por ejemplo, la respuesta de Leo C. Stein a ¿Cómo Mathematica resuelve integrales?

Pero incluso si se basó únicamente en software de código abierto, la gran mayoría de los científicos e ingenieros los usarán como cajas negras. Francamente, simplemente no tienes el tiempo o la experiencia (las matemáticas y la versión computacional asociada son dos bestias completamente diferentes) para descubrir exactamente cómo funcionan los algoritmos individuales. En cierto nivel, debes confiar en que han sido revisados ​​a fondo. Entonces, Mathematica o no, debes tener cierto nivel de confianza en el algoritmo. Si lo piensa, esto es con lo que Mathematica cuenta para ganar dinero: ¡que preferiría confiar en una empresa establecida con fines de lucro que un grupo de voluntarios que juntan algo gratis!

¿Es esto un problema? Mi experiencia limitada me dice que no. Este software no es tan importante como crees. Nunca te encuentras en una situación en la que no tienes ni idea de lo que el software te dará al final. O tiene una idea relativamente buena de cuál será el resultado, o puede argumentar por qué el resultado tiene sentido. Si la respuesta no te convence, siempre puedes desarrollar otro método para obtener el mismo valor. Esto sucede todo el tiempo en los experimentos de LHC, por ejemplo, donde se utilizan múltiples métodos independientes para encontrar el mismo resultado, incluso para cosas relativamente mundanas, solo para asegurarse de que no haya errores computacionales involucrados.

Además, realmente no hay mejor manera de hacer las cosas. La computación ha sido una gran bendición para el campo de la física en general. He reproducido una pequeña parte del trabajo experimental realizado por Perrin que le valió el Premio Nobel de Física de 1926, y créanme, rastrear granos microscópicos a simple vista no es algo que disfruten. Me hubiera encantado usar un algoritmo para rastrear la ubicación de estos granos automáticamente. Además, siempre puedes hacer algunas a mano solo para asegurarte. Mathematica y sus amigos ahorran una gran cantidad de tiempo y esfuerzo, y casi siempre son más precisos que los humanos.

¿En cuanto a transparencia y reproducibilidad? Puede ser políticamente incorrecto, o puede ser mi inexperiencia hablar, pero lo diré de todos modos: están MUY sobrevalorados en la ciencia, especialmente por los laicos. Olvídate de reproducir cualquier cosa que leas en un artículo: a menos que sea completamente teórico o directamente de interés, no hay forma de que tengas la capacidad o el tiempo para reproducir algo. Y tratar de ser transparente solo puede llegar tan lejos antes de que se vuelva imposiblemente tedioso e incomprensible. O acepta que todos los resultados condensados ​​en un documento breve son tan transparentes como puede, o puede leer todos mis cuadernos de laboratorio y datos en bruto, que incluso a veces no entiendo.

En todo caso, Mathematica y sus amigos son habilitadores, no barreras: lo llevan a través de algunas de las investigaciones más secas de la manera más segura y limpia posible, cosas con las que no tiene el ancho de banda para lidiar. Y si alguna vez sientes que estás afuera mirando hacia adentro cuando se trata de computación científica, no dudes en dirigirte a las cosas de código abierto.

No. Mathematica es solo una caja negra si hace algo que no entiendes. Siempre puedes escribir una función para duplicar uno de sus negros
funciones de cuadro, donde conoce todos los supuestos y algoritmos. Incluso en funciones pulidas como NDSolve (el solucionador de ecuaciones diferenciales numéricas) puede aplicar métodos que especifique e incluso puede escribir sus propios métodos e incorporarlos al sistema existente. También existe una extensa documentación que describe los métodos y algoritmos que se utilizan (con más de 3000 funciones integradas, esto se aplica a una gran cantidad de papel), pero la mayoría de las personas no son lo suficientemente pacientes como para molestarse con él. Entonces Mathematica no es un sistema cerrado. Está confundiendo el código con los métodos. El núcleo central de Mathica (alrededor del 25%) está escrito en C, esos detalles son secretos ya que Wolfram Research no quiere que los competidores obtengan su código. Pero eso no significa que no le digan a las personas que su función Integrar utiliza el algoritmo Risch, como ejemplo.

Mathematica es una herramienta para hacer matemáticas tediosas por computadora, no para realizar pruebas rigurosas. Incluso si a veces no es confiable (aunque lo considero lo suficientemente confiable), sigue siendo mucho más confiable que hacer los cálculos a mano. No puedo ver cómo Mathematica puede amenazar a nadie más que una calculadora. Nunca he visto “Mathematica dice que es correcto” como prueba en documentos académicos, pero si esto realmente sucede, es el autor el culpable.

Creo que hay un problema real con la caja negra del software propietario.

Aunque estoy de acuerdo con Hongwan Liu en que, en la práctica, muchos usuarios no comprueban, el hecho de que algo sea comprobable en principio es una propiedad importante de todo el sistema.

Por supuesto, el software propietario tiene debilidades. E incluso podemos ver algunos de ellos, por ejemplo. Página sobre Drexel. Pero, como muestra ese enlace, las fuerzas del mercado no siempre corrigen los errores. Es mucho más fácil si la fuente está abierta.

Hemos tenido ciencia durante miles de años antes del software. Creo que puede sobrevivir.

Recuerde, muchas áreas de la ciencia requieren acceso a equipos costosos para realizar experimentos. Los resultados de los experimentos se publican en revistas que requieren altas tarifas de suscripción, y los resultados no se pueden verificar a menos que uno tenga acceso a equipos costosos similares. Por lo tanto, el aspecto de “peaje” es generalizado en la ciencia. Parece haber funcionado en la práctica.

¿Podríamos mejorar con peajes más bajos? Muy probable. Pero eso es más una oportunidad que una amenaza.

Creo que es bastante significativo plantear esa pregunta.

Mathematica es una caja negra para las personas que no trabajan en Wolfram, y no podemos saber cómo funciona para resolver problemas. Este es el punto de valor de las fuentes abiertas. Puede referirse a este software llamado SageMath, cuyo objetivo es reemplazar las herramientas matemáticas comerciales, como Mathematica, matlab, et al.

Haga clic aquí: Sistema de software matemático SageMath – Sage