Gå til innhold

David Brown

Medlemmer
  • Innlegg

    213
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av David Brown

  1. Nå er vi ute og sykler igjen...

    E=mc^2 beskriver den kvantemekaniske energimengden i en gitt reaksjonsmasse (ved nukleær fusjon/fisjon). Batteriet ditt er akkurat like tungt om det er fulladet eller tomt. Det eneste som er endret er at man redusert entropien i løsningen (batterier er kjemisk energi) Man kan si det "folkelig" som at man har flyttet ionene fra en side til en annen inni batteriet. DERSOM batteriet ditt skulle bli utsatt for ekstreme temperaturer og alle bestanddeler i batteriet ble omgjort til ren energi ville E=mc^2 gjelde. Om batteriet var ladet eller ei ville da vært ubetydelig i det store bildet, ettersom energien som ville blitt frigjort ville være ca 4,5*10^15 J som er i størrelsesorden med hele verdens årlige enegiforbruk (jeg antar at batteriet veier ca 50g).

     

    Her har du misforstått en del igjen.

     

    Det er ingen som sier at det er materialmassen til batteriet som omgjøres til energi. Det er ganske enkelt at når den får ekstra energi (spiller ingen rolle hvilken type energi - det kan være lagret elektrisk energi, eller kinetisk energi når du kaster den ut vinduet) så får den ekstra masse. Helt konkret, hvis du lader en 1.2V batteri med 2100mAh lading, blir den 0.1 nanogram tyngere. Det er selvfølgelig en ubetydelig effekt i normal bruk - men teorien er klar.

  2. David Brown er du ute og sykler nå eller?

    Lys gir ingen "thrust" som du skriver.

     

    Solseil fungerer heller ikke slik du antyder. Jeg vil anbefale deg å lese litt matematikk og fysykk og så gå gjennom den wikipedia-artikkelen en gang til.

     

    A) Fremdrift i vakuum er avhengig av to ting: bevegelsesmasse (m*v) og Energi (kinetisk energi er 1/2 *m *v^2).

     

    B) det er INGEN motkraft ved å utstråle fotoner (hvor du har denne ideen fra aner jeg ikke, men i så fall ville alle satelitter vært drevet med den utrolig effektive teknologien "lyspære"). Selv med ineffektive glødelamper (5% effektive) ville man kunne LANGT overgå spesifikk impuls for selv de mest effektive ione-motorer vi har i dag.

     

    Og her kommer kickeren: Lys har ikke masse! Fotoner har energi men ikke masse. Atpåtil: energien til fotonet er avhengig av bølgelengden (lys med kortere bølgelengde har høyere energi enn lys med lengre bølgelengde).

     

    La oss regne litt på bevegelsesmassen til et foton:

    m = 0, v = c (c=lyshastigheten, ca 300M m/s i vakuum)

    0 * c^2 = 0 (!!!) (ser man det)

    "Ja men lyset har jo energi, det sier du i avsnittet over"

     

    Lyset er en bærer av energi, men ikke en kinetisk energi E(k) = 1/2 * m * v^2 som for fotoner blir følgende:

    1/2 * m * c^2 som (siden m=0) = 0 (!!!)

     

    "Whaaaaa? Så hvordan fungerer solseil da, liksom?"

    Solen er (i likhet med andre stjerner) en fusjonsreaktor. Hydrogen-helium er primærprosessen, men det er bare overflaten av prosessen. Helium kombineres til Karbon, som kombineres til Oksygen, til Neon, etc, etc. I disse prosessene (som foregår i flere millioner graders temperatur) så vil partikler slynges ut av solen. En del av disse partiklene, som alpha-partikler (helium-kjerne, men uten elektroner 2p2n), betapartikler (elektroner/positroner), med flere slynges ut med NÆR lysets hastighet. Disse partiklene HAR masse og dermed også både bevegelsesmasse/kinetisk energi (bevegelsesenergi). Når disse partiklene treffer solseilet vil de A) sprette tilbake (reflektreres) B) absorberes eller C) penetrere (gå gjennom) "seilduken". Scenario A vil gi mest effekt, deretter B og til sist C. Solvinden er med andre or ikke lys (fotoner) men andre partikler som er biprodukt av fusjonsprosessene i solen.

     

    "men OK da, vi lager en "lommelykt" av de partiklene der da!"

     

    Dette finnes allerede og kalles en ion-drive. Siden det er vanskelig nok å lage en Fusjonsreaktor på jorden, er det nærmest umulig å få til på et romfartøy (ennå). det man bruker i stedet er en partikkelakselerator som man mater med elektrisk energi (f.eks fra solcellepaneler) OG ladde partikler som akselereres og slynges ut i en retning.

     

    Beklager hvis jeg virker nedlatende, men det du antydet var så langt på bærtur at alle hårene mine reiste seg på hele kroppen...

     

    Det er en del vanskelig konsepter her. Det er ikke for ingenting at relativity (selv "spesial relativity", som vi snakker om her) regnes som avansert.

     

    Ta en kikk på http://en.wikipedia.org/wiki/Mass%E2%80%93energy_equivalence . Jeg renger med at det også fins på de norske sidene på wikipedia, men jeg er mest kjent med de på engelsk.

     

    Lys fotoner har en ekvivalent mass ut fra sine energi. Dette er den grunnlegende idéen fra relativity. Det betyr at de har moment, og kan gi thrust, og de utgir et trykk når de skinner på noe. (Det er dette som er prinsippet bak en solseil). Dette er faktum i fysikk som vi kjenner den - det er godt gjennomarbeidet i teori over de siste ca. 150 år (mye er fra Maxwell, før Einstein), og har vært bekreftet gjennom mange eksperimenter. Vi kan aldri si at en fysikkteori gir en komplett svar, men dette stemmer ihvertfall svært godt med realitet.

     

    A) Fremdrift i vakuum kommer fra momentum (m.v), men ikke kinetisk energi (1/2 * m.v^2) som er bare en approksimering av bevegelsesenergi (det stemmer godt for lav hastigheter). Foton har momentum, og dermed fungere fint til thrust.

     

    B) Utstrålte fotoner gir thrust - og de er svært effektivt i forhold til mass/energi som brukes. Men sammenlignet med motor som sender ut masse partikler, som rakket eller ion drives, er det ekstremt lite thrust. For de fleste bruksområder, hjelper det lite å være veldig effektivt hvis totaleffekten er nesten ubetydelig liten. Man skal huske forhold mellom mass og energi - 1 g er likt 25 GWh energi. Selv om det er mye mindre effektivt å skyve ut material fra motoren enn å skinne et lys, tar det grusomt mye lysenergi til å gi samme thrust som den minste liten rakket.

     

    Foton har ingen rest mass - men de har mass fordi de har energi. Energien per foton er avhenging av bølgelengden (eller rettere sagt frekvens, selv om det er kun viktig gjennom andre medium enn vakuum). E = h.f (h er Planck konstant). Massen er dermed h.f / c^2. Men når det gjelder thrust spiler det ingen rolle hvilken frekvens man bruke - det er totalenergi som er viktig (så lenge man ikke snakke om så små mengder at man kan telle fotoner hver for seg).

     

     

     

    Jeg vet ikke hvorfor du dra solen og fusjon med i diskusjon, men her tar du mye feil også. Det er utelukkende Hydrogen til Helium prosessen som kjører i solen foreløpig - kombinering til større elementer kommer ikke før nær slutten av livssyklusen til en stjerne da hydrogenet er for det meste oppbrukt. Du har rett at det kommer mye partikler ut fra solen i tillegg til lyset, og du har rett at dette kalles for solvinden. Men du tar feil hvis du tror at det er sånn en solseil fungere. Solvind partikler går rett igjennom en solseil, med veldig marginale effekt. Lyset, derimot, blir reflektert og gir god effekt.

     

     

    Jeg kan gi deg to praktiske applikasjoner av trykket fra lys. En er i romferd over lang avstand - hvis ikke man tok hensyn til trykket fra sollys ville prober til f.eks. mars kommer langt ut av målet. Det andre er i fusjonsreaktor (siden du liker disse så mye) - en av forskningsprosjekter her går utifra å lage en liten kule fylt med 2H og 3H og skyte den fra alle sider med absurd kraftige laserer som dermed komprimere kulen samtidig som de varmer den. Det vil si, lyset er faktisk det beste kjent måten å få veldig høy trykk på en veldig liten plass.

     

     

    Det er helt greit å være nedlatende, men det er lurt å sjekke faktene først :-)

  3.  

    Det er absolutt ingenting som sier at denne motoren bryter med konservering av moment. Den bruker energi, energi har en masse, og den kan brukes til framdrift. Hvis ikke motoren motta energi utenfra, blir det stadige lettere ettersom den mister energi og massen.

     

    (...)

     

    Nei, energi har ikke masse. Energi er et helt annet fysisk konsept enn masse. Du tenker kanskje på at massive partikler kan konverteres til fotoner. Fotoner er masseløse, men de har bevegelsesmengde.

     

    Og jo, denne motoren bryter mot bevaring av bevegelsesmengde (moment er ikke det samme som momentum på engelsk). Hvis motoren ikke blir påvirket av ytre krefter og ikke skyter ut eller tar imot partikler av noe slag, så er den totale bevegelsesmengden p = m v bevart i følge fysikkens lover, og dermed kan heller ikke hastigheten til motoren endre seg.

     

     

    Masse og energi er to sider av samme konsept - E = mc^2. Man kan konvertere mellom masse og energi - det skjer bestandig. Lader du en batteri, øker du energiinnhold - og du øker også massen. Når "lommelyktmotoren" kjører, tapper den masse når batteriet lades ut i forhold til E = mc^2. Lyset som går ut har en moment "p = m * v", der "m" kan regnes ut fra energi (fra E = mc^2) og "v" er "c". Man skal være litt forsiktig når man snakker om "mass" og fotoner - de har ingen rest masse (konseptet egentlig eksistere ikke i og med at de ikke kan stå stille), men har en masse ut fra energi. Det er derfor de har moment, og derfor de kan bøyes av tyngdekraften.

     

    Hvis motoren ikke skyve ut partikler av noen type, inkludert lys, så er jeg helt enige at det bryter Newtons første loven. Men det lommelyktmotoren viser at det er mulig å lage thrust uten å bruke noe fysisk propellant (beklager, men jeg kjenner ikke til det rette ordet på norsk til dette). Det er påstått at det er kvantum effekter i denne motoren - virtuelle partikler kan fungere like godt som lys for å gi thrust hvis de oppstår på rette måten. (Ikke at jeg tror de gjør det her - jeg er enige med Wired at det høres ut som målefeil, jeg er bare uenige at det nødvendigvis bryter noen fysiske lover.)

     

    Som du kan lett se er ikke morsmålet mitt norsk, så jeg tar gjerne imot rettinger eller forbedringer på språket mitt. Men "momentum" (også kjent som "inertia" på engelsk er "p = m.v". Er ikke det "moment" eller "bevegelsesmengde" på norsk?

  4. Spennende lesing David Brown. Hvis lommelykt gir så energieffektiv framdrift som luminositetseffektiviteten, hvorfor brukes ikke det i stedet for ionemotorer? Hvilke bølgelengder gir best energieffektivitet?

     

    LED, T5 lysstoffrør og lavtrykks natrium-lamper gir jo veldig god energieffektivitet.

    Det spiler ingen rolle hvilken bølgelengder du bruke. Men man skal være forsiktig å kalle det "effektivt" - ordet har to forskjellige betydning. Lysmotor er effektiv i at de gir (så vidt jeg vet) maksimalt thrust for energi/masse (git 100% effektiv lyspære). Men de er svært ueffektivt i at de gir veldig lite absolutt thrust. De kan derfor være en god løsning i et system som motta energi men ellers er helt lukket - innkommende solenergi blir gjort om til thrust. Men i praksis har man aldri en helt lukket system, og er man villige til å ofre litt masse for man mye bedre effekt med mindre motor med en ion motor.

     

    Selv for en romskip mellom stjernene, ville det være best med en trakt foran skipet for å samle inn hydrogenatomer og bruker dem i ion motoren istedenfor å bruke lysmotor.

     

    Poenget her er å bruke lysmotor som et eksempel på en motor som ikke ser ut til å bruke masse, og for sammenligning av effekt.

  5.  

    Helt enig, det er sikkert ingenting i veien for å bruke 10-30 km kobberkabel i -160 grader. :roll:

     

    Faktisk vil ledeevnen til kobber øke betraktelig hvis den fryses, og å levere 5kw (etter varmetap i kabelen) over ikke bare 30 men si f.eks. 100 km er egentlig et ikke-problem. Faktisk kan hele "borehodet" holdes helt adskilt fra en strømkilde, og bruke en isotoppellet til oppvarming og "smeltedrilling". Ytteligere er laser mye mindre effektiv, en slik spesialkabel samt all le involverte elementer adskillig dyrere, og husk at optisk fiber har tap målt i Decibel ikke meter som kobberkabel.

    Jeg vet ikke mye om overføring av effekt via laser gjennom fibre. Men jeg vet at det ville være enorme problemer med å overføre 5 kW over 10 km kobberkabel på Europa. Det er riktig at motstans til kobber går ned på -160C - men ikke nok til å ungå at man trenger tykke kabler. Det går helt fint å overføre 5 kW over 10 km kobberkabel her på jorda - det gjøres regelmessig til ROV'er i nordsjøen. Men tykkelse på kabelen kombinert med lengden gir en kabeltromme på størrelse med et lite hus - ikke særlig praktisk på Europa. Og selv om kobber leder godt på -160C, det blir nærmest umulig å bøye den - prøver man å rule den av en tromme på den temperaturen, blir det bare knekt.

  6.  

    Jeg har ingen tro på at <et eller annet> blir noen gang nyttig.

    Det er det mange som har sagt i mange forskjellige settinger, og som noen år senere måtte bite i seg :)

     

    Poenget med denne maskinen har vel aldri vært å utkonkurrere dagens løsninger, men å være et skritt videre i utviklingen, og dét har en veldig stor verdi i seg selv.

     

    Det er også mange som har god grunn til sin skepsis og noen år senere så vises det at de hadde helt rett.

     

    Kvantum datamaskiner generelt er "blue sky" forskning. Det er i seg selv en god ting - det er mye å lære fra slike forskning. At det fins noen store kommersielle aktører som blir blind av grådighet med tanke på "superdatamaskiner" som skal løse alt, gjør bare at det fins mer penger og resurser til forskningen. Det betyr ikke at kvantumdatamaskiner blir mer realistisk.

     

    Og når det gjelder D-Wave, så er det nærmest lureri. De selger maskiner under påstand om at de kjører fortere enn vanlig datamaskiner for bestemte type problemer, noe som bevist er langt fra sannheten.

     

    Som sagt, syns jeg forskning og framgang er flott - og jeg regner med at vi kommer til å se mer "ekte" kvantumdatamaskiner med flere qbits og større stabilitet i framtiden. Vi kommer også til å se mer "pseudo" kvantumdatamaskiner fra D-Wave som blir raskere og kraftigere. Men vi kommer også til å se mindre, raskere, billigere, og mer effektive vanlig prosessorer fra Intel, IBM, ARM, osv. som kommer fortsatt til å slå kvantumdatamaskiner i støvet i hastighet generelt, og spesielt i hastighet per dollar, per watt, per kg, eller per m^3 - de tallene som faktisk har en betydning utenfor forskningsverden.

  7. D-Wave lager ikke "ekte" kvantumdatamaskiner - det er "quantum anealing" som gir en metode å komme raskt til omtrent løsninger til noen typer optimiseringsproblemer. Det vil si, D-Wave'en er ikke i stand til å kjøre Shor's algorithm eller noen andre kvantumsalgortimer. Den klarer heller ikke finne det faktiske optimale svaret på problemer - bare noe som er ganske nær optimalt (som er jo ofte godt nok). Den klarer som regel ikke kjøre fortere enn tilsvarende programvare på en vanlig desktop PC, Når man tenker på prisen til D-Wave'en, og hvor raskt "vanlig" supercomputer man får for samme penger, er D-Wave'en totalt bortkast penger.

     

    Men maskinen er definitivt imponerende ingeniørkunst - og ennå mer imponerende salgsmankunst.

     

    Jeg har ingen tro på at kvantumdatamaskiner blir noen gang nyttig. De kan ikke gjøre noe som man ikke kan gjøre med vanlig datamaskiner (mange misfortår dette viktige punktet), og får å være "bedre" enn vanlig datamaskiner må de kunne gjøre noe raskere i forhold til kostnad. Jeg antar at i framtiden kommer de til å kunne finne primfaktorer større enn 15, men jeg tviler sterkt på at de blir den billigste måten å kalkulere noe som helst.

  8. Og NSA sier selv at det ikke har bakdører noen steder:

    http://gcn.com/artic...s-backdoor.aspx

     

    Men andre tidligere NSA-folk sier andre ting. http://www.itworldca...he-cloud/140135

     

    De sier ingenting som skulle indikere at det fins svakheter i RSA. Og det fins så klart ingen bakdører i RSA, siden RSA er ikke mer enn et par matematiske likningene.

     

    Det er fult mulig å lage /implementasjoner/ av RSA med bakdør, eller med andre svakheter (som f.eks. dårlig generering av nøklene).

     

    Og det er ikke bevist at det er ingen rask metode for å dele svære tall opp i primtall, som ville gjøre RSA knekkbare, men alle indikasjoner er at det ikke fins en sånt metode.

     

    Så du kan stole trygt på RSA - selv om du ikke kan stole blindt på programvare som bruker det.

  9. Med den nye loven i sin hånd, kan Rettighetsalliansen samle IP-adresser til de som er med på å dele en fil via BitTorrent-teknologien. Denne teknologien er lagt opp slik at man deler filen samtidig som man laster den ned, og alliansen kan kreve å få utlevert identiteten til eieren av en IP-adresse.

     

    Hva med alle som bruker bittorrent til helt lovlig fildeling?

     

    • Liker 5
  10. Jeg synes det blir litt idiotisk at du svarer på disse spørsmålene når du innrømmer at du er en pessimistisk skeptiker som ikke har tro på kvantemaskiner.

     

    Det er mye bedre at jeg gjøre klart mine fordommer her, enn at jeg lar være. Eller syns du at det er bare de som tror kvantumdatamaskiner er fantastisk som skal ha lov til å utrykke seg her?

     

    Og som sagt, blir jeg veldig glad dersom det bevises at jeg tar feil.

     

    Det er en bråte med operasjoner som utføres i en kvantedatamaskin som ikke utføres i en klassisk maskin. Du kan simulere dem, men det blir ikke det samme fordi de ikke utføres på qbits. Quantum fourier transform, hadamard gates, pauli X/Y/Z gate osv. "Teorien på kvantumdatamaskiner" som du kaller det går absolutt ikke ut på paralellisering, du kan lese om Deutsch–Jozsa algoritmen hvis ikke tror de kan utrette ting som er annerledes enn det en normal maskin kan.

     

     

    Har du faktisk sett på disse selv? "Deutsh-Jozsa" er en algoritme laget spesielt til å vise at kvantumdatamaskiner kan være raskere enn digitale datamaskiner. Det er en helt kunstig problem spesiallaget til slike demonstrasjoner, og likevel er ikke mer enn dobbelt så raskt som en vanlig algoritme.

     

    /Alle/ operasjoner som gjøres av kvantumdatamaskiner kan gjøres med digitale datamaskiner. Det som er spennende med kvantummaskiner er at dersom man har "n" qubitene, kan man teoretisk sett gjøre operasjoner på alle verdiene mellom 0 og (2^n)-1 samtidig. Det er veldig likt bruk av grafikkort som akselerator der man gjør samme operasjoner på en rekke tall samtidig. Forskjellen er at med grafikkort (og vanlig datamaskiner), hvis man vil gjøre dobbelt som mye arbeid i same tid må man ha dobbelt antal biter og kretser - men med kvantumdatamaskiner, må man bare lege på én qubit.

     

    Det er denne skalering som gjøre kvantumdatamaskiner potensielt så spennende - ikke at de kan gjøre noe nytt og mystisk.

     

    Men skaleringen er kun teoretisk. Det står en rekke praktiske utfordring som begrenser skalering (og også noen teoretiske grenser). Ikke minst, blir det stadige vanskeligere å presse mer og mer informasjon inn i samme plass - man dobbler informasjonstetthet i qubitene for hver ny bit i systemet. Det går fint en stund, men termisk støy og andre unøyaktigheter setter en stopper til slutt.

     

    Spørsmålet om kvantumdatamaskiner noen gang konkurrere med vanlig datamaskiner kokker ned til spørsmålet om ingeniørene klarer å få nok parallele qubitene til å jobbe sammen lenge nok at man får en raskere resultat enn med en vanlig datamaskin i samme prisklasse. Jeg tror ikke det komme til å skje - det er derfor jeg er en skeptiker.

     

     

    Konkurrere i kost-nytte? Disse maskinene opererer i et helt annet marked enn normale maskiner. Det har aldri vært snakk om at vi i framtiden vil ha kvantemaskiner i mobiltelefonen istedetfor en tradisjonell prosessor. Disse maskinene er for tiden hovedsaklig interessante som et forskningsobjekt som i framtiden muligens kan brukes til å løse noen type problemer. Det er også interessant fordi denne frykten du korrekt beskriver for at andre skal klare å knekke RSA gjør at feltet får mye oppmerksomhet og innskudd av penger.

     

    Faktisk så snakker de mest fanatiske fanboys om akkuratt det å ha kvantumdatamaskiner i mobiler. Men vi er ellers enige at det har aldri vært /realistisk/ forventningene at de skal erstatte vanlig datamaskiner. Kvantumdatamaksiner blir alltid bare til noen spesialiserte oppgaver.

     

    Likevel er det store spørsmålet om disse spesialoppgaver er best løst med kvantumdatamaskiner eller vanlig datamaskiner. Ta for eksempel demonstrasjonen D-Wave hadde der deres nye "D-Wave Two" maskinen klarte en bestemte type optimiseringsproblem 3600 ganger raskere enn en vanlig desktop PC. Det høres fantastisk ut - hvis ikke man tenker på prislappen til D-Wave'en. Jeg vet ikke hva D-Wave Two koster, men D-Wave One kostet rundt $10.000.000. Man kan kjøpe off-the-shelf supercomputere som hadde slått D-Wave'en til under $100.000, og med $1.000.000 hadde det vært lett å lage en spesialisert system med bl.a. programbarlogikk som kunne kjøre oppgaven langt raskere enn D-Wave.

     

     

    "Det er grunnlegende likt vanlig datamaskiner - bruker du en stor nok digital datamaskin, kan du også faktorisere tall opp til X i polynomial tid.". Du mener algoritmen fungerer i polynomial tid så lenge maskinen blir stor nok? Haha, den må du nesten utdype.

     

    Det er så fryktelig enkelt at jeg trodde ikke det var nødvendig å forklare.

     

    En kvantumdatamaskin som er laget for å faktorisere tall har en begrensning på hvor stor tallet kan være og fortsatt ha polynomial tid. Skal man gå over denne grensen X, må man ha flere qubitene, eller deller opp oppgaven og ta exponential tid.

     

    Det samme gjelder vanlige digitale datamaskiner.

     

    For example, med en X på 1.000.000, kan man finne prime faktorene ved å prøve deling med alle primtall under 1000. Det fins 168 slike tall. Har man en digital datamaskin som kan gjøre 168 deling i parallel, har man et system som finner faktorene i en operasjon - langt mindre enn polynomial tid. Og du trenger ikke særlig kraftige OpenCL kort for å gjøre disse 168 delinginene parallelt.

     

    På samme måte som med kvantumdatamaskiner, går du over grensen med større X enn hardware klarer i kort tid, blir skaleringen til slutt exponential.

     

    I teori, kvantumdatamaskiner kan skalere bedre slik at det blir mulig å faktorisere svært store tall. I praksis tror jeg ikke det vil være mulig. Og dersom det de skulle se ut som kvantumdatamaskiner nærmer seg kraften som trengs for å knekke dagens RSA koder, er det ikke være enn at man bruker lengre nøkkler.

     

     

    Eksempelet du kommer med er ikke sant engang. I 2011 ble 143 faktorisert av en kvantemaskin.

     

    Nei, eksemplet jeg sitert var korrekt. Recorden til bruk av Shor's algortime står på 21. D-Wave har faktorisert 143 på sine maskiner, men de bruker ikke Shor's alogritme. De bruker "adiabatic" algoritmer, og det er (per i dag) ingen matematisk bevis for at denne type algoritmer kan skaleres og beholder polynomial tid. Det er ingen tvil om at adiabatic algoritmer som D-Wave bruker er interesant - det ser speseilt lovende ut som en metode å finne nær-optimale løsninger på kort tid. Men disse systemer er ikke "vanlige" kvantumdatamaskiner, og de fleste teoretiske resultatene om mulige skalering av kvantumdatamaskiner gjelder ikke for disse D-Wave systemer, fordi de kan ikke bruke "vanlige" kvantumalgoritmer.

  11. Dette er da operasjoner utenfor de som skal til for å møte kravene for en turing-komplett maskin. Noen vet hva slags operasjoner dette er?

    Disse magiske operasjoner fins ikke - kvantumdatamaskiner gjør ingenting som man ikke kan gjøre med digitale datamaskiner.

     

    Hele teorien på kvantumdatamaskiner går ut på at de kan gjøre noen type operasjoner mye raskere enn digitale datamaskiner - hovedsakelige fordi de kan gjøre dem parallelt. Ikke engang marketing folk hos D-Wave ville påstå at de kan gjøre noe /nytt/.

     

    Som du sikkert forstår om du har lest innleggene mine, har jeg stor skepsis mot kvantumdatamaskiner, og er veldig pessimistisk om de noen gang konkurrere i kost-nytte mot digitale maskiner. Men jeg blir veldig glad dersom noen lager kvantumdatamaskiner som beviser at jeg tar feil!

  12. Folk burde kanskje ta seg tid til å lese en wikipedia artikkel før man uttaler seg som ekspert på kvantedatamaskiner.

     

    Carl Sagan: En qubit har uendelig med mulige tilstander, ikke tre. Det du snakker om er verdiløst, og tar ikke i bruk noen kvantemekaniske fenomener.

     

    En qubit har bare én tilstand, men den tilstanden er en sannsynlighetsbølge, ikke en av-på status. Man kan tenke på det som en graf - og akkuratt som man kan tegne ubegrenset mange forskjellige kurver, ser det ut som det er ingen teoretisk grenser på hvor mye informasjon man kan ha i én qubit.

     

    Men faktum er at det er mange begrensningene som gjør at "uendelig med mulige tilstander" er bare marketing tøv. Teorien legger noen begrensningene - f.eks. informasjon krever energy, som setter en grenser for informasjonstetthet. Men det praktiske verden setter mange flere grenser. Termisk støy begrenser presisjon i sannsynlighetsbølgene - derfor jobber man nær absolutt nullpunkt. Men hvis man ikke /er/ på nullpunktet (og det er man jo aldri), har man termisk støy. Og alle måter å få data inn og ut av systemet gir begrensningene.

     

    Det vi kan si er at en qubit kan holde mye mer informasjon enn en vanlig bit - men slett ikke ubegrenset mye.

     

    "Only two things are infinite, the universe and human stupidity, and I'm not sure about the former."

    Albert Einstein

     

    Og kvantedatamaskiner handler ikke om økt kraft eller moores lov eller at de snart skal ta igjen normale datamaskiner. Det handler om å gjøre spesielle operasjoner på quantum bits og dermed å oppnå informasjon man ikke kunne funnet på samme måte med en klassisk maskin.

     

    David Brown: Jeg skjønner ikke hvor du tar det fra at det ikke er noe man kan gjøre med en qubit som man ikke kan med en bit. Og man kan simulere en kvantemaskin i den grad at du kan observere hva man kan gjøre med en qbit, men du kan ikke simulere en kvantemaskin som skal oppnå noe en klassisk maskin ikke kan. Det enkleste beviset for det er at du trenger uendelig med bits for å simulere en enkelt qbit. Ingen maskin har uendelig med bits. Det du kan simulere er en ikke-perfekt qbit og teste ut quantum gates på den.

     

     

    Jeg sa ikke at det ikke er noen man kan gjøre med en qubit som man ikke kan med "en bit" - jeg sa med "noen integertall" - d.v.s., en passende antall vanlig biter. Man trenger bare nok "digitale" biter til å dekke den /virkelige/ opplysningen til kvantumdatamaskinen. Dette er akkurat likt simulering av analoge signaler - har man nok digitale biter som passer til signal-to-noise ratio, kan man simulere systemet og få like gode resultater som kan kunne få fra det analoge systemet.

     

     

    Hva i all verden vet du om kvantemaskiner har noe med kunstig intelligens å gjøre?

     

    Det koker ned til "komputability", uansett hvordan man implementere kalkulasjonene. Så lenge man kan simulere systemet på en "vanlig" datamaskin, kan man få samme resultater.

     

    Det er ikke utenkelig at det å tenke i "kvantumdatamaskin modus" kan gi inspirasjon til nye algoritmer i kunstig intelligens, eller at det kan være en mer effektiv måte å beskrive dem på. En av de viktigste felt i AI er bruk av neural networks, som ble inspirert av måten hjerneceller er koblet sammen. Men borsatt fra noen få ekspirimenter i programbarlogikk brikker, bruker man en vanlig PC til å simulere en neural network.

     

    Kvantemaskiner er et ungt felt, vi vet absolutt ikke grensene for hva man kan finne ut med det. Du påstår det er ubrukelig, men Shor's algoritme for å faktorisere store tall er et ganske opplagt bevis på at kvantemaskiner kan utrette ting normale maskiner ikke kan. Det er sant det vanskeligere for hver qbit, spesielt mtp decoherence, men når google bestiller en på 512 bits sier det meg at D-Wave har kommet langt på noen få år. Det er ikke mer enn 1 år siden folk benektet at D-Wave hadde klart å lage en kvantemaskin i det hele tatt. Maskinene D-Wave produserer kan ikke kjøre Shor's algoritme, men de kan helt sikkert gjøre mye kult.

     

    Så vidt jeg forstår Shor's algoritme, kan man bruke det for å faktorisere en nummer i kort (polynomial) tid. Men det er avhengig av at kvantumdatamaskinen har nok kapasitet (ut fra stabilitet, opplysning av qubitene, og antall qubitene). Det vil si, for å kunne raskt faktorisere en nummer opp til X må man ha en kvantumdatamaskin av "størrelse" Y. Det er grunnlegende likt vanlig datamaskiner - bruker du en stor nok digital datamaskin, kan du også faktorisere tall opp til X i polynomial tid.

     

    Det fine med Shor's algoritme (og andre quantum algoritmer) er at med ideele kvantumdatamaskiner, har man god skalering - man trenger ikke /så/ fryktelige store kvantumdatamaskinter for å knekke dagens encryption systemer, mens størrelsen på en digital datamaskin hadde være mye større. Problemet er at kvantumdatamaskiner er langt fra ideel, og det er ingen tegn til at de blir store nok til å utfordre vanlig datamaskiner. Det er morsomt å fantisere om en kvantumdatamaskin som kan finne faktorene til en 1024-bit nummer, noe som digital datamaskiner kommer aldri til å kunne gjøre med dagens algoritmer. Men man skal også husker at det første implementasjon av Shor's algoritmer for 12 år siden klarte å finne faktor til 15 (ikke en 15-bit nummer, men tallet 15 = 5x3). Rekorden som ble tatt for et år siden klarte å faktorisere 21. Så imponerende er "gjennombrudene" i kvantumdatamaskiner i den virkelige verden.

     

    Hvor kreativt en kvantemaskin kan tenke vet man ikke, men de fungerer ikke på noen måte som en normal datamaskin og man kan ikke avfeie dette simpelthen med å si at det avhenger av kreativiteten til programmereren.

  13. Alt dere skriver her sikkert riktig, jeg vet ingenting om slike maskiner.

     

    Det jeg lurer på er hva vi vanlige mennesker ikke vet. Det kan hende at de har kommet mye lenger enn det de sier de har gjort. Men dette er bare spekulasjoner på linje med konspirasjonsteorier....

     

    Men det kan jo hende at siden de nå skal legge "uendelig" mye penger i det at det går mye fortere å utvikle dette en man tror er mulig. Tenk på Moores lov (selvfølgelig modifisert til å gjelde dette, ikke transistorer), hvis dette faktis begynner å funke med kvantemaskiner også så vil dette gå utrolig raskt fremover. Og hvis disse maskinene har så mye mer "kreativ tankegang" som artikkelen sier, så vil de kunne løse fysiske problemer etc mye bedre enn en vanlig supermaskin som artikkelen sier.

     

    Det jeg har skrevet ovenfor er vel egentlig et spørsmål til dere som vet mye om dette. Håper noen kan svare på hva som faktisk skjer hvis utviklingen tar helt av, med tanke på forskning med disse maskinene da selvfølgelig.

     

    De som jobber med kvantumdatamaskiner har alltid lyst til å jobbe med dem - spørsmålet er hva som motivere de som finansere det. Mye vekt blir lagt på kvantum enkrypsjon, som er et nært relatert felt, og som folk betaler mye penger for (selv om jeg ser ingen poeng med det). Kvantumdatamaskiner er en spennende tanke med stor potensiell - og det er mange som er veldig redd for at /andre/ skal få det til. Reddselen er en stor motivasjon selv for teknologier med lite praktisk bruk.

     

    Og som sagt er det absolutt ingenting som ville si at en kvantumdatamaskin kan være mer "kreativ" enn en vanlig maskin. En vanlig datamaskin kan jo simulere kvantumdatamaskinen uansett.

     

    Når det gjelder "Moore's law", er det faktisk ikke en vitenskapelig lov som enkelte tror. Det er bare et navn til et mønster som vi har sett i de siste årene - det er absolutt ingen garanti om framtiden til vanlig datamaskiner, og man kan ikke bruke det til å se framtiden til kvantumdatamaskiner. Og selv om Moore's law faktisk var en lov, ville det ikke betydd at kvantumdatamaskiner går "utrolig raskt fremover", men det ville faktisk betydd at kvantumdatamaskiner kommer aldri til å måle seg mot vanlig datamaskiner.

  14. Spørs hvor man setter grensen for hva kreativ tenkning er for noe. Nevrale nettverk og HMM baserte tilstandsmaskiner kan bli beskrevet som kreative siden de ut fra treningsdata selv setter opp tilstandene. Tenker at kreativt i denne sammenhengen er slik unsupervised learning. At de gir maskinen alle begrensninger man vet om (alle fysiske lover), for så å gi et problem man ikke vet svaret på. Man kan da få maskinen til å kommer frem til mulige svar på problemet gitt det man i dag vet.

     

    Dette krever helt enormt mye datakraft, noe kvantedatamaskiner kan gi.

     

    Alt du sier er riktig, opp til det siste punktet. Kvantedatamaskiner per i dag har nesten ingen datakraft, og det ser heller ikke ut til at de skal ta igjen vanlig datamaskiner i en fornuftig tidsplan. Du kan lett simulere de største kvantedatamaskiner på vanlig PC'er - og i motsettning til kvantedatamaskiner har du da noe som fungere pålitelig og klarer å fungere for mer enn et millisekund i timen.

     

    I teori, hvis man klarte å få sammenlagt en stor antall qubiter, med en måte å stille dem inn, lese dem ut, og koble dem sammen (d.v.s., "programmerer" systemet), og få hele pakken å være stabilt over lang tid - da kunne de gjøre raskt regning i en fåtall av spesialiserte algoritmer. Men realiteten er at for hver ny qubit, og hver ny funksjon, blir kvantumdatamaskiner flere ganger større, dyrere, og mer komplisert. Så selv om det har vært framgang, øker ledelsen av vanlig datamaskiner (i hastighet, og hastighet for penger, og hastighet for strøm) hele tiden. Det er ingen tegn til at kvantumdatamaskiner noen gang tar dem igjen.

  15. Et qubit kan være av/på eller begge deler samtidig. Hva som gjør at dette er så mye bedre må noen andre svare på...

     

    Ja, en qubit holder en "sammenslåing" av forskjellige statuser. Det er ikke bare av eller på - det holder en "sannsynlighetsbølge" (hvis det er det rette utrykket på norsk). Men når du leser en qubit, får du bare av eller på som svar.

     

    Tanken er at man skal kunne gjøre kalkulasjoner med mange verdier samtidig dersom man får disse verdiene inn i sannsynlighetsbølgen til en qubit.

     

    I realitet er det ingenting man kan gjøre med en qubit som man ikke kan gjøre med noen intergertall. Og der man trenger en stor og dyrt apparat for å holde 4-5 qubit'er i live i mer enn en millisekund, har vi god erfaring med å jobbe raskt og effektivt med vanlig datamaskiner.

     

    Quantum computing er, så langt jeg har sett, totalt bortkast hvis man tenker praktiskt. (Det er alltid greit med forskning for å lære, og framhever vitenskap.) Det fins allerede kunder som betaler dyrt for quantum dingser - spesielt til encryption systemer. Men det er mer eller mindre lureri. Jeg regner ikke med noen gang å se en quantum computer som gjør noe raskere, billigere, mindre, eller bedre enn en digital computer.

     

    Kunstig intelligens er alltid morsomt - men det har ingenting med quantum computing å gjøre.

  16. Svært, svært mange sikkerhetsangrep er bygget rundt å utnytte buffer overrun, som såvidt jeg har forstått er å fylle minnet til du bryter ut... Det er angrep basert på manglende eller mangelfull sikkerhet som da som en sideeffekt direkte vil medføre redusert pålitelighet.

     

    Buffer overrun er fine eksempler av programfeil som er hovedsakelig pålitelighetsproblemer og som av og til også fører til sikkerhets problemer. Skjer det en buffer overflow, gjør ikke programmet det det skal - det er alltid en bugs. Det er sjelden at buffer overflow fører til sikkerhetssvakheter (de fleste fører bare til feil i programmet), selv om relativt mange sikkerhetsbrudd benytter seg av buffer overflow. Men som regel der buffer overflow fører til sikkerhetsproblemer, er ikke overflowen i det man ville klassifisere som sikkerhetrelatert kode. Det er en av grunnene til at jeg mener man kan ikke si at et program er sikker før man har en pålitelig og feilfritt program.

     

    Det triste med buffer overflow er at det er nesten alltid lett å unngå dem i programmering. Den enkleste måten er å bruke programmeringsspråk som har mer automatisk kontroll over minne og buffere - da er det mye vanskeligere for programmereren å skrive noe feil. Ellers hvis man er nøye med funksjonene man bruker og ta i bruk kontrollverktøy, er det ikke vanskelig å skrive korrekt kode ved bruk av bufferer.

  17. Hvorfor det?

     

    Hvis du ikke kan stole på at programmet gjøre det det skal, kan du ikke stole på at sikkerhetsfunksjonalitet i programmet fungere.

     

    Det er klart at en bugs i programmet betyr ikke nødvendigvis en sikkerhetshul - men hvis du først tillater at programmet har bugs, så kan du ikke være sikker på at sikkerheten er under kontroll.

     

    Du kan godt prøve å si at f.eks. programkrasj eller feil i display ikke har noe med sikkerheten å gjøre. Men i praksis kan det være indirekte tilkoblinger som er vanskelig å forutsi. Tidlig i denne diskusjonen ble det nevnt en feil i java om konvertering av rare tall fra ascii til doubles - det er nepe noen som tenkte at det var en del av sikkerhetskoden i biblioteket, men det ble en sikkerhetsfeil likevel. På samme måte trengs det ikke mye fantasi eller googling for å se at programkrasj kan også fører til sikkerhetsfeil.

  18. Samtidig skal man være oppmerksom på at mange store og nesten alle mellomstore prosjekter også drives av en liten håndfull nøkkelpersoner... Noe så smått som bankID skal være mulig å lage like bra uten å støtte seg på et enormt rammeverk som Java.

     

    Jeg er ikke en ekspert på browser sikkerhet, men jeg ser ikke at det er noen grunn her til å bruke Java istedenfor Javascript. Jeg antar at det er fordi de tror at browseren vil kanskje lagre passordet hvis det er en vanlig html form felt. Men det blir det ikke med mindre enn at både websiden og brukeren tillater det - og så lenge det fins keylogger trojans, er det ikke særlig grunn til å gjøre noe mer ut av det. Og hvis man virkelig ville gjøre noe mer avanserte, er det ingen problem i javascript å kapre tasttrykk uten å ha en tekst boks - da blir passordet aldri lagret i sin helhet.

  19. Du blander mellom pålitelighet og sikkerhet.

     

    NASA er i utgangspunktet ikke opptatt av sikkerhet, men av pålitelighet.

     

    ISS hadde worm på et tidspunkt, men ettersom den ikke utgjorde noen trussel mot systemets pålitelighet, eller mannskapets velferd, var det ikke viktig. Det var brudd på sikkerheten, men ikke påliteligheten.

     

    Dette handler om sikkerhet, og et program som ikke er pålitelig er ikke nødvendigvis usikkert og vice versa. Det er to forskjellige problemer.

     

    Det er riktig at en pålitelig program er ikke nødvendigvis sikkert - men for å være sikkert, så /må/ det være pålitelig.

     

    Det fins tre typer sikkerhetsfeil. Det er designfeil (som f.eks. å lagre passord i klar tekst), implementasjonsfeil (som buffer overflow), og brukerfeil (som brukerer med "123" som passord).

     

    Designfeil er vanskelig å eliminere totalt - man må tenke gjennom alle mulige konsekvenser av systemet. Men man kan komme langt med god design prosess, med blant annet mye diskusjon og samarbeid mellom forskjellige folk på forskjellige nivå. Alt for ofte er det kun sluttprogrammereren som bestemme kritiske design funksjonalitet.

     

    Implementasjonsfeil kan elimineres nesten helt i noen type kode - og reduseres dramatisk fra "industry standard" av opp til 10-50 per KLOC ifølge noen rapporter. Bruk av bedre tilpasset programmeringsspråk hjelper mye, samt begrenset bruk av funksjonalitet (bruker man bare funksjoner som "strncat" istedenfor "strcat" i C, eliminere man mange muligheter til buffer overflow), bruk av testing og verifikasjons verktøy, og bruk av programmeringsstyl som gjør det lett å verifisere programmet. Og for kritiske funksjoner - som lavnivå biblioteker og VM'er til java, python, osv., kan man bruke mer tid og krefter og mer formelle metoder.

     

    Bruker feil blir det alltid. Selv om man jobber hardt i designfasen, som å spesifisere at "123" ikke godtas som passord, blir man aldri kvitt muligheten for at brukeren gjøre noe dumt. Men god design og god dokumentasjon kan redusere risikoen.

  20. Kanskje vil funksjonelle språk, som lettere lar dataprogrammer bli sjekket for feil, ta over dagens programvarearena. I dag forteller vi datamaskinene HVORDAN de skal gjøre hva - og dette er alltid mer komplisert, detaljert, og mer større sjanse for feil, enn å fortelle datamaskinene HVA den skal gjøre - og akkurat sistnevnte er noe bl.a. funksjonelle språk er bedre på. Desverre, trenger vi også ytelse, og det er lettere å oppnå hvis menneske tenker som datamaskin (altså dagens programmeringsspråk) enn omvendt (funksjonelle språk).

     

    Det er interessant at du tar opp programmeringsspråk, og programmeringsspråk typer. Du har helt rett i at det er mye lettere å bevise feilfritt funksjonalitet med funksjonelle programmeringsspråk - det var ikke tilfeldig at det er akkurat en slik språk som jeg begynte med på universistet (for mange år siden). En viktig punkt her er at rene funksjonelle språk har ikke variabler - det gjør det mye enklere å behandle dem som matematikk. Og som du sier, man sier hva resultat man ønsker, ikke hvordan man skal beregne det. Dermed er prosessen å gå fra en god spesifikasjon til et fungerene program en serie med stegg fra en abstract beskrivelse av problemet ned til en funksjonelle program som er klar til å kjøre.

     

    Funksjonelle programmeringsspråk er blitt langt mer effektivt i praksis - to av de mest populære er Haskell og OCAML, og begge to kan gi veldig effektive programvare. Men det er ofte at man avviker en del fra de rene funksjonelle, for å gjøre programmeringen både lettere og mer effektivt. Det blir alltid en balanse mellom hvor høy kvalitet og sikkerhet man trenger, og hvor mye man er villige til å betale.

     

    Det kan også nevnes at mange imperitive språk også støtte en del funksjonelle metoder, som Python og t.o.m. den nyeste C++ standarden.

  21. Som C.A.Hoare skrev:

     

    There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.

     

     

    Problemet med sikkerhet ligger hovedsakelig i at de fleste velger metode 2. Det alle meste programvare er for komplisert, og bugs er derfor vanskelig å finne.

     

    Det er ikke vanskelig å lage programvare som er feilfritt. Da jeg lærte om programvareutvikling (fra bl.a. Tony Hoare), behandlet vi programvare som matematikk - det er enten bevist feilfritt, ellers er det temmelig verdiløs bortsatt fra læringsmuligheter. Men det er to store utfordring i praksis for å skrive feilfritt kode - først skal man være klar over hva koden skal gjøre, og så koster det mer å skrive bevist korrekt kode.

     

    Første utfordringen her er faktisk det vanskeligst. Det er svært få programmer der det ble laget en klar spesifikasjon over hva den skal gjøre. Har man ikke det på plass først, er det umulig å si at koden faktisk gjøre det det skal. Men her kan man komme langt ved "divide and conquer" - del opp programmet i stykker der man vet akkurat hva hvert enkelt bit skal gjøre, og at man er sikkert på at det gjør jobben.

     

    Andre utfordringen er kostnad - i tid, penger, og ekspertise under utvikling, og tid og plass på run-time. Løsningen her er prioritering - det er viktigst å legge mest vekt på kode som er kritisk til sikkerhet eller pålitelighet av systemet, og på kode som er mye brukt.

     

    Noen nevnte en feil i en java bibliotek funksjon for konvertering av ASCII til doubles. En sånn feil skal aldri kunne oppstå - det er lett å spesifisere akkurat hva en slikk funksjon skal gjøre, og dermed lett å skrive det slik at det er bevist korrekt. Og når det er kode som blir brukt i så mange systemer, har man råd til å bruke litt ekstra tid for å øke kvaliteten.

     

    Heldigvis har det faktisk blitt mer vanlig med "unit testing" i utvikling - der man deler opp koden veldig i stykker som kan testes godt. Testing er ikke bevis for feilfritt kode, men det er ihvertfall et stegg i rett retning.

     

    Det kan også nevnes her en av de viktigste grunn til at *nix systemer (Unix, BSD, Linux, osv.) har en velfortjent rykte for å være mer sikkert enn Windows systemer. Det kommer av unix programvare filosofi av at programmer skal gjøre kun én ting, men gjør det bra. Det stammer fra at unix systemer har alltid vært utmerket i å håndtere mange programvare om gangen, og koble dem sammen. Windows programvare filosofi stammer fra DOS dagene, der DOS var minimalt og man kjørte bare en applikasjon - dermed skal applikasjonen prøve å gjøre alt mulig. Man skal være forsiktig ved å generalisere for mye, og *nix har sine komplekse, svake programvare også (som Firefox med java...) - men mønsteret er klart at jo større og mer kompliserte programvaren er, jo vanskeligere det er å være feilfritt.

  22. Hvis maskinen ikke dugger til en desktop lengre (selv med Puppy Linux), kan det likevel fungere fint som en filserver eller printserver (eller t.o.m. en mailserver hvis man er villige til å lære litt). 64MB ram, 90 MHz Pentium er rask nok til enkel filserver, men jeg ville ønske ihvertfall dobelt av dette for å kjøre Dovecot IMAP email server.

     

    Det mest effektivt valg til slike serverer er nok Debian net install - du får en helt minimalt system, og kan installere bare de server programvarene du ønsker. Men det er nok flere andre Linux distro'er (og BSD'er) som kunne brukes.

     

    Det er lurt å koble opp to harddisker og kjører med raid1, spesielt med gamle disker. Men med Linux software raid trenger du ingen spesielle hardware, og diskene trenger ikke å være like.

×
×
  • Opprett ny...