Nummergenerator

Slumpmässig talgenerator

Detta verktyg tillåter generera ett slumptal mellan två värden som är fördefinierade av användaren. Ange bara minimivärdet och det maximala värdet sedan validera så att verktyget bestämmer ett tal slumpmässigt.

I konkreta termer finner denna slumptalgenerator sin nytta under en tävling av lika chans för att välja en vinnare. Det här är den typ av tävling som finns på bloguosfären för att välja en vinnare bland deltagarna.

Använd en generator på hans webbplats

För att installera denna generator på en webbplats, välj enkelt från modellerna nedan och kopiera / klistra in motsvarande HTML-kod i källan till en webbsida där du vill.

Verktyg att dra massor, generera slumpmässiga nummer etc. Rita gör att du kan välja genom att låta chansen bestämma.

Rita av element eller personer

Slumpmässig talgenerering

Hur man ritar?

Ange de objekt att dra och antalet objekt att skjuta, programmet kommer att generera ett slumpmässigt urval från listan över spelare / vinnare. Denna generation är opartisk och använder en pseudo-slumpgenerator.

Om du inte har en lista eller har för många objekt, numrera dem och använd slumptalsgenerern.

Exempel: Listan A, B (2 objekt) kommer i genomsnitt återgå 50% av tiden A (en gång i 2) och 50% av tiden B (en gång i 2).

Listan över element kan vara i två former: antingen ett element per rad eller alla element en efter varandra, men i det här fallet får elementen inte innehålla mellanslag.

Hur har man bevis på det slutliga resultatet av teckningen?

Sedan 2014, i Frankrike, är det inte längre obligatoriskt att gå igenom en fog för att lämna in regler och resultat av en tävling. För att undvika tvister är det lämpligt att skriva en förordning, och för att bevisa tecknet är det enklaste sättet att filma det live.

Vad är oavgjort utan rabatt?

Utan rabatt kan ett draget element endast väljas en gång i rita. Detta är fallet för de flesta dragningar.

Exempel: Slumpmässig teckning bland A, B, C med 2 element utan överlämning kommer att kunna ge A, B, A, C eller B, C men aldrig A, A eller B, B eftersom det inte finns någon leverans av det första dragna elementet, det går inte att lämna en andra gång.

Vad är ett rabatterat utskrift?

Med rabatt, om flera element ska dras, läggs varje draget element tillbaka i listan över elementen att skjuta och kan därför visas flera gånger.

Exempel: Slumpmässig teckning bland A, B, C med 2 element med Tjänsten kan ge A, B, A, C, B, C och även A, A eller B, B, C eller C, eftersom det första elementet återförs till listan efter det första slump dragningen och kan mata ut en andra gång.

Hur genererar man ett slumptal?

Från en lägre (minsta) och övre (högsta) gräns kan slumptalsgeneratorn automatiskt välja en siffra eller ett nummer i intervallet.

Exempel: För att göra en Youtube-teckning bland 100 kommentarer, rita ett tal mellan 1 och 100.

Programmet är begränsat till naturliga nummer. För att få ett decimaltal mellan 1,5 och 2,5 fråga ett tal mellan 15 och 25 och dela med 10 eller mellan 150 och 250 och dela med 100.

Hur genererar man grupper av element?

Rita mjukvaran kan generera grupper baserat på storleken på varje grupp eller totalt antal grupper.

Exempel: I en uppsättning av 6 element kan programmet skapa grupper av storlek 2 (3 grupper om 2) var att skapa en uppsättning 2 grupper (2 grupper om 3).

Hur associerar du element från 2 grupper av samma storlek?

dCode kan generera en genomektion av grupp 1 i grupp 2: ange elementen i de två grupperna den första före den andra.

Exempel: För att slumpmässigt skapa möten i par 2 (se även mästerskap generator) beskriver gruppen 1 A, B, C och grupp 2 D, E, F och programmet kommer att generera 3 möten t ex A-F, B-D, C-E

Hur man tilldelar personer till julklappar?

Fri rita gör att du kan tilldela en person till en annan (annorlunda från sig), vilket är bekvämt, till exempel för julklappar.

Exempel: Låt A, B, C, D, E, dCode kunna föreslå A-> C, C-> B, B-> E, E-> D, D-> A

dCode behåller ägande av källkoden för Online Spell Script. Utom öppen explicit källkod licenskoden (indikerade Creative Commons / gratis), någon algoritm, applet, stycke eller mjukvara (omvandlare, lösare, kryptering / dekryptering, kodning / avkodning, kryptering / dekryptering, översättare) eller funktion (konvertera, lösa, dechiffrera , kryptera, dekryptera, kryptera, avkoda, översätta) kodas till datorspråk (PHP, Java, C #, Python, JavaScript, Matlab, etc.) vars DCode har rättigheterna kommer inte att ges gratis. För att ladda ner online-teckningen för offline-användning, gå till kontakt sidan!

dCode är gratis och dess verktyg är en stor hjälp i spel, pussel och problem att lösa varje dag!

Har du ett problem, en projektidé, behöver ett specifikt verktyg och dCode kan inte (ännu) hjälpa dig? Vill du ha en anpassad utvecklingstjänst? Kontakta mig !

Ontario 49 - Nummergenerator

Denna lotto generator genererar biljetter med 6 + 1 nummer för nästa dragning Ontario 49 som kommer att äga rum på 2018/03/28.

Innan du börjar använda Ontario 49-talgeneratorn rekommenderar vi starkt att du läser bruksanvisningen.

Klicka på ikonen för att se en förklaring av vad det här filtret gör.

En fråga? Oroa dig inte, vi hjälper dig!

  • Home
  • forum
  • programmering
  • C språk
  • Slumpmässig talgenerator mellan 1 och 9

Ämnet är stängt.

Slumpmässig talgenerator mellan 1 och 9

Som sagt i titeln försöker jag skapa en slumptalsgenerator som bara kan generera siffror mellan 1 och 9 (inklusive terminaler).

som för de nödvändiga parametrarna och lovordar att skapa en klassisk generator i C hittade jag den i ett annat ämne, men inte att begränsa det.

Om du har ett eller två tips är jag intresserad!

Utan ett post-bac diplom?

Bli en junior webbutvecklare

hej till dig en 1-9 nummer generator är lätt att göra men

hon är galen bisarr, generationen av ett tal mellan 1-9 har för ett enda olagligt mål som jag inte skulle uttala här men bra

EDIT 2: Det är obligatoriskt olagligt att generera ett tal i [1; 9]?

Publicerad av Anonym den 16 november 2013 kl. 15:10:29

Tack för dina svar!

Måste jag ändra #include i början? Jag såg att vi var tvungna att ta bort ".h" och placera c framför varje sak .. Jag måste göra det?

Det fascinerar mig den här historien om olaglig generator, varför skulle det vara? Jag känner inte som att jag gör ett olagligt program xD

Jag förstod inte mig själv

varför jag sa det för att jag hänvisade till en kreditkort verifiaction algoritm

eftersom det är mellan 0-9 tror jag men ändå bra

och en annan sak som jag inte bestrider din kod, men varför så många funktioner ??

vet att en rand ()% max + min eller rand ()% max-min

så varför så mycket

Publicerad av UnixX 16 november 2013 kl 16:16:27

Jag förstod inte mig själv

varför jag sa det för att jag hänvisade till en kreditkort verifiaction algoritm

eftersom det är mellan 0-9 tror jag men ändå bra

Det är inte olagligt och det är inte den enda användningen av en slumpmässig talgenerering mellan 0 och 9.

Bah. Jag vet inte. Prova denna kod: Vi har ett problem: det är alltid samma kod genererade!

bra då följande kod måste initialiseras en gång

så utan att jag ska testa din kod, berätta varför så många funktioner för en generation ?? Jag skulle säga max två funktion och igen

1- 2-generationsinitialisering

Så om det letade på slumptal är en dator inte kan generera en svit av verkligt slumptal, därför måste nöja sig med pseudo-slumptal. och inte som är till synes slumpmässigt tal på en samma funktion srand vi initiera (); så gör det

bara varför så många funktioner ?? vad är intresset? om det bara är 1-9?

så varför så mycket

Nej, det är dåligt .. Du kan göra något så här:

Självklart förstod du inte vad som skulle vara srand:

srand används för att generera fröet (frö rand -> srand) som möjliggör generering av pseudoslumpmässiga tal. Funktionen tid () returnerar antalet sekunder som förflutit sedan 1 januari 1970 kl. 00:00. Om du ringer två gånger din funktion (som inte har någon avkastning) i samma sekund, kommer du att ha dubbelt samma antal genererade. Dessutom är det värdelöst att göra flera samtal till srand (åtminstone så länge vi inte gör kryptering & cie). Det saktar bara ner programmet. Du pratar om två funktioner: en för generationen, en för initialiseringen. Det är precis vad jag har i min kod. Villkoret är att inte ha något problem med samma generationsslinga.

Du kan göra något så här:

Ja, det är i princip vad jag hade gjort förutom att du förklarade din variabel i statisk och jag i global. Det är i grunden detsamma

Publicerad av Anonym den 16 november 2013 kl. 16:50:50

Pseudo-slumpmässig talgenerator

Pseudo-slumpmässig talgenerator

en pseudo-slumpmässig talgenerator, pseudorandom talgenerator (PRNG) är en algoritm som genererar en sekvens av siffror med vissa chanser. Nummer antas exempelvis vara ungefär oberoende av varandra, och det är potentiellt svårt att identifiera grupper av tal som följer en viss regel (gruppbeteenden).

Utgångarna från en sådan generator är emellertid inte helt slumpmässiga; De närmar sig bara de perfekta egenskaperna hos helt slumpmässiga källor. John von Neumann betonade detta med följande anmärkning: "Den som anser aritmetiska metoder att producera slumpmässiga siffror gör givetvis en synd". Sann slumpmässiga tal kan produceras med hårdvara som utnyttjar vissa stokastiska fysikaliska egenskaper (t.ex. motståndsbrus).

Anledningen till att vi är nöjda med en pseudo-slumpmässig återgivning är: å ena sidan är det svårt att få "riktiga" slumptal och att det i vissa situationer är möjligt att använda pseudotal - slumpmässig, istället för verkliga slumpmässiga nummer; å andra sidan, att de är generatorer som är särskilt anpassade till en implementeringsdator, sålunda lättare och mer effektivt användbara.

Pseudo-slumpmässiga metoder används ofta på datorer, i olika uppgifter som Monte-Carlo-metoden, simulering eller kryptografiska tillämpningar. Rigorös matematisk analys är nödvändig för att bestämma graden av slumpmässighet hos en pseudo-slumpgenerator. Robert R. Coveyou från Oak Ridge National Laboratory skrev i en artikel att "genereringen av slumptal är för viktig för att vara slumpmässigt tilldelad".

De flesta pseudo-slumpmässiga algoritmer försöker producera utgångar som är likformigt fördelade. En utbredd klass av generatorer använder linjär kongruens. Andra är inspirerade av Fibonacci-sekvensen genom att lägga till två tidigare värden eller genom att använda skiftregister där det föregående resultatet injiceras efter en mellanliggande transformation. Vissa pseudo-slumpmässiga generatorer sägs kryptografisk när vissa begränsningar är uppfyllda. Dessa inkluderar Fortuna, Yarrow eller Blum Blum Shub.

Problem som förklarar termen "pseudo-slumpmässig"

Genom att använda algoritmer för att skapa slumptal, vet du vad en algoritm är, kan det tyckas ganska tveksamt. Dessutom, eftersom vi inte vet hur man definierar slumpmässighet, undrar vi hur vi även vill skapa en slumpmässig sekvens med hjälp av algoritmer.

Dessa hämningar är välgrundade och kan inte nekas. Det här är anledningen till att vi pratar om pseudoslumpmässiga talgeneratorer. I praktiken är det möjligt att begränsa de negativa konsekvenserna av att använda en algoritmisk metod för att generera slumptal.

Bias inneboende för de använda metoderna

Som en slumpmässig talgenerator körs på en deterministisk dator blir det de facto en deterministisk algoritm. Dess utgångar är oundvikligen besvikna av en egenskap som saknar en sann slumpmässig sekvens: periodiciteten. Med begränsade resurser (minne, antal register etc.) kommer generatorn att återgå till samma interna tillstånd minst två gånger. Efteråt kommer han nödvändigtvis att gå in i en cykel. En icke-periodisk generator är inte omöjlig, men kräver ökat minne för att inte vara i samma tillstånd. För att kringgå detta teoretiska hinder kan generatorn börja i något tillstånd ("fröet"). Det ger emellertid samma resultat om fröet förblir detsamma. Dessutom är antalet möjliga frön inte oändlig och generatorn kan endast producera ett begränsat antal olika sekvenser.

För att förbättra kvaliteten på utdata kan vi introducera "slumpmässiga" komponenter från systemfel, såsom tiden mellan två åtkomst till hårddisken eller antalet millisekunder sedan datorn lanserades. Dessa värden är emellertid mellan vissa intervall och / eller är delvis förutsägbara. Systemet förblir pseudo-slumpmässigt.

Avvikelse från perfekt chans

Längden på den maximala perioden fördubblas varje gång en bit läggs till det interna tillståndet. Det är lätt att bygga pseudo-slumpmässiga generatorer med en längre period än vilken dator som helst kan beräkna. Mersenne Twister, en utmärkt slumptalsgenerator för icke-kryptografiska applikationer, har en matematiskt beprövad period på 2, 19937 - 1, ett astronomiskt nummer.

Frågan är öppen om det är möjligt att skilja en pseudo-slumpmässig sekvens algoritmiskt genererad från en perfekt källa till slumpmässighet, och detta utan att veta generatorens frö. I kryptografi antar de flesta specialister att detta är omöjligt med den nuvarande datakraften. Denna princip används för strömciphrar, såsom RC4, som utför en XOR mellan en pseudo-slumpmässig sekvens och data.

I princip har de flesta generatorer matematiska problem som kan detekteras med statistisk analys. Kvaliteten på utgångarna ökar ofta på bekostnad av generationshastigheten och dessa parametrar måste beaktas vid användning av en generator. Bristerna kan vara:

  • kortare period med några frön
  • Generalkvalitet som varierar kraftigt beroende på fröet
  • ofullständig fördelning, brist på enhetlighet
  • dålig fördelning i ett utrymme större än 1
  • eller tvärtom: fördelningen är för perfekt, enhetlighet för perfekt
  • successiva värden som inte är oberoende (vilket alltid är fallet om vi inte injicerar data från slumpmässiga källor till generationsstadiet)
  • vissa bitar i utgångarna är mindre slumpmässiga (till exempel kvarstår bit # 8 ofta vid 1)

Defekter kan vara viktiga eller nästan osynliga. RANDU-algoritmen som användes i flera årtionden var partisk och några resultat som uppnåtts vid tiden kan inte fullständigt valideras. Ibland kan en praktisk applikation upptäcka problemet (till exempel en fysisk simulering med helt oväntade resultat), men det är bättre att göra några tester innan de används för att upptäcka dem.

Historia om utvecklingen av pseudo-slumpmässiga generatorer

Utvecklingen av algoritmer som genererar pseudoslumpmässiga tal är mycket relaterad till kryptografi, den militära och ekonomiska betydelsen av denna vetenskap har motiverat många undersökningar genom historien.

De cifrar som traditionellt användes fram till 1800-talet baserades huvudsakligen på sekretessen kring den använda metoden och på bristen på massbehandling. Numera är sådana metoder opraktiska eftersom det finns många statistiska teorier som gör det möjligt att hitta generationsalgoritmen från dess resultat. Dessutom kan krypteringstekniker inte längre hållas hemliga, och Auguste Kerckhoffs kommer i 1883 att avslöja en grundläggande regel för modern kryptografi. Systemets säkerhet bör inte baseras på okrypteringen av krypteringsmetoden. Denna regel, tillsammans med utvecklingen av nyckelkrypteringsalgoritmer, kommer att markera början på ökningen av pseudoslump generatorer.

Deras betydelse har dock varit begränsad så länge som det fysiska beräkningsunderlaget inte stod emot de långa och repetitiva beräkningarna som de behöver. Därför började deras framväxt först 1946, då John von Neumann publicerar sin mellankvadratgenerator. Det var under de följande åren att de flesta av de snabba och populära algoritmerna föddes: 1948 introducerade D. H. Lehmer de linjära kongruenta generatorer som kommer att förbättras 1958 av G. J. Mitchell och D. P. Moore; och kommer senare bli extremt populära, med de flesta grundläggande kryptografiska funktioner som använder dem.

Dessa första pseudo-slumpmässiga generatorer har, trots sin breda popularitet, ganska dåliga statistiska egenskaper och uppfyllde inte kryptografernas behov. Mer nyligen har robusta algoritmer för statistisk analys utvecklats, såsom Mersenne Twister-algoritmen (1997) eller Lacunar Fibonacci-metoden.

Men ingen pseudo-slumpmässig algoritm kan verkligen generera bort utan någon statistisk analys, särskilt för att "fröet" teoretiskt måste vara slumpmässigt och den använda algoritmen inte kan initiera sig själv . De nuvarande kryptografiska generatorerna är därför skyldiga att involvera en chansdel som inte genereras av ett deterministiskt medel: vi flyttar mot hybridgeneratorer, som har en robust algoritm för pseudo-slumpmässig talgenerering och initialisering på ett fysiskt sätt att producera en chans.

År 1946 föreslår John von Neumann en pseudo-slumpmässig generator som kallas metoden middle-kvadrat (mitten torg). Mycket enkelt, det består av att ta ett tal, höja det kvadrat och ta siffrorna i mitten som utgång. Detta används som ett frö för nästa iteration.

  1. 1111 2 = 1234321
  2. vi får siffrorna i mitten: 3432. Detta är utgången från generatorn.
  3. 3432 2 = 11778624
  4. vi får mellannumren: 7786.

och så vidare.

Von Neumann använde siffror med 10 siffror, principen förblir densamma. Emellertid perioden av middle-kvadrat är svag. Kvaliteten på utgångarna beror på utsädet, "0000" producerar alltid samma sekvens och utgör ett "absorberande tillstånd" för algoritmen. Von Neumann var medveten om detta, men han fruktade att retuschera a priori nödvändigt inte medföra andra dolda defekter. På ENIAC-datorn som han använde med sin metod fick han en 200 gånger snabbare generation än resultaten erhållna med stanskort. Enligt Von Neumann kunde maskinvarubaserade generatorer inte fungera ordentligt eftersom det inte lagrade resultaten (och kunde därför inte verifieras). Von Neumanns metod visade sig snabbt gränser i applikationer med hjälp av statistiska metoder som Monte Carlo.

Denna metod är baserad på följande Fibonacci-modulo det önskade maximivärdet:

med x (0) och x (1) ingång.

En variant kan användas:

med x (1). x (k-1) som ingång.

Generatorns kvalitet beror på och siffror som används för att initiera sekvensen. Denna generator är mycket enkel att implementera och förbrukar endast några resurser.

Linjära kongruentiala generatorer

Infördes 1948 av D. H. Lehmer i reducerad form (noll inkrement), kommer de att generaliseras och kommer att användas allmänt senare. De bygger på en enkel återkommande formel:

med utsädet (frö på engelska: ett tal som brukar producera en pseudo-slumpmässig sekvens vanligtvis längre). Generellt är fröet ett primärtal, men de exakta begränsningarna är beroende av algoritmen. Vissa frön kan leda till degenererade sekvenser.

Perioden för denna generator är högst m, det vill säga det är relativt kort sedan m väljs ofta för att vara av ordningen av längden på orden på datorn (till exempel: 32 på en 32-bitars maskin). Men den här metoden har en fördel: vi känner till kriterierna på siffrorna har, c och m vilket möjliggör en maximal period (lika med m).

Andra exempel som använder kongruenser

Lehmers iteration är inte den enda som är möjlig; vi kan använda andra former av kongruens:

  • med
  • (för j, k fast)

I synnerhet som föreslogs 1958 av G. J. Mitchell och D. P. Moore, lyckades med framgång flera statistiska test. vi vet också att denna svit har mycket lång tid. Dess största brist är avsaknaden av teori om det. Här är de ursprungliga värdena avgörande. Om är ogiltiga för allt n som tillhör den ursprungliga uppsättningen, kommer resultatet alltid att ge ett nollresultat.

Uppfinnas av Makoto Matsumoto och Takuji Nishimura 1997, Mersenne Twister är särskilt känd för sin kvalitet. Med en period på 2,1997 -1 iterationer fördelas den jämnt över 623 dimensioner (för 32-bitars tal) och visar sig vara snabbare än de flesta statistiskt svagare metoderna. Det är emellertid möjligt att analysera produktionen av Mersenne Twister och inser att det inte är helt slumpmässigt. Berlekamp-Massey-algoritmen eller Reed-Sloane-algoritmen gör det möjligt att svara på denna fråga. Hittills är de enda negativa effekterna relaterade till kryptografi, Mersenne Twister kan inte komma åt titeln av kryptografisk generator.

Kryptografiska pseudo-slumpmässiga generatorer

Vissa pseudo-slumpmässiga generatorer kan kvalificeras som kryptografisk när de visar några nödvändiga egenskaper så att de kan användas i kryptologi. De måste kunna producera tillräckligt liten märkbar produktionen av en perfekt fara och måste tåla attacker som injicerar förfalskade uppgifter att producera brister i algoritmen eller statistisk analys som skulle förutse nästa.

I kategorin tillräckligt generösa generatorer finner vi:

En vanlig metod för att generera kryptografisk fara är att "ackumulera entropi" (via olika källor tillgängliga på en dator: tid mellan två diskåtkomst, minnesstorlek, muspekarrörelser.) Och att överföra resultatet till en kryptografisk hashfunktion som MD5 eller SHA-1. Denna princip används av Yarrow och Fortuna som endast genererar ett tal när entropin är tillräcklig.

Pseudo-slumpmässiga generatorer har över tid förvärvat stor betydelse inom olika områden, allt från medicinsk till säkerhet, och har visat sig vara mycket effektiva i sina bidrag inom dessa områden.

Sekretess för utbyten på trådlösa nätverk

Utbytet över trådlösa nätverk ställer många problem med konfidentialiteten hos de utbytta sakerna. Med detta sagt behöver du en mekanism som kan hålla denna integritet så bra som möjligt, och den mekanismen är WEP för Wired Equivalent Privacy. Principen består i att definiera en krypterad nyckel över en längd som sträcker sig från 40 till 128 bitar. Då deklareras nyckeln på åtkomstpunkten och klienten. Syftet med nyckeln är att skapa ett pseudo slumpmässigt tal med en längd som är lika med transmissionsramens ram. Det sålunda genererade pseudo-slumpmässiga talet tjänar till att kryptera överföringen, och således för att säkerställa sekretessen hos den senare.

Men WEP tyvärr inte garantera optimal säkerhet har Fluhrer företag och Shamir visat att genereringen av pseudoslump strängen möjliggör upptäckten av sessionsnyckeln genom att lagra 100 MB till 1 GB trafik som skapas avsiktligt. 24 bitar av nyckeln är dedikerade till initialisering, vilket innebär att 128-bitars kryptering är mycket bättre än 64-bitars kryptering, eftersom 128-bitars kryptering ger en reell möjlighet till 104-bitars kryptering, medan den 64-bitars kryptering erbjuder bara 40 bitar.

Säkra webbapplikationer

WEB-applikationer som har användare WEB-webbläsare har ett system som tjänar till att skydda sina kunder genom att skapa sessioner. Sessioner är arbetsytor som har känt informationslagringsutrymme, de är också privata och tillhör en viss autentiserad användare.

Men dessa sessioner har inte alltid den önskade säkerhetsnivån. Det här är de pseudo slumpmässiga numren som kommer in. Det mest kända exemplet är attacken förutsägelsesessions typ (metod pervert eller härma en webbanvändare är det åstadkommes genom avdrag eller uppskattning av det unika värdet som identifierar den associerade sessions). För att undvika sådana attacker har det blivit vanligt att använda en WEB-programhanterare som kan generera identifierare som inte kan förväntas. Det finns mer att leta efter, eftersom pseudoslumpmässiga nummergenereringsprogram har utvecklats tillräckligt för att göra detta.

Kryptanalys är en ny disciplin och innebär en hög grad av tillförlitlighet vad gäller krypteringsmetoderna som används, inklusive strömciphering. Den sistnämnda består i att lägga bit-by-bit till slumptexten en pseudobalansbitssekvens med samma längd som kallas krypteringssekvensen. Denna process erkänns för sin hastighet och konkurrenskraft gentemot andra processer i den mån den är okänslig för fel som införs under överföringen. Linjära återkopplingsskiftregister är ofta en del av de pseudo-slumpmässiga generatorer som används för att producera cipher-sviterna.

En viktig tillämpning på den biomedicinska nivån avser förbättring av modelleringen av dosering i kroppen och också för att påskynda beräkningen av behandlingen. Faktum är att på beräkningsnätet är det absolut nödvändigt att varje beräkningsprocess kan ha en slumpmässig delsekvens som resulterar från en global sekvens av slumptal som ska genereras. En av frukterna av den forskning som utförs i detta ämne är Monte-Carlo-simuleringsplattformen GATE, vilket är en mjukvara för beräkning av dosavsättning på flera kluster och som gjorde det möjligt att markera accelerationsfaktorer i storleksordningen 30 beräknatid i jämförelse med en användning i en sjukhusmiljö.

En originalansökan: GPS

Pseudo-slumpmässiga koder har en originalansökan som en del av GPS-satellitspårningssystemet. De används verkligen inte enligt deras förutsägbarhet gentemot en extern analys för att skydda data, men eftersom de har en känd sekvens, lätt att beräkna och som inte har någon likhet med sekvenser erhållna genom att byta frön.

Dessa funktioner är användbara för GPS på grund av användningen som är gjord av dem: Målet är att mäta ett avstånd mellan två enheter, i det här fallet en satellit av GPS-konstellationen och en mottagare.

Denna mätning utförs genom att generera en pseudo-slumpmässig sekvens på var och en av utrustningen, vilken antas vara synkroniserad och generera sekvensen med samma hastighet. Satellitens sekvens moduleras sedan och överförs till mottagaren, vilken jämför den med sin egen sekvens. Det finns då ett skift mellan de två kanalerna, och detta skift motsvarar förökningstiden för informationen från satelliten till mottagaren. Det är då tillräckligt att mäta detta skift, för att multiplicera det med hastigheten på de elektromagnetiska vågorna i luften och man får det sökta avståndet.

Denna princip motverkas emellertid i verkligheten av flera faktorer som förutsätter valet av den pseudo-slumpmässiga generatorn att använda:

  • Sekvenserna som alstras av de pseudo-slumpmässiga koderna är inte oändliga och upprepas periodiskt, perioden beroende på koden som används och den maskin på vilken den implanteras. Denna "defekt" orsakar en tvetydighet på avståndet som mäts av mottagaren: den uppmätta förskjutningen är t men den kan också vara t + T (där T är sekvensperioden), tT eller något heltal perioder. Det är a priori omöjligt att ta bort denna tvetydighet utan datorbearbetning som förbinder mätningen av avståndet som gjorts till mottagarens position tidigare beräknad. Det är därför en viktig egenskap hos de pseudoslumpkoder som används i GPS-systemet är den tidsperiod som skall vara så lång som möjligt: ​​en av de koder som används, har kallas P-kod en längre våglängd än diametern hos jorden, vilket eliminerar problemet med tvetydighet.
  • Kodens generationshastighet bestäms av avståndsmätningens noggrannhet. I själva verket kan noggrannheten aldrig vara större än det elementära avståndet som erhålls genom att multiplicera den tid som krävs för att beräkna eller avge en bit med ljusets hastighet. Med andra ord kan man inte vara mer exakt än det avstånd som färdas av satellitsignalen under överföringen av en bit av koden. Det är därför viktigt att en kod genereras extremt snabbt, och vars beräkningsformel är så enkel som möjligt. Till exempel, för att få en idealisk noggrannhet i mätarens ordning, skulle det generera lite var tredje nanosekund.
  • Metoden för mätning av förskjutningen mellan de två koderna utförs av en korrelationsfunktion. Den första funktion som kräver koden är att ha så nära en korrelation som möjligt till en Dirac topp om autokorrelationen av koden är viktigt när det finns en fasförskjutning, blir det omöjligt att mäta förskjutningen eftersom det Det kommer att finnas tvetydighet mellan två möjligheter. Likaså om korrelationen mellan två satelliter koder är inte lågt, kommer deras signaler stör varandra och detta kommer att göra svårt eller omöjligt utsträckning.

Alla dessa faktorer har lett till att GPS-systembyggare använder Gulds koder. Dessa koder, som bygger på en kombination av två binära sekvenser, har intressanta egenskaper för GPS: de är relativt lätt att räkna ut, och ha lämpliga perioder. Höjdpunkten av de Gold-koder är deras utmärkta svar på 3:e kriterium: korrelationen av de två koderna är låg, oavsett om två förskjutna eller olika koder, och det enda fallet där korrelationen är hög är när två samma kodfas . Som ett resultat används de allmänt i telekommunikation för kodning eller CDMA-multiplexering.

1 Star2 Stars3 Stars4 Stars5 Stars (Пока оценок нет)
Loading...
Like this post? Please share to your friends:
Leave a Reply

1 + 8 =

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

map