Conferinţa Naţională de Învăţământ Virtual, ediţia a IV-a, Graph Magics. Dumitru Ciubatîi Universitatea din Bucureşti,

Similar documents
GRAFURI NEORIENTATE. 1. Notiunea de graf neorientat

Parcurgerea arborilor binari şi aplicaţii

VISUAL FOX PRO VIDEOFORMATE ŞI RAPOARTE. Se deschide proiectul Documents->Forms->Form Wizard->One-to-many Form Wizard

Aplicatii ale programarii grafice in experimentele de FIZICĂ

Pasul 2. Desaturaţi imaginea. image>adjustments>desaturate sau Ctrl+Shift+I

Modalităţi de redare a conţinutului 3D prin intermediul unui proiector BenQ:

Ghid de instalare pentru program NPD RO

22METS. 2. In the pattern below, which number belongs in the box? 0,5,4,9,8,13,12,17,16, A 15 B 19 C 20 D 21

SUBIECTE CONCURS ADMITERE TEST GRILĂ DE VERIFICARE A CUNOŞTINŢELOR FILIERA DIRECTĂ VARIANTA 1

Click pe More options sub simbolul telefon (în centru spre stânga) dacă sistemul nu a fost deja configurat.

Teoreme de Analiză Matematică - II (teorema Borel - Lebesgue) 1

Application form for the 2015/2016 auditions for THE EUROPEAN UNION YOUTH ORCHESTRA (EUYO)

Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic

Split Screen Specifications

Un tip de data este caracterizat de: o O mulţime de date (valori є domeniului) o O mulţime de operaţii o Un identificator.

6. MPEG2. Prezentare. Cerinţe principale:

riptografie şi Securitate

Mail Moldtelecom. Microsoft Outlook Google Android Thunderbird Microsoft Outlook

Exerciţii Capitolul 4

Split Screen Specifications

Universitatea din Bucureşti. Facultatea de Matematică şi Informatică. Şcoala Doctorală de Matematică. Teză de Doctorat

Universitatea din Bucureşti Facultatea de Matematică şi Informatică. Matematică (Varianta 4) b este: A b 2 a B b a C b+ a D a b

Universitatea din Bucureşti Facultatea de Matematică şi Informatică. Matematică (Varianta 1)


Soft-ul de evaluare Teste computerizate pentru educaţie tehnologică

Curs 3 Word 2007 Cuprins

Curriculum vitae Europass

EPI INFO. - Cross-tabulation şi testul 2 -

Capitolul V MODELAREA SISTEMELOR CU VENSIM

Press review. Monitorizare presa. Programul de responsabilitate sociala. Lumea ta? Curata! TIMISOARA Page1

Clasele de asigurare. Legea 237/2015 Anexa nr. 1

PREZENTARE CONCURSUL CĂLĂRAŞI My joy is my sorrow unmasked. 1

PREZENTARE INTERFAŢĂ MICROSOFT EXCEL 2007

LESSON FOURTEEN

Anexa 2. Instrumente informatice pentru statistică

PROBLEME DE TEORIA NUMERELOR LA CONCURSURI ŞI OLIMPIADE

DIRECTIVA HABITATE Prezentare generală. Directiva 92/43 a CE din 21 Mai 1992

10 Estimarea parametrilor: intervale de încredere

Algoritmică şi programare Laborator 3

Geographical data management in GIS systems

TTX260 investiţie cu cost redus, performanţă bună

Circuite Basculante Bistabile

Hama Telecomanda Universala l in l

BENQ DC E1000 DIGITAL CAMERA PRET E- BOOK

Reprezentări grafice

FIŞA DISCIPLINEI. - Examinări 4 Alte activităţi. 3.7 Total ore studiu individual Total ore pe semestru Număr de credite 5

PROCESOARE NUMERICE DE SEMNAL DIGITAL SIGNAL PROCESSORS

Raionul Şoldăneşti la 10 mii locuitori 5,2 4,6 4,4 4,8 4,8 4,6 4,6 Personal medical mediu - abs,

Consideraţii statistice Software statistic

Ghidul administratorului de sistem

ZOOLOGY AND IDIOMATIC EXPRESSIONS

Laboratorul 1. Primii paşi în Visual Basic.NET

Alexandrina-Corina Andrei. Everyday English. Elementary. comunicare.ro

FIŞA DISCIPLINEI Anul universitar

Gândirea algoritmică - o filosofie modernă a matematicii şi informaticii

DEZVOLTAREA LEADERSHIP-ULUI ÎN ECONOMIA BAZATĂ PE CUNOAŞTERE LEADERSHIP DEVELOPMENT IN KNOWLEDGE BASED ECONOMY

TEORII CONTEMPORANE DESPRE INTELIGENŢĂ CONTEMPORARY APPROACHES TO INTELLIGENCE

OLIMPIADA INTERNAŢIONALĂ DE MATEMATICĂ FORMULA OF UNITY / THE THIRD MILLENIUM 2014/2015 RUNDA A DOUA

Sistemul de operare Windows (95, 98) Componenta My Computer

FIŞA DISCIPLINEI. 3.7 Total ore studiu individual Total ore pe semestru Număr de credite 4

ANEXA NR. 1. Caracteristicile tehnice ale interfeţelor echipamentelor. Exemplu schema de interconectare TRONSON XX: A A1 A2 A3 - B STM-4 A2 A3 STM-1

O abordare orientată pe componente generice pentru crearea dinamică a interfeţelor cu utilizatorul

SORIN CERIN STAREA DE CONCEPŢIUNE ÎN COAXIOLOGIA FENOMENOLOGICĂ

Capitolul 1. Noţiuni de bază

Biraportul în geometria triunghiului 1

ENVIRONMENTAL MANAGEMENT SYSTEMS AND ENVIRONMENTAL PERFORMANCE ASSESSMENT SISTEME DE MANAGEMENT AL MEDIULUI ŞI DE EVALUARE A PERFORMANŢEI DE MEDIU

Executive Information Systems

MANUAL DE METODOLOGIE I*TEACH. PARTEA 1: Sumar. Introduction ICT-Enhanced skills Active learning... Error! Bookmark not defined.

Rigla şi compasul. Gabriel POPA 1

OLIMPIADA DE MATEMATIC ¼A ETAPA JUDEŢEAN ¼A 3 martie 2007

ARHITECTURA CALCULATOARELOR 2003/2004 CURSUL 10

CE LIMBAJ DE PROGRAMARE SĂ ÎNVĂŢ? PHP vs. C# vs. Java vs. JavaScript

SOCIOLOGIE ORGANIZATIONALA

CAPITOLUL 2. PROIECTAREA MODELULUI RELAŢIONAL AL DATELOR PRIN NORMALIZARE

2 MEDIUL BAZELOR DE DATE

Bucureşti, Conferinţa Naţională de Învăţământ Virtual Universitatea din Bucureşti - Virtual Learning

O VARIANTĂ DISCRETĂ A TEOREMEI VALORII INTERMEDIARE

Implementarea unei aplicaţii pentru sisteme e-learning cu capabilităţi multimedia streaming

Defuzzificarea într-un sistem cu logică fuzzy. Aplicaţie: maşina de spălat cu reguli fuzzy. A. Obiective. B. Concepte teoretice ilustrate

Clasificarea internaţională a funcţionării, dizabilităţii şi sănătăţii

LABORATORUL DE SOCIOLOGIA DEVIANŢEI Şi a PROBLEMELOR SOCIALE (INSTITUTUL DE SOCIOLOGIE AL ACADEMIEI ROMÂNE)

Voi face acest lucru în următoarele feluri. Examinând. modul în care muncesc consultanţii. pieţele pe care lucrează

STANDARDUL INTERNAŢIONAL DE AUDIT 120 CADRUL GENERAL AL STANDARDELOR INTERNAŢIONALE DE AUDIT CUPRINS

Metode de căutare neinformată şi informată

PROGRESE ÎN CONSTRUCŢIA REDUCTOARELOR DE TURAŢIE CU AXELE PARALELE

OPTIMIZAREA GRADULUI DE ÎNCĂRCARE AL UTILAJELOR DE FABRICAŢIE OPTIMIZING THE MANUFACTURING EQUIPMENTS LOAD FACTOR

ARHITECTURA SISTEMELOR DE CALCUL ŞI SISTEME DE OPERARE. LUCRĂRILE DE LABORATOR Nr. 12, 13 şi 14

ACADEMIA DE STUDII ECONOMICE FACULTATEA DE FINANŢE, ASIGURĂRI, BĂNCI şi BURSE de VALORI

Curriculum vitae Europass

Maria plays basketball. We live in Australia.

LICITAŢIILE ŞI STRATEGIILE DE LICITARE PE PIAŢA LIBERĂ A ENERGIEI ELECTRICE AUCTIONS AND BIDDING STRATEGIES IN THE OPEN ELECTRIC POWER MARKET

GREUTATE INALTIME IMC TAS TAD GLICEMIE

ANCA-MARIANA PEGULESCU Ministery of National Education

REŢELE DE COMUNICAŢII DE DATE

Poo Laboratoare 1. Laborator Programare cu JTable & JTree JTable JTree... 2

9.1. Structura unităţii de I/E. În Figura 9.1 se prezintă structura unui sistem de calcul împreună cu unitatea

Consideraţii privind gestionarea comunicării stărilor conflictuale

12.Paralelă între stocarea datelor pe suporturi magnetice şi optice şi transmisia serială

ART OF FILM A WAY OF ARCHITECTURAL COMMUNICATION

SOFTWARE & MANAGEMENT EDUCAŢIONAL

Transcription:

Conferinţa Naţională de Învăţământ Virtual, ediţia a IV-a, 2006 133 Graph Magics Dumitru Ciubatîi Universitatea din Bucureşti, workusmd@yahoo.com 1. Introducere Graph Magics este un program destinat construcţiei şi procesării grafurilor. Mulţimea de instrumente şi funcţionalităţi ce oferă posibilitatea modelării simple şi eficiente a grafurilor, generatorul de grafuri şi 17 algoritmi ce pot fi aplicaţi asupra lor determină ca acest program să fie unic în felul său. Figura 1. Graph Magics Notă: programul poate fi descărcat de pe http://www.graph-magics.com. 2. Caracteristicile de bază Graph Magics are o interfaţă grafică confortabilă şi simplă de utilizat, oferind majoritatea facilităţilor importante ce pot fi găsite în alte editoare bine cunoscute: modelarea grafică a nodurilor şi muchiilor, cut/copy/paste, undo/redo, zoom, posibilitatea de a tipări reprezentarea grafului, şi altele. Printre utilităţile importante ale programului se enumeră: 133

134 Facultatea de Matematică şi Informatică, Bucureşti 3 vizualizări diferite ale grafului. Altfel spus, toate trei conţin acelaşi graf, dar în fiecare dintre ele el poate fi aranjat într-un mod diferit. 5 moduri diferite de reprezentare a nodurilor: dreptunghi, pătrat, cerc, elipsă şi romb. Posibilitatea de a aranja automatic nodurile grafului în cerc, arbore, grilă şi graf bipartit. Importarea şi exportarea structurii grafului în alte formate decât cele utilizate de Graph Magics: matrice de adiacenţă, listă de vecini, listă de muchii. Pe lângă reprezentarea grafică a grafului, sunt oferite şi tabele cu valorile costurilor şi capacităţilor muchiilor: Figura 2a. Tabelul costurilor muchiilor Figura 2b. Reprezentarea grafică a grafului împreună cu tabelul costurilor muchiilor Un loc aparte îl ocupă generatorul de grafuri şi cei 17 algoritmi, prezentarea lor urmând mai departe. 2.1. Limitările grafurilor Un graf poate conţine maxim 1000 noduri. Valorile costurilor muchiilor pot fi cuprinse între 1 şi 2147483647 inclusiv. Valorile capacităţilor muchiilor pot fi cuprinse între 0 şi 2147483647 inclusiv. 3. Generatorul de grafuri Cu ajutorul generatorului de grafuri este posibilă crearea simplă şi eficientă a diferitor tipuri de grafuri. Pentru generarea grafului sunt oferiţi următorii parametri: Numărul de noduri: o un număr ales o un număr aleator dintr-un interval ales Numărul de muchii: o un număr ales o un număr aleator dintr-un interval ales 134

Conferinţa Naţională de Învăţământ Virtual, ediţia a IV-a, 2006 135 Costurile muchiilor: o un număr ales o un număr aleator dintr-un interval ales Tipul grafului: o general o bipartit o arbore (cu posibilitatea de a alege numărul maxim de nivele) o arbore binar Opţiunea de a alege dacă muchiile vor fi direcţionate sau nu Opţiunea de a alege dacă graful va fi numaidecât conex sau nu. Figura 3. Generatorul de grafuri Figura 4. Un arbore generat cu 45 noduri şi 5 nivele NOTĂ: orice tip de graf se generează practic instantaneu chiar şi pentru 1000 noduri şi zeci de miii de muchii. 4. Algoritmii Graph Magics oferă 17 algoritmi diferiţi ce pot fi aplicaţi asupra grafurilor construite. Acest fapt face ca programul sa fie foarte util în analiza şi rezolvarea a unui număr mare de probleme. 135

136 Facultatea de Matematică şi Informatică, Bucureşti Algoritmii oferiţi: Drumul minim între 2 noduri (puncte). Figura 5a. Graf ce reprezintă un labirint Figura 5b. Drumul minim găsit între punctul stânga-sus şi punctul dreapta-jos ale grafului Toate drumurile minime ce încep într-un nod selectat. Arborele parţial de cost minim. Componenta conexă ce conţine un nod selectat. Conexitatea grafului (subgrafului). Cicluri şi lanţuri Euleriene. Problema poştaşului chinez (pentru orice tip de graf). Cicluri Hamiltoniene. Lanţuri Hamiltoniene. Fluxul maxim. Fluxul maxim de cost minim. Tăietura minimă. Mulţimea maximă de noduri independente. Clica maximă. Colorarea optimă a grafului. Mediana grafului. Centrul grafului. Figura 6. Fluxul maxim al unui graf 136

Conferinţa Naţională de Învăţământ Virtual, ediţia a IV-a, 2006 137 Figura 7. Tăietura minimă a unui graf Toţi aceşti algoritmi găsesc soluţiile optime (i.e. nici unul dintre ei nu este euristic) şi pot fi aplicaţi atât asupra grafului întreg, cât şi asupra unei submulţimi de noduri. Drumul minim, arborele parţial de cost minim, componenta conexă ce conţine un nod ales, conexitatea grafului şi lanţurile/ciclurile euleriene sunt găsite instantaneu. Fluxul maxim, fluxul maxim de cost minim, tăietura minimă, mediana grafului şi centrul grafului sunt găsite instantaneu în majoritate cazurilor şi au nevoie de câteva secunde pentru grafurile mari. Algoritmii pentru găsirea colorării optime a grafului, a ciclurilor/lanţurilor hamiltoniene, a mulţimii maxime de noduri independente şi a clicăi maxime, care sunt probleme NP-Complete, lucrează mai rapid decât alţi algoritmi cunoscuţi. Spre exemplu, pentru grafuri ce conţin 50-100 noduri, execuţia fiecăruia dintre ultimii doi algoritmi dintre aceşti patru necesită, în medie, mai puţin de câteva secunde. Similar, algoritmul ce rezolvă problema poştaşului chinez pentru grafuri mixte se dovedeşte a fi mai eficient decât alţi algoritmi ştiuţi. Mai mult ca atât, în internet probabil nu se găseşte un alt program care rezolvă această problemă pentru grafuri mixte. Merită de remarcat faptul că pe lângă toate acestea este posibilă execuţia şi urmărirea pas cu pas a unor algoritmi: găsirea drumului minim şi a tuturor drumurilor minime ce încep dintr-un punct, găsirea arborelui parţial de cost minim, găsirea fluxului maxim, a fluxului maxim de cost minim şi a tăieturii minime, şi alţi algoritmi. Acest lucru este foarte util în predarea şi studierea teoriei grafurilor. Figura 8. Un pas al execuţiei algoritmului pentru găsirea drumului minim între 2 puncte 137

138 Facultatea de Matematică şi Informatică, Bucureşti 5. Aplicaţii În prezent teoria grafului este aplicată în mai multe domenii. Datorită acestui fapt Graph Magics poate fi utilizat în mai multe scopuri: Predarea şi studierea teoriei grafurilor. Studierea, analiza şi rezolvarea problemelor ce pot fi abordate cu ajutorul grafurilor. Aplicarea grafurilor şi algoritmilor acestora în diferite domenii: matematică, informatică, economie, sociologie, inginerie civilă şi urbanism, şi altele. Construcţia şi modelarea grafurilor pentru alte scopuri, spre exemplu pentru reprezentarea diferitor diagrame şi scheme. Utilitatea acestui program este de asemenea remarcată prin faptul că în prezent el este utilizat de diferiţi profesori, studenţi şi alte persoane în scopuri didactice, în scopuri comerciale şi chiar în câteva cercetări ştiinţifice. 6. Implementarea programului Graph Magics este în întregime implementat în limbajul C#.NET şi nu utilizează nici o componentă străină. BIBLIOGRAFIE [1] Nicos Christofides, Graph Theory An algorithmic approach, Academic Press Inc., Orlando USA, 1975 [2] Richard C. Larson, Amedeo R. Odoni, Urban Operations Research, Prentice-Hall, New Jersey USA, 1981 [3] David Eppstein, Small maximal independent sets and faster exact graph coloring, http://www.ics.uci.edu/~eppstein/pubs/epp-wads-01.pdf [4] Walter Klotz, Graph Coloring Algorithms, http://www.math.tuclausthal.de/arbeitsgruppen/diskrete-optimierung/publications/2002/gca.pdf 138