×
1 Pasirinkite EITC/EITCA sertifikatus
2 Mokykitės ir laikykite internetinius egzaminus
3 Gaukite IT įgūdžių sertifikatą

Patvirtinkite savo IT įgūdžius ir kompetencijas pagal Europos IT sertifikavimo sistemą iš bet kurios pasaulio vietos internetu.

EITCA akademija

Europos IT sertifikavimo instituto parengtas skaitmeninių įgūdžių atestavimo standartas, kuriuo siekiama paremti skaitmeninės visuomenės vystymąsi

PRISIJUNK PRIE SAVO PASKYROS

SUKURTI PASKYRĄ Pamiršote slaptažodį?

Pamiršote slaptažodį?

AAH, palauk, aš prisimenu DABAR!

SUKURTI PASKYRĄ

Jau turite paskyrą?
EUROPOS INFORMACINIŲ TECHNOLOGIJŲ SERTIFIKAVIMO AKADEMIJA - PROFESINIŲ SKAITMENINIŲ ĮGŪDŽIŲ APSKAIČIAVIMAS
  • REGISTRUOTIS
  • PRISIJUNGTI
  • INFORMACIJA

EITCA akademija

EITCA akademija

Europos informacinių technologijų sertifikavimo institutas - EITCI ASBL

Sertifikavimo teikėjas

EITCI institutas ASBL

Briuselis, Europos Sąjunga

Europos IT sertifikavimo (EITC) sistema, remianti IT profesionalumą ir skaitmeninę visuomenę

  • PAŽYMĖJIMAI
    • EITCA AKADEMIJOS
      • EITCA AKADEMIJŲ KATALOGAS<
      • EITCA/CG KOMPIUTERIŲ GRAFIKA
      • EITCA/IS INFORMACIJOS SAUGUMAS
      • EITCA/BI VERSLO INFORMACIJA
      • EITCA/KC PAGRINDINĖS KOMPETENCIJOS
      • EITCA/EG E-VYRIAUSYBĖ
      • EITCA/WD WEB KŪRIMAS
      • EITCA/AI dirbtinis intelektas
    • EITC SERTIFIKATAI
      • EITC SERTIFIKATŲ KATALOGAS<
      • KOMPIUTERINĖS GRAFIKOS SERTIFIKATAI
      • TINKLO DIZAINO SERTIFIKATAI
      • 3D DIZAINO SERTIFIKATAI
      • BIURO IT SERTIFIKATAI
      • BITCOIN BLOCKCHAIN ​​PAŽYMĖJIMAS
      • DARBININKŲ SERTIFIKATAS
      • APSAUGOS PLATFORMOS SERTIFIKATASNAUJAS
    • EITC SERTIFIKATAI
      • INTERNETO PAŽYMĖJIMAI
      • KRYPTOGRAFIJOS SERTIFIKATAI
      • VERSLO IT SERTIFIKATAI
      • TELEFONO SERTIFIKATAI
      • PROGRAMAVIMO SERTIFIKATAI
      • Skaitmeninis portreto pažymėjimas
      • VEIKLOS RAIDOS PAŽYMĖJIMAI
      • GILUS MOKYMOSI PAŽYMĖJIMAINAUJAS
    • SERTIFIKATAI DĖL
      • ES VIEŠASIS ADMINISTRAVIMAS
      • MOKYTOJAI IR MOKYTOJAI
      • IT SAUGUMO PROFESIONALAI
      • GRAFIKOS DIZAINERIAI IR MENININKAI
      • VERSLO IR VADOVŲ
      • BLOKCHINO KŪRĖJAI
      • WEB KŪRĖJAI
      • PRIDĖTI AI dirbtinius ekspertusNAUJAS
  • GERIAUSI
  • SUBSIDIJA
  • KAIP TAI VEIKIA
  •   IT ID
  • APIE
  • KONTAKTAI
  • MANO UŽSAKYMAS
    Dabartinis užsakymas tuščias.
EITCIINSTITUTE
CERTIFIED

EITC/IS/CCTF skaičiavimo sudėtingumo teorijos pagrindai

by EITCA akademija / Pirmadienis, 03 gegužės 2021. / paskelbta

Dabartinė būsena

Neužsiregistravęs
Užsiregistruokite į šią programą, kad gautumėte prieigą

Kaina

€110.00

Pradėkite

Užsiregistruokite gauti šį pažymėjimą

EITC/IS/CCTF Computational Complexity Theory Fundamentals yra Europos IT sertifikavimo programa, skirta kompiuterių mokslo pagrindų teoriniams aspektams, kurie taip pat yra klasikinės asimetrinės viešojo rakto kriptografijos, plačiai naudojamos internete, pagrindas.

EITC/IS/CCTF skaičiavimo sudėtingumo teorijos pagrindų mokymo programa apima teorines žinias apie informatikos pagrindus ir skaičiavimo modelius, susijusius su pagrindinėmis sąvokomis, tokiomis kaip deterministinės ir nedeterministinės baigtinių būsenų mašinos, taisyklingos kalbos, gramatikos be konteksto ir kalbų teorija, automatų teorija, Tiuringo teorija. Mašinos, problemų sprendžiamumas, rekursija, logika ir algoritmų sudėtingumas pagrindinėms saugos programoms pagal šią struktūrą, apimančią išsamią ir struktūrizuotą EITCI sertifikavimo mokymo programos savarankiško mokymosi medžiagą, paremtą nuorodiniu atviros prieigos vaizdo didaktiniu turiniu, kaip pagrindą pasiruošti užsidirbti. EITC sertifikatas išlaikant atitinkamą egzaminą.

Algoritmo skaičiavimo sudėtingumas yra išteklių, reikalingų jo veikimui, kiekis. Ypatingas dėmesys skiriamas laiko ir atminties ištekliams. Problemos sudėtingumas apibrėžiamas kaip geriausių jos sprendimo algoritmų sudėtingumas. Algoritmų analizė yra aiškiai pateiktų algoritmų sudėtingumo tyrimas, o skaičiavimo sudėtingumo teorija yra problemų sprendimų sudėtingumo tyrimas naudojant geriausiai žinomus algoritmus. Abi sritys yra susipynusios, nes algoritmo sudėtingumas visada yra didžiausias jo išsprendžiamos problemos sudėtingumo apribojimas. Be to, kuriant efektyvius algoritmus, dažnai reikia palyginti tam tikro algoritmo sudėtingumą su sprendžiamos problemos sudėtingumu. Daugeliu atvejų vienintelė turima informacija apie problemos sudėtingumą yra ta, kad jis yra mažesnis už veiksmingiausių žinomų metodų sudėtingumą. Dėl to algoritmų analizė ir sudėtingumo teorija labai sutampa.

Sudėtingumo teorija vaidina svarbų vaidmenį ne tik skaičiuojant skaičiavimo modelių pagrindus, kaip kompiuterių mokslo pagrindą, bet ir klasikinės asimetrinės kriptografijos (vadinamosios viešojo rakto kriptografijos), kuri plačiai paplitusi šiuolaikiniuose tinkluose, ypač internete, pagrindus. Viešojo rakto šifravimas pagrįstas tam tikrų asimetrinių matematinių problemų skaičiavimo sudėtingumu, pvz., didelių skaičių faktorinizavimu į pirminius veiksnius (ši operacija yra sudėtinga sudėtingumo teorijos klasifikavimo problema, nes nėra žinomų efektyvių klasikinių algoritmų, kuriuos būtų galima išspręsti tai su ištekliais masteliu polinomiškai, o ne eksponentiškai didėjant problemos įvesties dydžiui, o tai prieštarauja labai paprastai atvirkštinei operacijai, kai dauginama iš žinomų pirminių faktorių, kad būtų gautas pradinis didelis skaičius). Naudojant šią asimetriją viešojo rakto kriptografijos architektūroje (nustatant skaičiavimo požiūriu asimetrinį viešojo rakto santykį, kurį galima lengvai apskaičiuoti iš privataus rakto, o privatus raktas negali būti lengvai kompiuteris iš viešojo rakto, galima viešai paskelbti viešąjį raktą ir leisti kitoms ryšio pusėms jį naudoti asimetriškai šifruoti duomenis, kuriuos vėliau galima iššifruoti tik naudojant susietą privatų raktą, kuris nėra prieinamas trečiosioms šalims, todėl ryšys tampa saugus).

Skaičiavimo sudėtingumo teorija buvo sukurta daugiausia remiantis kompiuterių mokslo ir algoritmų pionierių, tokių kaip Alanas Turingas, pasiekimais, kurių darbas buvo labai svarbus siekiant sulaužyti nacistinės Vokietijos Enigma šifrą, kuris suvaidino didelį vaidmenį sąjungininkams laimėjus Antrąjį pasaulinį karą. Kriptanalizė, kuria siekiama sukurti ir automatizuoti duomenų analizės (daugiausia šifruotos komunikacijos) skaičiavimo procesus, siekiant atskleisti paslėptą informaciją, buvo naudojama kriptografinėms sistemoms pažeisti ir prieigai prie šifruoto ryšio turinio, dažniausiai strateginės karinės svarbos. Tai taip pat buvo kriptoanalizė, kuri paskatino pirmųjų modernių kompiuterių (kurie iš pradžių buvo taikomi strateginiam kodų laužymo tikslui) kūrimą. Prieš britų kolosą (laikomą pirmuoju moderniu elektroniniu ir programiniu kompiuteriu) buvo pastatyta lenkų „bomba“, Mariano Rejewskio sukurtas elektroninis skaičiavimo įrenginys, padedantis sulaužyti „Enigma“ šifrus, o lenkų žvalgyba perdavė Didžiajai Britanijai. užgrobta vokiečių Enigma šifravimo mašina, po to, kai Lenkiją 1939 m. užpuolė Vokietija. Remdamasis šiuo įrenginiu, Alanas Turingas sukūrė pažangesnį analogą, kad sėkmingai nutrauktų vokišką šifruotą ryšį, kuris vėliau buvo išplėtotas į šiuolaikinius kompiuterius.

Kadangi išteklių, reikalingų algoritmui vykdyti, kiekis skiriasi priklausomai nuo įvesties dydžio, sudėtingumas paprastai išreiškiamas kaip funkcija f(n), kur n yra įvesties dydis, o f(n) yra arba blogiausio atvejo sudėtingumas ( didžiausias išteklių kiekis, reikalingas visoms n dydžio įvestims) arba vidutinis atvejo sudėtingumas (išteklių kiekio vidurkis per visas n dydžio įvestis). Reikalingų elementarių operacijų skaičius su n dydžio įvestimi paprastai nurodomas kaip laiko sudėtingumas, kai manoma, kad elementariosios operacijos tam tikrame kompiuteryje užtrunka pastoviai laiko ir pasikeičia tik pastoviu veiksniu, kai jos vykdomos kitoje mašinoje. Atminties kiekis, kurio reikalauja algoritmas n dydžio įėjime, yra žinomas kaip erdvės sudėtingumas.

Laikas yra dažniausiai laikomas ištekliu. Kai terminas „sudėtingumas“ vartojamas be kvalifikacinės reikšmės, jis paprastai reiškia laiko sudėtingumą.

Tradiciniai laiko vienetai (sekundės, minutės ir tt) nenaudojami sudėtingumo teorijoje, nes jie pernelyg priklauso nuo pasirinkto kompiuterio ir technologijų pažangos. Pavyzdžiui, kompiuteris šiandien gali vykdyti algoritmą daug greičiau nei septintojo dešimtmečio kompiuteris, tačiau taip yra dėl technologinių laimėjimų kompiuterių aparatinėje įrangoje, o ne dėl būdingos algoritmo kokybės. Sudėtingumo teorijos tikslas yra kiekybiškai įvertinti algoritmams būdingus laiko poreikius arba pagrindinius laiko apribojimus, kuriuos algoritmas nustatytų bet kuriam kompiuteriui. Tai atliekama skaičiuojant, kiek pagrindinių operacijų atlikta skaičiavimo metu. Šios procedūros paprastai vadinamos etapais, nes manoma, kad tam tikroje mašinoje jos trunka pastoviai (ty joms įtakos neturi įvesties kiekis).

Kitas svarbus šaltinis yra kompiuterio atminties kiekis, reikalingas algoritmams atlikti.

Kitas dažnai naudojamas šaltinis yra aritmetinių operacijų kiekis. Šiame scenarijuje vartojamas terminas „aritmetinis sudėtingumas“. Laiko sudėtingumas paprastai yra aritmetinio sudėtingumo sandauga iš pastovaus koeficiento, jei yra žinomas viršutinis skaičiavimo metu atsirandančių skaičių dvejetainio atvaizdo dydžio apribojimas.

Skaičiuojant naudojamų sveikųjų skaičių dydis nėra ribojamas daugeliui metodų, todėl nerealu manyti, kad aritmetinėms operacijoms atlikti reikia fiksuoto laiko. Dėl to laiko sudėtingumas, taip pat žinomas kaip bitų sudėtingumas, gali būti žymiai didesnis nei aritmetinis sudėtingumas. Pavyzdžiui, nn sveikųjų skaičių matricos determinanto skaičiavimo aritmetinis sunkumas yra O(n^3) standartinėms technikoms (Gauso eliminacija). Kadangi skaičiavimo metu koeficientų dydis gali padidėti eksponentiškai, tų pačių metodų bitų sudėtingumas yra eksponentinis n. Jei šie metodai naudojami kartu su kelių modulių aritmetika, bitų sudėtingumą galima sumažinti iki O(n^4).

Bitų sudėtingumas formaliai reiškia operacijų su bitais, reikalingų algoritmui vykdyti, skaičių. Jis prilygsta laiko sudėtingumui iki pastovaus daugumos skaičiavimo paradigmų faktoriaus. Kompiuteriams reikalingų operacijų su mašininiais žodžiais skaičius yra proporcingas bitų sudėtingumui. Taigi realistiškiems skaičiavimo modeliams laiko sudėtingumas ir bitų sudėtingumas yra identiški.

Išteklius, į kurį dažnai atsižvelgiama rūšiuojant ir ieškant, yra įrašų palyginimų skaičius. Jei duomenys yra gerai išdėstyti, tai yra geras laiko sudėtingumo rodiklis.

Neįmanoma suskaičiuoti algoritmo žingsnių skaičiaus naudojant visas galimas įvestis. Kadangi įvesties sudėtingumas didėja didėjant jos dydžiui, jis paprastai vaizduojamas kaip įvesties dydžio n funkcija (bitais), todėl sudėtingumas yra n funkcija. Tačiau tokio paties dydžio įvesties algoritmo sudėtingumas gali labai skirtis. Dėl to įprastai naudojamos įvairios sudėtingumo funkcijos.

Blogiausio atvejo sudėtingumas yra visų n dydžio įvesties sudėtingumo suma, o vidutinis sudėtingumo atvejis yra visų n dydžio įėjimų sudėtingumo suma (tai prasminga, nes galimų tam tikro dydžio įvesčių skaičius yra baigtinis). Kai terminas „sudėtingumas“ vartojamas jo neapibrėžiant, atsižvelgiama į blogiausio atvejo laiko sudėtingumą.

Blogiausio ir vidutinio sudėtingumo atvejį sunku teisingai apskaičiuoti. Be to, šios tikslios reikšmės praktiškai nepritaikomos, nes bet koks mašinos ar skaičiavimo paradigmos pakeitimas šiek tiek pakeistų sudėtingumą. Be to, išteklių naudojimas nėra svarbus mažoms n reikšmėms, todėl įgyvendinimo paprastumas dažnai yra patrauklesnis nei mažas sudėtingumas mažoms n reikšmėms.

Dėl šių priežasčių didžiausias dėmesys skiriamas sudėtingumo elgesiui esant dideliam n, ty jo asimptotiniam elgesiui, kai n artėja prie begalybės. Dėl to sudėtingumui nurodyti dažniausiai naudojamas didelis O žymėjimas.

Skaičiavimo modeliai

Skaičiavimo modelio, kurį sudaro esminių per laiko vienetą atliekamų operacijų nurodymas, pasirinkimas yra svarbus nustatant sudėtingumą. Tai kartais vadinama daugiajuoste Tiuringo mašina, kai skaičiavimo paradigma nėra konkrečiai aprašyta.

Deterministinis skaičiavimo modelis yra toks, kuriame tolesnės mašinos būsenos ir atliekamos operacijos yra visiškai apibrėžtos ankstesnės būsenos. Rekursinės funkcijos, lambda skaičiavimas ir Tiuringo mašinos buvo pirmieji deterministiniai modeliai. Atsitiktinės prieigos mašinos (taip pat žinomos kaip RAM mašinos) yra populiari realaus pasaulio kompiuterių modeliavimo paradigma.

Kai skaičiavimo modelis neapibrėžtas, paprastai daroma prielaida, kad yra daugiajuostė Tiuringo mašina. Daugiajuostėse Turingo mašinose daugumos algoritmų laiko sudėtingumas yra toks pat kaip ir RAM įrenginiuose, nors norint pasiekti šį lygiavertiškumą, gali prireikti daug dėmesio duomenų saugojimui atmintyje.

Kai kuriuose nedeterministinio skaičiavimo modelio skaičiavimo etapuose, pavyzdžiui, nedeterministinėse Tiuringo mašinose, gali būti atliekami įvairūs pasirinkimai. Sudėtingumo teorijoje visi įmanomi variantai yra svarstomi tuo pačiu metu, o nedeterministinis laiko sudėtingumas yra laikas, kurio reikia, kai visada pasirenkami geriausi. Kitaip tariant, skaičiavimas atliekamas tuo pačiu metu tiek (identiškų) procesorių, kiek reikia, o nedeterministinio skaičiavimo laikas yra laikas, per kurį pirmasis procesorius užbaigia skaičiavimą. Šis lygiagretumas gali būti naudojamas kvantiniame skaičiavime, naudojant superpozicines susietas būsenas, kai vykdomi specializuoti kvantiniai algoritmai, pvz., Shor'o mažų sveikųjų skaičių faktorizacija.

Net jei toks skaičiavimo modelis šiuo metu nepraktiškas, jis turi teorinės reikšmės, ypač atsižvelgiant į P = NP problemą, kuri klausia, ar sudėtingumo klasės, gautos naudojant „polinominį laiką“ ir „nedeterministinį daugianario laiką“ yra mažiausiai viršutinės. ribos vienodos. Deterministiniame kompiuteryje NP algoritmo modeliavimas reikalauja „eksponentinio laiko“. Jei užduotį galima išspręsti daugianario laiku nedeterministinėje sistemoje, ji priklauso NP sudėtingumo klasei. Jei problema yra NP ir nėra lengvesnė už bet kurią kitą NP problemą, sakoma, kad ji yra visiškai NP. Kuprinės problema, keliaujančio pardavėjo problema ir Būlio patenkinimo problema yra NP užbaigtos kombinacinės problemos. Labiausiai žinomas algoritmas turi eksponentinį sudėtingumą visoms šioms problemoms spręsti. Jei kurį nors iš šių klausimų būtų galima išspręsti daugianario laiku deterministinėje mašinoje, tai visos NP problemos taip pat gali būti išspręstos polinominiu laiku ir būtų nustatytas P = NP. Nuo 2017 m. plačiai daroma prielaida, kad P NP, o tai reiškia, kad blogiausias NP problemų situacijas iš esmės sunku išspręsti, ty užtrunka daug ilgiau nei bet koks įmanomas laikotarpis (dešimtmečiai), atsižvelgiant į įdomius įvesties ilgius.

Lygiagretusis ir paskirstytasis skaičiavimas

Lygiagretusis ir paskirstytasis skaičiavimas apima apdorojimo padalijimą į kelis procesorius, kurie visi veikia tuo pačiu metu. Esminis skirtumas tarp įvairių modelių yra duomenų siuntimo tarp procesorių metodas. Duomenų perdavimas tarp procesorių paprastai yra labai greitas lygiagrečiame skaičiavime, o duomenų perdavimas tarp procesorių paskirstytoje kompiuterijoje vyksta tinkle, todėl yra daug lėtesnis.

Skaičiuojant N procesorių, reikia bent vieno procesoriaus laiko koeficiento N. Iš tikrųjų, kadangi kai kurių papildomų užduočių negalima lygiagretinti, o kai kuriems procesoriams gali tekti laukti rezultato iš kito procesoriaus, ši teoriškai ideali riba niekada nebus pasiekta.

Taigi pagrindinis sudėtingumo klausimas yra sukurti algoritmus, kad skaičiavimo laiko sandauga pagal procesorių skaičių būtų kuo artimesnė laikui, kurio reikia norint atlikti tą patį skaičiavimą viename procesoriuje.

Kvantinis skaičiavimas

Kvantinis kompiuteris yra kompiuteris su kvantine mechanika pagrįstu skaičiavimo modeliu. Church-Turing tezė galioja kvantiniams kompiuteriams, o tai reiškia, kad bet kokia problema, kurią gali išspręsti kvantinis kompiuteris, taip pat gali būti išspręsta Tiuringo mašina. Tačiau kai kurios užduotys teoriškai gali būti išspręstos naudojant kvantinį kompiuterį, o ne klasikinį kompiuterį, kurio laiko sudėtingumas yra žymiai mažesnis. Kol kas tai yra griežtai teorinė, nes niekas nežino, kaip sukurti praktinį kvantinį kompiuterį.

Kvantinio sudėtingumo teorija buvo sukurta siekiant ištirti įvairių tipų problemas, kurias gali išspręsti kvantiniai kompiuteriai. Jis naudojamas postkvantinėje kriptografijoje, kuri yra kriptografinių protokolų, atsparių kvantinio kompiuterio puolimui, kūrimo procesas.

Problemos sudėtingumas (apatinės ribos)

Algoritmų, galinčių išspręsti problemą, įskaitant neatrastus metodus, sudėtingumo trūkumas yra problemos sudėtingumas. Dėl to problemos sudėtingumas yra lygus bet kurio ją sprendžiančio algoritmo sudėtingumui.

Dėl to bet koks sudėtingumas, pateiktas dideliu O žymėjimu, reiškia ir algoritmo, ir lydinčios problemos sudėtingumą.

Kita vertus, gauti nereikšmingas žemesnes problemos sudėtingumo ribas dažnai yra sunku ir yra nedaug strategijų, kaip tai padaryti.

Norint išspręsti daugumą problemų, reikia nuskaityti visus įvesties duomenis, o tai užtrunka proporcingai duomenų dydžiui. Dėl to tokios problemos turi bent tiesinį sudėtingumą arba, kalbant apie didžiąją omega, sudėtingumą Ω (n).

Kai kurios problemos, tokios kaip kompiuterinės algebros ir skaičiavimo algebrinės geometrijos, turi labai didelių sprendimų. Kadangi išvestis turi būti parašyta, sudėtingumą riboja didžiausias išvesties dydis.

Rūšiavimo algoritmui reikalingas palyginimų skaičius turi netiesinę apatinę ribą Ω(nlogn). Dėl to geriausi rūšiavimo algoritmai yra efektyviausi, nes jų sudėtingumas yra O (nlogn). Tai, kad yra n! n dalykų organizavimo būdai veda prie šios apatinės ribos. Nes kiekvienas palyginimas padalija šią n rinkinį! užsakymus į dvi dalis, N palyginimų skaičius, reikalingas norint atskirti visas eiles, turi būti 2N > n!, o tai reiškia O(nlogn) pagal Stirlingo formulę.

Problemos sumažinimas kita problema yra įprasta strategija siekiant sumažinti sudėtingumo apribojimus.

Algoritmo kūrimas

Algoritmo sudėtingumo įvertinimas yra svarbus projektavimo proceso elementas, nes jis suteikia naudingos informacijos apie našumą, kurio galima tikėtis.

Dažnas nesusipratimas, kad dėl Moore'o dėsnio, numatančio eksponentinį šiuolaikinio kompiuterio galios augimą, algoritmų sudėtingumo vertinimas taps ne toks svarbus. Tai neteisinga, nes padidinta galia leidžia apdoroti didžiulius duomenų kiekius (didelius duomenis). Pavyzdžiui, bet koks algoritmas turėtų gerai veikti greičiau nei per sekundę, kai abėcėlės tvarka rūšiuojamas kelių šimtų įrašų sąrašas, pvz., knygos bibliografija. Kita vertus, milijonui įrašų (pavyzdžiui, didelio miesto telefono numerių) pagrindiniai algoritmai, kuriems reikia O(n2) palyginimų, turėtų atlikti trilijoną palyginimų, o tai užtruktų tris valandas 10 greičiu. milijonas palyginimų per sekundę. Kita vertus, greitojo rūšiavimo ir sujungimo rūšiavimui reikia tik nlogn palyginimų (kaip vidutinio sudėtingumo pirmiesiems atvejams, kaip blogiausio atvejo sudėtingumo antriesiems). Taip gaunama apie 30,000,000 1,000,000 3 palyginimų, kai n = 10 XNUMX XNUMX, o tai užtruktų tik XNUMX sekundes, kai palyginimai XNUMX milijonų per sekundę.

Dėl to sudėtingumo įvertinimas gali leisti pašalinti daugybę neveiksmingų algoritmų prieš įgyvendinant. Tai taip pat gali būti naudojama norint tiksliai suderinti sudėtingus algoritmus, nereikia išbandyti visų galimų variantų. Sudėtingumo tyrimas leidžia sutelkti pastangas didinti įgyvendinimo efektyvumą, nustatant brangiausius sudėtingo algoritmo žingsnius.

Norėdami išsamiai susipažinti su sertifikavimo programa, galite išplėsti ir išanalizuoti toliau pateiktą lentelę.

EITC/IS/CCTF skaičiavimo sudėtingumo teorijos pagrindų sertifikavimo mokymo programoje pateikiamos nuorodos į atviros prieigos didaktinę medžiagą vaizdo formatu. Mokymosi procesas yra padalintas į laipsnišką struktūrą (programos -> pamokos -> temos), apimančią atitinkamas mokymo programos dalis. Dalyviai gali gauti atsakymus ir užduoti aktualesnius klausimus elektroninio mokymosi sąsajos skiltyje Klausimai ir atsakymai pagal šiuo metu vykdomą EITC programos mokymo programą. Tiesioginės ir neribotos konsultacijos su domenų ekspertais taip pat pasiekiamos per platformoje integruotą internetinių pranešimų sistemą, taip pat per kontaktinę formą.
Norėdami gauti daugiau informacijos apie sertifikavimo procedūrą, patikrinkite Patogus abonementas.

Pirminės pagalbinės mokymo programos skaitymo medžiaga

S. Arora, B. Barak, Computational Complexity: A Modern Approach
https://theory.cs.princeton.edu/complexity/book.pdf

Vidurinės pagalbinės mokymo programos skaitymo medžiaga

O. Goldreichas, Įvadas į sudėtingumo teoriją:
https://www.wisdom.weizmann.ac.il/~oded/cc99.html

Pagalbinė mokymo programos skaitymo medžiaga apie diskrečiąją matematiką

J. Aspnes, Pastabos apie diskrečiąją matematiką:
https://www.cs.yale.edu/homes/aspnes/classes/202/notes.pdf

Pagalbinė mokymo programos skaitymo medžiaga apie grafų teoriją

R. Diestel, Grafo teorija:
https://diestel-graph-theory.com/

Atsisiųskite visą savarankiško mokymosi neprisijungus parengiamąją medžiagą, skirtą EITC/IS/CCTF skaičiavimo sudėtingumo teorijos pagrindų programai PDF faile

PDF piktograma EITC/IS/CCTF paruošiamoji medžiaga – standartinė versija

PDF piktograma EITC/IS/CCTF parengiamoji medžiaga – išplėstinė versija su peržiūros klausimais

Sertifikavimo programos mokymo programa

Įvadas 1 tema
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/1 žingsniai
Teorinis įvadas
Galutinės būsenos mašinos 6 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/6 žingsniai
Įvadas į baigtinių būsenų mašinas
Galutinių būsenų mašinų pavyzdžiai
Operacijos įprastomis kalbomis
Įvadas į nedeterministines baigtinės būsenos mašinas
Oficialus nedeterministinių baigtinių būsenų mašinų apibrėžimas
Deterministinių ir nedeterministinių FMV ekvivalentiškumas
Reguliarios kalbos 5 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/5 žingsniai
Reguliarių skrydžių uždarymas
Reguliarūs posakiai
Reguliarių išraiškų ir taisyklingų kalbų lygiavertiškumas
„Reguliarių kalbų lempos pumpavimas“
Reguliarių kalbų santrauka
Gramatikos ir kalbos be konteksto 4 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/4 žingsniai
Įvadas į kontekstines gramatikas ir kalbas
Kontekstinių gramatikų pavyzdžiai
Konteksto nemokamų kalbų rūšys
Faktai apie nemokamas kalbas
Jautrios kontekstui kalbos 3 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/3 žingsniai
Chomsky įprasta forma
Chomsky hierarchija ir kontekstui jautrios kalbos
Siurbimo lempa CFL
„Pushdown Automata“ 3 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/3 žingsniai
PDA: „Pushdown Automata“
CFG ir PDA lygiavertiškumas
Išvados iš CFG ir PDA lygiavertiškumo
Tiuringo mašinos 9 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/9 žingsniai
Įvadas į Turingo mašinas
Tiuringo mašinų pavyzdžiai
TM ir susijusių kalbų klasių apibrėžimas
Bažnyčios-Turingo tezė
Turingo mašinos programavimo technikos
Daugialypės juostos „Turing“ mašinos
Neterminizmas Tiuringo mašinose
Turingo mašinos kaip problemų sprendėjai
Surašytojai
Sprendžiamumas 17 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/17 žingsniai
Sprendžiamumas ir sprendžiamos problemos
Labiau sprendžiamos DFA problemos
Problemos, susijusios su kalbomis be konteksto
Universali Turingo mašina
Begalybė - suskaičiuojama ir nesuskaičiuojama
Kalbos, kurios nėra Turingo atpažįstamos
Nenusprendžiama sustabdymo problema
Kalba, kuri nėra Turingo atpažįstama
Reducability - neapsisprendžiamumo įrodymo technika
Sustabdymo problema - įrodymas sumažinimu
Ar TM priima bet kokią eilutę?
Skaičiuojamos funkcijos
Tiuringo mašinų lygiavertiškumas
Redukuoti vieną kalbą į kitą
Pašto korespondencijos problema
Neaiškumas dėl PCP
Linijiniai surišti automatai
Rekursija 5 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/5 žingsniai
Programa, kuri spausdinama pati
Turingo mašina, parašanti savo aprašymą
Rekursijos teorema
Rekursijos teoremos rezultatai
Fiksuoto taško teorema
Logika 4 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/4 žingsniai
Pirmos eilės predikatų logika - apžvalga
Tiesa, prasmė ir įrodymas
Tikri teiginiai ir įrodomi teiginiai
Godelio neužbaigtumo teorema
sudėtingumas 8 temos
Šiuo metu neturite prieigos prie šio turinio
Pamokos turinys
0% baigtas 0/8 žingsniai
Laiko sudėtingumas ir „big-O“ žymėjimas
Algoritmo vykdymo laiko apskaičiavimas
Laiko sudėtingumas naudojant skirtingus skaičiavimo modelius
Laiko sudėtingumo klasės P ir NP
NP apibrėžimas ir polinomo patikrinamumas
NP užbaigtumas
Įrodymas, kad SAT yra baigtas
Kosmoso sudėtingumo klasės
EITC/IS/CCTF skaičiavimo sudėtingumo teorijos pagrindai
Šiuo metu neturite prieigos prie šio turinio
Pagrindinis » Mano Paskyra

Sertifikavimo centras

Programos namai
Įvadas
Teorinis įvadas
Galutinės būsenos mašinos
Įvadas į baigtinių būsenų mašinas
Galutinių būsenų mašinų pavyzdžiai
Operacijos įprastomis kalbomis
Įvadas į nedeterministines baigtinės būsenos mašinas
Oficialus nedeterministinių baigtinių būsenų mašinų apibrėžimas
Deterministinių ir nedeterministinių FMV ekvivalentiškumas
Reguliarios kalbos
Reguliarių skrydžių uždarymas
Reguliarūs posakiai
Reguliarių išraiškų ir taisyklingų kalbų lygiavertiškumas
„Reguliarių kalbų lempos pumpavimas“
Reguliarių kalbų santrauka
Gramatikos ir kalbos be konteksto
Įvadas į kontekstines gramatikas ir kalbas
Kontekstinių gramatikų pavyzdžiai
Konteksto nemokamų kalbų rūšys
Faktai apie nemokamas kalbas
Jautrios kontekstui kalbos
Chomsky įprasta forma
Chomsky hierarchija ir kontekstui jautrios kalbos
Siurbimo lempa CFL
„Pushdown Automata“
PDA: „Pushdown Automata“
CFG ir PDA lygiavertiškumas
Išvados iš CFG ir PDA lygiavertiškumo
Tiuringo mašinos
Įvadas į Turingo mašinas
Tiuringo mašinų pavyzdžiai
TM ir susijusių kalbų klasių apibrėžimas
Bažnyčios-Turingo tezė
Turingo mašinos programavimo technikos
Daugialypės juostos „Turing“ mašinos
Neterminizmas Tiuringo mašinose
Turingo mašinos kaip problemų sprendėjai
Surašytojai
Sprendžiamumas
Sprendžiamumas ir sprendžiamos problemos
Labiau sprendžiamos DFA problemos
Problemos, susijusios su kalbomis be konteksto
Universali Turingo mašina
Begalybė - suskaičiuojama ir nesuskaičiuojama
Kalbos, kurios nėra Turingo atpažįstamos
Nenusprendžiama sustabdymo problema
Kalba, kuri nėra Turingo atpažįstama
Reducability - neapsisprendžiamumo įrodymo technika
Sustabdymo problema - įrodymas sumažinimu
Ar TM priima bet kokią eilutę?
Skaičiuojamos funkcijos
Tiuringo mašinų lygiavertiškumas
Redukuoti vieną kalbą į kitą
Pašto korespondencijos problema
Neaiškumas dėl PCP
Linijiniai surišti automatai
Rekursija
Programa, kuri spausdinama pati
Turingo mašina, parašanti savo aprašymą
Rekursijos teorema
Rekursijos teoremos rezultatai
Fiksuoto taško teorema
Logika
Pirmos eilės predikatų logika - apžvalga
Tiesa, prasmė ir įrodymas
Tikri teiginiai ir įrodomi teiginiai
Godelio neužbaigtumo teorema
sudėtingumas
Laiko sudėtingumas ir „big-O“ žymėjimas
Algoritmo vykdymo laiko apskaičiavimas
Laiko sudėtingumas naudojant skirtingus skaičiavimo modelius
Laiko sudėtingumo klasės P ir NP
NP apibrėžimas ir polinomo patikrinamumas
NP užbaigtumas
Įrodymas, kad SAT yra baigtas
Kosmoso sudėtingumo klasės
EITC/IS/CCTF skaičiavimo sudėtingumo teorijos pagrindai

VARTOTOJO MENIU

  • Mano Paskyra

SERTIFIKATŲ KATEGORIJA

  • EITC sertifikavimas (105)
  • EITCA sertifikavimas (9)

Ko jūs ieškote?

  • Įvadas
  • Kaip tai veikia?
  • EITCA akademijos
  • EITCI DSJC subsidija
  • Visas EITC katalogas
  • Jūsų užsakymas
  • Rekomenduojamas
  •   IT ID
  • EITCA apžvalgos (vidutinės publikacijos)
  • Apie
  • Kontaktai

EITCA akademija yra Europos IT sertifikavimo sistemos dalis

Europos IT sertifikavimo sistema buvo sukurta 2008 m. kaip Europoje pagrįstas ir nuo pardavėjų nepriklausomas standartas, skirtas plačiai prieinamam skaitmeninių įgūdžių ir kompetencijų sertifikavimui internete daugelyje profesionalių skaitmeninių specializacijų sričių. EITC sistemą reglamentuoja Europos IT sertifikavimo institutas (EITCI), ne pelno siekianti sertifikavimo institucija, remianti informacinės visuomenės augimą ir mažinanti skaitmeninių įgūdžių atotrūkį ES.

Tinkamumas EITCA akademijai 80% EITCI DSJC subsidijos parama

80% EITCA akademijos mokesčių subsidijuoja registracija 18/5/2025

    EITCA akademijos sekretoriaus biuras

    Europos IT sertifikavimo institutas ASBL
    Briuselis, Belgija, Europos Sąjunga

    EITC/EITCA sertifikavimo sistemos operatorius
    Europos IT sertifikavimo standarto valdymas
    Prisijunkite kontaktinę formą ar skambutis + 32 25887351

    Stebėkite EITCI per X
    Apsilankykite EITCA akademijoje „Facebook“.
    Susisiekite su EITCA akademija „LinkedIn“.
    Peržiūrėkite EITCI ir EITCA vaizdo įrašus „YouTube“.

    Finansuoja Europos Sąjunga

    Finansavo Europos regioninės plėtros fondas (ERPF) ir Europos socialinis fondas (ESF) projektų serijoje nuo 2007 m., kuriai šiuo metu vadovauja Europos IT sertifikavimo institutas (EITCI) nuo 2008

    Informacijos saugumo politika | DSRRM ir GDPR politika | Duomenų apsaugos politika | Apdorojimo veiklos įrašas | HSE politika | Antikorupcijos politika | Šiuolaikinė vergovės politika

    Automatiškai išverskite į savo kalbą

    Terminai ir sąlygos | Privatumo politika
    EITCA akademija
    • EITCA akademija socialinėje žiniasklaidoje
    EITCA akademija


    © 2008-2025  Europos IT sertifikavimo institutas
    Briuselis, Belgija, Europos Sąjunga

    Į VIRŠŲ
    Kalbėkitės su palaikymo komanda
    Kalbėkitės su palaikymo komanda
    Klausimai, abejonės, problemos? Esame čia, kad jums padėtume!
    Baigti pokalbį
    Prisijungiama ...
    Ar turite kokių nors klausimų?
    Ar turite kokių nors klausimų?
    :
    :
    :
    Siųsti
    Ar turite kokių nors klausimų?
    :
    :
    Pradėti pokalbį
    Pokalbio sesija baigėsi. Ačiū!
    Įvertinkite gautą palaikymą.
    geras Blogas