miércoles, 28 de abril de 2010

Porque Ford se hizo millonario~

Que es la planeación, buscando por ahí encontre lo siguiente:

"La planeación consiste en fijar el curso concreto de acción que ha de seguirse, estableciendo los principios que habrán de orientarlo, la secuencia de operaciones para realizarlo, y la determinación de tiempos y números necesarios para su realización". A. Reyes Ponce.
Es importante definir tambien:

* Objetivo. El aspecto fundamental al planear es determinar los resultados.

* Cursos alternos de acción. Al planear es necesario determinar diversos caminos, formas de acción y estrategias, para conseguir los objetivos.

* Elección. La planeación implica la determinación, el análisis y la selección de la decisión más adecuada.

* Futuro. La planeación trata de prever situaciones futuras y de anticipar hechos inciertos, prepararse para contingencias y trazar actividades futuras.


Analizando estos puntos es importante resaltar que en la elección se habla de tomar la decisión más adecuada, que como estudiante de pisis ya nos hace sonar algunas campanas.

También nos dice que debemos prever situaciones futuras y anticipar hechos inciertos, ahora, esto es posible que pueda realizarse con un analisis meticuloso de todos los posibles casos que podrían presentarse, pero, ¿qué pasa si el sistema sobre el que queremos planear es caotico?, no podríamos predecir todos los casos futuros, o, talvez el sistema sea tan complejo que no es posible que sea analizado solamente por un ser humano, talvez podremos analizar el comportamiento de un fenomeno de forma macroscopica, pero si nuestro interes es analizar a sus elementos de forma individual (personas que se contagían en un hospital); pues para estos casos necesitaremos realizar una simulación (una basada en agentes para el segundo caso).

Ahora veamos algunas caracteristicas de la planeación:

1.- La planeación es un proceso permanente y continúo
2.- La planeación esta siempre orientada hacia el futuro
3.- La planeación busca la racionalidad en la toma de decisiones
4.- La planeación busca seleccionar un curso de acción entre varias alternativas
5.- La planeación es sistémica
6.- La planeación es repetitiva
7.- La planeación es una técnica cíclica
8.- La planeación es una función administrativa que interactúa con las demás
9.- La planeación es una técnica de coordinación e integración
10.-La planeación es una técnica de cambio e innovación

Esto me recuerda a lo que uno desearía que pasara en toda la implementación y uso de un brazo robotico, en su uso, el brazo debe estar recalibrandose cada vez y hacer esto de manera permantente y continua (nadie quiere un brazo robotico capaz de destrosar tu cabeza vuelto "loco").



En cuanto al modelado buscando por ahí encontre varios programas, baje uno Renque (14 dias de trial) y estube jugando un poco con este.

En la primera imagen vemos una linea de producción donde el Active 4 toma el papel del inspector, el Active es por donde entras nuestros carros (puede ser lo que usted quiera), el passive 2 es nuestro almacen donde nuestros carros terminados van a parar.
Cada bolita es uno de nuestros carros.


Como podra apreciar, al tener un solo inspector al final de la linea de espera al rechazar a los carros y permitir su reincerción en la linea esto nos genera una gran cantidad de atrazo, esto ocurre así pues el inspector manda hasta el principio a todo proceso que no pasa, ahora si pusieramos a mas inspectores podríamos evitarnos esto, pues así el inspector al final de la linea sabría que cualquier producto que le llegue solo pudo haber tenido errores en la anterior fase de contrucción y no tendría que mandar a nuestro auto hasta el principio de la linea.





Esta tercer imagen muestra una zona de montaje aparte, en ella un grupo de trabajadores analiza el producto que no halla pasado la prueba de calidad, y toma una desición en base a ello, si el producto requiere un pequeño proceso se realiza en esta zona y el auto se envia a almacen (en este caso localizado en otra zona para analizar que tantos carros son corregidos por este equipo).
Si el proceso que requiere el auto es total, entonces se reenvia al comienzo de la linea de producción.



Entre las herramientas para la simulación encontre una pagina en la cual se incluyen muchos programas:

http://www.idsia.ch/~andrea/sim/simvis.html

Muchos de ellos tienen periodos de prueba para su analisis.

miércoles, 21 de abril de 2010

El dilema del estudiante~ o (teoria de juegos)

La teoría de juegos es un área de la matemática aplicada que utiliza modelos para estudiar interacciones en estructuras formalizadas de incentivos (los llamados juegos) y llevar a cabo procesos de decisión. Sus investigadores estudian las estrategias óptimas así como el comportamiento previsto y observado de individuos en juegos.

La forma normal (o forma estratégica) de un juego es una Matriz que muestra los jugadores, las estrategias, y las recompensas.

Cuando un juego se presenta en forma normal, se presupone que todos los jugadores actúan simultáneamente o, al menos, sin saber la elección que toma el otro.

La representación de juegos en forma extensiva modela juegos con algún orden que se debe considerar. Los juegos se presentan como árboles. Cada vértice o nodo representa un punto donde el jugador toma decisiones. El jugador se especifica por un número situado junto al vértice. Las líneas que parten del vértice representan acciones posibles para el jugador. Las recompensas se especifican en las hojas del árbol.

Tipos de juegos:

Juegos simétricos y asimétricos

Un juego simétrico es un juego en el que las recompensas por jugar una estrategia en particular dependen sólo de las estrategias que empleen los otros jugadores y no de quién las juegue. Si las identidades de los jugadores pueden cambiarse sin que cambien las recompensas de las estrategias, entonces el juego es simétrico. Muchos de los juegos 2×2 más estudiados son simétricos. Las representaciones estándar del juego de la gallina, el dilema del prisionero y la caza del ciervo son juegos simétricos.

Los juegos asimétricos más estudiados son los juegos donde no hay conjuntos de estrategias idénticas para ambos jugadores. Por ejemplo, el juego del ultimátum y el juego del dictador tienen diferentes estrategias para cada jugador; no obstante, puede haber juegos asimétricos con estrategias idénticas para cada jugador.

Juegos de suma cero y de suma no cero

En los juegos de suma cero el beneficio total para todos los jugadores del juego, en cada combinación de estrategias, siempre suma cero (en otras palabras, un jugador se beneficia solamente a expensas de otros). El go, el ajedrez, el póker y el juego del oso son ejemplos de juegos de suma cero, porque se gana exactamente la cantidad que pierde el oponente. Como curiosidad, el fútbol dejó hace unos años de ser de suma cero, pues las victorias reportaban 2 puntos y el empate 1 (considérese que ambos equipos parten inicialmente con 1 punto), mientras que en la actualidad las victorias reportan 3 puntos y el empate 1.

La mayoría de los ejemplos reales en negocios y política, al igual que el dilema del prisionero, son juegos de suma no cero, porque algunos desenlaces tienen resultados netos mayores o menores que cero. Es decir, la ganancia de un jugador no necesariamente se corresponde con la pérdida de otro. Por ejemplo, un contrato de negocios involucra idealmente un desenlace de suma positiva, donde cada oponente termina en una posición mejor que la que tendría si no se hubiera dado la negociación.

Se puede analizar más fácilmente un juego de suma cero, y cualquier juego se puede transformar en un juego de suma cero añadiendo un jugador "ficticio" adicional ("el tablero" o "la banca"), cuyas pérdidas compensen las ganancias netas de los jugadores.

Juegos cooperativos

Un juego con situacion cooperativa se caracteriza por un contrato que puede hacerse cumplir. La teoría de los juegos cooperativos da justificaciones de contratos plausibles. La plausibilidad de un contrato está muy relacionada con la estabilidad.

Dos jugadores negocian qué tanto quieren invertir en un contrato. La teoría de la negociación axiomática nos muestra cuánta inversión es conveniente para nosotros. Por ejemplo, la solución de Nash para la negociación demanda que la inversión sea justa y eficiente.

De cualquier forma, podríamos no estar interesados en la justicia y exigir más. De hecho, existe un juego no-cooperativo creado por Ariel Rubinstein consistente en alternar ofertas, que apoya la solución de Nash considerándola la mejor, mediante el llamado equilibrio de Nash.

Simultáneos y secuenciales

Los juegos simultáneos son juegos en los que los jugadores mueven simultáneamente o en los que éstos desconocen los movimientos anteriores de otros jugadores. Los juegos secuenciales (o dinámicos) son juegos en los que los jugadores posteriores tienen algún conocimiento de las acciones previas. Este conocimiento no necesariamente tiene que ser perfecto; sólo debe consistir en algo de información. Por ejemplo, un jugador1 puede conocer que un jugador2 no realizó una acción determinada, pero no saber cuál de las otras acciones disponibles eligió.

Juegos de información perfecta

Un juego es de información perfecta si todos los jugadores conocen los movimientos que han efectuado previamente todos los otros jugadores; así que sólo los juegos secuenciales pueden ser juegos de información perfecta, pues en los juegos simultáneos no todos los jugadores (a menudo ninguno) conocen las acciones del resto. La mayoría de los juegos estudiados en la teoría de juegos son juegos de información imperfecta, aunque algunos juegos interesantes son de información perfecta, incluyendo el juego del ultimátum y el juego del ciempiés.

La información perfecta se confunde a menudo con la información completa, que es un concepto similar. La información completa requiere que cada jugador conozca las estrategias y recompensas del resto pero no necesariamente las acciones.

En los juegos de información completa cada jugador tiene la misma "información relevante al juego" que los demás jugadores. El ajedrez y el dilema del prisionero ejemplifican juegos de información completa.

Tipos de estrategias

Estrategia dominante

Se dice que un jugador posee una estrategia dominante si una estrategia particular es preferida a cualquier otra estrategia a disposición de el. Es posible que cada uno de los dos jugadores tenga estrategia dominante.

OJO POR OJO (en inglés TIT FOR TAT).

Supongamos que dos jugadores repiten de forma indefinida una situación con pagos de forma del Dilema del Prisionero:

En esta situación la estrategia OJO POR OJO puede quedar definida de la forma siguiente: "En la primera jugada elegiré la estrategia COOPERAR. En las jugadas siguientes elegiré la misma estrategia que haya elegido mi oponente en la jugada anterior". En otras palabras, si el otro coopera, yo cooperaré con él. Si el otro es un traidor, yo seré un traidor".

Estrategía TORITO (en inglés "BULLY").

Esta estrategia consiste en hacer lo contrario que haga el oponente: "Si el otro jugador es leal en una jugada, yo le traicionaré en la siguiente; si el otro jugador me ha traicionado, yo le seré leal a la siguiente oportunidad".


Equilibrio de Nash

El equilibrio de Nash fue formulado por John Nash, que es un matemático norteamericano, en 1951. Un par de estrategias es un equilibrio de Nash si la elección de A es óptima dada la de B y la de B es óptima, dada la de A. El equilibrio de Nash se diferencia del equilibrio de las estrategias dominantes en que, en el equilibrio de las estrategias dominantes, se exige que la estrategia de A sea óptima en el caso de todas las elecciones óptimas de B, y viceversa. El equilibrio de Nash es menos restrictivo que el equilibrio de estrategias óptimas.



*Extra*

Seguramente todos conoceran el juego de piedra, papel o tijera~
Este juego puede verse desde el enfoque de la teoria de juegos =O
Aqui los jugadores son tu y tu amigo/rival/etc, sus diferentes estrategias a seguir seria el elegir piedra, papel o tijera!

La matriz de pagos quedaria algo asi:

....................oponente
....................papel.......tijera.......piedra
.....papel........0,0..........-1,1...........1,1
Tu.tijera........1,-1..........0,0...........-1,1
.....piedra......-1,1.........1,-1...........0,0

¿Que tipo de juego es?
Asi es, un juego de informacion perfecta de suma cero, ademas de simetrico

Debido a que este juego no tiene ninguna estrategia dominante, ni ningun tipo de equilibrio no es muy interesante de analizar para la teoria de juegos.

Pero como hemos tratado en clases anteriores sobre inteligencia artificial, pues hice un programa con "inteligencia" que juega piedra, papel o tijera.

Se anexa el codigo:
https://docs.google.com/Doc?docid=0AbozH-ZdB4BqZGY3em13d21fNWZqdjk4emM2&hl=en

El programa es muy sencillo y su unico fin es para ilustrar un concepto, claro que mis habilidades para programar no facilitan su entendimiento, aun asi el programa es muy intuitivo.

Nota: por falta de tiempo se quedo un pequeño bug al comienzo =p y solo sigan las instrucciones y hagan lo que el programa pregunta porque si no explota =)

El programa hace uso del concepto de machine lerning para jugar.

La idea es que el programa tiene una funcion de evaluacion (toma en cuenta los 4 anteriores movimientos del rival ademas del resultado del cada uno de esos juegos (victoria, derrota, empate)) y en base a estos resultados predice el movimiento que hara el rival y hace el movimiento ganador.

Dependiendo del resultado, si gana, empata o pierde, la funcion se altera un poco.

No esta muy bien pensado pero bueno.

miércoles, 14 de abril de 2010

Simulación basada en agentes





Entenderemos a un agente como cualquier cosa capaz de percibir su entorno (recibir entradas), procesar tales percepciones y actuar en su entorno (proporcionar salidas),

Un modelo basado en agenes es una clase de modelo computacional para simular las acciones y las interaciones de agentes autonomos (tanto individual como colectivamente) para analizar el efecto que causan en el sistema.

Los modelos simulan la interaccion simultanea que hay entre multiples agentes en un intento de recrear y predecir la apariencia de fenomenos complejos.

Para hacerlo mas claro pensemos en una parvada, si nos ponemos a ver a un pajaro en especifico, veremos que sus acciones no son complejas, pero si observamos a todos a la ves, veremos fenomenos complejos.

La mayoria de los modelos basados en agentes estan compuestos de:
1) Gran cantidad de agentes especificados en varias escalas
2) Heuristicas de desición
3) Reglas de aprendizaje o procesos adaptativos
4) Una topología de interacción
5) Un objeto que no es un agente que sera nuestro ambiente para nuestros agentes.


Los modelos basados en agentes consisten en agentes que interactuan de manera de acuerdo a ciertas reglas de forma dinamica.

La simulación basada en agentes se realiza con la finalidad de analizar sistemas complejos con la finalidad de comprenderlos mejor, pues como nuestros agentes solo siguen unas reglas bien definidas es sencillo analizar su comportamiento, pero lo mas importantes es que apartir de estas reglas sencillas y la interacción entre los agentes podemos ver emerger algo, puede que sea un estado de equilibrio, o ciertos patrones de conducta, y esto es lo mas importante, pues pueden explicar porque surgen estos patrones (por ejemplo las guerras los desplomes de la bolsa de valores, los atacos de trafico tengan distribuciones de leyes de potencias).

Como veiamos clases pasadas en teoria del caos, hay sistemas tan complejos que no se pueden predecir con exactitud, por ejemplo en nuestro programa de las familias vimos que un pequeño cambio de unas casas llevaba ala ciudad a ser completamente diferente. Si quisieramos evitar cierto desarrollo solo necesitariamos analizar un poco la situación actual, y hacer un pequeño cambio para que no ocurrieran casos catastroficos.


Sobre la parte de mecanica estadistica pues dejo un link para que lo vean y no se fien tanto de lo que yo entendi : link

La física estadística también se basa en analizar un sistema a nivel microscopico, por ejemplo un globo con aire, el comportamiento de el globo es muy sencillo de comprender, pero analizar el sistema particula por particula se vuelve imposible debido a al cantidad de particulas que existen, la mecanica estadistica lo que hace es analizar los promedios. De esta forma calcular las propiedades termodinámicas de un gas a partir de nuestro conocimiento genérico de las moleculas que lo componen aplicando leyes mecánicas.



Postulado fundamenta de la mecánica estadística:
Dado un sistema aislado en equilibrio, el sistema tiene la misma probabilidad de estar en cualquiera de los microestados accesibles

Este postulado es necesario para poder afirmar que dado un sistema en equilibrio, el estado termodinámico (macroestado) que está asociado a un mayor número de microestados es el macroestado más probable del sistema. Este postulado puede ligarse a la función de información dada por:


I = \sum_i \rho_i \ln\rho_i = \langle \ln \rho  \rangle

Cuando todas las rho's son iguales, la función de información I alcanza un mínimo. Así en el macroestado más probable además es siempre uno para el que existe una mínima información sobre el microestado del sistema, de eso se desprende que en un sistema aislado en equilibrio la entropía sea máxima (la entropía puede considerarse como una medida de desorden, a mayor desorden mayor desinformación, y por tanto un menor valor de I).

Repast:

El modelo que analizamos es el de un automata celular en el que cada AC tiene 2 estados (0 ó 1), el cual es calculado deacuerdo al estado anterior de sus vecinos, la regla es, si la suma de los estados es par el estado es 0, si la suma es impar el estado es 1.


Las siguentes son unas capturas del programa sin ninguna modifiación:

Configuracion inicial del tablero



Las modificaciones que realice al codigo fue el cambiar la regla de cambio de estado, entre las que se probaron fue cambiar que el estado cambiaba a 1 si cualquiera de sus vecinos tenía estado 1.

Otro cambio fue el de que el cambio solo tomaba en cuenta al vecino de la izquierda y hacía su estado igual a este, para esta regla se obtuvo un cuadrado desplazandose a la derecha:


También se cambio la configuración inicial del tablero, aqui en lugar de poner todos los AC que se especifiican en la semilla se puso un espacio intermedio entre cada AC.

Las siguientes capturas son para la regla normal (par = 0, impar =1) pero con la configuración inicial modificada, y vemos que aunque la tendencía direccional es la misma (se tiende a crecer hacía fuera, luego hacer comunidades aisladas que se van acercando para luego desaparecer), la configuración es diferente,