Catch multiple pieces of cheese… more efficiently

Project – Session 5

  • Heuristics
  • Greedy algorithms
  • Approximate solutions

Heuristics

Need for a trade-off

Qu’est-ce qu’une bonne heuristique ?

  • Fournir un gain
  • Complexité limitée

Greedy algorithms

Principle

  • Global optimization – Trouver le chemin minimum qui passe par tous les sommets
  • Greedy approximation – Trouver une série de sous-chemins minimum (le suivant, les 2 suivants, etc.)

Approximate solutions

How to characterize them

Approximate solutions

Important aspects

Vitesse et exactitude

  • Si trouver une solution approximative prend autant de temps que trouver la solution exacte, eh bien…
  • Comparer l’estimation avec des solutions connues ou des petites instances

Recap of the session

Main elements to remember

  • Parfois, les problèmes sont trop difficiles à résoudre

  • Des solutions approximatives peuvent être trouvées en moins de temps en alternative

  • Les approches gloutonnes peuvent fournir de bonnes solutions approximatives

  • Les heuristiques codent une intuition, par exemple, ce qu’il faut minimiser dans un algorithme glouton

  • Une bonne heuristique doit fournir un gain et avoir une complexité limitée

Recap of the session

What’s next?

Activité pratique (~2h30)

Attraper plusieurs morceaux de fromage… plus rapidement

  • Programmer un algorithme glouton
  • Tester plusieurs heuristiques

Après la session

  • Revoir les articles de la session
  • Vérifier votre compréhension avec le quiz
  • Compléter l’activité pratique
  • Consulter la section “Avant le cours” de la prochaine session

Évaluation

  • Quiz évalué pour commencer la prochaine session !
  • Livrable pour la session 5 (voir la page de la session pour les détails)