Secciones de la página

cel. tol


Declaraciones


Constantes


Time oriented language


Árbol de ficheros

Tol

Artículos del sitio

Presentación de Tol

Todos los programas

Simuladores visuales

Sitios que me gustan

Por categorías

Algoritmia

Búsqueda y ordenación

Computación fisiológica

Editorial y edición

Gráficos de datos

Herramientas y utilidades

Hipertexto

Informática forense

Lectura óptica de datos

Metaprogramación

No determinista

Ofimática

Recursión e iteración

Reglas y restricciones

Series y estadística









cel.tol de ChRules.Iterative

Racipiente (pantano o area, base de hechos) y reglas de la vida (base de reglas con reglas de escritura) para un automata celular.

Declaraciones

Constantes

  • Set CelP31
    Recipiente para el automatar celular.
  • Set CelRb1
    Reglas de la vida para un automata celular con seres adultos, huevos, formas de reproduccion y de muerte.
  • Set CelRb2
    Reglas de la vida para un automata celular con seres adultos (O), con huevos (o), formas de reproduccion y de muerte en 2 fases pasando por una fase de cadaver (+).

Constantes

Set CelP31

//////////////////////////////////////////////////////////////////////////////
Set CelP31 =
[["----********************----",
  "---*····················*---",
  "--*······················*--",
  "-*···········O············*-",
  "*··········O···O···········*",
  "*············O·············*",
  "*······O···O···O···O·······*",
  "*····O···O···O···O···O·····*",
  "*······O···O···O···O·······*",
  "*············O·············*",
  "*··········O···O···········*",
  "-*···········O············*-",
  "--*······················*--",
  "---*····················*---",
  "----********************----"]];
//////////////////////////////////////////////////////////////////////////////
PutDescription("Recipiente para el automatar celular.", CelP31);
//////////////////////////////////////////////////////////////////////////////

Set CelRb1

//////////////////////////////////////////////////////////////////////////////
Set CelRb1 = RulGet(
    "O·O :- ·O· ,"   +
    "··· :- O·O ;"   + // Huevo por reproduccion hacia abajo con movimiento

    "··· :- O·O ,"   +
    "O·O :- ·O· ;"   + // Huevo por reproduccion hacia arriba con movimiento

     "O· :- ·O ,"    +
     "·· :- O· ,"    +
     "O· :- ·O ;"    + // Huevo por reproduccion lateral con movimiento

     "·O :- O· ,"    +
     "·· :- ·O ,"    +
     "·O :- O· ;"    + // Huevo por reproduccion lateral con movimiento

     "OO :- ·O ,"    +
     "O· :- O· ;"    + // Muerte por exceso de poblacion, muera la apretada

     "OO :- O· ,"    +
     "·O :- ·O ;"    + // Muerte por exceso de poblacion, muera la apretada

     "·O :- ·O ,"    +
     "OO :- O· ;"    + // Muerte por exceso de poblacion, muera la apretada

     "O· :- O· ,"    +
     "OO :- ·O ;"    + // Muerte por exceso de poblacion, muera la apretada

      "O :- O ,"     +
      "O :- · ,"     +
      "O :- O ;"     + // Muerte por exceso de poblacion, muera la apretada

    "OOO :- O·O ;"   + // Muerte por exceso de poblacion, muera la apretada

     "O* :- ·* ;"    + // Muerte al irse tocar la membrana exterior

     "*O :- *· ;"    + // Muerte al irse tocar la membrana exterior

      "O :- · ,"     +
      "* :- * ;"     + // Muerte al irse tocar la membrana exterior

      "* :- * ,"     +
      "O :- · ;"     + // Muerte al irse tocar la membrana exterior

    "··· :- ··· ,"   +
    "·O· :- ··· ,"   +
    "··· :- ··· ;");   // Muerte por aislamiento
//////////////////////////////////////////////////////////////////////////////
PutDescription(
"Reglas de la vida para un automata celular con seres adultos, huevos, formas
de reproduccion y de muerte.",
CelRb1);
//////////////////////////////////////////////////////////////////////////////

Set CelRb2

//////////////////////////////////////////////////////////////////////////////
Set CelRb2 = RulGet(
    "O·O :- ·o· ,"   +
    "··· :- O·O ;"   + // Huevo por reproduccion hacia abajo con movimiento

    "··· :- O·O ,"   +
    "O·O :- ·o· ;"   + // Huevo por reproduccion hacia arriba con movimiento

     "O· :- ·O ,"    +
     "·· :- o· ,"    +
     "O· :- ·O ;"    + // Huevo por reproduccion lateral con movimiento

     "·O :- O· ,"    +
     "·· :- ·o ,"    +
     "·O :- O· ;"    + // Huevo por reproduccion lateral con movimiento

     "OO :- +O ,"    +
     "O· :- O· ;"    + // Muerte por exceso de poblacion, muera la apretada

     "OO :- O+ ,"    +
     "·O :- ·O ;"    + // Muerte por exceso de poblacion, muera la apretada

     "·O :- ·O ,"    +
     "OO :- O+ ;"    + // Muerte por exceso de poblacion, muera la apretada

     "O· :- O· ,"    +
     "OO :- +O ;"    + // Muerte por exceso de poblacion, muera la apretada

      "O :- O ,"     +
      "O :- + ,"     +
      "O :- O ;"     + // Muerte por exceso de poblacion, muera la apretada

    "OOO :- O+O ;"   + // Muerte por exceso de poblacion, muera la apretada

     "O* :- +* ;"    + // Muerte al irse tocar la membrana exterior

     "*O :- *+ ;"    + // Muerte al irse tocar la membrana exterior

      "O :- + ,"     +
      "* :- * ;"     + // Muerte al irse tocar la membrana exterior

      "* :- * ,"     +
      "O :- + ;"     + // Muerte al irse tocar la membrana exterior

      "o :- O ;"     + // Eclosion del huevo del que sale un adulto

      "+ :- · ;"     + // Putrefaccion del cadaver que desaparece

    "··· :- ··· ,"   +
    "·O· :- ·+· ,"   +
    "··· :- ··· ;");   // Muerte por aislamiento
//////////////////////////////////////////////////////////////////////////////
PutDescription(
"Reglas de la vida para un automata celular con seres adultos (O),
con huevos (o), formas de reproduccion y de muerte en 2 fases pasando por una
fase de cadaver (+).",
CelRb2);
//////////////////////////////////////////////////////////////////////////////

Time oriented language

//////////////////////////////////////////////////////////////////////////////
// FILE    : cel.tol
// AUTHOR  : http://www.asolver.com
// PURPOSE : Racipiente (pantano o area, base de hechos) y reglas de la vida
// (base de reglas con reglas de escritura) para un automata celular.
//////////////////////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////////////////////
// CONSTANTS
//////////////////////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////////////////////
Set CelP31 =
[["----********************----",
  "---*····················*---",
  "--*······················*--",
  "-*···········O············*-",
  "*··········O···O···········*",
  "*············O·············*",
  "*······O···O···O···O·······*",
  "*····O···O···O···O···O·····*",
  "*······O···O···O···O·······*",
  "*············O·············*",
  "*··········O···O···········*",
  "-*···········O············*-",
  "--*······················*--",
  "---*····················*---",
  "----********************----"]];
//////////////////////////////////////////////////////////////////////////////
PutDescription("Recipiente para el automatar celular.", CelP31);
//////////////////////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////////////////////
Set CelRb1 = RulGet(
    "O·O :- ·O· ,"   +
    "··· :- O·O ;"   + // Huevo por reproduccion hacia abajo con movimiento

    "··· :- O·O ,"   +
    "O·O :- ·O· ;"   + // Huevo por reproduccion hacia arriba con movimiento

     "O· :- ·O ,"    +
     "·· :- O· ,"    +
     "O· :- ·O ;"    + // Huevo por reproduccion lateral con movimiento

     "·O :- O· ,"    +
     "·· :- ·O ,"    +
     "·O :- O· ;"    + // Huevo por reproduccion lateral con movimiento

     "OO :- ·O ,"    +
     "O· :- O· ;"    + // Muerte por exceso de poblacion, muera la apretada

     "OO :- O· ,"    +
     "·O :- ·O ;"    + // Muerte por exceso de poblacion, muera la apretada

     "·O :- ·O ,"    +
     "OO :- O· ;"    + // Muerte por exceso de poblacion, muera la apretada

     "O· :- O· ,"    +
     "OO :- ·O ;"    + // Muerte por exceso de poblacion, muera la apretada

      "O :- O ,"     +
      "O :- · ,"     +
      "O :- O ;"     + // Muerte por exceso de poblacion, muera la apretada

    "OOO :- O·O ;"   + // Muerte por exceso de poblacion, muera la apretada

     "O* :- ·* ;"    + // Muerte al irse tocar la membrana exterior

     "*O :- *· ;"    + // Muerte al irse tocar la membrana exterior

      "O :- · ,"     +
      "* :- * ;"     + // Muerte al irse tocar la membrana exterior

      "* :- * ,"     +
      "O :- · ;"     + // Muerte al irse tocar la membrana exterior

    "··· :- ··· ,"   +
    "·O· :- ··· ,"   +
    "··· :- ··· ;");   // Muerte por aislamiento
//////////////////////////////////////////////////////////////////////////////
PutDescription(
"Reglas de la vida para un automata celular con seres adultos, huevos, formas
de reproduccion y de muerte.",
CelRb1);
//////////////////////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////////////////////
Set CelRb2 = RulGet(
    "O·O :- ·o· ,"   +
    "··· :- O·O ;"   + // Huevo por reproduccion hacia abajo con movimiento

    "··· :- O·O ,"   +
    "O·O :- ·o· ;"   + // Huevo por reproduccion hacia arriba con movimiento

     "O· :- ·O ,"    +
     "·· :- o· ,"    +
     "O· :- ·O ;"    + // Huevo por reproduccion lateral con movimiento

     "·O :- O· ,"    +
     "·· :- ·o ,"    +
     "·O :- O· ;"    + // Huevo por reproduccion lateral con movimiento

     "OO :- +O ,"    +
     "O· :- O· ;"    + // Muerte por exceso de poblacion, muera la apretada

     "OO :- O+ ,"    +
     "·O :- ·O ;"    + // Muerte por exceso de poblacion, muera la apretada

     "·O :- ·O ,"    +
     "OO :- O+ ;"    + // Muerte por exceso de poblacion, muera la apretada

     "O· :- O· ,"    +
     "OO :- +O ;"    + // Muerte por exceso de poblacion, muera la apretada

      "O :- O ,"     +
      "O :- + ,"     +
      "O :- O ;"     + // Muerte por exceso de poblacion, muera la apretada

    "OOO :- O+O ;"   + // Muerte por exceso de poblacion, muera la apretada

     "O* :- +* ;"    + // Muerte al irse tocar la membrana exterior

     "*O :- *+ ;"    + // Muerte al irse tocar la membrana exterior

      "O :- + ,"     +
      "* :- * ;"     + // Muerte al irse tocar la membrana exterior

      "* :- * ,"     +
      "O :- + ;"     + // Muerte al irse tocar la membrana exterior

      "o :- O ;"     + // Eclosion del huevo del que sale un adulto

      "+ :- · ;"     + // Putrefaccion del cadaver que desaparece

    "··· :- ··· ,"   +
    "·O· :- ·+· ,"   +
    "··· :- ··· ;");   // Muerte por aislamiento
//////////////////////////////////////////////////////////////////////////////
PutDescription(
"Reglas de la vida para un automata celular con seres adultos (O),
con huevos (o), formas de reproduccion y de muerte en 2 fases pasando por una
fase de cadaver (+).",
CelRb2);
//////////////////////////////////////////////////////////////////////////////

Árbol de ficheros

ChRules.Iterative programa de aplicacion iterativa de reglas de areas de caracteres

  • make.tol aplica unas bases de reglas de reescritura a varios escenarios
  • make.bat mandato de ejecucion del programa de aplicacion de reglas
  • tol directorios que contienen fichero de codigo fuente Tol
    • cmm funciones comunes
    • app directorio funciones y datos de areas, reglas y motor de reglas
      • are.tol funciones de areas sobre las que se aplican las reglas
      • rul.tol funciones de reglas que transforman de areas de caracteres
      • eng.tol funciones del motor iterativo de aplicacion de reglas
      • bub.tol para realizar un orden parcial con metodo de burbuja
      • cel.tol automata celular con reglas de reproduccion y muerte
      • lab.tol base de reglas para que un robot salga de un laberinto
      • fll.tol base de reglas para rellenar, fill, superficies cerradas
      • pon.tol base de reglas de un pingpong electronico, pong
    • inc.tol para la inclusion de funciones, areas y bases de reglas
  • simulator directorio del simulador en Javascript del motor iterativo de reglas
    • css directorio para css, Cascading Style Sheets, del simulador
      • simulator.css css para simular areas de aplicacion de las reglas
    • src directorio de codigo fuente Javascript del simulador de reglas
      • simulator.js simula el funcionamiento del motor de aplicacion de reglas
      • simulatorarray.js array con ejemplos de evolucion para cada base de reglas
  • automata_celular_al_azar.html automata celular de reglas al azar de reproduccion y muerte
  • automata_celular_determinista.html automata celular determinista de reglas de reproduccion y muerte
  • burbuja_y_sedimentos.html orden parcial con metodo de burbuja simulando una sedimentacion
  • laberinto_2_cabezones.html laberinto con 2 robots que se autobloquean y no pueden salir
  • laberinto_2_negociadores.html laberinto con 2 robots y reglas para resolver su mutuo bloqueo
  • laberinto_mas_grande.html robot que sale del laberinto aplicando reglas de la mano derecha
  • laberinto_mano_izquierda_html robot que busca la salida aplicando reglas de la mano izquierda
  • laberinto_mini_1_robot.html pequeño laberinto con un robot y reglas de la mano derecha
  • partida_de_pong_al_15.html partida de pong donde el 15% de las veces las reglas son al azar
  • partida_de_pong_al_20.html partida de pong donde el 20% de las veces las reglas son al azar
  • partida_de_pong_azarosa.html partida de pingpong electronico, pong, con reglas aleatorias
  • partida_de_pong_eterna.html ciclo eterno de una partida de pong, con reglas deterministas
  • rellena_caja_al_azar.html reglas para llenar superficies aplicadas a una caja con lineas
  • rellena_k_al_azar.html rellenado de superficies aplicado al interior de una letra K
  • simulator.html simulador del motor iterativo de reglas de areas de caracteres
  • chrules_iterative.pdf funciones del motor de aplicacion de reglas de caracteres

2015 asolver.com | Aviso legal | XHTML | Δ Θ Ξ | Creative Commons | Mapa y funciones del sitio

Tol