29
CURSURI OPŢIONALE DE INFORMATICĂ PROPUSE PENTRU ANUL UNIVERSITAR 2014-2015 SEM. I DOMENIUL DE LICENŢĂ: INFORMATICĂ SPECIALIZAREA: INFORMATICĂ

CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

  • Upload
    dinhnhi

  • View
    227

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

CURSURI OPŢIONALE DE INFORMATIC Ă

PROPUSE

PENTRU ANUL

UNIVERSITAR 2014-2015

SEM. I DOMENIUL DE LICEN ŢĂ:

INFORMATIC Ă

SPECIALIZAREA: INFORMATIC Ă

Page 2: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

Lista cursurilor op ţionale – sem. I 5.1 Aplicatii ale teoriei grafurilor si combinatoricii 5.2 Aplicatii distribuite in cloud 5.3 Aplicatii web dezvoltate cu Ruby on Rails 5.4 Cloud Computing 5.5 Concepte geometrice in grafica pe calculator 5.6 Fractali. Grafica computerizata si aplicatii 5.7 Introducere in lingvistica matematica si computationala 5.8 Programare Web utilizand limbajul Java – Servleti 5.9 Undergraduate Research Opportunities

Fiecare student face 5 opțiuni, în ordinea preferințelor

Page 3: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS

TITLU: APLICATII ALE TEORIEI GRAFURILOR SI COMBINAT ORICII DOMENIUL DE LICE ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă STATUTUL: optional R.ORE/SAPTAMANA: 3 (Curs = 2; Seminar = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: Examen CREDITE: 5 INSTRUCTORI: Conf.Dr. Dragos-Radu Popescu OBIECTIVE: Se vor trata aplicatii ale Teoriei Grafurilor si Combinatoricii atat teoretice cat si practice. PROGRAMA:

1. Teorie Sperner si aplicatii in teoria probabilitatilor.

2. Grupuri de automorfisme, teoria numararii si aplicatii in chimie.

3. Reprezentarea grafurilor pe suprafete compacte orientabile.

4. Teorie Ramsey si aplicatii.

5. Grafuri semnate si aplicatii in sociologie. BIBLIOGRAFIE:

1. Aigner Martin: Combinatorial Theory, Springer-Verlag, 1979.

2. Bondy J. A.,Murty U. S. R.: Graph theory with Applications, The Macmillam press ltd.

1977.

3. Graham R. L., Rotschild B. L., Spencer J. H.: Ramsey theory, Wiley-Interscience Series

in Discrete Mathematics and Optimization, 1990.

4. Popescu Dragos-Radu: Combinatorica si teoria grafurilor,Societatea de Stiinte

Matematice din Romania, 2005.

5. Tomescu I., Popescu D. – R.: Elemente de Matematica discreta, Teoria Grafurilor si

Analiza Combinatorie, Matrix Rom, Bucuresti, 2013.

Page 4: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FIȘA UNITĂȚII DE CURS

TITLU: APLICATII DISTRIBUITE IN CLOUD DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă STATUTUL: OPȚIONAL NR.ORE/SĂPTĂMÂNĂ: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: VERIFICARE CREDITE: 5 INSTRUCTORI: Conf.Dr. Radu Gramatovici OBIECTIVE:

Cursul își propune să ofere studenților o introducere în tot ce înseamnă dezvoltarea aplicațiilor

internet ce lucrează cu cantități mari de date si au un grad ridicat de scalabilitate, aplicații care

rulează în cloud-ul oferit de Amazon sub sistemul de operare Linux.

În cadrul cursului vor fi prezentate tehnologii și metode de actualitate în construirea aplicațiilor

ce ruleaza in cloud iar accentul este pus pe serviciile oferite de Amazon Web Services. Cursul

este unul de tip hands-on, studenții având posibilitatea să pună în practică toate cunoștințele

dobândite.

La finalul cursului, studenții vor putea crea și gestiona resurse în cloud-ul Amazon, dezvolta

aplicații care rulează în cloud, sunt scalabile si manipulează cantități mari de date.

PROGRAMĂ:

1. Introducere in Cloud. Ce este? Avantaje si dezavantaje.

2. Scalabilitate. Anatomia unei aplicatii modulare si scalabile.

3. Servicii de calcul si comunicare in AWS. (EC2, SQS, ELB)

4. Servicii de stocare in AWS. (S3, DynamoDB, RDS)

5. Utilizarea SDK-ului Java pentru AWS.

6. Introducere in Hadoop. Hadoop pe cluser in Amazon.

BILBIOGRAFIE:

1. Documentatia online AWS: http://aws.amazon.com/documentation/

2. Documentatia online Hadoop: http://hadoop.apache.org/docs/r2.3.0/

Page 5: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FIȘA UNITĂȚII DE CURS

TITLU: APLICA ȚII WEB DEZVOLTATE CU RUBY ON RAILS DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă STATUTUL: OPȚIONAL NR.ORE/SĂPTĂMÂNĂ: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: VERIFICARE CREDITE: 5 INSTRUCTORI: Conf.Dr. Radu Gramatovici OBIECTIVE: Cursul își propune să ofere studenților o introducere în tot ce înseamnă dezvoltarea aplicațiilor web utilizând framework-ul Ruby on Rails, în sistemul de operare Linux. În cadrul cursului va fi prezentată arhitectura MVC (Model-View-Controller), pe care este construit framework-ul Ruby on Rails, precum și alte tehnologii precum HTML5, CSS3, Javascript, XML. Cursul este unul de tip hands-on, studenții având posibilitatea să pună în practică toate cunoștințele dobândite. La finalul cursului, studenții vor putea dezvolta aplicații web conform ultimelor standarde. PROGRAMĂ:

1. Introducere în universul aplicațiilor web. Introducere în MVC. Instalarea și cunoașterea pachetului Ruby on Rails.

2. Structura unei aplicații. Introducere în HTML5, CSS3, Javascript. 3. Sintaxa Ruby on Rails. Testare (TDD). Configurarea mediului de deployment. 4. Modele și vizualizări I. Crearea unei baze de date și operații asupra ei (creare, modificare, ștergere de utilizatori și parole, etc.).

5. Modele și vizualizări II. Creare de vizualizări (interfață grafică, formulare, metode de autentificare, înregistrare, etc).

6. C-ul din MVC - controlerul. Sesiuni și securitatea aplicației. 7. Dezvoltarea unei aplicații web.

BILBIOGRAFIE:

1. Ghidul online Ruby on Rails: http://guides.rubyonrails.org/ 2. Michael Hartl, Ruby on Rails 3 Tutorial Book: Learn Rails by Example, Addison-

Wesley, 2010. (http://ruby.railstutorial.org/ruby-on-rails-tutorial-book) 3. Sam Ruby, Dave Thomas, David Heinemeier Hansson, Agile Web Development with

Rails, 4th edition, Pragmatic Programmers, 2011.

Page 6: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS

TITLU: CLOUD COMPUTING DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 INSTRUCTORI: Conf.Dr. Cristian Kevorchian (Profesor asociat FMI) OBIECTIVE: Scopul cursului este de a prezenta viitorilor specialişti în domeniul IT un mix de tehnologii sub numele de cloud computing care, potrivit predicţiilor Gartner, pînă la sfîrşitul anului 2016, 50% din companiile din Global 1000 vor utiliza servicii din public cloud. Cursul integrează cunoştinţe din zona arhitecturilor de calcul a reţeleor de calculatoare şi programării calculatoarelor într-unul dintre cele mai dinamice domenii ale tehnologiei informaţiei – a se vedea şi experienţa unor universităţi de prestigiu, cum ar fi Stanford, (http://scpd.stanford.edu/search/publicCourseSearchDetails.do?method=load&courseId=11815). Nu sunt vizate, in acest curs, decat aspecte legate de virtualizarea infrastructurilor de calcul şi înţelegerea arhitecturilor de tip public cloud, privat cloud şi hybrid cloud, precum şi utilizarea softwareului şi platformelor de dezvoltare ca serviciu. În contextul problematicii cloud computing vom aduce în discuţie şi subiecte larg dezbătute în comunităţile tehnologice de genul Serviciile WEB din perspectiva SOAP(Simple Object Access Protocol) sau REST(Representational State Transfer). PROGRAMA: 1) Cloud computing-definiţii, tipuri de cloud, caracteristici, avantaje şi dezavantaje, utilizare de standarde deschise. 2) Arhitecturi cloud -stiva cloud computing, conectarea la cloud, sisteme de operare în Cloud: Windows Azure OS, Chrom OS, JolieCloud OS. 3) Abstractizare şi virtualizare -tehnologii de virtualizare, load balancing şi virtualizare, hipervizoare, imagini ale maşinilor virtuale, portarea aplicaţiilor. 4) Servicii şi aplicaţii, SOA(Service Oriented Arhitecture)-Infrastructure as a Service(IaaS), Platform as a Service(PaaS), Software as a Service(SaaS), Identity as a Service(IdaaS), Compliance as Service(CaaS), Security-as-a-Service, ESB(Enterprise Service Bus),BPEL(Business Process Execution Language), Modelarea proceselor de business, Managementul şi monitorizarea SOA, SOA şi Cloud Computing, REST şi Cloud Computing. 5) Planificarea capacităţii de calcul – metrici de bază, metrici de sistem, testarea nivelului de încărcare, tipuri de servere şi instanţe, capacitatea reţelei. 6) Stocarea ca serviciu în CLOUD – Prezentarea serviciilor de stocare, ca fiind persistente şi redundante şi în plus analiza serviciilor:BLOB, QUEUE şi TABLE împreună cu API-ul Windows Azure Storage REST Service. 7) Platforma Windows Azure-software plus servicii, Servicii Windows Azure, Windows Azure AppFabric, SQL Azure. Interconectarea serviciilor cu .NET Service Bus. 8) Transferul aplicaţiilor în cloud - aplicaţii în cloud, asocierea funcţionalităţilor, atributele aplicaţiilor, atributele serviciilor cloud, aplicaţii şi API-uri în cloud

Page 7: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

9) Cloud, Grid şi HPC – Prezentarea soluţiilor Amazon Elastic Compute Cloud EC2, TWESTER4Azure şi MR4Azure BIBLIOGRAFIE: [1] B. Sosinsky CLOUD COMPUTING BIBLE , Wiley Publishing Inc., Indianopolis, Indiana,

2011. [2] R. Jennings CLOUD COMPUTING with Windows Azure Platform , Wiley Publishing

Inc., Indianopolis, Indiana, 2009 [3] R. Buyya, J. Broberg, A. Goscinski CLOUD COMPUTING. Principles and Paradigms,

Wiley, Inc., Hoboken, New Jersey, 2011 [4] T.Velte, J. Velte, R. Elsenpeter CLOUD COMPUTING: A Practical Approach ,

MacGrow Hill, 2010

Page 8: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS TITLU: CONCEPTE GEOMETRICE IN GRAFICA PE CALCULATOR DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 INSTRUCTORI: Lect.Dr. Sorin Stupariu (FMI, Departam entul de Matematica) OBIECTIVE: Cursul are doua componente complementare. Prima dintre ele are o natura teoretica: in cadrul cursului vor fi prezentate cateva notiuni si rezultate geometrice esentiale pentru dezvoltarea aplicatiilor grafice, precum si cativa algoritmi de baza in grafica pe calculator. Cea de-a doua componenta are o natura aplicativa si include o introducere in programarea OpenGL si dezvoltarea unor proiecte de grafica pe calculator. Aplicatiile de la laborator, concretizate prin proiecte, vor reprezenta componenta principala a verificarii de la sfarsitul semestrului. PROGRAMA: [1] Primitive grafice. Atribute ale primitivelor grafice. [2] Elemente de geometrie 2D si 3D. [3] Transformari geometrice. [4] Modelarea deplasarii unui obiect. [5] Proiectii paralele si proiectii centrale. [6] Reprezentarea imaginilor 2D. [7] Elemente de grafica 3D. BIBLIOGRAFIE: [1] G. Albeanu, Grafica pe calculator. Algoritmi fundamentali, Editura Universitatii din

Bucuresti, 2001. [2] R. Baciu, Programarea aplicatiilor grafice 3D cu OpenGL, Editura Albastra, 2005. [3] W. Boehm, H. Prautzsch: Geometric Concepts for Geometric Design, AK Peters, Wellesley,

1994. [4] J. Foley, A. van Dam, S. Feiner, J. Hughes, Computer Graphics: Principles and Practice (2nd

edition in C), Addison Wesley, 1995. [5] D. Hearn, M. Baker, Computer Graphics with OpenGL (3rd edition), Prentice Hall, 2003. [6] P. Schneider, D. Eberly, Geometric Tools for Computer Graphics, Morgan Kaufmann, 2003. [7] D. Shreiner, M. Woo, J. Neider, T. Davis, OpenGL Programming Guide, Sixth Edition,

Addison-Wesley, 2008.

Page 9: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS

TITLU: FRACTALI. GRAFICA COMPUTERIZATA SI APLICATII DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 INSTRUCTORI: Lect.Dr. Daniel Stanica (FMI, Departamentul de Matematica) OBIECTIVE: Acest curs îşi propune să pună în evidenţă multitudinea de structuri fractalice existente (structuri care şi-au găsit aplicaţii în toate ramurile ştiinţei) şi să dea o perspectivă grafică computerizată a acestora. Pe de altă parte, ca aplicaţii ale fractalilor, obiectivele constau în a modela elemente din natură (care au o structură fractalică) şi de a coda imagini folosind compresia fractală. La sfârşitul cursului studenţii vor fi capabili să reprezinte grafic (incluzând şi funcţii de zoom) în două sau trei dimensiuni structuri geometrice complexe (fractalice) şi să genereze pe calculator peisaje virtuale, hărţi in două sau trei dimensiuni. De asemenea vor şti să codeze imagini cu o rată de compresie superioară standardului jpeg. PROGRAMA: 3. Noţiuni introductive despre fractali şi dimensiune fractală; 4. Elemente de grafică computerizată; 5. Construcţia şi algoritmi iterativi de reprezentare grafică pentru unele tipuri de fractali (curba lui Koch, curba lui Peano, curba lui Sierpinsky, covorul lui Sierpinsky, curba lui Hilbert, curba dragonului, curba C etc.); 6. Metoda sistemelor de funcţii iterate (IFS) pentru generarea imaginilor fractale. Plante fractale: Feriga Barnsley, copaci, etc. Superfractali. Reprezentări grafice. 7. Metode sistemelor Lindenmayer pentru generarea imaginilor fractale. Exemple grafice. Plante Lindenmayer. 8. Sisteme dinamice haotice şi reprezentarea lor fractală: grafica computerizată a unor atractori (Lorenz, Rossler, Ikeda, Henon, Lozi, etc), fractalii Barry Mrtin, Popcorn, Dream, Three Play Orbit, Gumowski-Mira, etc. Fractali de tip Lyapunov. 9. Grafica computerizată a unor bazine de atracţie. Construcţia unor funcţii de zoom; 10. Mulţimi fractale obţinute iterativ: exemple şi reprezentări grafice (mulţimi Julia, mulţimi Mandelbrot etc.) Reprezentări 3D ale acestor tipuri de fractali. 11. Modelarea unor plante: metode iterative de generare a plantelor, modelarea mutaţiilor, încrucişărilor, generarea structurilor arborescente (copaci), modelare unor inflorescenţe, elemente de reprezentare 3D a plantelor. Reprezentări grafice computerizate; 12. Algoritmul punctului de mijloc şi a pătratului de diamant ca algoritmi fundamentali în generarea peisajelor fractale ; 13. Modelarea unor forme de relief . Munţi : siluete muntoase, munţi 3D ; Bazine hidrografice ; Modelarea ţărmurilor, insulelor. Generarea hărţilor virtuale . Reprezentări grafice computerizate; 14. Modelarea altor elemente din natură : fulgi de zăpadă, nori, galaxii, plasmă, etc. Reprezentări grafice computerizate;

Page 10: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

15. Interpolarea fractală (ca metodă a compresiei fractale): transformarea prin interpolare a unui fractal. Exemple grafice computerizate; 16. Prelucrarea imaginilor: codarea (compresia) fractală. Algoritmi. Compararea cu alte forme de compresie. BIBLIOGRAFIE: [1] Karl-Heinz Becker, Michael Dorfler – Dynamical systems and fractals, Computer graphics. - Cambridge University Press, 1991. [2] Benoit Mandelbrot – Obiectele fractale, Editura Nemira, 1998. [3] Dick Olivier – Fractali, Editura Teora, 1996. [4] G. Cherbit (editor) – Dimensions non entieres et applications – MASSON – 1991. [5] Heinz-Otto Peitgen, Hartmut Jurgens, Dietmar Saupe – Chaos and Fractals – SPRINGER-VERLAG – 2004. [6] Gilbert Helmberg – Getting Acquainted with Fractals - Walter de Gruyter – 2007. [7] Jaap A. Kaandorp - Fractal Modelling. Growth and Form in Biology – SPRINGER-VERLAG – 1994. [8] Michael Barnsley, Hawley Rising. - Fractals Everywhere. Boston: Academic Press Professional, 1993. [9] Yuval Fisher (editor) - Fractal image encoding - SPRINGER-VERLAG – 1998. [10] Radu Dobrescu, Catalin Vasilescu (editori) - Interdisciplinary applications of fractal and chaos theory – Editura Academiei, 2004.

Page 11: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS

TITLU: INTRODUCERE IN LINGVISTICA MATEMATICA SI COM PUTATIONALA DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 INSTRUCTORI: Conf.Dr. Liviu Dinu OBIECTIVE: Cursul isi propune sa ofere studentilor o perspectiva moderna si la zi asupra domeniului. Fiecare tema abordata va fi insotita de aplicatii concrete care vor viza diverse aspecte ale limbajului natural, cu o atentie speciala acordata limbii romane. Vor fi abordate aspecte computationale, cantitative si formale ale limbajului natural, facand distinctia clara intre analiza textelor si cea a limbilor naturale in general. PROGRAMA: [1] Lectie de deschidere: probleme curente (practice, teoretice si de cercetare) in lingvistica

matematica si computationala si in procesarea limbajului natural. [2] Aspecte cantitative ale limbajului natural. (Legi de tip minim efort, principiul lui Menzerath,

legea lui Zipf, Legea lui Fenk, Altmann, comportari probabilistice si statistice ale limbajului natural, etc).

[3] Cum comparam limbile naturale? Analiza computationala a similaritatii, inteligibilitatii, lizibilitatii (readability) limbilor naturale. Aplicatii pe limba romana.

[4] Abordari si rezolvari computationale eficiente ale unor probleme lingvistice grele: predictia accentului in limba romana, silabificarea cuvintelor din limba romana, conjugarea verbelor (analiza alternantelor), analiza predictiei pluralului substantivelor din romana (analiza neutrului). (In general aceste probleme au fost declarate intratabile de catre lingvisti; in aceasta sectiune vom prezenta rezolvari cu acuratete cuprinsa intre 96%-99.7%).

[5] Poate fi recunoscut autorul unor texte cu autor controversat? Analiza computationala a amprentei stilistice. Aplicatii in detectarea pastiselor, a fraudelor electronice, detectarea comentariilor false.

[6] Categorizare si clasificare automata de texte in functie de topic. [7] Analiza de corpus. Detectarea de colocatii, detectare automata si analiza ortografica a

cuvintelor inrudite (cuvinte mostenite, perechi cognates). Aplicatii in simplificarea textelor. [8] Detectarea automata din texte a opiniilor, analiza computationala a polaritatii sentimentelor,

detectarea umorului. Aplicatii in predictia optiunii politice din analiza discursurilor. BIBLIOGRAFIE: [1] G. Altmann (ed). Handbook of Quantitative Linguistics, 2003 [2] R. Dale (ed) The Handbook of Natural Language Processing, Marcel Dekker, New York,

2000. [3] Liviu P. Dinu. Metode Formale si de Clasificare in Lingvistica Matematica si

Computationala. Ed. Universitatii Bucuresti, 2004. [4] Liviu P. Dinu. Rank distance and applications. Ed. Universitatii Bucuresti, 2011

Page 12: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

[5] Manning, C., H. Schutze. Foundations of statistical natural language processing, MIT Press, 1999

[6] Mosteller, Frederick and David L. Wallace. Inference and Disputed Authorship. Distributed for the Center for the Study of Language and Information. 320 p. 6 x 9 Series: (CSLI-DHS) Center for the Study of Language and Information - The David Hume Series, 2007

[7] Arhivele revistelor: Computational Linguistics, Literary and Linguistic Computing, Quantitative Linguistics

[8] Volumele conferintelor LREC si ale celor patronate de ACL (ACL, EACL, NAACL, COLING, CICLING, RANLP). Disponibile on-line la http://aclweb.org/anthology-new/

Page 13: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS TITLU: PROGRAMARE WEB UTILIZAND LIMBAJUL JAVA – SER VLETI DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Seminar = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 INSTRUCTORI: Conf.Dr. Andrei Baranga PROGRAMA: I. Preliminarii I.1 Despre arhitectura client-server: I.2 Aplicatii de tip web: I.3 Dezvoltarea de aplicatii WEB pe WINDOWS utilizând server-ul Tomcat. I.4 Exemplu de realizare si execuţie a celui mai simplu servlet II. Servleţi. II.1 Elemente de bază II.2 Servleţi şi package-uri. II.3 Alte detalii despre servleţi II.4 Parametrii de iniţializare II.5 Proiectarea unui client de Web II.6 Parametrii unui servlet II.7 Invocarea servletilor din HTML II.8 Caractere speciale in textul HTML II.9 Utilizarea headerelor cererii trimise de către client II.10 Transmiterea răpunsului în formă compactată II.11 Protejarea paginilor cu ajutorul parolelor II.12 Variabile CGI (Common Gateway Interface) II.13 Codul de răspuns al servletului II.14 Headerele răspunsului II.15 Utilizarea conexiunilor persistente II.16 Obiectele din clasa Cookie II.17 Gestionarea sesiunilor BIBLIOGRAFIE: [1] Athanasiu, Irina; Costinescu, Bogdan; Drăgo, Octavian Andrei; Popovici, Florentina Irina; Gaburici, Vasile, Limbajul Java - O Perspectivă pragmatică Agora, 2000 [2] Baranga A.,Programare Web Utilizand JAVA, Editura Albastra, Cluj-Napoca, 2007 [3] Hall, Marty, Core Servlets and JavaServer Pages (JSP), Prentice Hall PTR, 2000

Page 14: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FIȘA UNITĂȚII DE CURS

TITLU: UNDERGRADUATE RESEARCH OPPORTUNITIES (Oportu nitati de cercetare pentru studentii de licenta) DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă STATUTUL: OPȚIONAL NR.ORE/SĂPTĂMÂNĂ: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 5 / anul III de studiu FORMA DE EXAMINARE: VERIFICARE CREDITE: 5 COORDONATOR CURS: Prof.Dr. Gheorghe Stefanescu; INSTRUCTORI POTENTIALI: Cadrele didactice de la Departamentul de Informatica care propun teme de cercetare (studentii interesati vor primi un link la care pot gasi lista cu temele de cercetare propuse pentru anul curent)

OBIECTIVE:

Acest curs ofera studentilor de la licenta posibilitatea de a se implica in probleme de cercetare actuale, interesante sub directa indrumare a unor profesori care sunt cercetatori activi si cu experienta in cercetare. Profesori de la alte universitati din tara ori strainatate, ori cercetatori din institute de cercetare, pot fi cooptati in cadrul acestui curs in calitate de co-supervizori. In masura posibilitatilor existente, temele de cercetare pot fi parte a unor proiecte de cercetare aflate in derulare.

Pentru a putea sa isi atinga obiectivele, cursul este limitat la 10% din studenti (20 de studenti), fiecare cadru didactic participant putand superviza cel mult 3 studenti.

ORGANIZARE:

In primele 2 spatamani (1-15 Oct, intensiv, 28 ore), studentii vor audia prezentarile de domenii si teme de cercetare oferite. Studentii care la sfarsitul celor 2 saptamani nu vor gasi o tema si un supervizor potrivit vor fi redistribuiti la unul din celelalte cursuri optionale existente.

In cursul semestrului studentul studiaza literatura de specialitate si va prezenta o expunere de circa 1 ora in cadrul unor intalniri saptamanale consacrate acestei activitati. Activitatea de baza este cercetarea si se va finaliza cu un Raport de Cercetare care va fi prezentat la sfarsitul semestrului.

EVALUARE:

In evaluarea studentilor, 20% din nota este pe baza activitatii din timpul anului si este bazata pe studiul literaturii de specialitate si a prezentarii facute. Restul de 80% din nota este pe baza Raportului de Cercetare care va fi predat la sfarsitul semestrului. O pondere de 20% din nota o constituie evaluarea rezultatelor noi ori a elementelor de originaliate prezente in Raport. Raportul va fi evaluat de o comisie formata 3 persoane (Presedinte, Supervizor si un Raportor independent), numita separat pentru fiecare student.

COMPETENTE TRANSVERSALE:

O activitate suplimentara, care va veni in sprijinul formarii unor deprinderi sanatoase de cercetare la studentii participanti, este organizarea de activitati legate de: (a) indrumare privind modul de redactare a unei lucrari (Latex, formatare, stilistica, etc.); (b) expuneri legate de etica cercetarii; (c) deprinderi de participare la viata stiintifica a comunitatii; (d) colaborarea cu colegii ori cu studentii mai mici ori mai mari pe teme de cercetare comune; etc.

Page 15: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

CURSURI OPŢIONALE DE INFORMATIC Ă

PROPUSE

PENTRU ANUL UNIVERSITAR 2014-2015

SEM. II

DOMENIUL DE LICEN ŢĂ:

INFORMATIC Ă

SPECIALIZ ĂRILE: INFORMATIC Ă

MATEMATIC Ă-INFORMATIC Ă

Page 16: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

Lista cursurilor optionale – sem. II 6.1 Algoritmi genetici. Aplicatii in bioinformatica si web mining 6.2 Aplicatii mobile pentru iOS 6.3 Data warehouse 6.4 Initiere in cercetare si bioinformatica 6.5 Metode de instruire automata cu aplicatii in imagistica medicala 6.6 Paradigme de programare in Cloud Computing 6.7 Programare Web utilizand limbajul Java-JSP 6.8 Programarea interfetelor web pentru baze de date utilizand PHP si MySQL 6.9 Tehnici de programare a aplicatiilor grafice 6.10 Testarea sistemelor software

Fiecare student face 5 opțiuni, în ordinea preferințelor

Page 17: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS TITLU: ALGORITMI GENETICI. APLICATII IN BIOINFORMAT ICA SI WEB

MINING DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă (MATEMATICA-INFORMATICA) STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Prof.Dr. Denis Enachescu; Asist.Dr. Bianca Mogos OBIECTIVE: Cursului isi propune sa completeze cunostintele necesare urmarii ulterioare, de catre studenti, a unor programe de Masterat/ Doctorat in domeniul Inteligentei Artificiale si a Bioinformaticii. La laborator se va lucra in Matlab (toolbox-ul Bioinformatics dar nu numai) PROGRAMA: - Algoritmi genetici –AG - Clasificare supervizata cu AG - Clasificare nesupervizata cu AG - AG in bioinformatica - AG in Web Mining BIBLIOGRAFIE SELECTIVA: Bandyopadhyay, S. &Pal, S.K. (2007) Classification and Learning using Genetic Algorithms, Springer

Page 18: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FIȘA UNITĂȚII DE CURS

TITLU: APLICA ȚII MOBILE PENTRU IOS DOMENIUL DE LICEN ȚĂ: INFORMATIC Ă (MATEMATIC Ă) SPECIALIZAREA: INFORMATIC Ă (MATEMATIC Ă- INFORMATIC Ă) STATUTUL: OPȚIONAL NR. ORE / SĂPTĂMÂNĂ: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Conf.Dr. Radu Gramatovici OBIECTIVE: Cursul prezintă principiile de bază ale dezvoltării aplicațiilor mobile utilizând limbajul de programare Objective-C în sistemul de operare iOS. În cadrul cursului vor fi prezentate atât particularitățile limbajului Objective-C, cât și cele mai bune practici de dezvoltare de aplicații mobile. În cadrul laboratorului va fi prezentat mediul de dezvoltare Xcode. PROGRAMĂ:

1. Dezvoltarea de aplicații mobile în general: diferența între dezvoltarea de aplicații Desktop și aplicații mobile, limitările și capacitățile dispozitivelor mobile, generalități despre mediile de dezvoltare de aplicații mobile (Android, Windows 8, iOS).

2. Introducere în Objective-C: tehnologia iOS, conceptul de design MVC, mecanismele de bază ale limbajului Objective-C, introspecția, framework-ul Foundation, protocoale.

3. View: obiectul UIView, subclase custom ale lui UIView, metode de desenare, suport pentru auto-rotație, tehnici de recunoaștere a gesturilor.

4. Controller: ciclul de viață al unui UIViewController, controller-e de navigație în aplicație (UINavigationController și UITabBarController), tranziții între controller-e.

5. Controale UI standard (framework-ul UIKit): UITableView, UIImageView, UIScrollView, UIWebView, etc.

6. Folosirea capacităților telefonului: serviciul de localizare GPS, accelerometrul, busola, integrarea harților, etc.

7. Persistența datelor: liste de proprietăți, arhivarea obiectelor, SQLite, CoreData, etc. 8. Topici avansate: transmiterea de notifcări între obiecte, categorii, blocuri, măsurarea

performanței aplicației. BIBLIOGRAFIE:

1. Documentația Apple: https://developer.apple.com/library/ios/navigation/ 2. Erik Buck, Donald Yacktman. Cocoa Design Patterns. Addison-Wesley, 2009. 3. Stephen Kochan. Programming in Objective-C. Sams Publishing, 2004. 4. Matt Neuburg. Programming iOS 4. O’Reilly Media Inc., 2011. 5. Scott Stevenson. Cocoa and Objective-C: Up and Running. O’Reilly Media Inc., 2010.

Page 19: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FIȘA UNITĂȚII DE CURS

TITLU: DATA WAREHOUSE DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă (MATEMATICA-INFORMATICA) STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Lect.Dr. Gabriela Mihai

OBIECTIVE:

- Familiarizarea cu cele mai noi concepte de stocare a datelor istorice prin integrarea acestora într-o singură structură care constituie baza pentru aplicațiile de Business Intelligence.

- Însuşirea tehnicilor de modelare, proiectare şi optimizare specifice tehnologiei Data Warehouse.

- Exploatarea acestor tipuri de baze de date cu scopul de a obţine informaţii necesare în procesul de luare a deciziilor la nivel managerial.

PROGRAMA: 1. Modelarea şi implementarea unei baze de date de tip Data Warehouse (Componente arhitecturale în Data Warehouse. Data Mart-uri. Modelarea dimensională. Fapte şi dimensiuni. Schema stea. Schema fulg. Extragerea, transformarea, transportul şi încărcarea datelor în Data Warehouse). 2. Tehnici de optimizare în Data Warehouse (Constrângeri de integritate pentru modele dimensionale. Indecşi specifici modelului dimensional. Obiecte de tip dimensiune. Dependenţe prin ierarhii. Partiţionare şi paralelism în Data Warehouse. Rescrierea cererilor utilizând vizualizări materializate). 3. Data Warehouse – componentă esențială a oricărei strategii de Business Intelligence. 4. Interogarea eficientă şi analiza datelor în scopuri decizionale (Definirea ferestrelor pentru agregări. Funcţii de clasare. Funcţii pentru analiză). BIBLIOGRAFIE: 1. Inmon W., Bulding the Data Warehouse, J.Wiley, 2005 2. Kimball R., Ross M., Thornthwaite W., Mundy J., Becker B., The Data Warehouse Lifecycle Toolkit: Practical Techniques for Building Data Warehouse and Business Intelligence Systems, J.Wiley, 2007 3. *** - Oracle11g Database Data Warehousing Guide, Oracle Corporation, 2010

Page 20: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FIȘA UNITĂȚII DE CURS

TITLU: INI ȚIERE ÎN CERCETARE ȘI BIOINFORMATIC Ă DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă (MATEMATICA-INFORMATICA) STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Prof.Dr. Andrei Paun OBIECTIVE: Cursul se adreseaza studentilor interesati in cercetare in bioinformatica. Studentii vor fi expusi atat la elemente de baza din bioinformatica cat si la si rezultate recente din bioinformatica si biologia sistemelor. Studentii vor dobandi la acest curs si experienta in cercetare: cum se citeste o lucrare, structurarea lucrarilor stiintifice, cum se scrie o lucrare stiintifica, modelul de recenzie al lucrarilor stiintifice: peer-review, clasificarea revistelor si a conferintelor. PROGRAMĂ: 1. Notiuni elementare de biologie celulara, genetica si biochimie. 2. Experimentul lui Adleman pentru rezolvarea unei probleme NP completa folosind ADN si unelte biochimice. 3. Experimentul lui Lipton pentru rezolvarea SAT, alte rezultate din calculabilitatea bazata pe ADN. 4. Autoasamblare: experimentele lui Eric Winfree, Ned Seeman, Paul Rothemund, etc. 5. Alinierea secventelor (sequence alignment): Algoritmii optimali de aliniere pentru secvente ADN sau proteine, pentru aliniere globala sau locala: Smith-Waterman, Needlman- Wunsch. Algoritmii heuristici pentru alinieri: Blast si variante, Fasta, PatternHunter, PatternHunter2. 6. Biologie evolutionara: Aliniere afina, matrici de substituire: BLOSUM50, BLOSUM62, PAM150, aliniere multipla. 7. Modele abstracte de calculabilitate bazata pe ADN si celule: Sisteme H, Sisteme P. 8. Introducere in cercetare: revista, articol, peer-review, referinte, cuvinte cheie, factor de impact pentru revista, LaTeX, ordinea autorilor, structurarea articolelor, elemente introductive despre redactarea tehnica. BILBIOGRAFIE: 1. Leonard M. Adleman, Molecular computation of solutions to combinatorial problems, Science, Vol. 266, Iss. 5187, 1994, pp. 1021-1024. 2. Richard J. Lipton, DNA Solution of Hard Computational Problems, Science, Vol. 268, Iss. 5210, 1995, pp. 542-545. 3. Erik Winfree, Furong Liu, Lisa A. Wenzler, Nadrian C. Seeman, Design and self-assembly of two-dimensional DNA crystals, Nature, Vol. 394, 1998, pp. 539-544 4. Paul W. K. Rothemund, Folding DNA to create nanoscale shapes and patterns, Nature, Vol. 440, 2006, pp. 297-302 5. Arthur M. Lesk, Introduction to Bioinformatics, Oxford University Press, 2002, 290 pp., ISBN: 0199251967.

Page 21: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

6. Neil C. Jones, Pavel A. Pevzner, An Introduction to Bioinformatics Algorithms (Computational Molecular Biology), The MIT Press, 2004, 456 pp., ISBN: 0262101068. 7. Gheorghe Paun, Grzegorz Rozenberg, Arto Salomaa, The Oxford Handbook of Membrane Computing, Oxford University Press, 2010, 696 pp., ISBN: 0199556679. 8. Temple F Smith, Michael S Waterman, Comparison of biosequences, Advances in Applied Mathematics, Vol 2, Iss. 4, 1981, pp. 482-489. 9. Saul B. Needleman, Christian D. Wunsch, A general method applicable to the search for similarities in the amino acid sequence of two proteins, Journal of Molecular Biology, Vol. 48, Iss. 3, 1970, pp. 443-453. 10: Steven Henikoff, Jorja G. Henikoff, Amino acid substitution matrices from protein blocks, PNAS, Vol. 89, 1992, pp. 10915-10919. 11. Stephen F. Altschul, Warren Gish, Webb Miller, Eugene W. Myers, David J. Lipman, Basic local alignment search tool, Journal of Molecular Biology, Vol. 215, Iss. 3, 1990, pp. 403-410. 12. Bin Ma, John Tromp, Ming Li, PatternHunter: faster and more sensitive homology search, Bioinformatics, Vol. 18, Iss. 3, 2002, pp. 440-445.

Page 22: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS TITLU: METODE DE INSTRUIRE AUTOMATA CU APLICATII ÎN IMAGISTICA MEDICALA DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă (MATEMATICA-INFORMATICA) STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Lect.Dr. Iuliana Munteanu (FMI, Depart amentul de Matematica) OBIECTIVE: Obiectivul acestui curs este studierea unor metode și tehnici de instruire automată nesupervizată și supervizată și implementarea algoritmilor de instruire automată. Sintagma imagistica medicală se referă la obținerea de informații privind starea fiziologică ori patologică, pe baza interpretării imaginii unei porțiuni a corpului. Metodele de clasificare a imaginilor pot fi utilizate în aplicații de recunoaștere a formelor pentru imagini medicale (microscopie electronică, imagini RMN, tomografii, ecografii etc.). PROGRAMA: [1] Tipuri de imagini în imagistica medicală; model de procesare a imaginilor medicale.

[2] Formele și recunoașterea formelor: caracteristici calitative și cantitative; extragerea și selecția caracteristicilor; măsuri de similaritate și disimilaritate.

[3] Tehnici de instruire supervizată: regula celor mai apropiați k vecini; funcții de discriminare; metode de cluster implementate pe arhitecturi neuronale (algoritmul perceptron, perceptronul multistrat); regula lui Bayes; arbori de decizie; entropia - măsură a omogenității; algoritmul ID3; mașini pe vectori suport (introducere în teoria Vapnik-Chervonenkis, hiperplanul optim de separare, hiperplanul optim de separare generalizat, funcții nucleu, generalizare în spațiu asociat multidimensional).

[4] Tehnici de instruire nesupervizată: analiza componentelor principale; metoda celor mai mici pătrate; metoda nucleelor dinamice; algoritmi de clasificare ierarhici, algoritmi de clasificare secvențiali (algoritmul k-means, algoritmul ISODATA).

[5] Aplicații ale algoritmilor studiați în recunoașterea formelor în imagistica medicală. BIBLIOGRAFIE: [1] Charles L. Epstein, Introduction to the Mathematics of Medical Imaging, SIAM,

Philadelphia, 2008. [2] Md. Mahmudur Rahman, B.C. Desai, P. Bhattacharya, Supervised Machine Learning based

Medical Image Annotation and Retrieval, ImageCLEFmed 2005. CLEF 2005: 692-701. [3] Anke Meyer-Base, Pattern Recognition for Medical Imaging, Elsevier Inc., 2004. [4] L. State, I. Paraschiv-Munteanu, Introducere în teoria statistica a recunoasterii formelor,

Editura Universitatii din Pitești, 2009. [5] L. State, I. Paraschiv-Munteanu, N. Popescu-Bodorin, Blood corpuscles classification

schemes for automated diagnosis of hepatitis, Universitatea din Pitesti - Buletin Stiintific, Seria Matematica si Informatica, 14, 2008.

[6] Vapnik V.N., Statistical Learning Theory, New York, Wiley, 1998.

Page 23: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS TITLU: PARADIGME DE PROGRAMARE ÎN CLOUD COMPUTING DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă SPECIALIZAREA: INFORMATIC Ă, TEHNOLOGIA INFORMA ŢIEI STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Examen CREDITE: 5 INSTRUCTORI: Conf.Dr. Cristian Kevorchian (Profesor asociat FMI) OBIECTIVE: Cloud computing este o modalitate inovatoare de programare și utilizare a calculatoarelor. Se deschid importante oportunități tehnologice pentru dezvoltatorii de produse software în sensul că sunt disponibilizate platforme complexe destinate dezvoltării de noi tipuri de aplicații. Contextul tehnologic generat de cloud computing va aduce în perioada următoare schimbari majore în livrarea soluțiilor IT în sensul livrarii acestora ca servicii(IT-as-a-Service). Este important pentru absolvenții noștri de a înțelege această transformare a IT-ului care se bazează pe trei tendințe importante: mobilitate, cloud computing și big data. . Categoriile de aplicații care operează în cloud și care fac obiectul cursului nostru, aliniate fiind tendințelor menționate anterior sunt:

1. Aplicațiile colaborative 2. Serviciile 3. Procesele de calcul distribuit de dimensiuni mari.

În programa propusă ne-am orientat către HDInsight, care este un serviciu bazat pe Hadoop și care se impune ca fiind 100 la sută Apache Hadoop în cloud. Platforma de date se bazează pe cloud și permite gestiunea datelor de orice tip, fie structurate sau nestructurate, precum și de orice dimensiune. HDInsight permite o exploatare la un nivel de complexitate superior a datelor furnizate la nivel global. HDInsight și limbajul funcțional F# împreună cu Hive, Pig și Mahout furnizează un complex computational deschis operațional în cloud. Puterea de analiza a datelor oferită de Hadoop pune la dispozitia dezvoltatorilor de solutii BI, instrumente extrem de puternice care sa fie utilizate de viitorii data scientisti, ale căror competențe trebuie să îmbine cunoștințe de tehnologia informației, matematică și business. PROGRAMA:

1) Interacțiunea dintre WCF si Azure Service Bus ca serviciu al AppFabric. 2) API-uri REST pentru lucrul cu servicii BLOB 3) Utilizarea serviciului BLOB Storage in C#. 4) Mutarea datelor in/din serviciile de baze de date din cloud cu JDBC and ODBC. 5) Incarcarea datelor în SQL Services din Hadoop prin intermediul YARN. 6) Hadoop și paradigma de programare MapReduce. 7) Implementarea paradigmei MapReduce cu F# . 8) Utilizarea serviciului HDInsight(Hadoop în Azure) și F# pentru

serializarea/deserializarea obiectelor. Utilizare Apache AVRO. 9) Lucrul cu partiții Hive. Sesiuni Hive în Azure Power Shell.

Page 24: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

10) Utilizarea HDInsight si Apache Mahout în clustering(k-mean clustering, fuzzy k-mean și spectral clustering - o masina/MapReduce).

11) Utilizare Apache Mahout în machine learning(Latent Dirichlet Allocation-o masina/MapReduce)

12) Utilizarea HiveQL si HDInside pentru interogarea unor volume mari de date. 13) Utilizarea ”Pig latin”, ca limbaj de scripting si HDInsight în operații ETL si aplicatii in

business intelligence. 14) Utilizarea bibliotecilor matematice ”Cloud Numerics” în C# și F#. 15) Hadoop-Sharp interfață CLR pentru HADOOP.

BIBLIOGRAFIE: [1] R. Buyya, J. Broberg, A. Goscinski CLOUD COMPUTING. Principles and Paradigms,

Wiley, Inc., Hoboken, New Jersey, 2011 [2] T.Velte, J. Velte, R. Elsenpeter CLOUD COMPUTING: A Practical Approach ,

MacGrow Hill, 2010 [3] Mark C. Chu-Carroll Code in the Cloud - Programming Google AppEngine Raleigh,

North Carolina Dallas, Texas, 2011 [4] Sriram Krishnan Programming Windows Azure Programming O’Reilly Media, 2010 [5] Scott Densmore, Alex Homer,,Masashi Narumoto, John Sharp, Hanz Zhang Building

Hybrid Applications in the Cloud Microsoft Press, 2012

Page 25: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS TITLU: PROGRAMAREA INTERFE ŢELOR WEB PENTRU BAZE DE DATE UTILIZÂND PHP SI MYSQL DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă (MATEMATICA-INFORMATICA) STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Lect.Dr. Letitia Velcesvu; Asist.Drd. Laurentiu Vasile OBIECTIVE: Cursul prezintă noţiuni fundamentale, tehnici si tehnologii care stau la baza paginilor web ce utilizează baze de date. Studenţii care vor urma acest curs vor dobândi experienţă în utilizarea PHP si MySQL, aplicate în crearea si prelucrarea paginilor web. Dintre obiectivele cursului menţionăm:

- însusirea celor mai importante tehnologii si dobândirea aptitudinilor necesare dezvoltării si gestiunii paginilor web dinamice;

- prezentarea si utilizarea limbajului PHP, precum si a modalităţilor de stocare si regăsire a datelor utilizând server-ul de baze de date MySQL;

- aplicarea noţiunilor prezentate la curs pentru rezolvarea unor probleme specifice întâlnite în dezvoltarea paginilor web.

PROGRAMA: [1] Introducere în PHP: HTML vs. PHP, aplicaţii web dinamice, procesarea la nivel de client vs procesarea la nivel de server, avantaje si functionalităţi ale PHP, configurarea fisierului PHP.INI. [2] Utilizarea server-ului web Apache: instalare, configurare, host-uri virtuale, proprietăţi etc. [3] Elemente de programare PHP: operatori, funcţii, tablouri etc. [4] Prelucrarea fisierelor de date în PHP: căutare, editare, securitate, gestiunea directoarelor etc. [5] Configurarea si utilizarea server-ului de baze de date MySQL: instalare si configurare, conectare, funcţii specifice, apeluri SQL, utilitare pentru administrarea bazei de date. [6] Lucrul cu baze de date si formulare: configurarea PHP pentru interacţiunea cu baza de date, interfeţe de programare specifice, lucrul cu formulare, utilizarea cookie-urilor etc. [7] Generarea imaginilor, documentelor PDF si Excel utilizând PHP. [8] Programare orientată pe obiecte în PHP. BIBLIOGRAFIE: [1] Welling L., Thomson L., PHP and MySQL Web Development, Addison Wesley, 2008. [2] Ullman L., PHP 6 and MySQL 5 for Dynamic Web Sites: Visual QuickPro Guide, Peachpit Press, 2007. [3] Williams H., Lane D., Web Database Applications with PHP & MySQL, O'Reilly Media, 2004. [4] Curioso A., Bradford R., Galbraith P., Expert PHP and MySQL, Wrox, 2010. [5] Suehring S., Converse T., Park J., PHP6 and MySQL Bible, Wiley, 2009.

Page 26: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS TITLU: PROGRAMARE WEB UTILIZAND LIMBAJUL JAVA – JSP DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă (MATEMATICA-INFORMATICA) STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Conf.Dr. Andrei Baranga PROGRAMA: I.Java Server Pages (JSP) I.1 Generalităţi I.2 Elemente de cod JAVA în JSP I.3 Atribute şi metode ale unei clasa obţinută din JSP I.4 Alte directiva JSP I.5 Tratarea exceptiilor în paginile JSP I.6 Includerea de fişiere în paginile JSP I.7 Invocarea applet-urilor din JSP I.8 Utilizarea claselor de tip Java Bean în JSP I.9 Tag-uri I.10 Clasa BodyTagSupport II. Alte tehnici diverse folosite în programarea Web II.1 Redirecţionarea cererilor către alte pagini II.2 Folosirea formularelor HTML II.3 Folosirea applet-urilor ca interfete pentru servleţi III. Arhitectura three-tier III.1 Accesarea bazelor de date utilizând JDBC III.2 Principalii paşi în lucrul cu JDBC şi bazele de date III.3 Câteva exemple de lucru cu JDBC şi bazele de date III.4 Obiectele de tip PreparedStatement şi CallableStatement III.5 Tehnica de conectare Connection Pool pentru aplicaţii Web BIBLIOGRAFIE: [1] Athanasiu, Irina; Costinescu, Bogdan; Drăgo, Octavian Andrei; Popovici, Florentina Irina; Gaburici, Vasile, Limbajul Java - O Perspectivă pragmatică Agora, 2000 [2] Baranga A.,Programare Web Utilizand JAVA, Editura Albastra, Cluj-Napoca, 2007 [3] Hall, Marty, Core Servlets and JavaServer Pages (JSP), Prentice Hall PTR, 2000

Page 27: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS

TITLU: TEHNICI DE PROGRAMARE A APLICATIILOR GRAFICE DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă (MATEMATICA-INFORMATICA) STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Lect.Dr. Sorin Stupariu (FMI, Departam entul de Matematica) OBIECTIVE: Obiectivul cursului este de a prezenta tehnici avansate de programare grafica 3D folosind OpenGL, precum si fundamentele teoretice ale acestor metode de lucru. Cursul va fi completat de un laborator, unde vor fi realizate proiecte care sa ilustreze conceptele si rezultatele expuse si care vor reprezenta componenta principala a verificarii semestriale. PROGRAMA: [1] Detectarea suprafetelor vizibile. [2] Modele de iluminare si umbrire. [3] Modele de colorare. [4] Texturarea suprafetelor. [5] Aplicatii grafice interactive. [6] Animatie pe calculator. BIBLIOGRAFIE: [1] G. Albeanu, Grafica pe calculator. Algoritmi fundamentali, Editura Universitatii din

Bucuresti, 2001. [2] R. Baciu, Programarea aplicatiilor grafice 3D cu OpenGL, Editura Albastra, 2005. [3] D. Hearn, M. Baker, Computer Graphics with OpenGL (3rd edition), Prentice Hall, 2003. [4] P. Schneider, D. Eberly, Geometric Tools for Computer Graphics, Morgan Kaufmann, 2003. [5] P. Shirley, M. Ashikhmin, M. Gleicher, S. Marschner, E. Reinhard, K. Sung, W. Thompson,

P. Willemsen, Fundamentals of Computer Graphics (2nd edition), AK Peters, Wellesley, 2005.

[6] D. Shreiner, M. Woo, J. Neider, T. Davis, OpenGL Programming Guide, Sixth Edition, Addison-Wesley, 2008.

Page 28: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

FISA UNITATII DE CURS TITLU: TESTARE SISTEMELOR SOFTWARE DOMENIUL DE LICEN ŢĂ: INFORMATIC Ă (MATEMATICA) SPECIALIZAREA: INFORMATIC Ă (MATEMATICA-INFORMATICA) STATUTUL: optional NR.ORE/SAPTAMANA: 3 (Curs = 2; Laborator = 1) SEMESTRUL: 6 / anul III de studiu FORMA DE EXAMINARE: Verificare CREDITE: 5 (3) INSTRUCTORI: Prof.Dr. Florntin Ipate OBIECTIVE: Cursul prezinta principalele tehnici si metode de testare a sistemelor software. Sunt prezentate atat metodele ingineresti de larga utillizare practica, cat si metode teoretice si/sau care fac obiectul cercetarilor recente. PROGRAMA: 1. Testarea sistemelor software: probematica; testare vs verificare formala; tehnici de

generare de date de test; unit testing; JUnit. 2. Metode de testare functionala (black-box): partitionarea ın clase de echivalenta, analiza

valorilor de frontiera; metoda partitionarii in categorii, testarea folosind analiza cauza-efect. 3. Metode de testare structurala (white-box): acoperiri la nivel de instructiune, ramura,

conditie/decizie, conditii multiple, etc.; complexitatea ciclomatica (McCabe), generarea de circuite liniar independente; strategii de generare de date de test la nivel de cale; utilitare de code coverage.

4. Testarea bazata pe mutatie (mutation testing): weak mutation, strong mutation; operatori de mutatie; utilizarea mutantilor pentru evaluarea seturilor de test; utilitarul MuJava.

5. Generarea datelor de test folosind metode de cautare metaeuristice: metode de cautare locale si metode globale; folosirea metodelor metaeuristice in testarea structurala si testarea functionala.

6. Metode de testare bazate pe formalisme cu stari: metodele W, Wp(W partial), UIO (unique input/output), DS (distinguishing sequence) pentru masini cu stari finite; testare bazata pe formalisme extinse cu stari (extended finite state machines).

7. Testare si analiza pe baza modelului: proprietati de safety si liveness, invarianti, stari acceptoare, stari moarte; explorarea scenariilor folosind compunere de automate; tehnici de reducere a modelului (pruning techniques); exemplificare folosind utilitarul NModel.

BIBLIOGRAFIE: 1. MuJava home page: http://cs.gmu.edu/~offutt/mujava 2. MuClipse home page http://muclipse.sourceforge.net/ 3. NModel home page http://nmodel.codeplex.com/ 4. M. Holcombe, F. Ipate: Correct Systems: building business process solutions, Springer

Verlag, 1998. 5. F. Ipate: Testare functionala; Testare structurala; Mutation testing; Search based testing –

note de curs. 6. J. Jacky, M. Veanes, C. Campbell, W. Schulte. Model-based Software Testing and Analysis

with C#. Cambridge University Press, 2008.

Page 29: CURSURI OPŢIONALE DE INFORMATICĂ - fmi.unibuc.rofmi.unibuc.ro/ro/pdf/2014/...anul_III_2014-2015.pdf · universitar 2014-2015 ... aplicatii ale teoriei grafurilor si combinatoricii

7. R. Lefticaru, F. Ipate: Automatic State-Based Test Generation Using Genetic Algorithms. SYNASC 2007, 188-195, 2007.

8. A. Mathur: Foundations of Software Testing, Addison-Wesley Professional, 2007. 9. P. McMinn. Search-based software test data generation: a survey. Softw. Test., Verif. Reliab.,

14(2):105–156, 2004. 10. M. Roper: Software Testing, McGraw-Hill, 1994