Home
LE STATISTICIEN ET L`INFORMATIQUE Par : Jean-Pierre
Contents
1. 99 LE STATISTICIEN ET L INFORMATIQUE Par Jean Pierre GRANDJEAN L informatique a investi la statistique L volution est banale g n rale d finitive Elle n est pas encore termin e Si en un peu plus de dix ans le fait a t acquis il reste encore subir l intrusion des mini ou micro informatiques cons quence d un d veloppement technologique impr visible accom pagn d une chute tonnante des co ts du mat riel L INSEE a peu pr s r ussi suivre le mouvement Son informatique a cru et embelli Des structures se sont mises en place centres informatiques proc dures de gestion plus ou moins difficilement comme cela se con oit au sein d une organisation de ce type Des structures lourdes dont l adaptation aux vo lutions techniques n est pas toujours ais e surtout quand on voit poindre enfin une informatique peut tre plus accessible plus conviviale plus proche des utilisateurs Les r flexions r centes men es l occasion de la programmation du moyen terme s en font l cho o sont reconnues pertinentes des notions telles que informatique int gr e libre service etc il ne s agit pas ici de s tendre sur les diverses significations possibles de ces termes Le progr s technique qui en 1980 fait tenir dans une boite d allumet tes l unit centrale qui n cessitait plusieurs m tres cubes en 1950 ne s est pas accompagn e tant s en faut d une semblable am lioration de
2. l INSEE sont maintenus en permanen ce en bon tat de marche Pour ceux qui viennent de l ext rieur un crit re impor tant de choix est l existence d une quipe de d veloppement et de maintenance suf fisamment nombreuse comp tente et motiv e Peu de logiciels statistiques satis font correctement ce crit re ins En tout tat de cause la Division Logiciels essaie de se donner les t D t moyens d assurer la maintenance des produits qu elle installe Dans cette mesure il est fondamental que les utilisateurs qui d couvrent des erreurs se manifes tent aupr s des diverses cellules charg es de l assistance informatique afin que ces erreurs soient corrig es La qualit de ces outils ne progressera qu cette condition Pourquoi utiliser des logiciels g n raux Un pr c dent chapitre rend compte des Mare aise tre pourvus des logiciels g n raux bien faits En premier lieu il va de soi que certaines de ces qualit s sont contradictoires Ainsi la portabilit s oppose souvent la souplesse moins d tre recherch e seulement l int rieur d une cat gorie bien pr cis e de machines par exemple de haut de gamme offrant l int rieur de leur syst me d exploitation standard des outils tels que allocation dynamique de fi chiers ou de m moire D autre part il faut bien reconna tre que les logiciels existants ne font pas tous preuve d un grand nombre de ces qualit s quelle que puisse tre
3. d autre part l usage de logiciels g n raux induisent in vitablement des sur co ts par rapport a des programmes sp cifiques bien faits et au traitement par lots classiques Ils peuvent engendrer des gaspillages extr mement importants si les utilisateurs pen sent remplacer les tapes de r flexion indispensables par des avalanches de cal culs inutiles Les logiciels g n raux visent en g n ral un certain type d applications ils sont plus ou moins sp cialis s et un certain public Ils peuvent exiger une comp tence statistique variable b Efficacit statistique _ m m Les processus d analyse statistique que ce soit en analyse des donn es ou en mod lisation pour prendre deux exemples sont essentiellement dynamiques cheminant par une suite d tapes non forc ment pr vues au d part La recherche d une sp cification n cessite de nombreux t tonnements une variante de mod le peut donner l id e de dix variantes diff rentes l tude d un tableau peut n cessiter des suppressions de points des agr gations des recodifications etc TIZ Le logiciel vraiment int ressant est celui qui permet l utilisateur d pa ER z encha ner ces diff rentes tapes sans douleur excessive sans avoir par exemple cr er un nombre abusif de fichiers Pr cision Un logiciel g n ral doit tre irr prochable sur ce plan vu qu il peut tre mis toutes les sauces utilis pour traiter de
4. et sans dogmatisme un emploi plus syst matique des biblioth ques de sous programmes le triomphe sur les ordinateurs de langages de programmation plus puissants dont les compilateurs assistent beaucoup plus l utilisateur dans la t che p nible de d tection et correction de ses erreurs 112s II LES LOGICIELS GENERAUX l1 Introduction Dans l arsenal des outils informatiques offerts aux statisticiens les logiciels g n raux se situent l oppos du langage de programmation Nous appe lons logiciel g n ral un programme ou un groupe de programmes permettant de met tre en oeuvre de fa on relativement int gr e un ensemble relativement coh rent de fonctions de stockage et ou de calcul Coh rence Il existe des logiciels g n raux sp cialis s dans le traitement des s ries temporelles par exemple TSP d autres dans le traitement des donn es d en qu te par exemple LEDA d autres dans l analyse statistique des donn es indivi duelles par exemple BIBLOS BMDP SAS d autres dans l tude des mod les cono miques par exemple SIMSYS MODULECO d autres dans la manipulation de tableaux statistiques par exemple ARGOSC Ce terme recouvre les particularit s de ces outils qui permettent d viter l utilisateur de passer son temps programmer ses algorithmes program mer des encha nements d algorithmes d j crits et dans les cas les plus favora bles programmer des passages de donn es en
5. ou la portabilit dont on parlera plus tard Sur l ordinateur IBM du CNI PI sont disponibles les biblioth ques INSL et HARWELL dont les quali t s sont largement reconnues et qui contiennent grand nombre d algorithmes clas siques Cette solution est de loin la plus efficace car ces sous programmes sont directement utilisables depuis des programmes FORTRAN Un certain nombre de revues publient des algorithmes Citons Applied Statistics Communications in Statistics partie B Transactions on Mathematical Software Computer Journal Les algorithmes sont normalement v rifi s par l diteur de temps en temps certifi s par des utilisateurs Ils posent parfois certains probl mes de langage s ils sont crits en ALGOL ou en ALGOL 68 de portabilit s ils sont crits pour telle machine qui n est pas celle dont vous disposez Souvent une simple adaptation est pr f rable une r criture compl te m me s il ne faut pas n gliger certaines difficult s techniques c En fin de compte les algorithmes publi s ceux d IMSL de HARWELL du NAG ou ceux des revues s rieuses offrent des garanties int ressantes algo rithme ad quat performant donnant des r sultats justes ou pr cisant la ou les 104 raisons d une absence ou d une impr cision ventuelle des r sultats par exemple matrice mal conditionn e ou strictement non inversible Leur documentation est relativement normalis e Elle d cr
6. sent par ressembler de pr s des langages de programmation et donc n cessiter de la part des utilisateurs un investissement non n gligeable Les langages de contr le sont d cod s par des programmes sp ciaux appel s interpr teurs traduc teurs ou compilateurs Les techniques de compilation actuellement connues permet tent d assurer un d codage rapide et d effectuer une d tection des erreurs effica ce Les logiciels dont le langage de contr le ob it aux r gles de l art permet tent une mise au point des demandes tr s rapides F5 Les logiciels statistiques actuellement disponibles permettent de mani puler un ou plusieurs des objets suivants scalaire vecteur s rie temporelle matrice tableau observation X variable tableau plusieurs dimensions etc Un logiciel tel que MODULECO manipulera des objets plus originaux tels que en semble de s ries mod le ou matrice d incidence Pr alablement toute analyse le statisticien op re en g n ral une mise en forme des donn es Un logiciel g n ral est d autant plus agr able utili ser qu il permet des manipulations ais es des structures de donn es qu il g re Signalons le grand int r t pour les statisticiens des logiciels incorporant la notion de valeur manquante Interactivit L expos complet de ce qu on entend par l exigerait des pages et des pages Le logiciel interactif au sens propre du terme doit aider l utilisateur formuler
7. co teux de l employer pour des algorithmes complexes b Exactitude des r sultats obtenus Ce sujet important m rite qu on s y arr te IlL y a d abord bien s r la transcription erron e de formules justes ou fausses Il n est pas toujours ais de s apercevoir de telles erreurs Plus fondamental est le point suivant Dans un ordinateur les nombres sont repr sen t s l aide d un nombre fini de positions binaires Ce fait est l origine de nombreuses erreurs ou inexactitudes et n cessite donc d tre comment En calcul scientifique les arithm tiques couramment employ es sur les ordinateurs sont l enti re et la flottante ou r elle Les nombres entiers sont repr sent s avec M bits positions binaires dont un de signe donc tout nombre entier compris entre N et N N f M est repr sent de mani re exacte et du moment que les r sultats des op rations fai tes appartiennent l intervalle N N tout marche bien Ca se corse lorsqu on sort des bornes Par exemple sur un ordinateur IBM si les bornes sont 106 col LES pour des entiers de 32 bits on peut v rifier que l op ration sui vante CENS fournit programm e en FORTRAN le r sultat inattendu suivant 31 i p Bota 2 et ceci sans pr venir l utilisateur par quelque message que ce soit Gare donc lorsque vous ajoutez de grands nombres positifs en arithm tique enti re me me me ea G ae aae o ae a oman dm dos ms ce e CPU a
8. passe bien elle ne sert rien si l acquis n est pas mis en pratique imm diatement Rien ne s oublie plus vite qu un mode d emploi informatique Au niveau des investissements eux m mes il n est pas facile de faire coop rer la Division Logiciels et les utilisateurs potentiels Lors de la concep tion d ARGOSC des r unions furent organis es Des logiciels tels que SAS ont t install s l essai certains utilisateurs servant de cobayes Il n est gu re fa cile d aller plus loin tant donn que les pr occupations des utilisateurs sont tr s diverses et que le D partement de l Informatique a sa strat gie propre Pour les logiciels tr s sp cialis s de calcul les utilisateurs peuvent cependant trouver toute assistance et documentation utiles leur choix la Divi sion Logiciels La maintenance On a fait allusion pr c demment ce probl me pineux Tout logiciel programme contient des erreurs dont le nombre est fonction de sa taille et de sa complexit Installer un logiciel nouveau susceptible d tre utilis plusieurs centaines de fois par mois c est courir un risque multiforme risque de se voir submerg sous les r criminations des utilisateurs si les erreurs d tect es sont trop nombreuses risque de faire publier des r sultats faux en cas d erreurs non d tect es etc La Division Logiciels doit minimiser ce risque au moins pour les logi ciels les plus courants Ceux qui sont con us
9. 9 003 par l algorithme classique Vous calculez successive ment 3 x Z i S 2 l 1 5 S 2 Xi l4 M S 3 NUM S 3M et vous obtenez comme r sultat 0O alors que vous esp riez 2 Pour des calculs aussi l mentaires que des calculs de moyennes et de variances il faut donc bien souvent prendre des pr cautions telles que utiliser la double pr cision utiliser des algorithmes progressifs Pour une moyenne Mi M M a Xk Mk 1 k X Ma Pour un calcul de variance le meilleur algorithme possible est I calculer 1a moyenne correctement 2 calculer la somme des carr s des carts la moyenne Cet algorithme est souvent co teux puisqu il peut par exemple n ces siter deux lectures de fichier On peut utiliser la place l algorithme suivant P P 8 109 ii O T Ta sx CG Mpa x Zka n V A La diffusion des erreurs d arrondi est un ph nom ne universel auquel ne peut chapper la moindre inversion de matrice la plus petite diagonalisation Les bons algorithmes dits stables sont ceux qui minimisent cette propagation Leur recherche et leur tude ont t un sujet de pr occupation important des ana lystes num riciens depuis le d veloppement de l informatique C est une des rai sons majeures qui font militer pour l emploi de sous programmes de biblioth ques qui reprennent normalement les bons algorithmes c Performances L aspec
10. e a e me a n a aD aege ae e e Pour les calculs sur nombres r els les diff rents constructeurs d or dinateurs ont invent de nombreuses arithm tiques dites flottantes dans les quelles les nombres sont repr sent s sous la forme exposant mantisse Ces arithm tiques diff rent par la base utilis e 16 sur IBM le nom bre des bits r serv s l exposant et la mantisse respectivement ceci tant fonction du nombre de bits total accord un nombre le traitement du signe etc Sur un ordinateur IBM en arithm tique flottante standard ou simple pr cision un nombre est repr sent sur 32 bits Le plus grand nombre r el posi tif exactement repr sentable est 16 ire Oya Le plus petit r el positif exac tement repr sentable est f La pr cision moyenne des nombres repr sentables est 6 3 En gros on ne peut donc pas esp rer de r sultats justes plus de 6 d cimales Ceci est faible IBM offre une arithm tique flottante double pr cision gu re plus co teuse dans laquelle les nombres sont repr sent s sur 64 bits La pr cision obtenue est de l ord e de 16 d cimales Il existe pour m moire une arithm tique flottante quadruple pr cision dans laquelle les nombres sont repr sent s sur 128 bits la pr cision tant alors d environ 34 mais dont le co t d usage prohibitif doit limiter l emploi des cas exceptionnels Bien videmment la description de ces arithm tiques ne se limite pas l no
11. ec le compilateur IBM le plus r cent qui n est pas install au CNI PI Signalons que le langage Pascal notre sens n est pas actuellement susceptible de remplacer les langages pr c dents du fait de ses in suffisances dans le domaine des lectures ou des critures de fichiers principale ment 105 Le BASIC fait la joie des utilisateurs de micro ordinateurs Le BASIC de base est moins int ressant que le FORTRAN Chaque constructeur est tr s fier de ses extensions qui par exemple sur le mat riel WANG font du BASIC un langage uti lisable Les interpr teurs de BASIC permettent une ex cution pas pas des pro grammes ce qui peut aider notablement dans la t che de correction des erreurs Ce genre de produit existe videmment sur les gros ordinateurs mais n est de toute fa on pas tr s utilisable sans terminal l ger Un mot d APL APL est un langage tr s concis tr s symbolique utili sant des concepts tr s math matis s C est un langage d ing nieur Il serait utile de r examiner la lumi re des versions actuelles du langage et de ses interpr teurs ce qui constituait un handicap insurmontable pour de nombreux statisticiens de l INSEE l insuffisance des lectures et critures sur fichier magn tique Sur mat riel IBM ce probl me semble r solu la portabilit Cf plus loin des appli cations utilisant cette solution tant parfaitement nulle Un handicap certain d APL demeure qu il est tr s
12. es en n Logn borne inf rieure L algorithme a bien s r t l occa sion de recherches et de publications nombreuses d Portabilit Quelques id es sur ce point qui sera repris plus tard L utilisateur peut tre confront ce probl me quand par exemple il a crit et fait fonction ner un programme sur un IRIS 80 et veut le transf rer sur un IBM Il s aper oit avec d sappointement que ce programme ne veut plus tourner Les ordinateurs sont nombreux et l informatique n est pas outrageusement standardis e c est le moins qu on puisse dire Si l on consid re les langages de programmation pour lesquels il existe une norme internationale par exemple FORTRAN COBOL PLI on s aper oit que les constructeurs ne s entendent pas toujours sur son interpr tation et qu ils rajoutent souvent au langage de base des extensions plus ou moins commodes plus ou moins justifiables D s qu un programmeur utilise ces extensions il s expose affronter les difficult s d crites plus haut De fa on plus subtile quand on transf re un programme d un ordinateur un autre il faut tenir compte des nom bres de bits sur lesquels sont repr sent s les nombres pour chacun des ordinateurs concern s et par exemple op rer la transformation des variables simple pr cision en variables double pr cision lorsqu on passe d un ordinateur CDC mots de 60 bits un ordinateur IBM mots de 32 bits si l on ne veut pas perdre trop de pr cision dans les r
13. it leur mode d emploi leurs conditions d emploi matrice quelconque ou sym trique sym trique quelconque ou bande tridiagonale etc M me lorsqu on a r ussi isoler des modules d j crits il faut enco re crire quelques lignes de programme Se posent un certain nombre de probl mes a Le choix de langage de programmation Les langages classiques offerts par exemple l utilisateur de l ordi nateur IBM du CNI PI sont le FORTRAN le COBOL et le PLI Le COBOL n attire pas les foules tant donn son extr me verbosit Le FORTRAN est relativement simple souvent enseign comme langage de base Il est parfois insuffisant pour certaines applications sur fichiers complexes et faible pour le traitement de l alphanum rique Un gros avantage est que les biblio th ques de sous programmes sont 99 Z crites en FORTRAN Sur mat riel IBM un point noir est le compilateur qui s il est tr s efficace aide tr s mal l utili sateur d tecter et corriger ses erreurs Le PLI est fort pris de ses pratiquants puisqu il pr sente la fois les caract ristiques d un langage de gestion tel que le COBOL et celles d un lan gage de type scientifique tel que le FORTRAN Le compilateur PL d IBM permet une recherche efficace des erreurs Il est tr s possible d appeler depuis un program me PLI des sous programmes FORTRAN ce qui n exclut pas le recours aux biblioth ques de sous programmes C est encore plus facile av
14. l acc s l ordina teur Pourquoi Les raisons sont multiples et interd pendantes et essentielle ment relatives au fait que pour utiliser un ordinateur il est n cessaire de dis poser de programmes le logiciel ou software en anglais 100 La r flexion sur les m thodes et les outils permettant d crire de bons programmes a t men e parall lement aux progr s de la quincaillerie pas avant malheureusement Il a fallu souvent dans les premiers temps se d brouil ler avec les moyens du bord cr er rapidement des outils permettant quand m me de s viter l criture de programmes en langage binaire ou plut t en hexad cimal ou en octal sans disposer de support th orique et de l exp rience n cessaires Ces outils imparfaits ont t tr s vite tr s employ s et se sont av r s tr s difficiles remplacer par d autres meilleurs tous points de vue mais qui avaient le handicap d arriver trop tard Un apprentissage prend du temps toute modification du stock norme de programmes existants co te cher L inertie et la routine des informaticiens sont importantes Mais cela se comprend car on s est aper u plus ou moins vite et a a t parfois dur admettre qu crire de bons programmes qui marchent est un exercice d licat Si les erreurs d analyse sont tr s souvent r dhibitoires les erreurs de programmation sont bien ennuyeuses Il n est gu re possible de demander aux programmeurs d
15. la subjectivit d un tel jugement Les consid rations d velopp es dans l introduction permettent d expli quer cet tat de fait Le co t de ces programmes est finalement lev Beaucoup de projets futuristes ont avort faute de moyens ou de suite dans les id es Les dates de mises en chantier des logiciels am ricains d analyse statistique sont tonnamment recul es BMDP 1960 SAS 1966 SPSS 1967 Leur conception date ou leur architecture a t modifi e plusieurs fois profond ment parfois ce qui n a pas t sans poser des probl mes aux uti lisateurs confront s des changements importants Le march lui m me n est pas gigantesque et ne se renouvelle pas tr s vite vu la routinisation et le conservatisme importants m me s il est justi fi des utilisateurs Malgr tout les logiciels g n raux rendent d j depuis longtemps des services minents de l INSEE en particulier DMS METRIC eussent ils t men s bien en l absence de SIMSYS quels que soient ses d fauts vidents Des dizaines d enqu tes lourdes ont t tabul es l aide de LEDA malgr ses imperfections 122 Ces consid rations banales m ritent d tre r p t es sans cesse si cela permet d viter que se renouvellent chaque g n ration les m mes errements et que le statisticien frais moulu de l ENSAE veuille contr ler et tabuler son enqu te en FORTRAN au prix de gaspillages de temps et d argent importa
16. lev s sans toutefois atteindre en g n ral ceux pratiqu s par les soci t s de services fran aises ou par la compagnie IBM Il y aurait en fait beau coup crire sur la distribution de ces produits en France Arr tons l l expos D autres points importants pourraient tre d ve lopp s L analyse faite pr c demment m riterait d tre raffin e pr cis e nuan c e 3 Les relations entre les utilisateurs et les installateurs de ne e e e e e Gun l r e CPU e e e e e e Qu e e e e MEN e MN US a e e QU E m me MIND GUN QU MINE Mn PU CN MN AND CU MAR M e SAN CNE MR ae MERS SUN mme e MN ms CN a A l INSEE les relations sont pauvres et souvent sens unique La Division Logiciels con oit ou choisit les logiciels installer fournit la docu mentation organise les s ances de formation Il existe une assistance technique dont le r le dans plus de 99 Z des cas consiste corriger les erreurs des utili sateurs Les erreurs de programme remontent difficilement Au niveau de la do cumentation on peut contempler une certaine grogne teint e de r signation Les informaticiens sont jug s d cid ment incapables d crire en fran ais et de fa on 120 compr hensible Ce reproche est peut tre justifi Les utilisateurs pourraient cependant faire plus souvent part de leurs critiques et suggestions En ce qui concerne la formation constatons que m me si elle est orga nis e correctement m me si elle
17. lque chose changer pour l adapter sur un nouveau mat riel Et pour at teindre un degr de portabilit raisonnable les auteurs de logiciels doivent s imposer des contraintes s v res par exemple Z quant au langage de programmation retenu il faut le choisir parmi les langages les plus r pandus et les plus standardis s FORTRAN est un bon candi dat mais si on le choisit il faut en plus se limiter au sous ensemble des ins tructions FORTRAN les plus universelles quant aux types de fichiers utilis s tous les ordinateurs n offrent pas la m me gamme de types de fichiers acc s direct s quentiel index etc quant l architecture du logiciel etc 119 Ils ne s vitent cependant pas des co ts non nuls lors des adaptations successives d autres mat riels Du c t des utilisateurs le bilan peut galement comporter des l ments n gatifs Le logiciel portable peut ne pas disposer de certaines caract ris tiques agr ables simplement parce qu il est impossible de les programmer de fa on portable Il peut galement tre d usage co teux parce qu il n utilise pas au mieux les possibilit s des ordinateurs sur lesquels il fonctionne Co t d achat ou de location La plupart des logiciels g n raux d origine universitaire b n ficiaient jusqu ces derni res ann es de tarifs tr s bas Dans un mouvement qui a pris naissance aux Etats Unis ces tarifs ont t fortement re
18. nc des faits ci dessus rappel s Elle comporte galement les algorithmes employ s pour les diverses op rations addition soustraction multiplication division etc Donnons quelques exemples limit s l addition des cons quences im portantes que l emploi de telles arithm tiques entra ne sur la pr cision des 107 r sultats les termes techniques employ s pour nommer ces ph nom nes tant erreurs d arrondi et propagation des erreurs d arrondi Ces exemples sont op ra toires sur IBM et CII a 10 1 10 en arithm tique flottante simple pr cision 2 Toujours en arithm tique simple pr cision supposons qu on veuille ajouter 100 000 fois le nombre 1 000 Un programme FORTRAN qui effectue ce calcul peut s crire X O D 10 I 1 100000 X X 1000 10 CONTINUE 2 8 i Le r sultat qu on obtient n est pas 10 comme on pourrait s y atten dre mais 99334224 A partir d un certain moment on atteint la limite de pr cision Au lieu d ajouter 1000 l ordinateur ajoute en fait 992 16 X 62 Vient m me un moment o il ajoute 768 167 X 3 Imaginez qu en r alit vous calculiez la moyenne pour 100 000 indivi dus de nombres voisins de 1 000 Si vous utilisez l algorithme suivant 160000 Calculer S 2 XL i21 Calculer M 1900000 le r sultat pourra tre relativement inexact 3 Un autre exemple du m me style soit calculer la variance des 3 nombres 9 001 9 002
19. nde partie de la production de chiffres d un orga nisme tel que 1 INSEE repose sur l emploi de ces logiciels Que ces chiffres ne soient pas faux ne semble pas tre une exigence d mesur e Il peut tre souhaita ble galement qu ils ne reviennent pas trop cher ni en temps humain ni en temps machine qu ils ne soient pas obtenus par des m thodes suspectes etc Les crit res d valuation peuvent tre class s de multiples fa ons Nous utiliserons en gros la nomenclature de FRANCIS HEIBERGER et VELLEMAN publi e dans American Statistician en f vrier 1975 a Attrait pour l utilisateur Nous regroupons sous ce chapeau les caract ristiques qui peuvent donner l utilisateur ventuel l envie d employer un logiciel donn Ce point est fondamental Les utilisateurs se plaignent souvent et tr s juste titre de la mauvaise qualit de la documentation qui leur est propos e que ce soit au plan de la pr sentation du vocabulaire employ de la langue sou vent anglaise avant traduction ventuelle etc ne un un ue que un mme ut mme eus eus a mu de cuve us un mtuey mue eue mu same mme eue mage wm Un langage de contr le en format libre est pr f rable un codage rigi de Il n est a priori pas plus difficile apprendre Le probl me peut venir du fait que les langages de contr le les plus volu s qui permettent les traitements les plus sophistiqu s encha nements r p titions traitements alternatifs finis
20. nstituer des cha nes de traitements dont les diff rents programmes communiquent au moyen de fichiers interm diaires Toute solution qui fournit des r sultats corrects est bonne la meilleure tant nous semble t il celle qui limite le temps pass 102 I L ECRITURE DE PROGRAMMES SPECIFIQUES Elle ne doit s envisager qu en dernier ressort lorsque toute autre so lution base de logiciels g n raux ou de programmes pr existants a t jug e inad quate C est une entreprise p rilleuse qui peut prendre un temps d raisonna ble en regard de l objectif vis et fournir des r sultats imparfaits Il faut in sister sur l aspect temporel Des tudes de productivit faites sur de nombreux projets informatiques aux Etats Unis ont montr que la production moyenne d un programmeur s l ve quelques lignes de cinq trente de programme correctes par jour Il ne faut pas oublier qu avant d utiliser un programme il faut corri ger les erreurs qu il contient presque toujours que lorsqu on l utilise on d couvre de nouvelles erreurs qu il faut galement corriger Tout cela prend nor m m nt de temps a fortiori pour quelqu un dont ce n est pas l activit principa le L criture de programmes est classiquement d compos e en deux phases analyse et programmation proprement dites a Cette tape primordiale est trop souvent n glig e DESCARTES a fort bien d fini de quoi il s agit Examiner et d finir le
21. nts L ave nir pour le selfeur comme on dit horriblement ce ne sont pas les outils archa ques d il y a trente ans mais des outils modernes souples raisonnablement faci les d emploi et parlant son langage le probl me fondamental tant en derni re analyse celui de leurs limites probl me actuellement mal per u dans la majorit des cas car dissimul sous le mythe Il est essentiel pour l INSEE de suivre attentivement sinon d assurer du moins la mesure actuelle de ses moyens le d veloppement de tels outils
22. probl me le d couper en sous probl mes en bref d finir l algorithme de r solution Il existe des biblio th ques d ouvrages sur la question Signalons simplement que cette r flexion pr a lable permet bien souvent de gagner du temps par la suite d abord en vitant de se lancer dans des constructions absurdes ensuite lors de la programmation en permettant la d tection de sous programmes ou modules classiques qui ont d j t crits et qu il suffit de recopier par exemple inversion ou diagonalisation de matrice tri de vecteur etc Il est idiot de vouloir toute force r inventer la poudre Ecrire son propre programme d inversion de matrice c est perdre son temps puisque d autres l ont fait avant c est courir le risque d obtenir des r sultats faux le pro bl me n est pas toujours aussi trivial qu il y para t au premier abord et la solu tion adopt e peut s av rer d un co t informatique trop lev si la matrice est de 103 rang important b Les biblioth ques de sous programmes Certains organismes publics ou priv s n ont pas manqu de rassembler des sous programmes classiques crits par des gens comp tents Certains de ces en sembles sont tr s diffus s de par le monde ce qui fait qu un grand nombre de leurs d fauts ont pu tre d tect s et corrig s Certains de ces projets ont d ail leurs t l occasion d une r flexion fondamentale sur des sujets importants tels que la pr cision
23. s donn es de toutes origines par des utilisateurs de tous calibres Etre irr prochable ne veut pas forc ment dire fournir des r sultats illusoirement pr cis De nombreuses recherches des num riciens visent prendre en compte dans les algorithmes la qualit des donn es d entr e Pour un certain nombre de techniques encore trop rare il est possible d affirmer que tel pro bl me est mal pos ou que telles donn es sont mal conditionn es Mieux valent en tout tat de cause des r sultats math matiquement justes m me illusoires que des r sultats faux Des consid rations expos es dans un paragraphe pr c dent le lecteur doit avoir retenu que ce dernier cas de figure peut se produire malheureusement Un article publi dans American Statistician en f vrier 1977 a fait une certaine sensation qui mettait en vidence le caract re totalement erron de matrices de corr lation calcul es l aide de logiciels extr mement r pandus partir de don n es pas sp cialement bizarres et pas particuli rement volumineuses Extensibilit pag _ Aucun logiciel consid r un instant donn ne permettra la mise en oeuvre de toutes les techniques imagin es par le statisticien On peut envisager de rem dier ce d faut in vitable de trois fa ons la premi re solution est simple il suffit que le logiciel d fail lant autorise la sortie sur disque ou sur bande des donn es concern es qui po
24. sa demande et fournir les r ponses au terminal lorsque la demande est correcte Des logiciels tels que TSO BIBLOS ARGOSC SAS ne sont interactifs ils ne font que r pondre passivement aux ordres donn s par l utilisateur A la r flexion et l exp rience on peut s apercevoir qu il est difficile de concevoir des logiciels interactifs enti rement satisfaisants pour tous les utilisateurs d butants ou tr s avertis Leur verbosit doit tre r glabe Ils doivent tre as sez souples pour permettre de diff rer les traitements lourds et diriger vers les imprimantes lourdes les sorties volumineuses Actuellement il existe encore peu de logiciels statistiques puissants interactifs vraiment tr s bien con us et leur co t d emploi est souvent tr s lev Si cependant leur utilisation entra ne des r ductions fortes de consommation de temps humain leur d veloppement est in vi table Elles sont plus ou moins plaisantes L utilisateur peut avoir plus ou P P P 116 moins de pouvoir sur leur apparence leur d tail leur volume a c 0 ee am cm DE eu me a mr ml eu us ms Il existe actuellement des terminaux graphiques tables tra antes ou crans graphiques en noir et blanc ou en couleur Certains logiciels permettent des sorties sophistiqu es sur de tels mat riels Ce n est pas un crit re tr s fondamental l INSEE Il faudra s rement finir par s en pr occuper D une part l emploi de terminaux l gers
25. sultats e Documentation Un programme non document est un programme non r utilisable Cette proposition est peine excessive Comprendre ce que calcule un programme non document prend norm ment de temps Si le programme est long et com plexe a peut s av rer impossible Une documentation de programme est plus ou moins compl te Le mode d emploi pr cis et complet est indispensable dans tous les cas Des commentaires parlants ins r s dans le texte du programme sont quasiment n cessaires Le dossier d analyse programmation complet est fort utile lorsqu on veut transmettre un programme quelqu un d autre Documenter un programme prend moins de temps que le r crire En conclusion r p tons au risque de lasser que la bonne programma tion est un art difficile En s y lan ant sans pr cautions particuli res on s expose de nom breux accidents impr vus et on risque surtout d y consacrer beaucoup plus de temps que pr vu et raisonnable Pour am liorer cette situation malheureusement trop fr quemment ren contr e on peut esp rer une meilleure formation Cette formation de base doit donner des id es claires sur la fa on dont fonctionne un ordinateur sur la fa on dont sont stock es les informations dans un ordinateur sur la notion de fichier sur les algorithmes de base Elle doit galement inculquer des r gles de bonne programma tion base de bon sens
26. t performances ne doit pas tre consid r comme fondamental en premi re analyse Pour beaucoup de programmeurs performance est synonyme d as tuce de programmation bien souvent de programme illisible pour l auteur y com pris apr s un certain temps car il ne r ussit plus comprendre ce qu il a crit Cependant tel programme dont la consommation est raisonnable pour un probl me de taille 100 deviendra un gouffre pour un probl me de taille 100 000 parce que 2 3 4 la consommation de l algorithme est en n n voire n Que faire l Sans modifier l algorithme il faut utiliser certaines caract risti ques de l ordinateur qui permettent d aller plus vite Choisir les bonnes m thodes de lecture criture sur fichier Mettre en oeuvre les options d optimisation des compilateurs par exemple FORTRAN H Extended Option Optimize de COBOL PLI Optimizing 2 Modifier l algorithme Ceci est plus ou moins d licat 1197 De fa on conceptuellement vidente il est par exemple facile de te nir compte des sym tries d un probl me pour r duire norm ment la quantit de calculs D un autre c t une modification insignifiante mais non triviale peut transformer consid rablement le comportement d un algorithme Un exemple c l bre est le tri en m moire pour lequel partir d algorithmes simples dont la consommation est en n ou en TA on peut par des finesses peu videntes obtenir des algorithm
27. tatisticiens craintifs qui font toujours la m me chose par peur des r sultats curieux que peut produire le d placement d une virgule des statisticiens audacieux qui attaquent un peu la l g re des probl mes fort ardus des statisticiens conqu rants qui veulent r inventer la poudre et aussi des statisticiens sereins qui ont pris la mesure de l outil et l utilisent peu pr s bon escient Dans les paragraphes qui viennent nous voudrions d crire plus ou moins pr cis ment quelques uns des probl mes qui se posent au statisticien dans l utilisation autonome de l informatique Remarquons par avance qu ils ne sont pas identiques pour celui qui doit traiter une enqu te de deux cent mille unit s et pour celui qui s int resse une s rie temporelle de quatre vingt quatre points Ils ont quand m me un large fondement commun Le propos est plut t orient vers les tudes statistiques de la ta bulation la mod lisation On ne traitera pas de probl mes de pure gestion tels que les abordent par exemple les syst mes de gestion de bases de donn es encore que le statisticien pour ses analyses soit toujours confront des probl mes de cet ordre Le statisticien de l INSEE pour obtenir des chiffres peut proc der de diverses fa ons Il peut tout sous traiter un centre informatique il peut crire ses propres programmes de jusqu Z utiliser des logiciels g n raux ou des programmes d j crits et co
28. tre productifs et de changer d habitude tous les six mois par exemple utiliser un nouveau langage de programmation cela signifie l apprendre savoir comment le mettre en oeuvre conna tre ses finesses ou les finesses du com pilateur qui ne sont pas toujours videntes Ceci explique pourquoi en 1981 la compagnie IBM ose encore imposer la majeure partie de ses utilisateurs l emploi du barbare JCL et pourquoi un langage aussi frustre que le FORTRAN n a pas encore t supplant Il n emp che que des progr s importants ont quand m me t faits Dans le domaine des langages de programmation la d cennie 1980 verra peut tre le renversement des anciennes idoles et par exemple l installation d ADA langage puissant cr l initiative du Minist re de la D fense des Etats Unis Les terminaux l gers crans ou machines crire doivent se g n ra liser Si les outils logiciels qui les accompagnent diteurs de texte etc sont de bonne qualit des gains importants de productivit sont possibles HOT Les logiciels g n raux s am liorent profitant des acquis ant rieurs outils qui permettent l utilisateur non informaticien de formuler ses demandes dans un langage non purement informatique et plus proche dans une certaine mesu re de celui de sa discipline Dans ce paysage mouvant l utilisateur est quand m me fortement bal lot Et l on voit des statisticiens qui nient l informatique des s
29. tre programmes distincts pour encha ner des analyses diff rentes Il existe sur le march un grand nombre de logiciels g n raux suscepti bles d tre utilis s par des statisticiens Les logiciels g n raux sont des pro grammes un peu plus complexes que la moyenne mais des programmes quand m me Les difficult s qu on a mentionn es dans les consid rations sur l criture de program mes sp cifiques doivent tre voqu es leur propos D autre part ces programmes doivent permettre tout statisticien de r soudre relativement ais ment une gamme plus ou moins large de probl mes Cer tains sont d ailleurs norm ment r pandus et utilis s Enfin ces programmes font souvent l objet d un commerce Ce sont des 113 produits qui s ach tent ou se louent sont th oriquement maintenus en bon tat de marche corrig s de leurs erreurs et d velopp s par leurs auteurs ou leurs dis tributeurs Tout ceci fait qu il est sain d prouver leur gard une certaine m fiance et que les pratiques consum ristes d exploitation syst matique de leurs capacit s et de tests comparatifs sont envisager tr s s rieusement Ce genre de pr occupations remonte au d but des ann es 1970 surtout parmi la gent statisti cienne anglosaxonne Les publications o l on peut en voir la trace sont par exemple les comptes rendus des congr s annuels Interface Etats Unis les comptes rendus des congr s ann
30. uels de la Section Calcul de 1 as sociation des Statisticiens am ricains les comptes rendus des congr s bisannuels COMPSTAT Europe les journaux de la Soci t Royale de Statistique Grande Bretagne et surtout Applied statistics le p riodique Statistical Software Newsletter dit Munich la revue American Statistician L AICSO section de l Institut International de Statistique pour le Cal cul Statistique sur Ordinateur a fourni depuis sa cr ation un gros effort dans ce domaine et publi en 1979 sous l autorit du Professeur FRANCIS une tude comparative des logiciels statistiques tude qui doit tre actualis e en 1981 A l INSEE ces travaux sont suivis la Division Logiciels dont une des missions est en liaison avec les utilisateurs le choix l installation et la diffusion des logiciels qui peuvent rendre service Il n est pas facile d valuer correctement encore moins de comparer des logiciels statistiques Des listes de crit res ont t tablies Des tentati ves de recensements des programmes existants ont t faites qui pr sentent en g n ral le point de vue des auteurs et sont donc peu critiques L obsolescence de ces papiers est normalement assez rapide dans la me sure o par exemple les constructeurs de logiciels conscients et qui en ont les moyens corrigent normalement assez vite les d fauts ponctuels rep r s L enjeu 114 est important De fait une gra
31. ur ront ainsi tre par exemple r exploit es au moyen d un autre programme Pour sim ple qu elle soit cette solution n est que rarement possible Les auteurs de logi ciels aiment confiner leurs utilisateurs dans le champ clos de leur cr ation 118 D o l quation Logiciels g n raux routine mort de l imagination la deuxi me solution est la suivante le langage du logiciel est suffisamment puissant pour que le statisticien puisse programmer dans ce langage l algorithme de son choix Par exemple si le langage offre des possibilit s de calcul matriciel il pourra r soudre certains probl mes de statistique multidimen sionnelle la derni re solution est encore plus labor e et donc beaucoup plus rare que les pr c dentes Elle consiste autoriser l utilisateur ajouter sa m thode au logiciel et ce au moindre co t co t de programmation s entend Des recherches th oriques et pratiques sont men es ce sujet pour mettre en viden ce les architectures de logiciels ad quates Portabilit Nous retrouvons un probl me d j abord Les statisticiens de 1 INSEE reli s un IRIS 80 voudraient bien pouvoir disposer des m mes outils que leurs coll gues reli s un IBM et r ciproquement mais c est le plus souvent comme a que a se passe surtout en mati re d tudes pour des raisons videntes Le logiciel cent pour cent portable n existe pas Il y a toujours un petit que
Download Pdf Manuals
Related Search
Related Contents
Bedienungsanleitung Oil & Gas Global Supply Chain Xerox 2045 Printer User Manual Calderdale and Huddersfield NHS Trust CMI-410CFユーザーズマニュアル 4L0 092101 C 4L0 092101 C 4L0 092101 C ASUS (WI500Q) User's Manual Knoll Speaker Q450RS User's Manual X-7502 取扱説明書 Chapter 3 OPERATION USING THE KEYPAD Copyright © All rights reserved.