Livre scolaire expliquant la programmation linéaire

publicité
Modélisation de rations par
programmation linéaire :
principe et exemples d’application en
Nutrition Humaine
Nicole Darmon
Unité Mixte de Recherches en Nutrition Humaine Inserm/Inra
Faculté de Médecine de la Timone, Marseille
[email protected]
La programmation linéaire (PL)
Résoudre plusieurs inéquations à plusieurs inconnues.
Plus spécifiquement : optimiser une fonction linéaire
tout en respectant un ensemble de contraintes linéaires.
La fonction optimisée est appelée fonction objectif :
y = ax1 + bx2+ cx3 …
optimiser y, c'est trouver les valeurs des variables xi qui permettent
d'atteindre la valeur de y la plus faible (minimisation) ou la plus élevée
(maximisation) ...
tout en respectant des contraintes sur ces variables, du type :
x1 > A
x2 < B ...
ou
αx1 + βx2 + γx3 ... < C …
La programmation linéaire en nutrition
™ Partant d’une liste d’aliments (ou ingrédients)
(de composition nutritionnelle connue et autres caractéristiques importantes)
™ Sélectionner une combinaison d’aliments sous :
- contraintes nutritionnelles
(basées sur des recommandations officielles)
- contraintes d’acceptabilité
(basées sur des apports alimentaires observés)
=>
Ration journalière, menu, recette, mélange d’aliments
…
En nutrition : les variables xi sont des quantités d'aliments
Optimiser y = ax1 + bx2+ cx3 … , c'est :
=> trouver LA combinaison d'aliments xi
qui permet d'atteindre la valeur optimale de y, par ex. prix mini ou kcal mini...
=> tout en respectant l'ensemble des contraintes imposées
Le panier, ou la ration, optimisée doit respecter
=> des contraintes sur les aliments : x1 > A x2 < B
x1 + x2 < C
qui vont assurer le réalisme et le respect des habitudes alimentaires
αx1 + bx2 + cx3 ... > D
αx1 + βx2 + γx3 ... < D
qui vont assurer la qualité nutritionnelle
=> des contraintes sur les nutriments :
+ autres contraintes sur le prix, l'énergie, le poids, etc…
¾ Consiste à résoudre un système d’inéquations
multiples à plusieurs inconnues dont le nombre
augmente rapidement avec le nombre d’aliments
disponibles et avec le nombre de contraintes prises en
compte
¾ En pratique, solution impossible à trouver sans l’aide
d’un ordinateur
¾ Actuellement, très facile à utiliser car une fonction de
programmation linéaire (fonction solveur) est
disponible sur des logiciels usuels tels que Excel
Concrètement…
1. DONNEES = variables
¾
¾
¾
Liste d'aliments
Composition nutritionnelle, prix
Données sur la consommation de ces aliments
2. EXIGENCES = contraintes
¾ Sur les nutriments :
- Recommandations de type ANC, BNM
¾ Sur les aliments :
- Recommandations basées sur les aliments
- Habitudes alimentaires individuelles ou collectives
(quantités max, taille des portions, équilibre entre groupes
d'aliments…)
¾ Autres :
- Prix, poids, énergie …
3. QUESTION POSEE = fonction objectif
Prix min ? Poids min ? Energie min ? Ecart min avec un
panier existant ou avec "habitudes" identifiées ?
4. OPTIMISATION
sélection des aliments à
introduire dans le panier
optimisé, et de leurs
poids :
Concrètement…
1. DONNEES = variables
¾
¾
¾
Liste d'aliments
Composition nutritionnelle, prix
Données sur la consommation de ces aliments
Parfois…
4. L’optimisation est
impossible
2. EXIGENCES = contraintes
¾ Sur les nutriments :
- Recommandations de type ANC, BNM
¾ Sur les aliments :
- Recommandations basées sur les aliments
- Habitudes alimentaires individuelles ou collectives
(quantités max, taille des portions, équilibre entre groupes
d'aliments…)
¾ Autres :
- Prix, poids, énergie …
3. QUESTION POSEE = fonction objectif
Prix min ? Poids min ? Energie min ? Ecart min avec un
panier existant ou avec "habitudes" identifiées ?
Pas de solution à
cause de:
¾ Incompatibilité
mathématique entre
contraintes
OU
¾ Les aliments
disponibles ne
permettent pas le respect
de certaines contraintes
Exemples d'applications
de la PL en Nutrition Humaine
Exemple 1. Formulation d’aliments
Identification de mélanges d'huiles végétales nutritionnellement
adéquats
Exemple 2. Validation, test, élaboration de
recommandations nutritionnelles
Faisabilité et coût des ANC et implication en termes de choix
alimentaires
Exemple 3. Outil de recherche en nutrition
Validation du concept de profil nutritionnel par PL: application au
système SAIN,LIM
Exemple 1. Identification de mélanges d'huiles végétales
nutritionnellement adéquats (Darmon et al, J Hum Nutr Diet, 2006)
⇒ Données
- Liste des huiles végétales vendues dans le commerce
- Composition nutritionnelle
- Prix
=> Contraintes de "palatabilité"
Quantité totale de mélange par jour < 33 g
=> Contraintes nutritionnelles
Standard nutritionnel attendu pour un mélange d'huiles :
- apport journalier désiré en ac. α-linolénique : ALA > 1,6 g
- apport journalier désiré en vitamine E > 9 mg
- ratio ac.linoléique/ac. α-linolénique : LA/ALA < 4
=> Optimisation (question, fonction objectif)
- Par exemple :
Quel est le mélange d'huiles qui respecte toutes les contraintes au plus bas prix ?
Quel est le mélange ...................le plus riche en huile d'olive ?
Quel est le mélange ...................le plus riche en vitamine E ?
=> Résultats
Différents mélanges d'huiles selon la fonction objectif et les contraintes retenues
Modèle simplifié avec 2 variables (i.e. 2 huiles) seulement
Question
Est-il possible de faire un mélange colza/tournesol qui respecte
toutes les contraintes, et si oui, quel est le mélange le moins cher ?
Système de 5 équations à 2 inconnues : Xcolza et Xtournesol
variable Xc = quantité d'huile de colza dans le mélange optimisé
variable Xt = quantité d'huile de tournesol dans le mélange optimisé
Contraintes
1. Xc + Xt < 33 g
2. [ALA c] Xc + [ALA t] Xt > 1,6 g (avec [ALA c] = g d'ALA dans 1g d'huile de colza)
3. [VitE c] Xc + [VitE t] Xt > 9 mg (avec [VitE c] = mg de Vit E dans 1g d'huile de colza)
4. ([LA c] Xc + [LA t] Xt) / ([ALA c] Xc + [ALA t] Xt) < 4
qu'on doit linéariser en : ([LA c] Xc + [LA t] Xt) < 4 * ([ALA c] Xc + [ALA t] Xt)
Optimisation
5. Minimiser Y = [Prix c] Xc
+ [Prix t] Xt (avec [Prix c] = prix d'1g d'huile de colza)
Q < 33 g de mélange
ALA > 1,6 g
Vit E > 9 mg
LA < 4 ALA
Illustration graphique
(possible car 2 variables seulement)
33
25
gd
em
é la
g
Xt = g huile tournesol
Q=
30
ALA = 1,6
35
ng
e
20
Domaine des
solutions possibles
15
10
VitE =
5
0
LA = 4 AL
0
5
A
9 mg
La moins chère
10
15
20
25
30
35
Xc = g huile colza
¾ Oui, c'est possible, et le mélange le moins cher = 80% colza + 20% tournesol
¾ Parfois pas de solution, par ex aucun mélange colza/olive ne peut respecter ces contraintes
¾ Pour plus de 2 variables, il faut un logiciel : solver excel, frontline system, proc OR SAS...
Exemple 2. Faisabilité et coût des ANC et implication en
termes de choix alimentaires
¾
Données : table de composition des aliments, prix moyen des aliments,
consommation de ces aliments dans la population française
¾
Contraintes nutritionnelles = respect de tous les ANC (et/ou BNM)
- apport énergétique = apports observés
- équilibre PLG
- teneurs maximales en AGS, sel et sucres simples
- teneurs minimales en fibres, ac. gras essentiels, rapport maximal w6/w3
- chaque micronutriment > 1 ANC
- chaque micronutriment < limite de sécurité
¾
Contraintes de palatabilité = respect des habitudes alimentaires (ind. ou pop.)
Pour aboutir à des rations réalistes et socialement acceptables :
- limiter la taille des portions
- exclure certains aliments (peu ou pas consommés par un individu ou un groupe)
- garantir une contribution réaliste de chaque groupe d'aliments...
¾
Optimisation (question, fonction objectif)
- prix min ? calories min ?
- écart min à une ration existante (ration moyenne en population ou ration individuelle) ?
Faisabilité, coût et implication des ANC
(Darmon, Briend 2001)
¾ Faisabilité des ANC
Les ANC sont compatibles entre eux
C'est possible de construire une ration qui respecte l'ensemble de ces
recommandations (ce n'était pas le cas avec les ANC de 1992)
¾ Coût des ANC
Le coût minimal pour respecter les ANC (adulte) est de 3,5 €/j.
Le coût varie selon le niveau d’exigence nutritionnelle et selon le niveau de
respect des habitudes « moyennes »
¾ Implications des ANC en termes de choix alimentaires
Les ANC sont en accord avec les conseils diététiques habituels
Par rapport aux consommations des français, les rations qui respectent tous les
ANC contiennent plus de produits végétaux (non raffinés) et moins de produits
animaux (sauf poisson).
Respect des ANC avec un petit budget
La ration de l'ordinateur, 1800 Kcal ANC femme 3,5 €/j
Poids (g/sem)
Viandes
200
Dinde/Poulet
150
Jambon
Foie ou pâté de foie 50
Œufs
300
Abats
Œufs
Poissons-fruits mer Poisson gras cons.
Poids (g/sem)
Légumes
500
Carottes
Légumes appertisés 740
Légumes surgelés
500
Fruits
Agrumes
Fruits de saison
Jus de fruits 100%
Fruits à coques
Fruits secs
60
200
Poisson surgelé
Moules/fruits mer surg. 60
Produits laitiers
Féculents
Lait
Yaourt
Fromage
700
875
100
Légumes secs (pds cru)
Pain complet
Pommes de terre
Biscottes
Pâtes/riz (pds cru)
185
420
700
200
400
700
100
700
70
70
Matières Grasses Huile colza
Huile tournesol
Huile olive
Beurre
100
20
40
40
Produits sucrés
Chocolat
Biscuits
Confiture sucre
100
200
185
Végétaux de
b
rapport Q/Pon
Aliments
”
“atypiques Eau du
t
robine
Lait &
yaourts
Matières grasse
s
végétales
Dia N. Darmon, INSERM
Respect des ANC dans un colis d’aide alimentaire
Optimisation à partir de dons existants (Rambeloson, Darmon PHN 2008)
Matières Grasses ajoutées
dont au moins 66% de MG végétales
Viandes/Poisson/Oeuf
Produits
Sucrés/salés
Fruits & Légumes
dont au moins 50% de fruits
< 2,5%
dont au moins 25% de poisson
< 2 > 12%
, 5%
> 33%
Lait et Produits laitiers
< 25%
< 25%
dont pas plus de 10% de fromage
Féculents
dont au moins 66% de
féculents non raffinés
¾ Elaboration de recommandations pour l’aide alimentaire
Respect des ANC (ANC/BNM) à l’échelon individuel
(Maillot, 2009a et b, in press)
Rations
individuelles
observées
Fruits
Légumes
Observé
Optimisé
Féculents
non raffinés
Modification de
chaque ration
pour respecter
tous les ANC
Céréales
raffinées
Viandes
rouges
Volaille
Alimentation
optimisée et
personnalisée
Poisson
(médianes et quartiles)
¾ Grande variabilité des comportements alimentaires
=> multiples façons d’atteindre l’équilibre nutritionnel
g/j.
Respect des ANC (ANC/BNM) à l’échelon individuel
Oeufs
Plats
préparés
Observé
Optimisé
Produits
laitiers
Fromage
Snacks
salés/sucrés
Mat. Gr.
Végétales
Mat. Gr.
animales
(médianes et quartiles)
g/j.
¾ Grande variabilité des comportements alimentaires
=> multiples façons d’atteindre l’équilibre nutritionnel
Vers des recommandations personnalisées ?
Fruits
Légumes
Observé
Optimisé
Féculents
non raffinés
Céréales
raff
Viandes
rouges
Volaille
Poisson
(médianes et quartiles)
g/j.
Multiples façons d’atteindre l’équilibre nutritionnel
mais quelques conseils simples sont valables pour tout le monde
Exemple 3. Validation du concept de profil nutritionnel
par PL: application au système SAIN,LIM
(Darmon, et al, AJCN 2009)
QUESTION : est-il possible de respecter (ou ne pas respecter) les
recommandations nutritionnelles avec uniquement des aliments
de bon profil (ou de mauvais profil) nutritionnel ?
¾
Données : table de composition des aliments, profil nutritionnel de ces aliments
¾
Contraintes nutritionnelles :
respect (ou non respect) de tous les ANC
¾
Contraintes de palatabilité : respect des habitudes (niveau d’exigence
intermédiaire pour laisser plus de souplesse au modèle)
¾
Fonction objectif : calories min et max (pour connaître la fourchette d’énergie
possible)
Profils nutritionnels : estimation de la qualité
nutritionnelle globale de chaque aliment
Le système SAIN,LIM (rapport AFSSA, 2008):
9 les aliments ont des qualités et des défauts nutritionnels
9 c’est l’équilibre entre qualités et défauts qui détermine
leur qualité nutritionnelle globale
SAIN : Score d’Adéquation aux recommandations Nutritionnelles
™ aspects favorables de l'aliment (nutriments qualifiants), pour 100 kcal
=> % moyen d’adéquation avec les apports nutritionnels conseillés
LIM : Score des composés à Limiter sur le plan nutritionnel
™ aspects défavorables de l’aliment (Na, AGS, GSajoutés), pour 100 g
=> % d’excès moyen par rapport aux valeurs maximales recommandées
Calcul du SAIN et du LIM de chaque aliment et
répartition en 4 classes
10 0
SAIN
Fort SAIN, Faible LIM :
Fort SAIN, Fort LIM :
Recommandé pour la santé
Recommandé de temps en
temps ou en petite quantité
Faible SAIN, Faible LIM :
Faible SAIN, Fort LIM :
Neutres, doivent être complétés par
des aliments de fort SAIN
A limiter
10
5
1
0,1
1, 0
LIM
LIM
7
10 , 0
10 0 , 0
Compatibilité avec l’équilibre nutritionnel global ?
SAIN
En sélectionnant (par PL) uniquement
des aliments de la classe 1 :
1. C’est possible de respecter toutes les
recommandations nutritionnelles
2. C’est impossible d’avoir une alimentation
totalement déséquilibrée
LIM
Compatibilité avec l’équilibre nutritionnel global ?
SAIN
En sélectionnant (par PL) uniquement
des aliments de la classe 4 :
1. C’est impossible de respecter toutes les
recommandations nutritionnelles
2. C’est possible d’avoir une alimentation totalement
déséquilibrée
LIM
Système SAIN;LIM : pour identifier facilement les aliments
qui favorisent (ou entravent) l’équilibre nutritionnel global
SAIN
LIM
¾ Pour augmenter les chances d’atteindre l’équilibre nutritionnel global,
il faut consommer des aliments qui ont plus de qualités que de défauts
nutritionnels : favoriser classe 1, limiter classe 4
Conclusion
La programmation linéaire est un outil puissant pour
résoudre de façon rigoureuse de nombreuses questions
de nutrition humaine :
- analyse de situations alimentaires particulières et
proposition de solutions adaptées aux contraintes
-
développement de nouveaux aliments
- recherche sur les déterminants des choix alimentaires
- développement d'approches diététiques nouvelles,
quantitatives et personnalisées
- ...
Cahiers de Nutrition & de Diététique, 2008; 43(6), 303-12.
=> cet article donne un exemple pratique de la procédure à
suivre dans Excel, avec impression écran de chaque étape
AUTRES EXEMPLES D’APPLICATION DE LA PL
¾
Optimiser l'alimentation de complément à l'allaitement maternel
(Briend, Darmon, Ferguson J.Pediatr.Gastroenterol Nutr, 2003 )
¾
Modéliser l'impact des contraintes économiques sur les choix alimentaires et
la qualité nutritionnelle (Darmon, Briend, Ferguson, J Nutr, 2002 et Appetite 2003)
¾
Déterminer s’il est possible de couvrir les besoins nutritionnels d'une
population donnée avec les aliments disponibles localement (Darmon, Briend,
Ferguson, AJCN, 2002)
¾
Tester l’intérêt, nutritionnel et économique, dans un contexte alimentaire
donné, de nouveaux aliments, d’aliments enrichis ou de suppléments
nutritionnels (Briend, Darmon, Ferguson, 2001 Food Nutr Bull)
¾
Valider des recommandations basées sur les (groupes d’)aliments en vérifiant
leur compatibilité avec les recommandations basées sur les nutriments
(MyPyramid vs RDA, K. Tucker et al, J Nutr, 2006)
¾
Développer de façon rigoureuse des recommandations basées sur les aliments
(Alimentation infantile pays pauvres: Ferguson, Darmon et al, J Nutr 2004 et 2006;
Propositions pour la restauration collective en France : GEMRCN 2006)
…
Téléchargement