Mga computerProgramming

Ang mga graph sa computer science: kahulugan, mga uri, mga halimbawa application. Graph theory sa computer science

Ibinibilang sa method computer para sa pagtukoy ng relasyon ay pinagsama elemento. Ang mga ito ay ang mga pangunahing bagay ng pag-aaral sa graph theory.

pangunahing mga kahulugan

Ano sa graph sa computer science? Ito ay nagsasama ng isang mayorya ng mga bagay na tinatawag na node o vertices, ang ilang mga pares ng na kung saan ay konektado sa pamamagitan m. N. buto-buto. Halimbawa, ang mga graph sa figure (a) ay binubuo ng apat na nodes, naka-denote A, B, C, at D, B na kung saan ay konektado sa bawat isa sa mga iba pang mga tatlong vertices mga buto-buto, at C at D ay konektado rin. Dalawang nodes katabi kung sila ay konektado sa pamamagitan ng isang gilid. Ang figure na nagpapakita ng isang tipikal na paraan ng kung paano bumuo ng mga graph sa computer science. Mga Lupon ay kumakatawan sa mga vertices at ang mga linya sa pagkonekta ng bawat pares ng mga ito, ay ang mga buto-buto.

Ano undirected graph ay tinatawag na sa computer science? Siya na relasyon sa pagitan ng dalawang dulo ng mga buto-buto ay simetriko. Rib lang nag-uugnay sa mga ito sa bawat isa. Sa maraming mga kaso, gayunpaman, ito ay kinakailangan upang ipahayag sa mga walang simetrya relasyon - halimbawa, na isang punto hanggang B, ngunit hindi vice versa. layunin na ito ay ang kahulugan ng graph sa computer, pa rin ay binubuo ng isang hanay ng mga nodes na may isang hanay ng mga nakadirekta gilid. Ang bawat oriented na gilid ay ang link sa pagitan vertices na ang direksyon ay may kahulugan. Sa direksyon graph ilarawan, tulad ng ipinapakita sa Figure (b), ang kanilang mga gilid ay kinakatawan ng mga arrow. Kapag nais mong upang bigyan ng diin na ang mga di-itinuro graph, ito ay tinatawag undirected.

modelo network

Ang mga graph sa computer science ay mathematical modelo ng mga istraktura ng network. Ang mga sumusunod na figure na nagpapakita ng istraktura ng Internet, pagkatapos ay nanganak ng pangalan ng ARPANET, sa Disyembre 1970, kapag siya ay lamang 13 points. Ang nodes ay sa pagpoproseso ng sentro at ang mga buto-buto ikonekta ang dalawang vertices feedforward therebetween. Kung hindi ka na magbayad ng pansin sa ang Estados Unidos ipinataw mapa, ang natitirang bahagi ng larawan ay isang 13-node graph katulad ng nakaraang isa. Sa kasong ito, ang aktwal na posisyon ng mga kaitaasan ay hindi mahalaga. Ito ay mahalaga na kung saan nodes ay konektado sa bawat isa.

Ang paglalapat ng mga graph sa ang computer ay nagbibigay-daan upang makita kung paano mga bagay ay alinman sa pisikal o lohikal na interconnected sa isang istraktura ng network. 13-node ARPANET ay isang halimbawa ng komunikasyon network na kung saan top computer o iba pang mga aparato ay maaaring magpadala ng mga mensahe, at ang mga gilid ay kumakatawan direktang link sa kung saan ang impormasyon ay maaaring transmitted.

ruta

Kahit na ang mga graphs ay ginagamit sa maraming iba't ibang mga lugar, mayroon silang mga karaniwang tampok. Graph theory (computer science) ang marahil ang pinaka-mahalaga sa mga ito - ang ideya na ang mga bagay ay madalas na ilipat sa kahabaan ng gilid, nang sunud-sunod paglipat mula sa node sa node, maging ito ng isang pasahero ng ilang mga flight o impormasyon na ipinadala mula sa tao sa tao sa isang social network, o isang gumagamit computer, tuloy-tuloy na bumibisita sa isang bilang ng mga pahina ng web sa pamamagitan ng pagsunod sa mga link.

Ideya na ito ay nag-uudyok sa mga kahulugan ng mga ruta bilang isang serye ng mga nodes konektado sa pamamagitan ng mga gilid. Minsan ito ay kinakailangan upang isaalang-alang ang ruta na naglalaman ng hindi lamang mga bahagi, ngunit din ang pagkakasunod-sunod ng mga dulo ng pagkonekta sa kanila. Halimbawa, ang pagkakasunod-sunod ng vertices MIT, BBN, RAND, UCLA ay isang ruta sa ARPANET internet graph. Passage ng nodes at ang mga gilid ay maaaring maulit. Halimbawa, SRI, STAN, UCLA, SRI, UTAH, MIT ding isang ruta. Ang paraan kung saan ang mga buto-buto ay hindi paulit-ulit, na tinatawag na isang chain. Kung ang mga node ay hindi paulit-ulit, ito ay tinatawag na isang simpleng chain.

cycles

Partikular na mahalaga species sa graph computer - ito cycle na kung saan ay kumakatawan sa isang singsing istraktura, tulad ng isang pagkakasunod-sunod ng mga node LINC, KASO, CARN, HARV, BBN, MIT, LINC. Mga ruta na may hindi bababa sa tatlong mga buto-buto, kung saan ang una at huling node ay pareho, at ang natitira ay naiiba, kumakatawan sa isang cyclic graph sa computer science.

Mga halimbawa: SRI cycle, STAN, UCLA, SRI ay ang pinakamaikling, at SRI, STAN, UCLA, RAND, BBN, UTAH, SRI malaki mas mataas.

Halos lahat ng ARPANET gilid ng graph kabilang sa cycle. Ginawa ito sadyang, kung anuman sa mga ito ay nabigo, ay ang posibilidad ng paglipat mula sa isang node sa isa pa. Cycle sa komunikasyon at transportasyon system ay kasalukuyan para sa kalabisan - nagbibigay sila ng alternatibong ruta para sa isa pang ikot ng landas. Ang mga social network ay madalas na kapansin-pansin na mga cycles. Kapag nakahanap ka ng, halimbawa, na ang isang malapit na kaibigan sa paaralan ng isang pinsan ng iyong asawa aktwal na gumagana sa iyong kapatid na lalaki, ito ay isang cycle na binubuo ng sa iyo, ang iyong asawa, ang kanyang pinsan, ang kanyang kaibigan mula sa paaralan, ang kanyang mga empleyado (ie. E. Ang iyong kapatid na lalaki), at sa wakas ay sa iyo muli.

Konektado graph: definition (computer science)

Ito ay natural na magtaka kung ito ay posible mula sa bawat node upang makakuha ng sa anumang iba pang mga node. Ang graph ay konektado kung mayroong isang landas sa pagitan ng bawat pares ng mga vertex. Halimbawa, ang ARPANET network - konektado graph. Ang parehong ay maaaring sinabi tungkol sa karamihan ng mga komunikasyon at transportasyon network, pati na ang kanilang layunin ay ang madala trapiko mula sa isang node sa isa pa.

Sa kabilang dako, walang walang pagsubok dahilan upang asahan na ang mga uri ng mga graph sa computer science ay laganap. Halimbawa, sa mga social network ay hindi mahirap na isipin ng dalawang tao na hindi nauugnay sa bawat isa.

mga bahagi

Kung ang haligi ay hindi konektado sa ang computer, sila ay natural mahulog sa isang set ng mga kaugnay fragment, mga grupo ng mga node na hiwalay at huwag magsalubong. Halimbawa, Figure ay nagpapakita ng tatlong naturang bahagi: ang unang - A at B, ang pangalawang - C, D at E, at ang ikatlo ay binubuo ng ang mga natitirang mga vertex.

Mga Bahagi ng graph kumakatawan sa isang subset ng mga node, kung saan:

  • bawat tugatog subgroup ay may isang ruta sa anumang iba pang mga;
  • subset ay hindi bahagi ng isang mas malaking hanay kung saan ang bawat node ay may isang ruta sa anumang iba pang.

Kapag ang mga graph sa computer na ay nahahati sa kanilang mga bahagi, ito ay lamang ang unang paglalarawan ng ang paraan ng kanilang mga istraktura. Bahagi na ito ay maaaring maging mayaman sa panloob na istraktura, ito ay mahalaga para sa mga interpretasyon ng mga network. Halimbawa, ang pormal na paraan ng pagtukoy ng isang node kahalagahan ay upang matukoy kung gaano karaming mga bahagi ay nahahati count, kung ang node ay tinanggal.

maximum component

May ay isang paraan para sa ng husay pagtatasa ng mga sangkap pagkakakonekta. Halimbawa, mayroong isang buong mundo ng social network na may koneksyon sa pagitan ng dalawang tao, kung ang mga ito ay mga kaibigan.

Ito ba ay konektado? Malamang hindi. Connectivity - sa halip marupok ari-arian, at ang pag-uugali ng isang node (o ng isang maliit na hanay ng mga ito) ay maaaring mabawasan ito sa wala. Halimbawa, ang isang solong tao na walang buhay na kaibigan ay isang sangkap na binubuo ng isang solong kaitaasan, at samakatuwid, ang count ay hindi konektado. O isang remote na tropikal na isla, na binubuo ng mga taong walang contact sa labas ng mundo, ay din ng isang maliit na bahagi ng network, na kung saan Kinukumpirma nito kawalang-kawawaan.

Global network ng mga kaibigan

Ngunit may iba pang dahilan. Halimbawa, ang isang reader ng sikat na aklat ay may mga kaibigan na lumago up sa ibang mga bansa, at gumagawa ng mga ito ng isa component. Kung kami ay isaalang-alang ang mga magulang sa mga kaibigan at ang kanilang mga kaibigan, ang lahat ng mga taong ito ay din sa parehong bahagi, bagaman hindi kailanman nila narinig ang tungkol sa mga reader, nagsasalita ng ibang wika, at sa tabi nito ay hindi kailanman naging. Kaya, kahit na ang pandaigdigang network ng pagkakaibigan - hindi konektado, ang mga mambabasa ay isasama sa ang bahagi ay masyadong malaki, matalim sa lahat ng bahagi ng mundo, na kasama ang mga tao mula sa maraming iba't ibang mga background at, sa katunayan, ay naglalaman ng isang makabuluhang bahagi ng populasyon ng daigdig.

Ang parehong ay nangyayari sa mga hanay ng data sa network - malaki, kumplikadong mga network ay madalas na magkaroon ng isang maximum na bahagi, na kasama ang isang makabuluhang bahagdan ng lahat ng mga node. Bukod dito, kapag ang network ay nagsasama ng isang maximum na bahagi, ito ay halos palaging ang isa lamang. Upang maunawaan kung bakit, ito ay kinakailangan upang bumalik sa halimbawa ng isang pandaigdigang network ng pagkakaibigan at subukang isipin ang pagkakaroon ng dalawang pinakamataas na mga bahagi, ang bawat isa ay nagsasangkot ng milyun-milyong tao. Kailangang magkaroon ng iisang rib sa ilan sa mga unang bahagi sa ang pangalawa sa pinakamataas na dalawang mga sangkap Pinagsama sa isa. Dahil lamang ng isang gilid, sa karamihan ng mga kaso na ito ay malamang na hindi na ito ay hindi nabuo, at samakatuwid ay ibinigay maximum ng dalawang bahagi sa tunay na network ay hindi kailanman na-obserbahan.

Sa ilang mga bihirang mga kaso, kapag ang dalawang mga sangkap ng maximum na co-umiiral para sa isang mahabang oras sa isang tunay na network, ang kanilang mga unyon ay hindi inaasahang, dramatic, at, sa huli, magkaroon ng sakuna kahihinatnan.

Aksidente component pagsama-sama

Halimbawa, matapos ang pagdating ng mga European explorers sa kabihasnan ng Western Hemisphere tungkol sa kalahati ng isang libong taon ang nakaraan, nagkaroon ng isang pandaigdigang kataklismo. Mula sa punto ng view ng network, ito ay tumingin tulad nito: limang libong taon ng global social network, marahil ay binubuo ng dalawang higanteng component - isa sa North at South Amerika, at ang iba pang mga - sa Eurasia. Para sa kadahilanang ito, ang teknolohiya ay nagbago nang nakapag-iisa sa dalawang bahagi, at, kahit na mas masahol pa, pati na binuo at sakit ng tao, at iba pa. D. Kapag ang dalawang mga sangkap sa wakas got-usap teknolohiya at isang sakit nang mabilis at disastrously overflowed segundo.

American High School

Ang konsepto ng ang pinakamataas na bahagi ay kapaki-pakinabang para sa mga paliwanagan tungkol sa mga network sa isang magkano ang mas maliit na scale. Ang isang kagiliw-giliw na halimbawa ay ang isang graph na nagpapakita ng mga relasyon sa isang high school US para sa 18-buwang tagal ng panahon. Ang katotohanan na ito ay naglalaman ng pinakamataas na bahagi ay mahalaga pagdating sa ang pagkalat ng sakit, sexually transmitted diseases, na kung saan ay ang layunin ng pag-aaral. Mga mag-aaral ay maaaring nagkaroon lamang ng isang partner sa panahon na panahon ng oras, ngunit, gayunpaman, nang walang realizing ito, ay naging bahagi ng mga bahagi ng ang pinakamataas na, at sa gayon, ang isang bahagi ng maraming mga potensyal na mga ruta ng transmisyon. Ang mga kaayusan na sumalamin sa isang relasyon na maaaring matagal na natapos, ngunit ikonekta ang mga ito sa mga indibidwal sa masyadong mahaba chain, ang magiging paksa ng matinding masusing pagsisiyasat at tsismis. Gayunpaman, ang mga ito ay tunay na: kung paano panlipunan katotohanan ay hindi nakikita, ngunit kinahihinatnan macrostructures lumitaw bilang isang produkto ng mga indibidwal na pamamagitan.

Distansya at lawak-unang paghahanap

Bilang karagdagan sa mga impormasyon tungkol sa kung dalawang nodes ay konektado ruta, graph theory sa computer science ay nagbibigay-daan sa iyo upang malaman ang tungkol sa haba nito - sa transportasyon, komunikasyon o pagpapakalat ng balita at sakit, pati na rin ang kung ito napupunta sa pamamagitan ng maraming peaks o maramihang.

Upang gawin ito, tukuyin ang isang haba ng ruta katumbas ng bilang ng mga hakbang na ito ay naglalaman ng mula sa umpisa hanggang katapusan, ie. E. Ang bilang ng mga gilid sa ang pagkakasunod-sunod na. Halimbawa, MIT, BBN, RAND, UCLA ruta ay may isang haba ng 3, at MIT, UTAH - 1. Gamit ang haba ng landas, maaari naming sabihin na kung ang dalawang nodes ay isinaayos sa column na malapit sa isa't isa o malayo distansya sa pagitan ng dalawang peaks ay tinukoy bilang ang haba ng ang pinakamaikling landas sa pagitan nila. Halimbawa, ang distansya sa pagitan ng LINC at SRI ay 3, bagaman, upang matiyak na ito, ito ay kinakailangan upang i-verify ang kawalan ng haba na katumbas ng 1 o 2, therebetween.

Lawak-unang paghahanap algorithm

Para sa mga maliliit na graph distansya sa pagitan ng dalawang nodes kalkulahin madali. Ngunit para sa mga kumplikadong doon ay isang pangangailangan para sa isang sistematikong paraan ng pagtukoy ng distansya.

Ang pinaka-natural na paraan upang gawin ito at, samakatuwid, ang pinaka-epektibong ay ang mga sumusunod (halimbawa, isang pandaigdigang network ng mga kaibigan):

  • Ang lahat ng mga kaibigan ay ipinahayag matatagpuan sa layo na 1.
  • Lahat ng mga kaibigan ng mga kaibigan (hindi bilangin ang nabanggit) ay inihayag sa layo 2.
  • Ang lahat ng kanilang mga kaibigan (muli, hindi bilangin ang mga label na tao) inihayag sa remote distance 3.

Ang pagpapatuloy sa paraang ito, ang paghahanap ay isinasagawa sa kasunod na mga layer, ang bawat isa - sa ang yunit sa isang nakaraan. Ang bawat bagong layer ay binubuo ng mga nodes na hindi lumahok sa nakaraang mga bago, at na mahulog edge mula sa kaitaasan ng nakaraang layer.

pamamaraan na ito ay tinatawag na isang lawak-unang paghahanap, bilang siya paghahanap para sa hanay sa labas ng unang node, lalo na sumasakop sa susunod. Bilang karagdagan sa pagbibigay ng isang paraan para sa pagtukoy ng distansya, maaari itong magsilbi bilang isang kapaki-pakinabang na pangkonseptong framework upang ayusin ang graph istraktura pati na rin ang kung paano bumuo ng isang graph ng computer, na kinakailangang peaks batay sa kanilang distansya mula sa isang nakapirming panimulang punto.

Lawak-unang paghahanap maaaring ilapat hindi lamang sa isang network ng mga kaibigan, kundi pati na rin sa anumang graph.

maliit na mundo

Kung pupunta ka pabalik sa isang pandaigdigang network ng mga kaibigan, maaari mong makita na ang argument na nagpapaliwanag na kabilang sa pinakamataas na bahagi talagang aprubahan ang isang bagay nang higit pa: hindi lamang ang reader ay may mga ruta sa mga kaibigan, pag-uugnay sa kanya ng isang makabuluhang bahagdan ng populasyon ng mundo, ngunit ang mga ruta ay nakakagulat na maikling .

ideya na ito ay tinatawag na "maliit na mundo phenomenon": ang mundo ay tila maliit na, kung sa tingin mo tungkol sa kung ano ang isang maikling ruta nag-uugnay sa anumang dalawang tao.

Ang teorya ng "anim na handshakes" ay unang pagtuklas investigated sa pamamagitan ng Stanley Milgram at ang kanyang mga kasamahan noong 1960. Nang hindi na kinakailangang anumang hanay ng mga data mga social network, at may isang badyet ng $ 680, siya ay nagpasya na tingnan ang isang popular na ideya. Sa pagtatapos na ito, ay itinanong niya sa 296 random na piniling initiators subukan upang magpadala ng isang sulat sa stockbroker, na nakatira sa isang suburb ng Boston. Initiators saan bibigyan ng ilang personal na impormasyon tungkol sa mga layunin (kabilang ang address at propesyon), at sila ay may upang magpadala ng isang sulat sa tao na hindi nila nakilala sa pamamagitan ng pangalan, na may parehong mga tagubilin, upang ito ay naabot ang layunin nang mabilis hangga't maaari. Ang bawat titik ay dumaan sa mga kamay ng isang bilang ng mga kaibigan at binuo ng isang kadena magsasara para sa stock broker sa labas ng Boston.

Kabilang sa 64 mga kadena na naabot ang target, ang average na haba ay anim na, na nagkukumpirma sa bilang ng mga pinangalanan na dalawang dekada mas maaga sa pag-play Dzhona Gera pamagat.

Sa kabila ng lahat ng pagkukulang ng pag-aaral na ito, ang eksperimento nagpakita ang isa sa mga pinaka-mahalagang mga aspeto ng aming pag-unawa sa mga social network. Sa sumunod na mga taon mula sa mga ito ay ginawa mas malawak na konklusyon: mga social network ay may posibilidad na magkaroon napaka-ikling ruta sa pagitan ng di-makatwirang mga pares ng mga tao. At kahit na kung ang naturang di-tuwiran koneksyon sa mga lider ng negosyo at pampulitika lider ay hindi nagbabayad para sa kanilang sarili sa araw-araw, ang pagkakaroon ng mga naturang maikling ruta ay gumaganap ng isang malaking papel sa ang bilis ng impormasyon diseminasyon, sakit at iba pang mga uri ng impeksiyon sa komunidad, pati na rin ng access sa mga pagkakataon na social networking nagbibigay sa mga tao lubos ang kabaligtaran katangian.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 tl.unansea.com. Theme powered by WordPress.