Foro SofosAgora

Foro abierto a los intereses de sus usuarios. Debate, aprende y diviértete.
Fecha actual 27 May 2019, 13:24

Todos los horarios son UTC + 1 hora [ DST ]




Nuevo tema Responder al tema  [ 31 mensajes ]  Ir a página Anterior  1, 2, 3, 4  Siguiente
Autor Mensaje
NotaPublicado: 15 Ago 2015, 04:02 
Desconectado
Avatar de Usuario

Registrado: 10 Ago 2011, 20:39
Mensajes: 9373
Mi psudocódigo tenía algunos errores, pero ya tengo un código que parece que andar bien:
Código:
// Sol check
M.A = "M.Cond"+eval("M.Grup"+M.Sol+"p1");
// Acá falta el caso de que Comp sea ---, aunque quizá es innec.
if (eval(M.A+"Comp") == "==") {
    if (eval(eval(M.A+"Elm1")) == eval(M.A+"Elm2")) {
        // La cantidad de evals depende del tipo de var...
        // Good Act; ver si es un conjunto o sólo uno.
    } else {
        //
    }
    // Acá irían más comps.
}


Por supuesto es un fragmento del código, pero es la parte de la que hablé, el chequeo de si se cumple la condición que se plantee en la interfase, usando (el chequeo) las variables de dicha interfase, en vez de algo fijo como hacía antes.

Jeremy te respondo en otra ocasión.

_________________
Si no puedes hacerlo, intenta primero hacer algo más simple aunque similar.


Arriba
 Perfil  
Responder citando  
NotaPublicado: 16 Ago 2015, 18:35 
Desconectado

Registrado: 13 Ago 2015, 23:50
Mensajes: 8
Buenas quisiera saber que es lo que le falta al proyecto ?? quizas podria ayudarle,que ya tiene ?? y que es lo que le falta ?? y como funciona ??
saludos


Arriba
 Perfil  
Responder citando  
NotaPublicado: 16 Ago 2015, 19:52 
Desconectado
Avatar de Usuario

Registrado: 10 Ago 2011, 20:39
Mensajes: 9373
bajo0123 escribió:
Buenas quisiera saber que es lo que le falta al proyecto ?? quizas podria ayudarle,que ya tiene ?? y que es lo que le falta ?? y como funciona ??
saludos
La idea del programa es que se pueda especificar el problema mientras se usa, no antes de compilarlo. Antes de compilarlo puedo definir variables, condiciones, etc, creo que no es muy difícil. Pero como dije la idea es que se pueda definir mientras se usa, así que debo elaborar un método que sirva "para cualquier definición". Mi post anterior es sobre eso.

Digamos que el programa se compone de 6 fases.

1- Definir los elementos (o variables) de la situación:
Sólo pueden ser números positivos y enteros y deben ser más o menos cortos.
O sea me falta probar negativos, decimales y largos, es decir, en algunos casos es probar, quizá funciona, pero en otros casos es hacer algo extra. Tampoco está listo para texto, creo, y debo qué tan necesarios son otros tipos de contenido. La interfase sólo permite poner números y sólo son 2 variables, es decir falta que se puedan poner otros tipos de datos y más variables. Eso lo tenía más avanzado, pero como dije, reempecé y las variables ahora tienen otros nombres y aún no "copié" lo que tenía a la nueva versión.
También falta que los elementos puedan tener un ID elegido, no simplemente V1, V2, etc.

2- Definir las condiciones que se usan en algún momento del problema:
Te recuerdo la imagen que puse:
Imagen
La tabla rojiza. También en principio sólo son 2 condiciones, falta que puedan ser más. Falta que se puedan elegir las cosas ahí, que se pueda cambiar el V1 por V2 o por lo que sea, lo mismo el comparador y el otro elemento. Programar los botones.
También hace falta que se puedan poner condiciones más complejas como Math.floor(V1) == V2*V3.
Y me hace falta entender qué cosas sea posible poner. Es claro que puedes poner elementos de situación (V1, V2, etc), números, texto, etc. Pero en teoría se puede poner otras cosas, como "Elemento1 de la condición1".

3- Definir los grupos de condiciones que se usan en algún momento del problema:
Tabla amarillenta. He resuelto el problema de las && o or, luego lo explico. También aquí falta que puedan ser más grupos, que puedan tener más de 10 partes, y que se puedan modificar los valores que usan. De nuevo programar botones. Los grupos están compuestos de partes, cada una hace referencia a una condición de la tabla anterior (rojiza); un grupo de condiciones se cumple si alguna de sus partes se cumple. Dije bien, "alguna", no es necesario que sean todas. Luego lo explico.

4- Definir los cambios básicos:
Esto implica en qué condiciones se resuelve el problema, cual es la acción inicial, y cómo se modifica (cada modificación con condiciones para indicar en qué condiciones se hace esa modificación).
Aquí falta bastante.
En primer lugar, debo hacer una tabla similar a la de grupos, para las condiciones de solución. Porque eso es lo que representará un &&, o sea, digamos que Solucionparte1 = 1, Solucionparte2 = 2, etc, eso significa que para que el problema se resuelva han de cumplirse los grupos 1 y 2 (definidos en la tabla amarillenta). Obviamente los valores no son modificables aún, falta, programar botones sí, pero como dije primero debo hacer la tabla. En el futuro también debo hacer que la solución se pueda componer de más de 10 partes.
Además, me falta hacer una tabla para las condiciones de las modificaciones de las acciones así como una tabla para especificar en qué consisten esas modificaciones (una parte especifica cuando ocurre, y la otra qué ocurre). Esto es bastante problemático, porque deberá poder agregar posibles modificaciones (agregará una columna), así que no puedo usar la "estética" de los grupos, debo hacer que una celda varíe el contenido que muestra. En fin, también hay cosas que debo ver mejor de este asunto, la estructura puede cambiar. La descripción de los cambios se parece a la descripción de las condiciones (tabla rojiza), es decir:
Elemento1 = Act
Operador = +
Elemento2 = 1
Hará falta que se puedan describir modificaciones más complejas como String(Act) + Act * 9
La tabla deberá poder extenderse en filas, supongo.
También aquí está el problema de qué debe ser posible poner. Como dije al final de la fase 2.

5- Definir los cambios:
Esto incluye cosas que puedan ocurrir en la situación, y también cómo se aplican las acciones (definidas en la fase anterior); ambas cosas con sus respectivas condiciones. Al igual que las otras tablas, tengo algo hecho de versiones anteriores, pero va a cambiar, cambiaron el nombre de las variables, so debo cambiar los botones también. Y esta tabla es una de las más complejas en el sentido de "qué se debe poner". Teóricamente, sería posible cambiar las condiciones en que se soluciona el problema! ¿Te imaginás un problema cuya solución cambia? No es útil, pero es interesante, y paradójico...

6- La búsqueda de la solución.
Esta se podría dividir en varias fases, pero bueno, las otras también. No la detallaré mucho y será más tarde.

Ahora yo tengo una pregunta para ti:
¿Quién sos?

En el otro foro estás registrado hace 2 años. Posteaste 2 cosas, y 2 años después posteaste en un tema mío de hace 2 años. Es raro...

_________________
Si no puedes hacerlo, intenta primero hacer algo más simple aunque similar.


Arriba
 Perfil  
Responder citando  
NotaPublicado: 16 Ago 2015, 19:59 
Desconectado
Avatar de Usuario

Registrado: 10 Ago 2011, 20:39
Mensajes: 9373
De momento quiero ayuda en las cuestiones teóricas, por ejemplo:
¿Qué tipo de acciones hay?

En la vida, en el mundo real.

Yo por ahora sólo voy a poner acciones que modifican variables, pero he pensado que no es suficiente. Por ejemplo, agregar un objeto a la situación supongo que es agregar una variable, es decir, no es simplemente modificar una ya existente.

Debo ver tipos de problemas, pensar cuales hay, porque tienen tipos de acciones o tipos de soluciones diferentes.
Reordenar números por ejemplo tampoco sería modificar variables sencillamente, sino intercambiar valores entre una y otra.

Igual como dije este tema es un poco viejo. De momento me siento bastante bien, voy avanzando y de momento prefiero seguir sólo.

_________________
Si no puedes hacerlo, intenta primero hacer algo más simple aunque similar.


Arriba
 Perfil  
Responder citando  
NotaPublicado: 16 Ago 2015, 21:45 
Desconectado
Avatar de Usuario

Registrado: 10 Ago 2011, 20:39
Mensajes: 9373
Continúo, con la 6:
Lo divido para que sea más fácil decir.

Chequeo de que un archivo existe:
La "base de datos" del programa son archivos que él genera. No sé una forma segura de chequear que terminó de generarlos o de que existen -son casos distintos-, pero de momento estoy conforme con mi método de hacerlo. Aunque me falta ver cómo funciona con decimales, negativos, y debo adaptarlo a que funcione con textos (posiblemente también lo demás). Con los decimales y texto podría tener un problema extra, porque los nombres de los archivos generados están basados en las variables. Si la variable tiene "a.jpg" entonces el archivo podría quedar con extensión jpg tal vez, debo ver qué pasa. Los decimales usan . así que podrían dar el mismo problema.

Cambois/Acciones:
Se realiza sin analizar condiciones, sólo se realiza uno y de forma fija. Falta adaptar todo lo que dije, de la interfase.
O sea, de momento lo tengo así:
V1 = V1+M.Act;
Básicamente debería ser así:
Cam1Elm = Cam1Elm1 Cam1Op Cam1Elm2;
...pero eso no funciona, y hay que usar evals, uno o dos a cada cosa, dependiendo del tipo de contenido que tenga. Además faltan las condiciones y debo poner la posibilidad de que se realice más de un cambio.

Chequeo de que las condiciones de solución se cumplan:
Lo mismo, me falta adaptarlo.

Ya lo he dicho, pero lo digo de nuevo por si no quedó claro. Una cosa es que la búsqueda de soluciones funcione, y otra cosa es que funcione de acuerdo a lo que se ponga en la interfase. En ambos sentidos está limitado, pero en el 1ero está más avanzado.

Modificación de la acción:
Idem, falta adaptar, poner condiciones, etc.

----------------------------------------------------------------------------

Otras cosas:
- Representación en pantalla. Esto es representar -mostrar de una forma- la situación, en pantalla, cómo inicia y cómo los cambios definidos la modifican. En la versión anterior esto lo tenía bastante bien, pero ahora lo dejé de lado.

- Posibilidad de solucionar problemas con cosas random. Que yo sepa, no hay una forma segura de solucionar estas cosas, y mi método -que es para solución segura- no está hecho para estos casos. So, me faltaría ampliar mi método, para estos casos.
También me faltaría que mi método funcione para casos en que las variables se desconocen.

- Incluir búsqueda mediante inducciones. Tal vez la palabra no sea la adecuada pero me refiero a suponer -no concluir- que si se da cierta relación entre alguna variable y una acción, entonces podría ocurrir en todos los casos. Por ejemplo: En una ocasión, un Blastoise con Surf vence a un Charizard, Obviamente si lo vence o no depende de los stats y de otras cosas, pero con este método de búsqueda lo 1ero que se probaría en un Blastoise con Surf vs Charizard, es Surf.
No obstante no sé cuánta aplicación tiene esto en lo que estoy haciendo. Tengo que ver mejor. Esto más bien se aplica cuando uno busca soluciones para muchas situaciones, mi programa simplemente las busca para una...
No, no me interesa que busque soluciones para todas las situaciones, eso me gusta para videojuegos, pero esto es diferente.

- Posibilidad de que modifique su método de búsqueda. Quizá no, esto es too much, antes debería yo crear un método de comprobación de métodos... sino no se sabría cuando sirve su método, puede que en algunos casos sí pero en otros no... Por otro lado, el programa podría modificar el método de comprobación de métodos que yo le haya dicho, pero supongo que antes debería crear yo un método para comprobar esas modificaciones... En fin, quizá la complejidad posible no tenga fin, o quizá exista algo que se autocompruebe, no lo sé.

Creo que eso es todo.

_________________
Si no puedes hacerlo, intenta primero hacer algo más simple aunque similar.


Arriba
 Perfil  
Responder citando  
NotaPublicado: 16 Ago 2015, 21:50 
Desconectado
Avatar de Usuario

Registrado: 10 Jun 2011, 21:52
Mensajes: 4610
https://es.wikipedia.org/wiki/Int%C3%A9 ... %C3%A1tica)




_________________
Spoiler: show


Arriba
 Perfil  
Responder citando  
NotaPublicado: 16 Ago 2015, 21:56 
Desconectado
Avatar de Usuario

Registrado: 10 Ago 2011, 20:39
Mensajes: 9373
La página de wikipedia que pusiste me dice que no existe. Ya veo, en el foro al convertirse en dirección no agrega el ) final.

_________________
Si no puedes hacerlo, intenta primero hacer algo más simple aunque similar.


Arriba
 Perfil  
Responder citando  
NotaPublicado: 16 Ago 2015, 21:58 
Desconectado
Avatar de Usuario

Registrado: 10 Jun 2011, 21:52
Mensajes: 4610
Se te ve muy hábil y desenvuelto en temas de informática.

Prueba con ésta: https://es.wikipedia.org/wiki/Int%E9rpr ... %E1tica%29

PD: este foro es una castaña.

_________________
Spoiler: show


Arriba
 Perfil  
Responder citando  
NotaPublicado: 16 Ago 2015, 22:32 
Desconectado
Avatar de Usuario

Registrado: 10 Ago 2011, 20:39
Mensajes: 9373
Nil escribió:
Se te ve muy hábil y desenvuelto en temas de informática.
Pues... no entendí lo que quisiste decir con tu anterior post. Aunque no recuerdo la definición de turing machine, más tarde lo veo.

Cómo solucionaste el tema del link?
Ese sería un buen acertijo...

_________________
Si no puedes hacerlo, intenta primero hacer algo más simple aunque similar.


Arriba
 Perfil  
Responder citando  
NotaPublicado: 18 Ago 2015, 21:58 
Desconectado

Registrado: 13 Ago 2015, 23:50
Mensajes: 8
Buenas de nuevo por aca pues respondiendo su pregunta...en el otro foro si se dio cuenta era justamente de IA y no entiendo eso de su "post suyo" hace un par de años no dominaba mucho bueno hasta ahora he aprendido algo,con respecto a su proyecto esta basado en arboles binarios ?? es posible usarlo para palabras o casos complejos ?? por ejemplo como lo que le dije poner "dibujar un perro" cosas asi.. o aun falta ??
Podria usar librerias en el proyecto
saludos amigo


Arriba
 Perfil  
Responder citando  
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 31 mensajes ]  Ir a página Anterior  1, 2, 3, 4  Siguiente

Todos los horarios son UTC + 1 hora [ DST ]


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
POWERED_BY
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO