Tenk deg at du er en tyv å rane et museum utstilling av fristende smykker, geodes og sjeldne perler. Du er ny på dette, så du bare tok en enkel ryggsekk. Målet bør være å komme unna med det mest verdifulle objekter uten å tynge vesken før den bryter eller blir for tung å bære. Hvordan kan du velge blant objektene for å maksimere din tyvegods? Du kan liste alle gjenstander og deres vekter for å regne ut svaret for hånd., Men flere objekter det er, jo mer krevende denne beregningen blir for en person eller en datamaskin.
Denne fiktive dilemma, den «niste problem,» tilhører en klasse av matematiske problemer som er kjent for å skyve på grensene for databehandling. Og vesken problemet er mer enn en tanke-eksperiment. «Mange av problemene vi står overfor i livet, enten det er business, finans, inkludert logistikk, legge i container skip, fly lasting — disse er alle niste problemer, sier Carsten Murawski, professor ved University of Melbourne i Australia., «Fra et praktisk perspektiv, skreppen problemet er utbredt i hverdagen.»
Forskere gang tok seg av problemet er kompleksitet for å skape en datamaskin sikkerhet systemer, men disse kan nå bli sprakk siden problemet har blitt så godt studert. Nå som teknologien er i stand til knuste den låses på vår digitale kommunikasjon vevstol på horisonten, skreppen problemet kan inspirere til nye måter å forberede seg til denne revolusjonen.
Alt eller Ingenting
vesken problemet tilhører en klasse av «NP» problemer, som står for «nondeterministic polynomisk tid.,»Navnet referanser hvordan disse problemene tvinge datamaskinen til å gå gjennom flere trinn for å komme frem til en løsning, og antallet øker dramatisk basert på størrelsen av innganger, for eksempel, inventar av elementer å velge mellom når stuffing en bestemt niste. Ved definisjon, NP-problemer har også løsninger som er enkle å kontrollere (det ville være trivielt å sjekke at en bestemt liste av elementer gjør, faktisk, som får plass i en ryggsekk).,
«problemet teoretikere begynte å se på var hvor effektivt en bestemt oppgave kan utføres på en datamaskin, skriver Keith Devlin i reserve Millennium Problemer. For eksempel: Gitt en liste over 1 million museum gjenstander med sine vekter og monetære verdier, og en ryggsekk begrenset til 25 pund, en datamaskin ville ha til å kjøre gjennom alle mulige kombinasjoner for å generere eneste en med de mest lukrative hale. Gitt ubestemt tid, en datamaskin kan bruke brute force for å optimalisere store saker som dette, men ikke på tidsperioder som ville være praktisk.,
«Vi tror du kan dekke hele Jorden med prosessorer og kjøre dem til varme død av universet og fortsatt ikke klarer å løse relativt små forekomster av riktige versjoner av disse problemene, sier Noah Stephens-Davidowitz, Microsoft Research Fellow ved Simons Institute i Berkeley, California.
Noen NP-problemer som niste eksempel har en spesiell egenskap: I begynnelsen av 1970-tallet, Stephen Cook og Richard Karp viste at et utvalg av NP-problemer kan bli omgjort til et eneste problem av formell logikk., Derfor, hvis man kunne løses, og bekreftet effektivt med en algoritme, de kunne alle. Denne eiendommen er kjent som «NP fullstendighet.»
En av de vanskeligste spørsmålene i informatikk og matematikk er om disse «NP» problemer, inkludert skreppen problem, er virkelig forskjellig fra «P» problemer, som kan løses i det som er kalt polynomisk tid. Hvis P=NP, så det er mulig å løse ethvert problem som løsninger er enkle å kontrollere, sier Stephens-Davidowitz. Så, hvis dette ulikhet forsvinner, er den generelle niste problemet vil alltid være vanskelig.,
det å Holde Ting Hemmelig
Kryptografi forskere kjærlighet problemer som er vanskelige for datamaskiner til å løse fordi de er nyttige i å kryptere digitale meldinger. Ryggsekk-problem-som sikkerhet koder er ikke nyttig for dette, da de er for enkelt sprakk, men mer kompliserte metoder inspirert av dette problemet blir utviklet, og kanskje en dag vil spille en rolle i outwitting neste generasjon av databehandling.,
I en tidlig niste-stil krypteringsmetode, en persons private nøkkelen ville være en liste av tall som hver er større enn summen av sine forgjengere. Utveksling som medfører at personen ville bruke en offentlig nøkkel som virker tilfeldig, men er bygd opp av tall fra den første listen med spesifikke transformasjoner brukt. For eksempel, hvis den offentlige nøkkelen er , overført melding «1, 0, 0, 1» ville være kodet som 2+0+0+5 = 7 (fordi 2*1=2, 3*0=0, 4*0=0, og 5*1=5). Hemmelig nummer som er involvert i konverteringer mellom tastene, tillater den opprinnelige meldingen som ble avduket.,
For at dette skal fungere, en datamaskin må også finne ut om et gitt tall kan skrives som summen av et delsett av tall i den private nøkkelen, som blir en lett ryggsekk problem. Det er beslektet til å fylle en ryggsekk med en bunke av slike forskjellig størrelse elementer — som en ring, et maleri, en bil og en hus — og å vite at du ikke kan ting i noe annet etter at du har sjekket at ringen og maleriet passform. Cryptographers Ralph Merkle og Martin Hellman beskrevet denne ideen i 1978, men andre har funnet ut hvordan å knekke den tidlig på 1980-tallet.,
Privat informasjon utvekslinger på dagens internett ofte bruke taster som involverer store primtall, og mens factoring store tall er vanskelig, det er ikke antatt å tilhøre den samme «NP komplett» klassen som niste problem. Imidlertid, datamaskinen forskere er allerede ruste opp for en fremtid som kvante-datamaskiner kan raskt låse opp disse tastene.
Kvante-datamaskiner stole på prinsipper i kvantemekanikk, som sier at en partikkel ikke ligger i en bestemt posisjon, men har en sannsynlighet for å være i mange forskjellige steder, med mindre den er låst ned og målt., Mens vanlige datamaskiner kode informasjon i 0s og 1-ere, hver «qubit» i en kvante-maskin ville ha et bredt spekter av mulige tilstander relatert til egenskaper av partikler. Kvante-datamaskiner som ikke ville være nyttig for å surfe på internett eller skrive et filmmanus i en kaffebar, men de ville slippe løs aldri-før-sett strøm på noen få typer av matematiske problemer. Dessverre, de matematiske problemer utgjør grunnlaget for moderne cybersecurity.
«I en viss forstand, vi fikk virkelig uheldig,» Stephens-Davidowitz sier., «Vi klarte å hvile sikkerhet på internett på hardheten av noen av de svært få problemer som synes å være vanskelig for klassisk datamaskiner, men lett for kvante-datamaskiner.»
Mens quantum computing er i sin spede begynnelse, noen forskere sier at vi er bak i forberedelsene for det. I 2016, National Institute of Standards and Technology (NIST) kalles for nye quantum-resistente kryptering metoder, kunngjorde 26-semifinalen i fjor. En slik type algoritme utviklet kalles gitter-basert kryptering., I stedet for å bruke tall, bruker taster som finnes i flere dimensjoner og innebærer dannelsen av et gitter-struktur laget av like-poeng fordelt på plass. Spørsmålet er hvor disse punktene er, og hvor nær en gitt tilfeldig punkt er å koordinatene til et gitter. På sitt hjerte, dette er en ryggsekk problem i mer enn én dimensjon.
«Min nåværende besettelse prøver å finne ut hvordan sikre disse gitter-baserte ting, helst før vi bruker dem til å kjøre på internett,» Stephens-Davidowitz sier.,
«Dette betyr at vi må quantum-resistente kryptografi mye tidligere enn vi forventer quantum datamaskinen til å nå sitt fulle potensial,» sa Leo Ducas, forsker ved Centrum Wiskunde & Informatica i Nederland.
Utover kryptografi forskning, skreppen problemet og dets NP komplett søskenbarn er overalt i det virkelige liv. For eksempel, du har kanskje hørt om «traveling salesman» problem, som også er NP fullstendig., Utfordringen her er å finne den korteste ruten for en selger å reise mellom et gitt antall byer før du returnerer til utgangspunktet. Nært beslektet er vehicle routing problem, som mener flere biler leveranser.
Luciana Buriol, førsteamanuensis ved Universidade Federal do Rio Grande do Sul i Brasil, har angrepet dette problemet for å prøve å finne nye innfallsvinkler til helse-og omsorgssektor., Hun jobbet med en hjemmehjelp tjenesten der leger og sykepleiere besøke pasienter i deres hjem og bidro til å optimalisere sine ruter, gitt et begrenset antall biler tilgjengelig for transport.
«Gitt 300 pasienter og 15 biler, kan du ikke finne løsningen i en rimelig tid,» sa hun. «Hvis du har dager for å kjøre algoritmen vil du finne på, men du må finne på mindre enn 2 timer, ellers vil du aldri bruke i praksis.»
Ingen single one-size-fits-all-algoritmen kan løse disse problemene., I stedet, Buriol finner raske måter å komme frem til nyttig tilnærming, slik at de kan settes inn i handlingen.
Knapsacks Alle Rundt Oss
For de av oss som ikke er datamaskinen forskere og møte disse typer problemer i det virkelige liv, hvor god er vi? Murawski gruppen finner foreløpige resultater at når du gir mennesker ryggsekk-som problemer, vi også sliter med stor kraft., I små eksperimenter der deltakerne ble bedt om å fylle en ryggsekk på en dataskjerm med elementer bærer uttalte verdier og vekter, folk en tendens til å ha en vanskeligere tid på å optimalisere ryggsekk innholdet som antall element alternativer økt—det samme problemet datamaskiner har. Forskerne sier dette funnet kan være knyttet til «choice overload»: måten vi fryse opp når det gis for mange valg, selv i enkle situasjoner, som å kjøpe syltetøy i en matbutikk.
Likevel, i den virkelige verden, kan vi komme med. Betalende oppmerksomhet er også en ryggsekk problem., Når du kjører, vi står overfor et overflødighetshorn av mulige distraksjoner som fugler, skyer, radio, og omkringliggende bygninger. Vi må sette bare de mest relevante stimuli i vår mentale knapsacks—og generelt, gjør vi.
gjenstår spørsmålet: Gitt at NP komplette problemer er mer vanskelig for datamaskiner enn andre typer conundrums, er de også vanskeligere for folk? Begrenset foreløpige resultater tyder på at de kunne være, noe som overrasket Murawski.,
«Hvis dette viser seg å være tilfelle, ville det tyder på at hardheten av slike problemer er en funksjon av problemer—en egenskap i naturen, og som ikke er i øyet som ser,» Murawski sier.