• Aucun résultat trouvé

Heuris’ques     «  Découverte  de  la  recherche  »    2012-­‐2013  yu.li@u-­‐picardie.fr

N/A
N/A
Protected

Academic year: 2022

Partager "Heuris’ques     «  Découverte  de  la  recherche  »    2012-­‐2013  yu.li@u-­‐picardie.fr"

Copied!
14
0
0

Texte intégral

(1)

Heuris'ques    

«  Découverte  de  la  recherche  »     2012-­‐2013  

yu.li@u-­‐picardie.fr  

(2)

Plan  

•  Problèmes  

– Problèmes  faciles  et  problèmes  difficiles   – P=NP?  

– Problème  SAT  

– Exemple  :    la  planifica'on  des  examens,  la  colora'on  du   graphe  et  le  problème  SAT  

Heuris'ques  

– Recherche  locale   – Algorithmes  fourmis   – Algorithmes  géné'ques   – Etc.  

(3)

Problèmes  faciles  

•  Problèmes  faciles  

– Par  exemple,  

• Le  tri  d’un  ensemble  des  en'ers  

• La  recherche  du  plus  court  chemin  dans  un  réseau  

• Etc.  

– Ces  problèmes  peuvent  être  résolus  en  temps   polynomial  par  un  algorithme.    

•  Classe  P  

– L’ensemble  de  problèmes  P  (Polynomiaux).  

(4)

Problèmes  difficiles  

•  Problèmes  difficiles  

– Par  exemple,  

•  La  planifica'on  des  examens  

•  La  colora'on  du  graphe  

•  la  crypotographie  

•  Etc.    

– Ces  problèmes  qu’on  ne  sait  pas  résoudre  en  temps   polynomial  à  ce  jour,  mais  on  sait  vérifier  leurs  

solu'ons  en  temps  polynomial.  

•  Classe  NP  

– L’ensemble  de  problèmes    NP  (Nondeterminis'c   Polynomial).  

(5)

P  =  NP?  

•  La  ques'on  :  P=NP?  

– Exsite-­‐il  un  algorithme  polynomial  pour  résoudre   un  problème  NP?  

•  C’est  l’un  des  problèmes  de  recherche  les  plus   étudiés  et  les  plus  troublants  en  informa'que   théorique,  depuis  qu’il  a  été  posé  en  1971  par   Cook.    

(6)

Problème  SAT  

•  Le  problème  de  sa'sfiablité  SAT  est  le  

représentant  de  la  classe  NP,  car  tous  les  

autres  problèmes  NP  peuvent  être  encodés  en   SAT  en  temps  polynomial.    

•  Par  conséquence,  l’étude  du  problème  SAT   peut  aider  à  avoir  une  meilleure  

compréhension  aux  problèmes  NP.  

(7)

Problème  SAT  

•  Instance  1  

– A  =  {  x1,  x2,  x3},  F=(x1∨x2)∧(¬x1∨x3)∧(¬x2∨¬x1)  

•  F  est  sa'sfaisable  (F  =  T)  puisque,  si  on  pose  x1=T,  x2=F,  x3=T.  

•  Instance  2  

– A  =  {  x1,  x2,  x3},  F=(x1∨x2)∧(¬x1∨x3)∧(¬x2∨x1)  ∧ (¬x2∨x3)  ∧(¬x1∨¬x3)    

•  F  n'est  pas  sa'sfiable.  

•  Instance  3  

– A  =  {  x1,  x2,  x3,  x4},  F  =  (x1∨¬x2∨¬x3)  ∧(¬x1∨x3∨x4)  

•  F  est  sa'sfaisable,  si  on  pose  x1=T,  x2=T,  x3=T,  x4=T.  

(8)

Problème  SAT  

Le  problème  SAT  est  représenté  par  une  formule   propos'onnelle  sous  forme  CNF:  

– Une  formule  CNF  est  une  conjonc'on  de  clauses:  

•  F=(x1x2)(¬x1x3)(¬x2∨¬x1)  

– Une   clause   est   une   disjonc'on   de   variables   booléennes  (posi'fs  ou  néga'fs):  

•  x1∨x2,  ¬x1∨x3,  ¬x2∨¬x1    

•  Une  formule  CNF  est  sa'sfaisable  s'il  est  possible   d'associer   une   valeur   logique   à   chacune   de   ses   variables   booléennes   de   telle   manière   que   cefe   formule  soit  logiquement  vraie.  

(9)

Exemple  :    planifica'on  des  examens   encodée  en  SAT  (voir  le  poster)  

•  Etant  donné  4  examens  à  planifier  dans  3  créneaux  :    

•  A  =  Anglais,  B  =  Base  de  données,    

•  C  =  Langage  C,  S  =  Système  d’exploita'on.  

•  On  cherche  des  créneaux  horaires  où  les  contraintes  sont  :    

•  deux  examens  reliés  dans  graphe  (1)  ne  peuvent  se  dérouler  en   même  temps.    

(10)

Exemple  :    planifica'on  des  examens   encodée  en  SAT  (voir  le  poster)  

Poser  des  variables  booléennes  pour  représenter  si  un   examen  est  placé  dans  un  créneau,  e.g.    pour  A  :  

– a1=T,  A  est  placé  dans  créneau  1  ;  sinon  a1=F   – a2=T,  A  est  placé  dans  créneau  2  ;  sinon  a2=F   – a3=T,  A  est  placé  dans  créneau  3  ;  sinon  a3=F  

•  Etablir  des  clauses  pour  représenter  qu’un  examen  ne   peut   que   être   placé   dans   un   seul   créneau   en   respectant  des  contraintes,  e.g.  pour  A  :  

 (a1∨a2∨a3)  ^  (¬  a1∨¬  a2)  ^  (¬  a1∨¬  a3)  ^  (¬  a2∨¬  a3)          ^  (¬  a1∨¬  c1)  ^  (¬  a2∨¬  c2)  ^  (¬  a3∨¬  c3)    

         ^  (¬  a1∨¬s1)^  (¬  a2∨¬  s2  )  ^  (¬  a3∨¬  s3)  

(11)

Exemple  :    planifica'on  des  examens   encodée  en  SAT  (voir  le  poster)  

•  Obtenir   ainsi   une   formule   CNF.   Si   cefe   formule   est   sa'sfaisable,   e.g.   avec   a3=T,   b3=T,   c2=T,   s1=T,   et   les   autres   variables   booléennes   étant   égales   à   F,   la   planifica'on   de   ces   examens   est   résolue,   représentée   par   graphe   (2)  :    

•  créneau  1  =  rouge,  créneau  2  =  vert,  créneau  3  

=  violet    

(12)

Heuris'ques  

•  Une  heuris'que  est  un  algorithme  qui  fournit   rapidement  (en  temps  polynomial)  une  

solu'on  réalisable,  pas  nécessairement   op'male,  pour  un  problème  difficile.    

(13)

Heuris'ques  

•  Etymologie  

–  En  Grec,  «  heuriskêin  »  signifie  "trouver".    

•  Histoire  du  cri  "Eureka!"  d'Archimède  (287-­‐212  BC)  

–  Il  y  a  un  peu  plus  de  2000  ans,  le  roi  Hiéron  II  de  Syracuse  a  demandé  à   Archimède  de  déterminer  la  quan'té  d'argent  dans  la  couronne  

royale.  Bien  que  la  couronne  semblait  être  faite  de  l'or,  le  roi   soupçonnait  que  l'orfèvre  pourrait  en  fait  avoir  caché  un  grand   pourcentage  d'argent  dans  celle-­‐ci.  Archimède  était  perplexe:  

"Comment  pourrais-­‐je  savoir  le  poids  du  métal  dans  la  couronne?"  Un   jour,  lorsque  il  prenait  son  bain,  Archimède  a  remarqué  qu'il  entrait   dans  son  baignoire  rempli  d'eau  et  l'eau  y  débordait  et  tombait  par   terre  -­‐-­‐-­‐  et  la  réponse  l'a  frappé  immédiatement.  Il  a  réalisé  qu'une   couronne  en  or  pur  ferait  couler  moins  d'eau  que  une  couronne  en   argent  du  même  poids.  Il  a  couru  à  nu  dans  la  rue,  en  criant  

"eurêka!"  (une  forme  conjuguée  de  heuriskein,  qui  signifie  "J'ai   trouveé").    

(14)

Heuris'ques  

•  Recherche  locale  

– hfp://fr.wikipedia.org/wiki/Recherche_locale_

(op'misa'on)  

•  Algorithme  géné'ques  

– hfp://fr.wikipedia.org/wiki/Algorithme_géné'que  

•  Algorithme  fourmis  

– hfp://fr.wikipedia.org/wiki/

Algorithme_de_colonies_de_fourmis  

Références

Documents relatifs

39 Le Protecteur du citoyen constate une variabilité dans l’offre de services et les frais facturés par les commissions scolaires pour les cours d’été et la reprise des

C'est donc reparti pour quelques jeux, quelques défis et toujours une petite recette pour se régaler!. C'est parti, on

À noter que 8 librairies travaillent régulièrement avec plus de 6 bibliothèques pour des commandes hors marchés publics. la trésorerie des

avec utilisation de 8 532 colonies d’Abeilles, ont confirmé les résultats obtenus par l’Institut de Recherches apicoles et ont montré que l’installation de ruches à

[r]

◊ remarque : en traçant plusieurs courbes “iso-surfaciques”, on peut aussi préciser que la “mesure algébrique” du gradient est d'autant plus grande que ces

☞ remarque : de façon générale, la dérivée d'un vecteur unitaire par rapport à un angle de rotation est le produit vectoriel du vecteur unitaire de l'axe de

Joan MAGNIER, enseignantE de mathématiques au collège Anne Frank (Sauzé-Vaussais) page 5.. As-tu