SlideShare uma empresa Scribd logo
1 de 28
Baixar para ler offline
Solvers in CSP
                            1/28


Search and Solvers in
Constraint Programming



Claudio Cesar de S´
                  a
UDESC/DCC
Joinville, March 14, 2011




                            Back
                            Close
Contents
                                                   2/28
1 Introduction                                5

2 Fundamental Concepts on CP                   8

3 Characteristics of Constraint Programming   10

4 Example                                     12

5 The Constraint Programming Process          13

6 Search                                      17

7 Solvers and Lybraries for CP                20

8 What’s Missing?                             25
                                                   Back
                                                   Close
9 A Conjecture     26

10 Conclusions     27

11 Final Remarks   28   3/28




                        Back
                        Close
4/28




Back
Close
Introduction
The France

               5/28




               Back
               Close
Auvergne Region



                  6/28




                  Back
                  Close
Universit´ d’Auvergne
         e
 • Many faculties and instituts
 • IUT – Institut Universitaire de Technologie
                                                                         7/28
 • Many labs (CNRS, INRIA, ...)
 • LAIC - (vanished in August/2011);
 • On the other side of street: Universit´ Blaise Pascal, in 2012 will
                                         e
   be together with Universit´ d’Auvergne.
                             e




                                                                         Back
                                                                         Close
Fundamental Concepts on CP
                                                                             8/28
º The Constraint Satisfaction Problem (CSP) is defined by a set of
   variables which must be satisfied under a set of the domain
º Constraint Satisfaction Problem (CSP) consists of:
   µ Finite set of variables x1 , x2 , . . . ,xn
   µ For each variable xi , a finite set Di of possible values (its domain)
   µ Set of constraints restricting the values that the variables can
      take
   µ Resuming, each variable xi has a non-empty domain Di of pos-
      sible values, and its goal to find a consistent set for these xis
      variables under their domains.
   µ The CSP problems are attack by the
      Constraint Programming (CP) (known as CP area)

                                                                             Back
                                                                             Close
µ Once CSP is represented, solving process include:
    ¶ Determining whether the CSP has a solution (check for con-
      sistency)
    ¶ Finding a solution: a solution to a CSP is a complete consis-
                                                                      9/28
      tent assignment of variables
    ¶ Finding all solutions
    ¶ Finding an optimal solution
    ¶ Finding all optimal solutions
    ¶ Finding a good solution
° This discussion will be resumed later ....




                                                                      Back
                                                                      Close
Characteristics of Constraint Program-
ming                                                                    10/28


º Declarative programming – modeling
º Flexible representation – constraints can be added, removed or mod-
   ified
º A two phase programming approach:
   É Generation of a problem representation as a CSP
   É Finding a solution of the CSP




                                                                        Back
                                                                        Close
º Presence of built-in (embeeded ) mechanisms such:
   ¶   Constraints can be added, removed or modified
   ¶   Features to declare and define variables
   ¶   Features to generate constraints over the variables           11/28

   ¶   Constraint solvers
   ¶   Constraint propagation algorithm
   ¶   Search techniques




  In steps, basically, the CP consists of three basic steps:
º Declaring the domains of the variables
º Declaring the constraints on the declared variables
º Searching for the solutions (search, constraint and propagation)
                                                                     Back
                                                                     Close
Example
                                                                                   12/28
  Graph 3-colourability. For a graph G := (V, E) we generate a
CSP with variables V := {v1, v2, ..., vn}, values D := {r, g, b} and
constraints:
C := {(vi, vj , {r, g, b}2  {(r, r), (g, g), (b, b)}) : for each (vi, vj ) ∈ E}
Note that {r, g, b}2  {(r, r), (g, g), (b, b)} is the triangle K3.

                                                      r   y



                                                g   y         y b

The CSP admits two other formulations, one as the model-checking
problem for existential conjuctive-positive First-Order Logic, and
one as the homomorphism problem (other seminar).
                                                                                   Back
                                                                                   Close
The Constraint Programming Process
                                                                       13/28
  µ Whose are the requirements to work?
É Constraint Modeling: Representations of a problem as a constraint
   satisfaction problem with constraints is called constraint model-
   ing.
É Constraint Solving: Solving the constraint models formulated by
   modeling can be carried out using any of the three methods:
   ¶ Domain specific method 5 (Simplex, Gr¨bner bases, etc.)
                                          o
   ¶ General Method 5 (Constraint propagation)
   ¶ Combination of both methods (Solver cooperation)




                                                                       Back
                                                                       Close
Domain Specific Methods
É Special purpose algorithms devoted to specific domains and con-
   straints
É Method by means of specialized packages called constraint solvers   14/28

É Examples include:
   ¶ Program that solves systems of linear equations
   ¶ Package for linear programming
   ¶ Implementation of unification algorithm




                                                                      Back
                                                                      Close
General Methods
É Can be used for several different types of constraints and domains
   (of the variables)
É Concerned with the ways of reducing the search space with specific   15/28
   search methods
  This encompasses two different methods/approaches:
É Constraint Propagation Algorithm
   ¶ Algorithm that repeatedly removes inconsistent values from the
     domains
   ¶ Reduces the search space
   ¶ Maintain equivalence while simplifying the problem
   ¶ Achieve various forms of local consistency
É Search Methods
   ¶ Explores the search space – a tree search is built
   ¶ Consists of combination of constraint propagation, backtrack,
      branch and bound search                                         Back
                                                                      Close
¶ Heuristics schemes such: simulated annealing, tabu search, hill-
   climbing ...


                                                                     16/28




                                                                     Back
                                                                     Close
Search
                                                                         17/28
  Basically, two types:
¶ Systematic or rigid schemes: dfs, bs, tabu search, ... (none consid-
   eration about the entropy during the search)
¶ Heuristics schemes such: simulated annealing, tabu search, hill-
   climbing, ... (some consideration on entropy – randonness) and
   evolutionary algorithms (ags, swarm, genetic programming, ... )
  É Common point: any warranty about its completeness, why?




                                                                         Back
                                                                         Close
Our Metaphore for Search in CP



                                            18/28




               Figure 1: crab computation



                                            Back
                                            Close
Our Real Situation in Interesting Problems



                                                   19/28




             Figure 2: A hard and real situation

                                                   Back
                                                   Close
Solvers and Lybraries for CP
                                                                  20/28
 É Solvers:
• Java-based constraint solvers
• C-based constraint solvers
• C++ -based constraint solvers
• C, C++, Python and Tcl based constraint solvers
• C++/Java/Python/Scheme and Smalltalk-based constraint solvers
• Python-based constraint solvers
• PROLOG-based constraint solvers
• VB.NET-based constraint solvers
• Mozart-Oz-based constraint solvers
• ....                                                            Back
                                                                  Close
É Lybraries: A library that extends a programming language or is
called by another programming system.


                                                                     21/28




                                                                     Back
                                                                     Close
C++ based Constraint Solvers
É MINION
   * http://minion.sourceforge.net/reference.html
   * Cygwin (MS Windows), All POSIX (Linux/BSD/UNIX-like OSes),    22/28
   OS X
   * Availability: Free
É ILOG Solver
   * http://www.ilog.com/
   * IRIX 6.5 (System V-based Unix operating system with BSD ex-
   tensions)
   * Availability: Commercial
É GeCode- Generic Constraint development Environment
   * http://www.gecode.org/
   * Windows and BSD style
   * Availability: Free


                                                                   Back
                                                                   Close
PROLOG-based Constraint Solvers
É CHIP V5, the Second-Generation Constraint Programming tool
   * http://www.cosytec.com/production scheduling/chip/optimization product
   * UNIX, Linux and Windows NT/2000                                 23/28
   * Availability: Commercial
É GNU Prolog
   * http://sourceforge.net/projects/gprolog
   * All 32-bit MS Windows (95/98/NT/2000/XP), All POSIX (Linux/BSD/UNI
   like OSes), Other Operating Systems
   * Availability: Free
É Eclipse
   * http://eclipseclp.org/
   * Availability: Free




                                                                     Back
                                                                     Close
Java-based Solvers
É KOALOG
   * http://www.koalog.com/php/jcs.php
   * Windows, Windows 2000/XP, LINUX                       24/28
   * Availability: Commercial
É Choco
   * http://choco.sourceforge.net/
   * UNIX
   * Availability: Free
É DragonBreath Engine
   * http://sourceforge.net/projects/dragonbreath
   * OS Independent (Written in an interpreted language)
   * Availability: Free
É Temporal Constraint Solver
   * http://sourceforge.net/projects/tcsolver
   * OS Independent (Written in an interpreted language)
   * Availability: Free
                                                           Back
                                                           Close
What’s Missing?
                                                                        25/28
º Functional paradigm is not ready yet ... although it is direct in
   programming languages such: Haskell
º Any interface for any lybrary was implemented under functional
   paradigm
º Distributed computation is a challenge in CP
º Under multi-core processor a new-paradigm for CP
º Adaptation in CP systems are unknow yet
º Finally, the hybridization was not reached with meaningful success.




                                                                        Back
                                                                        Close
A Conjecture
                                                 26/28
               Agent #1   Agent #2

                CP                   Evolutive

               classic




                                                 Back
                                                 Close
Conclusions
                                                                       27/28
1. Build new solvers? No
2. Explore the massive computation? Yes
3. Investigation on news representation and paradigm on its computa-
   tion? Yes
4. For example: Haskell is mature ... well accepted




                                                                       Back
                                                                       Close
Final Remarks
                              28/28


º Thanks for your attention
º Questions?
º Time for the coffe




                              Back
                              Close

Mais conteúdo relacionado

Semelhante a Solvers and Applications with CP

Derivative Free Optimization and Robust Optimization
Derivative Free Optimization and Robust OptimizationDerivative Free Optimization and Robust Optimization
Derivative Free Optimization and Robust OptimizationSSA KPI
 
Compressed Sensing using Generative Model
Compressed Sensing using Generative ModelCompressed Sensing using Generative Model
Compressed Sensing using Generative Modelkenluck2001
 
Introduction to dynamic programming
Introduction to dynamic programmingIntroduction to dynamic programming
Introduction to dynamic programmingAmisha Narsingani
 
Slides Ph D Defense Tony Lambert
Slides Ph D Defense Tony LambertSlides Ph D Defense Tony Lambert
Slides Ph D Defense Tony Lambertlamberttony
 
Methods of Manifold Learning for Dimension Reduction of Large Data Sets
Methods of Manifold Learning for Dimension Reduction of Large Data SetsMethods of Manifold Learning for Dimension Reduction of Large Data Sets
Methods of Manifold Learning for Dimension Reduction of Large Data SetsRyan B Harvey, CSDP, CSM
 
Relations as Executable Specifications
Relations as Executable SpecificationsRelations as Executable Specifications
Relations as Executable SpecificationsNuno Macedo
 
Towards quantum machine learning calogero zarbo - meet up
Towards quantum machine learning  calogero zarbo - meet upTowards quantum machine learning  calogero zarbo - meet up
Towards quantum machine learning calogero zarbo - meet upDeep Learning Italia
 
Satisfaction And Its Application To Ai Planning
Satisfaction And Its Application To Ai PlanningSatisfaction And Its Application To Ai Planning
Satisfaction And Its Application To Ai Planningahmad bassiouny
 
Distance-based bias in model-directed optimization of additively decomposable...
Distance-based bias in model-directed optimization of additively decomposable...Distance-based bias in model-directed optimization of additively decomposable...
Distance-based bias in model-directed optimization of additively decomposable...Martin Pelikan
 
A Parallel Depth First Search Branch And Bound Algorithm For The Quadratic As...
A Parallel Depth First Search Branch And Bound Algorithm For The Quadratic As...A Parallel Depth First Search Branch And Bound Algorithm For The Quadratic As...
A Parallel Depth First Search Branch And Bound Algorithm For The Quadratic As...Carrie Romero
 
Machine Learning workshop by GDSC Amity University Chhattisgarh
Machine Learning workshop by GDSC Amity University ChhattisgarhMachine Learning workshop by GDSC Amity University Chhattisgarh
Machine Learning workshop by GDSC Amity University ChhattisgarhPoorabpatel
 
Paper Study: Melding the data decision pipeline
Paper Study: Melding the data decision pipelinePaper Study: Melding the data decision pipeline
Paper Study: Melding the data decision pipelineChenYiHuang5
 
algorithm_6dynamic_programming.pdf
algorithm_6dynamic_programming.pdfalgorithm_6dynamic_programming.pdf
algorithm_6dynamic_programming.pdfHsuChi Chen
 
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...Martha Brown
 
Multiobjective optimization and trade offs using pareto optimality
Multiobjective optimization and trade offs using pareto optimalityMultiobjective optimization and trade offs using pareto optimality
Multiobjective optimization and trade offs using pareto optimalityAmogh Mundhekar
 
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...sleepy_yoshi
 
Instance Based Learning in Machine Learning
Instance Based Learning in Machine LearningInstance Based Learning in Machine Learning
Instance Based Learning in Machine LearningPavithra Thippanaik
 

Semelhante a Solvers and Applications with CP (20)

Derivative Free Optimization and Robust Optimization
Derivative Free Optimization and Robust OptimizationDerivative Free Optimization and Robust Optimization
Derivative Free Optimization and Robust Optimization
 
modeling.ppt
modeling.pptmodeling.ppt
modeling.ppt
 
Compressed Sensing using Generative Model
Compressed Sensing using Generative ModelCompressed Sensing using Generative Model
Compressed Sensing using Generative Model
 
Approximation algorithms
Approximation  algorithms Approximation  algorithms
Approximation algorithms
 
Introduction to dynamic programming
Introduction to dynamic programmingIntroduction to dynamic programming
Introduction to dynamic programming
 
Slides Ph D Defense Tony Lambert
Slides Ph D Defense Tony LambertSlides Ph D Defense Tony Lambert
Slides Ph D Defense Tony Lambert
 
Methods of Manifold Learning for Dimension Reduction of Large Data Sets
Methods of Manifold Learning for Dimension Reduction of Large Data SetsMethods of Manifold Learning for Dimension Reduction of Large Data Sets
Methods of Manifold Learning for Dimension Reduction of Large Data Sets
 
Relations as Executable Specifications
Relations as Executable SpecificationsRelations as Executable Specifications
Relations as Executable Specifications
 
Towards quantum machine learning calogero zarbo - meet up
Towards quantum machine learning  calogero zarbo - meet upTowards quantum machine learning  calogero zarbo - meet up
Towards quantum machine learning calogero zarbo - meet up
 
Satisfaction And Its Application To Ai Planning
Satisfaction And Its Application To Ai PlanningSatisfaction And Its Application To Ai Planning
Satisfaction And Its Application To Ai Planning
 
Distance-based bias in model-directed optimization of additively decomposable...
Distance-based bias in model-directed optimization of additively decomposable...Distance-based bias in model-directed optimization of additively decomposable...
Distance-based bias in model-directed optimization of additively decomposable...
 
A Parallel Depth First Search Branch And Bound Algorithm For The Quadratic As...
A Parallel Depth First Search Branch And Bound Algorithm For The Quadratic As...A Parallel Depth First Search Branch And Bound Algorithm For The Quadratic As...
A Parallel Depth First Search Branch And Bound Algorithm For The Quadratic As...
 
Machine Learning workshop by GDSC Amity University Chhattisgarh
Machine Learning workshop by GDSC Amity University ChhattisgarhMachine Learning workshop by GDSC Amity University Chhattisgarh
Machine Learning workshop by GDSC Amity University Chhattisgarh
 
Declarative data analysis
Declarative data analysisDeclarative data analysis
Declarative data analysis
 
Paper Study: Melding the data decision pipeline
Paper Study: Melding the data decision pipelinePaper Study: Melding the data decision pipeline
Paper Study: Melding the data decision pipeline
 
algorithm_6dynamic_programming.pdf
algorithm_6dynamic_programming.pdfalgorithm_6dynamic_programming.pdf
algorithm_6dynamic_programming.pdf
 
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
A General Purpose Exact Solution Method For Mixed Integer Concave Minimizatio...
 
Multiobjective optimization and trade offs using pareto optimality
Multiobjective optimization and trade offs using pareto optimalityMultiobjective optimization and trade offs using pareto optimality
Multiobjective optimization and trade offs using pareto optimality
 
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
ICML2012読み会 Scaling Up Coordinate Descent Algorithms for Large L1 regularizat...
 
Instance Based Learning in Machine Learning
Instance Based Learning in Machine LearningInstance Based Learning in Machine Learning
Instance Based Learning in Machine Learning
 

Mais de iaudesc

Data Mining - Clustering
Data Mining - ClusteringData Mining - Clustering
Data Mining - Clusteringiaudesc
 
Algoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_GilcimarAlgoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_Gilcimariaudesc
 
Seminario fuzzy
Seminario fuzzySeminario fuzzy
Seminario fuzzyiaudesc
 
Algorítimos Genéticos
Algorítimos GenéticosAlgorítimos Genéticos
Algorítimos Genéticosiaudesc
 
Autômatos celulares
Autômatos celularesAutômatos celulares
Autômatos celularesiaudesc
 
Vida artificial
Vida artificialVida artificial
Vida artificialiaudesc
 
RNA - Redes neurais artificiais
RNA - Redes neurais artificiaisRNA - Redes neurais artificiais
RNA - Redes neurais artificiaisiaudesc
 
Representação do conhecimento (rc)
Representação do conhecimento (rc)Representação do conhecimento (rc)
Representação do conhecimento (rc)iaudesc
 
Algoritmos de jogos
Algoritmos de jogosAlgoritmos de jogos
Algoritmos de jogosiaudesc
 
Programação Genética
Programação GenéticaProgramação Genética
Programação Genéticaiaudesc
 
Busca tabu
Busca tabuBusca tabu
Busca tabuiaudesc
 
Seminário redes bayesianas
Seminário redes bayesianasSeminário redes bayesianas
Seminário redes bayesianasiaudesc
 

Mais de iaudesc (12)

Data Mining - Clustering
Data Mining - ClusteringData Mining - Clustering
Data Mining - Clustering
 
Algoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_GilcimarAlgoritmo_ID3_e_C.45_Gilcimar
Algoritmo_ID3_e_C.45_Gilcimar
 
Seminario fuzzy
Seminario fuzzySeminario fuzzy
Seminario fuzzy
 
Algorítimos Genéticos
Algorítimos GenéticosAlgorítimos Genéticos
Algorítimos Genéticos
 
Autômatos celulares
Autômatos celularesAutômatos celulares
Autômatos celulares
 
Vida artificial
Vida artificialVida artificial
Vida artificial
 
RNA - Redes neurais artificiais
RNA - Redes neurais artificiaisRNA - Redes neurais artificiais
RNA - Redes neurais artificiais
 
Representação do conhecimento (rc)
Representação do conhecimento (rc)Representação do conhecimento (rc)
Representação do conhecimento (rc)
 
Algoritmos de jogos
Algoritmos de jogosAlgoritmos de jogos
Algoritmos de jogos
 
Programação Genética
Programação GenéticaProgramação Genética
Programação Genética
 
Busca tabu
Busca tabuBusca tabu
Busca tabu
 
Seminário redes bayesianas
Seminário redes bayesianasSeminário redes bayesianas
Seminário redes bayesianas
 

Último

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 

Último (20)

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 

Solvers and Applications with CP

  • 1. Solvers in CSP 1/28 Search and Solvers in Constraint Programming Claudio Cesar de S´ a UDESC/DCC Joinville, March 14, 2011 Back Close
  • 2. Contents 2/28 1 Introduction 5 2 Fundamental Concepts on CP 8 3 Characteristics of Constraint Programming 10 4 Example 12 5 The Constraint Programming Process 13 6 Search 17 7 Solvers and Lybraries for CP 20 8 What’s Missing? 25 Back Close
  • 3. 9 A Conjecture 26 10 Conclusions 27 11 Final Remarks 28 3/28 Back Close
  • 5. Introduction The France 5/28 Back Close
  • 6. Auvergne Region 6/28 Back Close
  • 7. Universit´ d’Auvergne e • Many faculties and instituts • IUT – Institut Universitaire de Technologie 7/28 • Many labs (CNRS, INRIA, ...) • LAIC - (vanished in August/2011); • On the other side of street: Universit´ Blaise Pascal, in 2012 will e be together with Universit´ d’Auvergne. e Back Close
  • 8. Fundamental Concepts on CP 8/28 º The Constraint Satisfaction Problem (CSP) is defined by a set of variables which must be satisfied under a set of the domain º Constraint Satisfaction Problem (CSP) consists of: µ Finite set of variables x1 , x2 , . . . ,xn µ For each variable xi , a finite set Di of possible values (its domain) µ Set of constraints restricting the values that the variables can take µ Resuming, each variable xi has a non-empty domain Di of pos- sible values, and its goal to find a consistent set for these xis variables under their domains. µ The CSP problems are attack by the Constraint Programming (CP) (known as CP area) Back Close
  • 9. µ Once CSP is represented, solving process include: ¶ Determining whether the CSP has a solution (check for con- sistency) ¶ Finding a solution: a solution to a CSP is a complete consis- 9/28 tent assignment of variables ¶ Finding all solutions ¶ Finding an optimal solution ¶ Finding all optimal solutions ¶ Finding a good solution ° This discussion will be resumed later .... Back Close
  • 10. Characteristics of Constraint Program- ming 10/28 º Declarative programming – modeling º Flexible representation – constraints can be added, removed or mod- ified º A two phase programming approach: É Generation of a problem representation as a CSP É Finding a solution of the CSP Back Close
  • 11. º Presence of built-in (embeeded ) mechanisms such: ¶ Constraints can be added, removed or modified ¶ Features to declare and define variables ¶ Features to generate constraints over the variables 11/28 ¶ Constraint solvers ¶ Constraint propagation algorithm ¶ Search techniques In steps, basically, the CP consists of three basic steps: º Declaring the domains of the variables º Declaring the constraints on the declared variables º Searching for the solutions (search, constraint and propagation) Back Close
  • 12. Example 12/28 Graph 3-colourability. For a graph G := (V, E) we generate a CSP with variables V := {v1, v2, ..., vn}, values D := {r, g, b} and constraints: C := {(vi, vj , {r, g, b}2 {(r, r), (g, g), (b, b)}) : for each (vi, vj ) ∈ E} Note that {r, g, b}2 {(r, r), (g, g), (b, b)} is the triangle K3. r y g y y b The CSP admits two other formulations, one as the model-checking problem for existential conjuctive-positive First-Order Logic, and one as the homomorphism problem (other seminar). Back Close
  • 13. The Constraint Programming Process 13/28 µ Whose are the requirements to work? É Constraint Modeling: Representations of a problem as a constraint satisfaction problem with constraints is called constraint model- ing. É Constraint Solving: Solving the constraint models formulated by modeling can be carried out using any of the three methods: ¶ Domain specific method 5 (Simplex, Gr¨bner bases, etc.) o ¶ General Method 5 (Constraint propagation) ¶ Combination of both methods (Solver cooperation) Back Close
  • 14. Domain Specific Methods É Special purpose algorithms devoted to specific domains and con- straints É Method by means of specialized packages called constraint solvers 14/28 É Examples include: ¶ Program that solves systems of linear equations ¶ Package for linear programming ¶ Implementation of unification algorithm Back Close
  • 15. General Methods É Can be used for several different types of constraints and domains (of the variables) É Concerned with the ways of reducing the search space with specific 15/28 search methods This encompasses two different methods/approaches: É Constraint Propagation Algorithm ¶ Algorithm that repeatedly removes inconsistent values from the domains ¶ Reduces the search space ¶ Maintain equivalence while simplifying the problem ¶ Achieve various forms of local consistency É Search Methods ¶ Explores the search space – a tree search is built ¶ Consists of combination of constraint propagation, backtrack, branch and bound search Back Close
  • 16. ¶ Heuristics schemes such: simulated annealing, tabu search, hill- climbing ... 16/28 Back Close
  • 17. Search 17/28 Basically, two types: ¶ Systematic or rigid schemes: dfs, bs, tabu search, ... (none consid- eration about the entropy during the search) ¶ Heuristics schemes such: simulated annealing, tabu search, hill- climbing, ... (some consideration on entropy – randonness) and evolutionary algorithms (ags, swarm, genetic programming, ... ) É Common point: any warranty about its completeness, why? Back Close
  • 18. Our Metaphore for Search in CP 18/28 Figure 1: crab computation Back Close
  • 19. Our Real Situation in Interesting Problems 19/28 Figure 2: A hard and real situation Back Close
  • 20. Solvers and Lybraries for CP 20/28 É Solvers: • Java-based constraint solvers • C-based constraint solvers • C++ -based constraint solvers • C, C++, Python and Tcl based constraint solvers • C++/Java/Python/Scheme and Smalltalk-based constraint solvers • Python-based constraint solvers • PROLOG-based constraint solvers • VB.NET-based constraint solvers • Mozart-Oz-based constraint solvers • .... Back Close
  • 21. É Lybraries: A library that extends a programming language or is called by another programming system. 21/28 Back Close
  • 22. C++ based Constraint Solvers É MINION * http://minion.sourceforge.net/reference.html * Cygwin (MS Windows), All POSIX (Linux/BSD/UNIX-like OSes), 22/28 OS X * Availability: Free É ILOG Solver * http://www.ilog.com/ * IRIX 6.5 (System V-based Unix operating system with BSD ex- tensions) * Availability: Commercial É GeCode- Generic Constraint development Environment * http://www.gecode.org/ * Windows and BSD style * Availability: Free Back Close
  • 23. PROLOG-based Constraint Solvers É CHIP V5, the Second-Generation Constraint Programming tool * http://www.cosytec.com/production scheduling/chip/optimization product * UNIX, Linux and Windows NT/2000 23/28 * Availability: Commercial É GNU Prolog * http://sourceforge.net/projects/gprolog * All 32-bit MS Windows (95/98/NT/2000/XP), All POSIX (Linux/BSD/UNI like OSes), Other Operating Systems * Availability: Free É Eclipse * http://eclipseclp.org/ * Availability: Free Back Close
  • 24. Java-based Solvers É KOALOG * http://www.koalog.com/php/jcs.php * Windows, Windows 2000/XP, LINUX 24/28 * Availability: Commercial É Choco * http://choco.sourceforge.net/ * UNIX * Availability: Free É DragonBreath Engine * http://sourceforge.net/projects/dragonbreath * OS Independent (Written in an interpreted language) * Availability: Free É Temporal Constraint Solver * http://sourceforge.net/projects/tcsolver * OS Independent (Written in an interpreted language) * Availability: Free Back Close
  • 25. What’s Missing? 25/28 º Functional paradigm is not ready yet ... although it is direct in programming languages such: Haskell º Any interface for any lybrary was implemented under functional paradigm º Distributed computation is a challenge in CP º Under multi-core processor a new-paradigm for CP º Adaptation in CP systems are unknow yet º Finally, the hybridization was not reached with meaningful success. Back Close
  • 26. A Conjecture 26/28 Agent #1 Agent #2 CP Evolutive classic Back Close
  • 27. Conclusions 27/28 1. Build new solvers? No 2. Explore the massive computation? Yes 3. Investigation on news representation and paradigm on its computa- tion? Yes 4. For example: Haskell is mature ... well accepted Back Close
  • 28. Final Remarks 28/28 º Thanks for your attention º Questions? º Time for the coffe Back Close