Foros del Web » Compartiendo con la comunidad » Actualidad tecnológica »

La matemática es mucho más compleja que la computación actual

Estas en el tema de La matemática es mucho más compleja que la computación actual en el foro de Actualidad tecnológica en Foros del Web. Cita: Las computadoras no pueden desarrollar todo el complejo mundo matemático, dejan afuera muchos resultados. "Ni siquiera desarrollan una parte tan elemental de la ciencia ...
  #1 (permalink)  
Antiguo 31/10/2006, 06:47
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 24 años
Puntos: 90
La matemática es mucho más compleja que la computación actual

Cita:
Las computadoras no pueden desarrollar todo el complejo mundo matemático, dejan afuera muchos resultados. "Ni siquiera desarrollan una parte tan elemental de la ciencia como lo es la teoría de los números naturales. Siempre queda algo fuera del poder de cálculo de la computadora. Aunque lo que demuestran es correcto no alcanza, faltan enunciados"
http://www.lanacion.com.ar/tecnologi...nota_id=853416
__________________
Esteban Quintana
  #2 (permalink)  
Antiguo 31/10/2006, 07:26
lpz
 
Fecha de Ingreso: abril-2006
Ubicación: Argentina
Mensajes: 402
Antigüedad: 19 años, 10 meses
Puntos: 2
_ _
  #3 (permalink)  
Antiguo 31/10/2006, 17:47
Avatar de tercero  
Fecha de Ingreso: junio-2006
Ubicación: Los Ángeles, Chile
Mensajes: 979
Antigüedad: 19 años, 8 meses
Puntos: 5
no lo sabia...yo creia que las maquinas son perfectas, jejeje
__________________
Si eres parte de la Comunidad de Foros del Web, ayuda a los demás sin esperar recibir nada a cambio
Visita Blog: lodehoyendía
  #4 (permalink)  
Antiguo 31/10/2006, 20:06
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 20 años, 10 meses
Puntos: 47
eS cierto... con problemas de orden exponencial la compu a la larga se queda.

Y lo del azar me puso a pensar, como funcionará la funcion randomize de C++, será cierto que no es tan aleatorio como parece
  #5 (permalink)  
Antiguo 01/11/2006, 05:52
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 24 años
Puntos: 90
Pues todas las funciones del random tienen un algoritmo que SE PARECE bastante a un aleatorio real, pero nunca es perfecto, aunque el margen de error es tan mínimo que ni interesa mejorarlo...

En estadística hice un programa que checekaba el azar con PERL y la verdad es que nunca vi nada raro...Siempre daba 0.5 y 0.5

Saludos
__________________
Esteban Quintana
  #6 (permalink)  
Antiguo 01/11/2006, 07:38
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 20 años, 10 meses
Puntos: 17
Cita:
Iniciado por Developer9 Ver Mensaje
eS cierto... con problemas de orden exponencial la compu a la larga se queda.

Y lo del azar me puso a pensar, como funcionará la funcion randomize de C++, será cierto que no es tan aleatorio como parece
En C++ no existe tal función, es rand() y srand(). Además, es de C.

Sobre cómo funciona, sólo tienes que mirar la ayuda-código de tu compilador.

Y no, no es "aleatoria", ni mucho menos. Es una implementación rápida y básica para utilidades que sólo necesiten números aleatorios vagos, es decir, que no importe que se repitan o que puedan ser adivinado el patrón.

Las aplicaciones matemáticas que necesitan números aleatorios no usan rand().
  #7 (permalink)  
Antiguo 01/11/2006, 07:42
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 20 años, 10 meses
Puntos: 17
Cita:
Iniciado por monoswim Ver Mensaje
Pues todas las funciones del random tienen un algoritmo que SE PARECE bastante a un aleatorio real, pero nunca es perfecto, aunque el margen de error es tan mínimo que ni interesa mejorarlo...
No se parece en _nada_.

Y eso de que no interesa mejorarlo... Olvídalo :) Hay _decenas_ de algoritmos inventados para obtener números pseudo-aleatorios mejores que un simple rand() de C o similares. Y se sigue mejorando día tras día, como todo.

Lo único aleatorio que conseguirás de un ordenador serán cosas como /dev/random de Linux, que usa el ruido y mediciones externas para generar una "piscina" de donde extraer datos "aleatorios".
  #8 (permalink)  
Antiguo 01/11/2006, 07:47
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 20 años, 10 meses
Puntos: 17
De lo que se olvida ese artículo, además, es de que sin computadoras, la física habría avanzado difícilmente, y muchos teoremas matemáticos no habrían sido demostrados.

Precisamente es en el cálculo algebraico donde las computadores sobresalen, por su rapidez que no tienen los humanos. Mi procesador de casa puede hacerme 1 millón de operaciones en el mismo tiempo en el que mis ojos enfocan la primera operacion de la lista.
  #9 (permalink)  
Antiguo 01/11/2006, 08:57
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 20 años, 7 meses
Puntos: 24
El problema es mas profundo que un simple margen de error.

la diferencia entre las PC's y las matematicas es PRIMORDIALMENTE quelas matematicas manejan funciones analiticas, es decir, la matematica puede manejar cosas como x=sen(x) y calcularlo en forma exacta sin tener en cuenta tamaños de numeros, 0's o infinitos.

En cambio las PC's tiene una limitación (que no tiene nada que ver con el tiempo) : no pueden manejar numeros infinitamente grandes o infinitamente pequeños, no pueden guardar numeros tan simples como 1/3 el numero "e", o "pi".
Por ejemplo, el numero pi es exactamente
3,141592653589793238462643383279502884197169399375 105820974944592 3078164062862089986280348253421170679
y los decimales siguen eternamente. Una PC no puede guardar un numero con infinitos decimales, por lo que lo trunca. MAs o menos asi
3,1415926535897932384626433832795028, por lo que se pierde presición. Uno puede pensar "que me importa perder del decimal 50 en adelante, es un error muy chiquito", para demostrarles que estan equivocados pongo el siguiente ejemplo:
hagan esta cuenta en papel:
(1/10E50) * 10E50
10E50 es un 1 con 50 ceros detras, osea: 10000...., en matematica pura simplificamos la division y la multiplicacion y nos da el resultado 1.

Una computadora no sabe simplificar (no tiene cerebro y no le enseñaron matematica), por lo que primero hace 1/10E50, y como no puede guardar el resultado ya que es muy chiquito, da como resultado 0, y luego al multiplicarlo por 10E50, da como resultado 0. Vieron que poco importante que es ese decimal.

El problema de todo esto es que el procesador de una computadora solo sabe sumar, cambiar de signo un numero y saltar a otra instruccion cuando se cumple una condicion. Por lo que esta muy lejos de tener un cerebvro que comprenda la matematica.

Si quiere ver otra enorme limitacion de las computadoras, abran la calculadora de windows ( o speed crunch :) ), y traten de hacer el siguiente calculo: (-1) elevado a 0.2, y se van a dar una sorpresa, el resultado real de ese calculo es -1.
__________________
http://blog.tolaware.com.ar -> Blog de Java, Ruby y Linux
  #10 (permalink)  
Antiguo 01/11/2006, 16:22
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 20 años, 10 meses
Puntos: 17
Cita:
Iniciado por TolaWare Ver Mensaje
El problema es mas profundo que un simple margen de error.

la diferencia entre las PC's y las matematicas es PRIMORDIALMENTE quelas matematicas manejan funciones analiticas, es decir, la matematica puede manejar cosas como x=sen(x) y calcularlo en forma exacta sin tener en cuenta tamaños de numeros, 0's o infinitos.

[...]
¿Ah, no? ¿Una computadora no puede hacer cálculo simbólico? Lo dirás tú. Hasta las calculadoras de ingeniería hacen cálculo simbólico.

Prueba Derive, Mathlab, o programas similares. Escribe "int(x^2+e^x-6*ln(x)/sen(x),x)" o similar y dale a simplificar. Ahí tienes una integración simbólica que tardarías en hacer tú, con la tabla de fórmulas, y si llegas a conseguirlo, un cuarto de hora a poco.

Puede que te lleves mil y una sorpresas.

Un ordenador puede integrar, derivar, resolver ecuaciones diferenciales, sistemas, etc etc etc todo ello simbólicamente, y obtener la respuesta inmediatamente.

Esto, y mil cosas más

Sobre los decimales, estos programas llevan sistemas especiales de almacenamiento y cálculo por partes. Puedes especificar _cualquier_ resolución. Puedes pedir 10 decimales como 1000, lo van a hacer igual. Seguro que tú tampoco multiplicas 1000 cifras sin cometer ningún error. Para obtener valores numéricos finales, viene que ni pintado.

Luego, más cosas, como la integración numérica. Hay integrales realmente difíciles, o sin solución simbólica "directa", que un matemático no podría resolver, pero que un ordenador puede hallar las soluciones para un intervalo calculándolo valor por valor. Una tarea que requeriría días y miles de comprobaciones para un humano, le lleva al ordenador unos segundos decirte el valor resultante numérico.

Y por favor, no pongamos de ejemplo a la calculadora de Windows. Repito, que calculadoras de mano para ingenieros como las HP-48, las TI-89 y demás, resuelven ecuaciones, derivadas, integrales y demás también simbólicamente. No tan bien ni tan rápido como Derive o Mathlab, pero lo hacen bastante bien, para ser de mano, ¿no? Dime tú cómo si no un ingeniero iba a resolver operaciones con matrices de números complejos en poco tiempo, por ejempo y sin equivocarse, por ejemplo :)

Última edición por MaxExtreme; 01/11/2006 a las 16:29
  #11 (permalink)  
Antiguo 07/11/2006, 11:03
 
Fecha de Ingreso: noviembre-2006
Ubicación: Colombia
Mensajes: 22
Antigüedad: 19 años, 3 meses
Puntos: 0
El avance en los algoritmos genéticos, redes neurales y computación evolutiva van a permitir que el computador tenga un poquito más de lógica y sepa hacer multitud de cálculos abstractos que solo la mente humana (por ahora) puede hacer.
  #12 (permalink)  
Antiguo 07/11/2006, 14:41
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 24 años
Puntos: 90
Cita:
Iniciado por MaxExtreme Ver Mensaje
No se parece en _nada_.
Yo en todos los cálculos estadísticos que hice con random, al usar repeticiones de 1000 daba siempre muy cercano a 500 y 500...Y ya en ese entonces me habían dado por centado de que el random era casi perfecto, que ya no se podía mejorar...O al menos no tenía sentido hacerlo...

Pero bueno, la verdad que personalmente no lo se, ya que yo no lo hago

Cita:
El avance en los algoritmos genéticos, redes neurales y computación evolutiva van a permitir que el computador tenga un poquito más de lógica y sepa hacer multitud de cálculos abstractos que solo la mente humana (por ahora) puede hacer.
Pero falta horrores para eso, está muy en pañales todavía, además las deducciones que puede sacar son realmente tontas

1 < 2
2 < 3
=>
1 < 3

Ese es el típico ejemplo...Para mi la computación solamente es una muy buena herramienta...nada más...

Saludos
__________________
Esteban Quintana
  #13 (permalink)  
Antiguo 07/11/2006, 15:12
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 20 años, 10 meses
Puntos: 47
Cita:
Iniciado por MaxExtreme Ver Mensaje
En C++ no existe tal función, es rand() y srand(). Además, es de C.
Te lo juro... cuando programaba en el compilador de pantalla azul de borlanc existía esa funcion

Cita:
Iniciado por monoswim Ver Mensaje
Yo en todos los cálculos estadísticos que hice con random, al usar repeticiones de 1000 daba siempre muy cercano a 500 y 500...Y ya en ese entonces me habían dado por centado de que el random era casi perfecto, que ya no se podía mejorar...O al menos no tenía sentido hacerlo...
eje! Ese random ha tenido distribución normal
  #14 (permalink)  
Antiguo 07/11/2006, 15:46
Avatar de marlonbtx  
Fecha de Ingreso: febrero-2006
Ubicación: Tijuana,B.C. Mexico
Mensajes: 151
Antigüedad: 20 años
Puntos: 2
el randomize se basa en el reloj de la computadora, (en los microsegundos)


mmm alguien d ustedes ha escuchado rumores de un sistema ternario... donde pueda haber un 0 ,1 y una variable
  #15 (permalink)  
Antiguo 10/11/2006, 19:02
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 20 años, 7 meses
Puntos: 24
Cita:
Iniciado por marlonbtx Ver Mensaje
el randomize se basa en el reloj de la computadora, (en los microsegundos)


mmm alguien d ustedes ha escuchado rumores de un sistema ternario... donde pueda haber un 0 ,1 y una variable
Sep de hecho la logica ternaria se esta utilizando en algunos sistemas que por lo general son binarios, por ejemplo, para lograr 100Mbps por un cable categoria 3, se utlizan 3 pares trasnmitiendo tres tipos de señales (que son 3 niveles de tension distintos).
__________________
http://blog.tolaware.com.ar -> Blog de Java, Ruby y Linux
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta



La zona horaria es GMT -6. Ahora son las 01:58.