Identificar Vocales dependiendo codigo??

#1
Estoy realizando una aplicación para la materia de Inteligencia Artificial donde meto un codigo de 100 digitos (0's ó 1's)
Los digitos corresponden a un patron de 10 x 10 donde se dibuja una vocal. Por donde pasa la linea se toma como 1 y donde no toca se toma como 0.

Ya introdusco los datos a la base de datos, el problema que tengo ahora es para poder decir que vocal es dependiendo el codigo que se meta. Debido a que cada quien escribe las vocales diferentes, el codigo generado siempre es diferente, y el programa debe decirme que vocal es aunque el codigo introducido no este guardado en la base de datos. Lo tengo por el momento con un like pero esto no me ayuda mucho.

Tengo el siguiente codigo:

Código:
codigo = codigo.substring(13, 87);
encontrar_a = dbConnection.prepareStatement("SELECT COUNT(*) FROM a  WHERE codigo LIKE '%"+codigo+"%'");
resultado = encontrar_a.executeQuery();
resultado.next();
cont_a = resultado.getInt(1);

Despues de hacer la misma consulta en las demas tablas que tengo, comparo con unos if's para ver que contador tiene mas resultados, y dependiendo de eso ya digo que vocal es. El problema es que no me trabaja como quiero.

Espero puedan ayudarme a buscar una mejor manera de poder decir que vocal es dependiedo el codigo que se meta.
 

angel79

Bovino adolescente
#3
Como lo planteas deberas cargar en tu tabla (base de datos) cada una de las posibles combinaciones por cada letra, asi no importando como la escriban lo encontraras con tu consulta.

Ahora si realmente quieres que se haga el reconocimiento de forma "inteligente" y no solo por comparaciones deberias buscar información sobre reconocimiento de patrones, que por la materia que indicas que llevas de inteligencia artificial deberias de hacerlo.

Cualquiera de los dos caminos que decidas no son tan triviales,

Saludos,
 
#5
gracia por su ayuda, la solución que tengo por el momento es comparar los codigos que tengo en la base de datos con el codigo a reconocer, identificando las coincidencias y sacando un arreglo por cada vocal del total de coincidencias encontradas. Despues de tener mis 5 arreglos, los ordeno y saco el numero mayor de cada arreglo, los comparo y asi saco cual es mayor a cual y ya digo que vocal es.

Esta solución funciona, pero se necesita tener una buena base de conocimiento(muchos codigos de cada vocal en las tablas de la base de datos) ya que si no se cuenta con eso en ocaciones el resultado no es correcto.

Seguire buscando otra manera de solucionarlo, pero por el momento es la mejor que tengo.
 
Arriba