Analizor grafic - mediul pentru lucrul cu grafice

Analizorul grafic este un mediu vizual pentru lucrul cu grafice. Analizorul grafic nu oferă doar capacitatea de a crea și procesa grafice, dar vizualizează vizual rezultatele rezultate din algoritmii de lucru. Mediul acceptă lucrul cu grafice orientate și simple, încărcate și descărcate. Programul implementează mai mulți algoritmi pentru procesarea graficelor. începând de la căutarea căii și terminând cu verificarea pentru planaritate. Graphoanalyzer este un asistent de neînlocuit pentru rezolvarea problemelor cu ajutorul graficelor.







Vizualizarea graficelor și algoritmilor.

Procesul de creare și schimbare a unui grafic este intuitiv. Reprezentarea grafică a graficului este o formă de prezentare grafică foarte ușor de înțeles. De asemenea, puteți vedea rezultatul algoritmului în formă vizuală. O reprezentare vizuală poate fi salvată într-un fișier imagine. Pentru o mai mare claritate, puteți adăuga legende elementelor grafice, puteți schimba fundalul, personaliza aspectul elementelor grafice.

Analizor grafic - mediul pentru lucrul cu grafice

Interfața programului

Principala formă a programului este prezentată mai jos:

Analizor grafic - mediul pentru lucrul cu grafice

1 - meniul principal al programului;

2 - zona de lucru;

3 - fereastra matricei de adjuvant;

4 - câmpul de ieșire al rezultatului lucrării;

5 - butoane de comenzi rapide.

Figura 3.1 - Fereastra principală a aplicației

Dialogurile rămase sunt descrise în secțiunile corespunzătoare.

Alte funcții

Sarcinile tipice

Analizorul graficului 1.2 poate fi utilizat pentru a rezolva multe probleme care pot fi reduse la un model matematic al graficelor. Mai jos este o listă de sarcini tipice:

Un exemplu de rezolvare a problemelor: găsirea căii minime, găsirea costurilor minime pentru angajarea angajaților, găsirea costurilor minime pentru instalarea cablurilor sau a unei rețele de calculatoare.

Soluția pentru toate problemele constă în găsirea rutei minime în graficul încărcat.

Găsirea modului minim de călătorie

Trebuie să mergem de la casă la magazin, iar calea ar trebui să fie minimă. Să presupunem că avem o hartă stradală.

Graphoanalyzer - mediul pentru lucrul cu grafice

Figura 3.2 - Harta orașului

În primul rând, încărcați harta străzii ca fundal pentru zona de lucru.

Analizor grafic - mediul pentru lucrul cu grafice

Figura 3.3 - Fundal încărcat

Apoi setați scara (câți metri în 10 pixeli ai hărții)

Graphoanalyzer - mediul pentru lucrul cu grafice

Figura 3.4 - Setarea scalei

Apoi, tragem graficul pe baza hărții.

Analizor grafic - mediul pentru lucrul cu grafice

Figura 3.5 - graficul bazat pe grafic

Și acum găsim cea mai scurtă cale. folosind una dintre metodele (Ford-Bellman, Dijkstra sau Floyd). După căutarea celei mai scurte căi, vom vedea cea mai bună cale.

Analizor grafic - mediul pentru lucrul cu grafice

Figura 3.6 - Graficul cu minimul găsit

După cum vedem, calea cea mai scurtă este 460.

Găsirea costurilor minime pentru instalarea cablurilor sau a unei rețele de calculatoare

Problema este rezolvată în mod similar cu cea considerată mai sus, doar este necesar să se utilizeze o hartă a tuturor metodelor posibile de instalare a rețelei.

Căutați costuri minime pentru angajarea angajaților

Sarcina angajării angajaților este redusă la minimizarea căii.

De la 8 la 10 - 200 de ruble.

De la 14 la 18 - 500 de ruble

De la 19 la 20 - 50 de ruble

După cum puteți vedea din diagramă, există mai multe alternative, deși numărul lor nu este mare, dar acesta este doar un exemplu, în viața reală totul poate fi mai complicat.

Acum, pe baza acestor date, construim un grafic. Vârfurile graficului vor fi timestamps până la fiecare oră și arce, opțiuni de plată pentru angajați diferiți.

Figura 3.7 - Grafic pe baza programului de lucru

Acum, găsind calea cea mai scurtă de la primul vârf la cel precedent, definim costurile minime și metoda de angajare.

Figura 3.8 - Traseul minim găsit

Ca urmare, soluția corectă este următoarea, subliniată în verde:

Un exemplu de rezolvare a problemelor: distribuirea muncii între mai mulți angajați; Calculul debitului calculatorului sau al rețelei rutiere

Soluția ambelor probleme este redusă la găsirea debitului maxim. Numai problema distribuirii muncii între mai mulți angajați trebuie să fie redusă la ea.

Calculul debitului calculatorului sau al rețelei rutiere

Să presupunem că avem o secțiune din rețeaua rutieră prezentată în figura de mai jos.

Figura 3.9 - Foaia de parcurs

Trebuie să calculam debitul setului și drumurile într-o singură direcție. De exemplu, de la stânga la dreapta. Construim un grafic orientat și setăm greutățile arcilor egale cu lățimea de bandă. Toate drumurile din stânga și dreapta se conectează cu sursa și se scurge. Ca rezultat, obținem graficul:

Figura 3.10 - Grafic pe drumuri

Rămâne doar să se calculeze capacitatea de producție. Ca rezultat, obținem o astfel de distribuție a fluxului.







Figura 3.11 - Progresul maxim al drumurilor

Distribuirea muncii în rândul mai multor angajați

Distribuția muncii în rândul angajaților se reduce și la căutarea lățimii de bandă. Să avem o listă de angajați:

După cum se poate observa, diferite tipuri de muncă pot fi îndeplinite de angajați diferiți, iar condiția ca un loc de muncă să poată fi executat de un singur angajat.

Trebuie să distribuim lucrătorilor astfel încât să se efectueze numărul maxim de locuri de muncă. Pentru a face acest lucru manual este o sarcină consumatoare de timp dacă numărul de angajați este mare.

Pentru soluție, reprezentăm problema noastră sub forma unui grafic. Coloana din stânga a vârfurilor grafului este muncitorii, dreptul este tipul de lucru. De asemenea, am adăugat o chiuvetă și o sursă.

Acum vom conecta fiecare angajat cu tipul de muncă pe care îl poate îndeplini. Greutatea arcului a este egală cu 1.

Figura 3.12 - Graficul bazat pe angajați și tipurile de muncă

După ce conectăm sursa cu toți angajații și conectăm stocul cu tipurile de muncă. Greutatea este, de asemenea, egală cu 1.

Figura 3.13 - Grafic pe baza angajaților și a tipurilor de muncă

Acum căutăm bandă largă.

Figura 3.14 - Modul de distribuire a angajaților

Transmiterea ne-a arătat care angajat ar trebui să facă ce fel de muncă. De exemplu, Petrov ar trebui să cheltuiască bani, unchiul Petru trebuie să săpare.

Un exemplu de rezolvare a problemelor: găsirea celei mai ieftine opțiuni pentru instalarea cablurilor. Căutați cea mai ieftină cale de a conecta drumurile.

În timpul construcției de drumuri sau atunci când cablurile ouatului poate fi de mai multe moduri de compus oraș sau un calculator, dar este necesar să se facă o anumită metri fel. Mai mult decât atât, este de dorit ca metoda aleasă a fost cea mai economică în termeni de timp sau cheltuieli.

Să avem câteva orașe și modalități posibile de a le conecta.

Trebuie să conectăm toate orașele și să cheltuim cu privire la acest lucru și la cea mai mică sumă de bani. Transformați harta noastră într-un grafic.

Figura 3.15 - Harta orașelor

Figura 3.16 - Costul minim al construcției drumurilor

Ca rezultat, vom cheltui doar 73 de unități convenționale.

Exemplu de rezolvare a problemelor: Verificarea posibilității conectării componentelor electronice pe placă

La conectarea elementelor de pe placa electronică este necesar ca conexiunile să nu se suprapună. Pentru aceasta, lanțul eclectic trebuie reprezentat sub forma unui grafic. Dacă graficul este plan, atunci este posibil să conectați toate elementele lanțului fără intersecții.

Un exemplu de rezolvare a problemelor: găsirea unei metode de colorare a unei hărți cu un număr minim de culori

Dacă există o hartă pe care sunt situate țările și este necesar să se găsească o astfel de metodă de dezvăluire, astfel încât două linii învecinate să aibă culori diferite.

Să presupunem că există o hartă:

Figura 3.17 - Harta țării

Pentru a reprezenta o hartă ca un grafic, țările vor fi vârful graficului și limitele dungilor. Apoi graficul va arata astfel:

Figura 3.18 - Grafic pe țară

După ce căutăm numărul cromatic al graficului. și obținem următorul rezultat:

Figura 3.19 - Metoda de colorare a graficului

Exemplu de rezolvare a problemelor: Rezolvarea problemei vânzătorului călător

Să presupunem că o firmă sau un curier sau un vânzător care călătoresc are clienți și este necesar să vizitați toți clienții o singură dată.

Imaginați-vă clienții noștri sub forma unui grafic.

Analizor grafic - mediul pentru lucrul cu grafice

Figura 3.20 - Harta locației clientului

Pentru a găsi calea necesară, alegeți algoritmul de căutare pentru lanțul Hamiltonian.

Figura 3.21 - Traseul bypass-ului clientului

Prima operație pe care trebuie să o efectuați este să specificați graficul cu care veți lucra. Despre principalele etape ale sarcinii graficului:

Crearea unui grafic

Pentru a crea un grafic, trebuie mai întâi să selectați tipul acestuia. Figura 4.1 prezintă forma creării graficului.

Analizor grafic - mediul pentru lucrul cu grafice

Figura 4.1 - Forma de creare a graficului

Dacă bifați caseta "Orgraf", graficul va fi orientat. Dacă bifați caseta de selectare "Încărcat grafic", graficul va fi încărcat.

Pentru a crea un grafic, trebuie să apelați meniul "Creare".

Analizor grafic - mediul pentru lucrul cu grafice

Figura 4.2 - Meniul programului "Count"

Salvarea graficului

Pentru a salva graficul în scopul utilizării acestuia, este necesar să selectați elementul de meniu "File" - "Save graph".

Figura 4.3 - Imaginea meniului "Fișier"

Ca urmare, fișierul va fi salvat tipul graficului, poziția vârf, poziția și importanța inscripțiile. De asemenea, în meniu sunt salvate următoarele fișiere ale graficului cu care ați lucrat.

Păstrarea unei prezentări vizuale

Pentru a salva reprezentarea vizuală a graficului, este necesar să selectați elementul de meniu "Graph" - "Save Image". Ca rezultat, fișierul va fi salvat, ceea ce conduceți în spațiul de lucru.

Încărcarea unui grafic

Pentru a relua lucrul cu graficul salvat anterior, trebuie să încărcați graficul utilizând meniul Fișier - Load Graph.


Figura 4.4 - Imagine a meniului "Fișier"

Toate datele despre graficul folosit anterior vor fi pierdute.

Adăugarea unui vârf

Adăugarea unui vârf poate fi făcută în mai multe moduri:

Și folosiți tasta rapidă "F3".

Butonul de pe panou.

Și utilizați elementul din meniul Grafic.

Merită menționat faptul că vârful va fi adăugat la poziția aleatoare a spațiului de lucru. Dacă, sub forma unei numerotări de noduri, se selectează numerotarea aleasă de utilizator, va fi de asemenea necesar să introduceți numele vertexului.

Adăugarea unui arc

Adăugarea unui arc se poate face în mai multe moduri:

Și utilizați elementul de meniu din meniul "Count". După aceea, este necesar să introduceți numărul vârfului din care va merge arcul și în care. De asemenea, puteți utiliza tasta rapidă "F4".

În

Graphoanalyzer - mediul pentru lucrul cu grafice
A doua metodă este grafică. Mai întâi, selectați vertexul făcând clic pe el cu butonul stâng al mouse-ului, apoi faceți clic dreapta pe cel de-al doilea vârf și selectați "Draw Arc" din meniul contextual. Pentru simplitate, puteți utiliza modul constructor.

Editați matricea de adjuvantă introducând o valoare în celula corespunzătoare.

Adăugarea de text

Puteți adăuga text pentru a crea text explicativ. Pentru a adăuga text, selectați elementul corespunzător din meniul "Graph" sau faceți clic pe butonul de pe bara de comenzi rapide. După aceasta, trebuie să alegeți un loc pentru locația inscripției și apoi să introduceți textul inscripției.

Ștergeți un obiect

Pentru a șterge obiecte (grafuri, arc sau vârfuri de înscriere), selectați-le făcând clic pe ele cu butonul drept al mouse-ului și selectați un element din meniul "Graph" sau faceți clic pe butonul de pe panou.

Obiecte Moving

Pentru a muta obiecte (vârfuri ale unui grafic, arce sau inscripții), faceți clic pe obiectul butonului stâng al mouse-ului și, fără a îl elibera, efectuați mișcarea mouse-ului.

Redenumirea obiectelor

Pentru a redenumi nodurile, a schimba greutatea arcurilor și a redenumi etichetele, trebuie să selectați elementul de interes. Accesați meniul Editare și selectați unul dintre elementele:

- Pentru a edita numele vertexului, în modul de nume dat de utilizator.


- pentru editarea greutății arcurilor, pentru grafice încărcate.

- pentru a schimba textul etichetei.

Editarea matricei de adjudecare

Editarea matricei de adjunct poate fi efectuată în 2 moduri diferite.

Prima metodă este să utilizați panoul matricii de adjudecare pentru a edita greutățile arcurilor.

Graphoanalyzer - mediul pentru lucrul cu grafice

Figura 4.5 - Fereastra de editare a matricei adiacente

Când se editează neorograful, se va adăuga automat a doua valoare. Dacă introduceți valori incorecte, va fi afișat un mesaj.

În

Graphoanalyzer - mediul pentru lucrul cu grafice
Cea de-a doua metodă de editare este atribuirea matricii de adjudecție. Pentru aceasta, selectați elementul de meniu Graph - Edit Matrix adjacency. În fereastra care apare, puteți introduce o nouă sau edita o matrice veche de adjacență. Valorile din matricea de adjudecare sunt separate prin semnul ",". După aplicarea matricei de adjudecare, dacă ar fi corectă, va fi creat un grafic, poziția tuturor nodurilor va fi aleatorie.

Moduri de manipulare a mouse-ului

Modul de procesare a mouse-ului determină prelucrarea clicului din dreapta al mouse-ului. Există 2 moduri de procesare a mouse-ului:







Articole similare

Trimiteți-le prietenilor: