programación con restricciones es un enfoque alternativo a la programación informática que consiste en una combinación de la informática y de la lógica o el razonamiento , las técnicas . El principio básico de la programación de restricciones es para especificar problemas con información incompleta impredecible y resolver esos problemas por las condiciones o propiedades que indican - conocida de otra manera como limitaciones - satisfechas por la solución . Restricción
programación con restricciones se basa en la idea de una restricción : una relación , a menudo una igualdad o desigualdad de relación entre los valores de dos variables matemáticas . En otras palabras , una restricción puede ser pensado como un requisito que indica qué combinaciones de valores de la gama de valores posibles para cada variable son admisibles ; " x > 3 ", por ejemplo , es una restricción en " x . "
restricción sistema
Un sistema de restricción especifica formalmente las normas que rigen las fórmulas bien formadas, o la sintaxis , y la verdad o falsedad , o la semántica, de las limitaciones de interés . Un sistema de restricción especifica el idioma en que se expresan las restricciones , lo que los símbolos de restricción son , cómo se definen y qué fórmulas de restricción se utilizan para la lógica en el lenguaje de programación con restricciones .
Restricción Satisfacción
En teoría , programación con restricciones se compone de dos fases : la generación de una representación de un problema y la solución del problema . En la práctica , cada una de estas fases se puede dividir en una serie de pasos más pequeños , que se puede realizar alternativamente . Para resolver un problema usando programación de restricciones , el problema debe haber especificado , o se formula , como un problema de satisfacción de restricciones , que consiste en un número finito de restricciones que se aplican a cada uno de una secuencia específica de las variables . Satisfacción de Restricciones intenta asignar valores a las variables de manera que todas las restricciones son verdaderas. Por lo general, un problema de satisfacción de restricciones puede ser representado en más de una forma , programación con restricciones es muy flexible, ya que las restricciones pueden añadirse, modificarse o eliminarse
restricción Solver
. un solucionador de restricciones aplica una fórmula matemática o algoritmo, que recoge las limitaciones de uno o más programas en ejecución, que simplifica y , si es posible , los resuelve . El resultado final se conoce como la respuesta de restricción.
Aplicaciones
Problemas resueltos mediante programación con restricciones se formulan normalmente en términos de requisitos, propiedades o leyes . Estos problemas se producen con frecuencia en la industria y el comercio, incluido el análisis , diseño, planificación , asignación de recursos y el transporte. Programación con restricciones se aplica con éxito a muchos otros campos , incluyendo la ingeniería eléctrica , la biología molecular y la investigación de operaciones .