IUT Nice Côte d'Azur Mohamed Hadj Djilani
Département Informatique / LP SIL Maître de stage : Fabrice Peix
41 bd Napoléon III Tuteur IUT : Léo Donati
06206 Nice cedex 3
RAPPORT DE S TAGE
Licence P rofessionnelle S ystèmes In formatiques et L ogiciels
spécialité Im agerie Nu mérique et In formatique
Stage effectué à l'INRIA Sophia Antipolis, équipeprojet MASCOTTE
mai août 2008IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
REMERCIEMENTS
Je t iens à r emercier t out l e pe rsonnel de MA SCOTTE, pour s on a ccueil, s a s ympathie, s a
disponibilité e t s es c onseils.
Et t out pa rticulièrement j e r emercie M. Mi chel S yska, e nseignant e n L P S IL e t m embre de
MASCOTTE, pour m 'avoir pe rmis d' effectuer c e s tage, a insi que M. F abrice P eix, m on t uteur,
ingénieur à MA SCOTTE, pour s on e ncadrement, s es e xplications e t l a c onfiance qu' il m 'a a ccordée
tout a u l ong du s tage.
LP SIL 20072008 page 2/54IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
RÉSUMÉ
J'ai e ffectué m on s tage de fi n de for mation L P S IL a u s ein de l 'équipepr ojet de r echerche
MASCOTTE à l 'INRIA S ophia A ntipolis. L 'équipe MA SCOTTE t ravaille s ur l a c onception de s
réseaux de t élécommunications. Ma pos ition a u s ein de c ette s tructure était c elle d' un t echnicien.
Tout a u l ong du s tage, j 'ai t ravaillé s ur Ma scOpt, un de s l ogiciels dé veloppés pa r MA SCOTTE.
MascOpt e st ba siquement un e nsemble d' outils dé veloppés e n J ava e t qui t raitent de s pr oblèmes
d'optimisation r éseau.
En br ef, m on s tage c onsistait da ns un pr emier t emps à i ntégrer un c omposant l ogiciel
supplémentaire à Ma scOpt. Ce c omposant e st une i nterface pour l 'utilisation vi a Ma scOpt d' une
librairie de s olver de pr ogrammes l inéaires (CL P/CBC). P our c ela j 'ai t ravaillé a vec di fférents out ils
dont l a l ibrairie CL P/CBC pour l a pr ogrammation l inéaire e t J NI pour l 'implémentation na tive de
classes J ava.
Dans un de uxième t emps j 'ai t ravaillé a vec l 'environnement Ma ven. C' est un out il de ge stion, de
distribution, de doc umentation e t d' installation de pr ojets de m anière e fficace, c laire, r éutilisable e t
extensible. Il s 'agissait de c onvertir e n pr ojet Ma ven l e c omposant dé veloppé dur ant l a pr emière
partie du s tage e t d' envisager c omment pr océder pour étendre c ette c onversion a u l ogiciel Ma scOpt.
ABSTRACT
I ha ve done m y e nd L P S IL i nternship w ithin t he MA SCOTTE t eampr oject, a t IN RIA
Sophia A ntipolis. T he MA SCOTTE t eam w orks on t elecommunication ne twork de sign. My pos t i n
this or ganization w as t echnician.
All a long t he i nternship pe riod, I w orked on Ma scOpt, w hich i s one of t he s oftwares de veloped by
MASCOTTE. B asically, Ma scOpt i s a s et of J ava w ritten t ools c oncerning ne twork opt imization
problems.
In br ief m y t raining pe riod fi rst de al w ith a n i ntegration of a ne w s oftware c omponent i n Ma scOpt.
This c omponent i s a n i nterface for us ing a l inear pr ogram s olver (CL P/CBC) vi a Ma scOpt. T o do
that I w orked w ith s everal t ools, bot h of w hich w ere CL P/CBC l ibrary for l inear pr ogramming a nd
JNI for na tive i mplementation of J ava c lasses.
Secondly, I w orked on Ma ven. T his i s a t ool for m anagement, r eleasing, doc umentation a nd
installation of pr ojects i n a e fficient, c lear, r eusable a nd e xtensible w ay. T he m atter w as t o c onvert
the s oftware c omponent I ha d de velopped be fore i n a Ma ven for mat pr oject a nd t o c onsider t o do
the s ame t hing w ith Ma scOpt s oftware.
LP SIL 20072008 page 3/54IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
SOMMAIRE
INTRODUCTION..................................................................................................................5
I PRÉSENTATION DE LA STRUCTURE D'ACCUEIL : MASCOTTE.................................6
1. M ASCOTTE e n p lusieurs p oints............................................................................................................6
2. L' organigramme d e M ASCOTTE..........................................................................................................8
3. Le s c ontrats e t ac tions d e r echerche.......................................................................................................9
II PREMIÈRE PARTIE DU STAGE : intégrer un solver CLP/CBC à MascOpt...............13
1. P résentation d e M ascOpt......................................................................................................................14
1.1 Présentation générale...............................................................................................................................14
1.2 Les programmes linéaires........................................................................................................................14
1.3 Le paquetage Java mascoptLib.lpSolver.................................................................................................15
2. P résentation d es ou tils u tilisés..............................................................................................................17
2.1 Langages C et C++..................................................................................................................................17
2.2 Langage Java...........................................................................................................................................18
2.3 EDI Eclipse..............................................................................................................................................19
2.4 Java Native Interface...............................................................................................................................20
2.4.1 P résentation..............................................................................................................................................20
2.4.2 M ise e n oe uvre..........................................................................................................................................21
2.4.3 P ratique de J NI e n dé tails.........................................................................................................................22
a) P rérequis pour ut iliser J NI.......................................................................................................................22
b) Q uelques ut ilisations de f onctions de l 'API J NI......................................................................................25
3. P résentation d es l ibrairies/solvers d e C OINOR................................................................................27
3.1 Librairie CLP...........................................................................................................................................28
3.2 Librairie CBC..........................................................................................................................................29
4. A nalyse e t réalisation.............................................................................................................................31
4.1 Solution à mettre en oeuvre.....................................................................................................................31
4.2 Interface LinearProgram et classe AbstractLinearProgram.....................................................................32
4.3 Classes et méthodes CLP/CBC à utiliser.................................................................................................35
4.4 Précisions diverses sur le développement................................................................................................36
III DEUXIÈME PARTIE DU STAGE : mise en place de projets MAVEN........................39
1. P résentation d e M aven..........................................................................................................................40
1.1 Créer rapidement un projet......................................................................................................................40
1.2 Standard Directory Layout (SDL)...........................................................................................................40
1.3 Project Object Model (POM)..................................................................................................................42
1.4 Phases de construction.............................................................................................................................44
1.5 Générer un site de documentation...........................................................................................................45
2. « Maveniser » l e p rojet d e s olver C LP/CBC d e M ascOpt..................................................................46
2.1 Objectifs précis........................................................................................................................................46
2.2 SDL du projet..........................................................................................................................................46
2.3 Profils et compilation du module JNI......................................................................................................47
2.4 Données diverses sur l'utilisation............................................................................................................50
LP SIL 20072008 page 4/54IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
3. A pproche p our « maveniser » M ascOpt..............................................................................................51
3.1 Ant pour construire MascOpt..................................................................................................................51
3.2 Passage de Ant à Maven..........................................................................................................................51
CONCLUSION...................................................................................................................52
ANNEXES et BIBLIOGRAPHIE........................................................................................53
INTRODUCTION
Mon s ujet de s tage étant d' intégrer un s olver CL P/CBC de pr ogrammes l inéaires a u l ogiciel
MascOpt, a insi que de « maveniser » l e pr ojet r ésultant, m es obj ectifs a u dé but du s tage étaient l es
suivants :
● Me fa miliariser a vec l es nouve aux out ils e t dom aines de t ravail : l es l ibrairies CL P, CB C,
MascOpt e t l 'API J NI né cessaires à l 'aboutissement du pr ojet qui m 'a été c onfié. Ma is a ussi
Maven dont j e voul ais pr ofiter pour a cquérir de nouve lles c onnaissances e n m atière de gé nie
logiciel.
● Revoir e t c onfirmer l es c onnaissances e t c ompétences a cquises, not amment e n L P S IL ;
avec l 'utilisation de l 'environnement de dé veloppement E clipse, de s l angages de
programmation J ava, C e t C+ +. R evoir e t s i pos sible a pprofondir m es c onnaissances
concernant l a pr ogrammation l inéaire que nous a vions étudiée e n pr emier s emestre de L P
SIL.
Cela étant, j e voul ais également e n a pprendre un pe u pl us s ur MA SCOTTE, m e fa ire une i dée de s
activités qui y s ont m enées. E t e nfin pr ofiter d' une e xpérience da ns un m ilieu de r echerche, qui de
prime a bord m e pa raissait i ntéressant, c e qui s 'est d' ailleurs a véré c omme t el.
C'est pour quoi da ns c e r apport j e c ommencerai pa r pr ésenter MA SCOTTE, s on or ganisation, s es
activités.
J'aborderai e nsuite l es éléments né cessaires à l a c ompréhension de l a pr emière pa rtie de m on s tage,
à s avoir l 'intégration du s olver CL P/CBC à Ma scOpt, a insi que l a m ise e n oe uvre c oncrète de c e
travail, é tape pa r étape.
Enfin, da ns l a de rnière pa rtie j e pr ésenterai Ma ven, e t l e t ravail que j 'ai e u à fa ire e n s econde pa rtie
de s tage a vec c et out il ; pr incipalement c onvertir a u for mat Ma ven l e pr ojet que j 'avais dé veloppé
en pr emière pa rtie.
LP SIL 20072008 page 5/54IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
I PRÉSENTATION DE LA STRUCTURE D'ACCUEIL : MASCOTTE
1. M ASCOTTE e n p lusieurs p oints
● MASCOTTE e st l 'acronyme de Méthodes A lgorithmiques, S imulation, Com binatoire e t
OpTimisation de s T Élécommunications.
● MASCOTTE e st un pr ojet de r echerche qui a pour obj et l a c onception de s r éseaux de
télécommunications. L e but de c e pr ojet e st not amment d' établir de s m éthodes e t de s out ils
algorithmiques, à l a foi s t héoriques e t a ppliqués, à t ravers l es a xes de r echerche s uivants :
■ Algorithmique, m athématiques di scrètes e t opt imisation c ombinatoire.
■ Algorithmique de s c ommunications.
1 2
■ Dimensionnement de r éseaux (opt iques W DM , MP LS , e mbarqués, r adio W iFi
WiMax e t s atellites).
■ Simulation de s ystèmes c omplexes.
■ Protection e t pa rtage de r essources.
■ Réseaux l ogiques ( overlay c omputing).
● MASCOTTE e st un pa rtenariat IN RIAI3S :
L’Institut N ational de R echerche e n Infor matique e t e n A utomatique (IN RIA) de S ophia
Antipolis – Mé ditérranée, e st un a cteur m ajeur du r éseau de r echerche e t du c ampus
STIC du ba ssin m éditérranéen. E n e ffet, s es s ites s ont l ocalisés da ns l es vi lles de
Marseille, Mont pellier e t da ns l a c ommunauté d' agglomération de S ophia A ntipolis, qui
sont pa rmi l es pl us gr andes t echnopoles e uropéennes.
L'INRIA de S ophia A ntipolis – Mé ditérranée c ompte à pe u pr ès 400 s cientifiques, une
trentaine d' équipes de r echerche, de nom breux pa rtenariats r égionaux, i ndustriels e t
internationaux. Il e st not amment à l 'origine de l a c réation de 15 s tartup i ssues de
travaux de r echerche.
1 WDM : W ave D ivision M ultiplexing ( Multipexage pa r pa r l ongueur d'onde s).
2 MPLS : M ultiProtocol L abel S witching.
LP SIL 20072008 page 6/54IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
Le l aboratoire Infor matique S ignaux e t S ystèmes S ophiaA ntipolis (I3S ), e st une U nité
Mixte de R echerche (U MR) e ntre l ’Université de N iceS ophia A ntipolis (U NSA) e t l e
Centre N ational de l a R echerche S cientifique (CN RS).
● MASCOTTE pr end pl einement pl ace da ns l es t hématiques du pôl e m ondial de c ompétitivité
« Solutions c ommunicantes s écurisées », dont l 'INRIA e st m embre. A vec e nviron 330
acteurs da ns l 'industrie, l es s ervices, e t l a r echerche, c e pôl e s itué e n P ACA, vi se à c réer une
synergie de s di fférents dom aines de c ompétences e n m icroélectronique, l ogiciel e t
télécommunications. A vec c omme e njeux pour l a r égion P ACA, de de venir l eader du
marché m ondial de s s olutions c ommunicantes, qui s e dé veloppe t rès r apidement e t
d'apparaître c omme une r égion à for t pot entiel t echnologique pour a ttirer l es l aboratoires du
monde e ntier.
● MASCOTTE c 'est a ussi une c ollaboration a vec l 'école i nformatique de S imon F raser
University de V ancouver, a vec de nom breux é changes de puis l es a nnées 90. V oici c omment
l'équipe MA SCOTTE dé crit c ette c ollaboration s ur s on s ite w eb :
La c ollaboration pas sée a e u pour obj ectif pr incipal d' appliquer une e xpertise c ommune e n
mathématiques di scrètes, e t e n par ticulier e n t héorie de s gr aphes, aux pr oblèmes de
conception de r éseaux (pr incipes r eliant l e de gré d' un r éseau, s on di amètre e t s on nom bre
de s ommets, pr opriétés s tructurelles e t aux que stions l iées à l a di ffusion de l 'information
dans l es r éseaux. Sur l e pl an t héorique, e lle a c ontribué a c omprendre l es phé nomènes de
diffusion e t d' échange t otal. Sur un pl an pl us pr atique, e lle a m is e n pe rspective
l'importance de s hy pothèses de m odélisation (c ommutation de paque ts, r outage wor mhole,
réseaux par bus av ec c omme dom aine d' applications l e par allélisme). L es de ux pr ojets ont à
peu pr ès e n m ême t emps r éorienté l eurs t hématiques v ers l a m odélisation e t l a r ésolution
des pr oblèmes i ssus de s r éseaux de t élécommunications e t i nvesti pl us dans l es r elations
industrielles. A u s ein de l 'école d' informatique de SF U a é té c rée e n s eptembre 2001 un
nouveau gr oupe (pr ojet) qui t ravaille de f ait s ur l es m êmes s ujets que M ASCOTTE. Si
durant c es de rnières anné es M ASCOTTE a e u t endance à c ollaborer pl us av ec de s
partenaires i ndustriels e t de s par tenaires e uropéens, l 'équipe de SF U r este par l a qual ité de
ses c hercheurs e t l es t hématiques dé veloppées c omme l a pl us v oisine de nous e t un e xcellent
partenaire pour une équipe as sociée. P lusieurs c hercheurs de M ASCOTTE (e n par ticulier
ceux r ecrutés r écemment) s ouhaitent al ler r égulièrement à V ancouver e t de m anière
réciproque pl usieurs c hercheurs c anadiens s ouhaitent pr ofiter d' années s abbatiques pour
venir i ci.
LP SIL 20072008 page 7/54Sandra D evauchelle Patricia L achaume
INRIA
CNRS
IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
2. L 'organigramme d e M ASCOTTE
CHERCHEURS P ERMANENTS
David C oudertJean Claude B ermond
Vicechef de pr ojetChef de pr ojet
INRIACNRS
Olivier D alle Jérome G altier Frédéric H avet
Orange L abs CNRSUNSA
Alexandre L augier Joanna M oulierac Stéphane P érennes
Orange L abs CNRSUNSA
ASSISTANTES
Hervé R ivano Frédéric G iroireMichel S yska
CNRS CNRSUNSA
POSTDOCTORANTS INGÉNIEUR
Fabrice P eixLuc H ogieDimitrios M ichail
ÉTUDIANTS D OCTORANTS
Cristina G omesMarie A sté Nathann C ohen
Florian H uc Juan Carlos M aureira Dorian M azauric
Christelle M olle Julian M onteiro Napoleao N epomuceno
Patricio R eyes Judicael R ibault Ignasi S au Valls
LP SIL 20072008 page 8/54IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
3. L es c ontrats e t ac tions d e r echerche
Pour pl us de pr écisions s ur l es a ctivités de MA SCOTTE, l es c ontrats e n vi gueur s ont pr ésentés c i
dessous. Il s 'agit d' indiquer e n br ef, l a t hématique de r echerche du c ontrat e t l es éventuels
participants a utres que MA SCOTTE, e tc.
● Action Col laborative de R echerche (A RC) Ca pacité de R éseaux r adio MA illés (CA RMA) :
Cette A RC a été i nitiée dé but 2007, a vec un budge t de 100 000 e uros pour de ux a ns. E lle
3associe MA SCOTTE, a ux é quipes de r echerche A RES (IN SA L yon e t IN RIA R hône
Alpes), D rakkar (L aboratoire Infor matique de G renoble) e t P OPS (IN RIA L ille). A u s ein de
MASCOTTE, c e s ont D avid Coude rt e t H ervé R ivano qui pa rticipent à c ette A RC.
Cette A RC s 'intéresse à l a c apacité de s r éseaux m aillés. S ur ba se t héorique, e lle vi se da ns un
premier t emps à dé velopper de s out ils pour l a m odélisation e t l 'évaluation de l a c apacité
d'un r éseau m aillé. D ans un s econd t emps, e lle ve ut opt imiser c ette c apacité pa r de s
protocoles crossl ayer (t ravaillant s ur c ouches r éseau e t phys ique). E nfin, va lider c es
protocoles pa r s imulation e t e xpérimentation.
4
● IS T/FET A lgorithmic P rinciples for B uilding E fficient O verlay Com puters (A EOLUS) :
AEOLUS e st un pr ojet e uropéen dé buté e n 2005. D es uni versités de nom breux pa ys
européens y pa rticipent ; A llemagne, Chypr e, B elgique, E spagne, G rèce, It alie, S uisse,
République T chèque, a insi que l 'institut d' informatique Ma xP lanck e n A llemagne e t l a
société e stonienne de r echerche Cybe rnetica. L es m embres MA SCOTTE a ctifs s ur c e pr ojet
sont O livier D alle e t H ervé R ivano.
Deux é léments pi vots s ont étudiés da ns c e pr ojet. L e global computer qui e st e n fa it un
groupe de s erveurs, four nissant de s s ervices s ous for me de pui ssance de c alcul, d' espace
disque, e t de r essources i nformationnelles. E t l 'overlay c omputer qui e st une s orte de
machine vi rtuelle pe rmettant l 'accès a ux r essources du global c omputer.
Ce pr ojet c omporte une pa rtie t héorique qui c onsiste à étudier l es pr oblèmes e t a lgorithmes
pour overlay c omputers e xécutés s ur global c omputers, à c oncevoir de s out ils de
programmation pour overlay c omputers, a vec de s a lgorithmes fi ables, a insi que de s
méthodes pe rmettant l es c ommunications de t ypes s ans fi l e t m obile pour l es overlay
computers.
La pa rtie pr atique vi se à dé velopper un pr ototype d' overlay c omputer i mplémentant l es
fonctionnalités dé finies à l 'issue de l a pa rtie t héorique.
3 INSA : I nstitut N ational de s S ciences A ppliquées.
4 IST/FET : I nformation S ociety T echnologies ( thématique pr ioritaire de r echerche a u ni veau e uropéen), F uture a nd
Emerging T echnologies ( englobe de s pr ojets de r echerche e uropéens s ur l es t echnologies d'a venir).
LP SIL 20072008 page 9/54IUT Nice Côte d' Azur Rapport de stage MASCOTTE/INRIA
5
● COST 293 G RAphs a nd A Lgorithms i n c ommunication ne tworks (G RAAL) :
GRAAL e st un pr ojet e uropéen dé buté à l a fi n de l 'année 2004. Il i mplique de s uni versités,
des i nstituts e t de s or ganisations de r echerche da ns de nom breux pa ys e uropéens :
Angleterre, B elgique, D anemark, E spagne, F rance, G rèce, H ongrie, It alie, N orvège, S uède,
Slovaquie, S lovénie, e t non e uropéens : ÉtatsU nis (Iow a) e t Is raël. D es s ociétés ba sées e n
Europe y pa rticipent a ussi : A lcatel, E ricsson R esearch, F rance T elecom (dont J érome
Galtier, m embre MA SCOTTE e st l e r eprésentant), N EC N etwork L aboratories, N okia
Siemens N etworks. D avid Coude rt e st l e r eprésentant MA SCOTTE pour c e pr ojet.
GRAAL e st un pr ojet m ultidisciplinaire qui t ouche a ux r éseaux e t qui vi se à établir une
collaboration r approchée e ntre l a r echerche a ppliquée e t l a r echerche fonda mentale. C' està
dire de s c onnaissances e t c ompétences e n m atière de r éseaux de c ommunication (r éseaux
sans fi ls a dhoc , m ulticouches, e t dor saux à fi bres opt iques...) e t e n m athématiques
(mathématiques di scrètes, a lgorithmique, opt imisation, c alcul di stribué). Ce s de rnières
permettant de r ésoudre l es pr oblèmes pos és pa r l es pr emières. L e but de c ette c ollaboration
est de dé velopper l es gé nérations fut ures de r éseaux de c ommunication (r éseaux m ultimédia
et r éseaux de donné es, pe rmettant l 'accès i mmédiat à t oute s orte d' information da ns un
environnement m obile). Ce tte c ollaboration pr end e ffet da ns de s a teliers de di scussion
(workshops), da ns de s m issions à c ourt t erme e t da ns l a di ffusion e t l e pa rtage de r ésultats
de r echerche.
6
● ANR « J eunes Che rcheurs » O ptimisation e t S imulation pour l 'Étude de s R éseaux
Ambiants (O SERA) :
OSERA e st un pr ojet de 36 m ois. A u s ein de MA SCOTTE, i l r assemble D avid Coude rt,
Olivier D alle e t H ervé R ivano. L es équipes O ASIS, R AINBOW e t R ECIF du l aboratoire
I3S pr ennent pa rt ou s ont c onsultées pour c e pr ojet. O SERA pr end pa rfaitement pl ace da ns
le c ontexte de s pr ojets A EOLUS e t G RAAL pr ésentés c ide ssus.
En e ffet, O SERA t raite de s pr oblématiques d' optimisation de s ystèmes de
télécommunications m obiles a mbiants, a ctuellement e n for t dé veloppement (i ls c onstituent
l'avenir de l 'Internet). O SERA étudie l es pr oblèmes de dyna mique de c e t ype de r éseaux qui
a l a c aractéristique d' être i nstable. P our c ela de s out ils t héoriques s ont dé veloppés :
algorithmes d' optimisation (dyna mique e t di stribuée) e t de c ombinatoire, de r outage
dynamique fi able, pour l e di mensionnement e t l 'exploitation de c e t ype de r éseaux. P our
l'aspect pr atique, de s out ils d' analyses, de va lidation, d' intégration, e t d' exploitation de s
solutions t héoriques s ont r éalisés. A vec ut ilisation de t echniques de pr ogrammation l inéaire
(avec l a l ibrairie Ma scOpt) e t de s imulation à évènements di screts.
5 COST e st l 'acronyme de e uropean C Ooperation i n t he f ield of S cientific a nd T echnical r esearch.
6 ANR : A gence N ationale de R echerche e st G roupement d'I ntérêt P ublic m is e n pl ace e n 2005, dont I NRIA e t C NRS
sont m embres, qui vi se à f avoriser a u ni veau na tional, l a r echerche a ppliquée e t f ondamentale, l 'innovation e t l es
partenariats e ntre s ecteurs publ ic e t pr ivé.
LP SIL 20072008 page 10/54