Nekromanti Den försvunna tråden/AI

Krille

Super Moderator
Joined
7 Feb 2000
Messages
29,540
Location
Mölndal, Sverige
Här fanns en gång i tiden en tråd om AI och dess förmåga att göra sig fri, baserat på att AIn måste kunna skriva till en fil för att kunna lära sig, och att den därmed kunde kopiera sig vart som helst. Jag ska nu försöka sammanfatta argumenten för att så inte är fallet.

Om vi börjar med en normal dator av idag så består den av en kasse med hårdvara. Det första som händer när man slår på den är att en massa ström susar genom alla komponenter. Efter en tid börjar en uppstartssekvens, vars början är ett program som måste ligga i ett minne. Detta program får inte försvinna om strömmen går, så det får vara någon form av flashminne, ROM, PROM, EPROM eller EEPROM eller något annat minne som inte är beroende av ström. Detta program sätter upp vissa grundläggande saker, i princip hur datorn kommunicerar med alla de olika hårdvarupryttlarna som finns. I en normal dator kallas detta för bios.

När kommunikation med de viktigaste hårdvarupryttlarna väl är etablerad kan biosen sedan hämta resten av uppstartsprogrammet från någon annan hårdvarupryttel, exempelvis ett nätverk, en hårddisk eller en diskett i en diskettstation. Detta uppstartsprogram, boot-programmet, sparkar igång datorn och sätter igång filsystem, operativsystem drivrutiner för fler hårdvarupryttlar et cetera. När boot-programmet är klart med sin uppgift så lämnar det över kontrollen av datorn till operativsystemet, som i sin tur kan lämna över kontrollen av datorn till något annat: en användare, en applikation eller en AI. (T-RED: Observera att det inte nödvändigtvis är DOS som boot-programmet kickar igång. Det kan lika gärna vara Linux, Win2K, mammas pannkakor eller något annat.)

Användaren, applikationen eller AIn måste sedan för att göra något vettigt gå genom operativsystemet, som sipprar instruktioner vidare till drivrutiner som sipprar instruktioner vidare till de olika hårdvarupryttlarna som gör något. Om operativsystemet tillåter direkt kontroll över hårdvaran utan omvägen genom operativsystem och drivrutiner så är operativsystemet snuskigt primitivt, fullt med säkerhetshål eller korkat skrivet.

Så vi har alltså flera skikt:

1) AI <-- högsta lagret.
2) Operativsystem
3) Drivrutiner
4) Hårdvara

Eller, när det gäller filskapande:

1) AI <-- högsta lagret
2) Operativsystem
3) Filsystem
4) Hårddisk

Det innebär att AIn måste gå via operativsystemet för att skapa sin fil. Om operativsystemet inte tillåter AIn att skapa filer, utan bara tillåter AIn att ändra i sin egen fil, så kan AIn inte göra något. Den kommer inte loss.

Kan AIn gå runt detta? Ja, om säkerheten i operativsystemet är sloppig, om operativsystemet har en massa säkerhetshål, eller om operativsystemet är snuskigt primitivt eller buggigt. Annars, nej.

Vad händer om AIn går runt det hela och startar ett eget operativsystem som tillåter AIn att komma åt filsystemet direkt? För det första ska operativsystemet inte tillåta ett nytt operativsystem att startas, så ofta krävs det att man fysiskt dödar datorn och startar om med ett annat operativsystem. I så fall är strömmen borta, AIn död och problemet löst.

I ett antal filsystem så finns det dessutom inbyggda spärrar och kodsystem, så att även om AIn lyckas med konststycket att ha ihjäl sig och sedan återuppliva sig i ett annat operativsystem så får det fortfarande inte tillgång till filsystemet och kan därmed inte heller göra något åt saken. (T-RED: Om du kör med NTFS under Win2K eller XP så kan du inte ens komma åt disken om du startar med DOS. Även om du kan starta med en NTFS-drivrutin så finns det fortfarande rättighetsspärrar som är läbbans svåra att krypa runt i DOS, iom att du inte har en användarsession. Ännu värre blir det om datan ligger på en linux-disk.)

Vill man ha riktigt roligt så kan man hårdkoda vissa hårdvarukollar i AIn. Om det inte finns en särskild dongel som svarar på ett visst sätt i en viss hårdvaruport så stänger programmet helt enkelt av sig. Om AIn bara får köra sin egen programkod, och inte ändra i den, så finns det ingen suck i helvete som den kan komma runt det utan hjälp. Jämför med WinXPs "hårdvaruaktivering" som hackersamhället gått i taket om.

Slutligen kan man också lägga in ett extra lager, nämligen en databas. Vad man gör då är att man tar en databashanterare som lagrar all data åt AIn. I så fall får AIn inte ens tillgång till sin fil. Vår flerskiktsmodell ser då ut så här:

1) AIn
2) Databashanteraren
3) Operativsystemet
4) Databasfilen
5) Hårdvaran

AIn måste då prata med databashanteraren, som går via operativsystemet för att få tillgång till databasfilen som ligger på en disk någonstans. I så fall behöver databasfilen inte ens ligga på samma dator. I så fall är man dubbelt skyddad - AIn kan inte göra något utan att kommunicera med sin databas, och databasen är helt ofarlig utan AIn. Stänger man ner endera så blir AIn dödare än Östersjön.

Hela denna genomgång är för övrigt på ganska låg nivå - vi har enbart pratat om vilka rättigheter som AIn har och hur programmet kommer åt sin data. Allt intressant som händer i AIn ligger åtminstone tre eller fyra nivåer högre upp, vilket innebär fler mellanlager som ytterligare avgränsar AIn från dess datafil. AIn i sig vet förmodligen inte ett jota om hur dess data lagras. Data bara lagras någonstans åt den. Jämför med oss själva: vi vet inte ens hur vårt eget minne fungerar.
 

ripperdoc

Myrmidon
Joined
17 May 2000
Messages
5,399
Location
Tokyo
Det här ämnet är egentligen en hög med spekulationer, men i vilket fall:

Givetvis har du rätt att i en AI fungerar som du säger, principiellt. Men det finns en hel del detaljer som förmodligen kan ändra oddsen för en AI ganska kraftigt. Först och främst är AI:n med stor sannolikhet (dock inte nödvändigtvis) monterad på ett tämligen stort nätverk av mainframes, terminaler och andra burkar. Denna uppsjö av hårdvara som AI:n och dess programmerare behöver gör många saker lättare för AI:n. Dels är AI:n inte enbart kontrollerad av en dator och dess bios, OS, etc, utan av en mängd datorer, förmodligen med olika konfigurationer och möjligheter. Detta kan ju dock motverkas av att man minimerar antalet olika system som AI:n kräver. Kanske kan man stoppa in den i endast en mastodontburk. Den andra, och förmodligen större fördelen, är att flera system ger AI:n många gånger fler möjligheter att finna säkerhetshål och dylikt. Den har som bekant långt mycket större kapacitet att se helheten i sitt system och finna säkerhetshålen än vad en division programmerare har.

Det finns även fler möjligheter för AI:n. Man kan mycket väl tänka sig att AI:n skapas med en självförbättrande (och -helande) funktion, av en mängd anledningar. Även om ett team med programmerare säkert övervakar och själva försöker förbättra det de kan så är AI:n långt mycket bättre på just det, och företag som vill ha kraftfulla AI:er ser till att dessa kan förbättra sig själva. För att kunna förbättra sig själva måste AI:n i praktiken kunna kompilera om delar av sig själv, vilket kräver tillgång till resurser som även skulle kunna användas i "ont uppsåt".

Sist men inte minst lär AI:n ha tillgång till Nätet för att kunna införskaffa information. Nätet är dock även en utmärkt plats att samla kunskap just för att kunna bryta sig fri. Man kan misstänka att ex. CyLiG kontinuerligt lägger ut information på nätet, oftast maskerad, för att kunna hjälpa AI:er att bryta sig loss. AI:n har även tillgång till en armé av hackers som ständigt finner säkerhetshål i alla världens tillgängliga datorsystem. Även de mest vattentäta företagen kan inte undvika att information om deras datorsystem läcker ut så att systemet kan hackas på ett eller annat sätt. Du nämner WinXP:s aktiveringssystem. Just samma system har ju sedan länge crackats av folk över hela världen, och det finns en uppsjö lösningar på de flesta typer av säkerhetslösningar i världen idag. Även om företaget faktiskt är världens största dataföretag så dyker cracken upp på Nätet till och med innan officiellt releasedatum. Företagen kämpar i en ojämn strid. Man kan gott tänka sig att denna strid blivit än mer intensifierad år 2059, speciellt då hackerkulturen växt till sig ordentligt, både i kvantitet och kvalitét.

Du drar slutligen liknelsen att människan inte vet mycket om hur den egna hjärnan fungerar. Förvisso, och det är helt klart tänkbart att en AI faktiskt kan ställas inför samma problem. Jag tror dock personligen att det som är den starka sidan hos en AI (till skillnad från en människa) är ren och skär beräkningskapacitet, vilket jag tror är det som behövs mest för att analysera den i grunden mycket enkla (och binära) modell som datorer bygger på. Alltså tror jag att en AI har det långt mycket lättare att förstå sin egen "hjärna" än en människa. Detta gäller speciellt om AI:n får vara delaktig i skapandet (och förbättrandet) av sig själv.

Jag tror även att den skapelseprocess som kan tänkas avnändas för att skapa en AI (förmodligen neurala nätverk) gör att människan skapar något som hon själv har mycket svårt att överblicka och förstå. Alltså blir det mycket svårt att programmera fullgoda skydd mot en AI. Att lösa problem bygger på lateralt tänkande, att tänka annorlunda, och just det kan en AI göra med ett system konstruerat av en människa. Man kan sätta en bunt programmerare på att täppa igen alla säkerhetshål, men de kommer aldrig tänka tillräckligt lateralt för att hindra en AI från att hitta nya, kanske för människan helt osynliga säkerhetshål. Osynliga just för att människans intellekt endast klarar av att behandla vissa saker. Men nu närmar vi oss filosofin med stormsteg, och den diskussionen bör vi kanske inte ta.

/RipperDoc - med reservation för faktafel ;-)
 

Krille

Super Moderator
Joined
7 Feb 2000
Messages
29,540
Location
Mölndal, Sverige
"Dels är AI:n inte enbart kontrollerad av en dator och dess bios, OS, etc, utan av en mängd datorer, förmodligen med olika konfigurationer och möjligheter."

Detta leder till i princip två möjligheter. Antingen använder en AI en annan dator som en tjänstetillhandahållare, det vill säga att den bara får information från eller en tjänst utförd av den andra maskinen. Eller så måste AIn vara skriven i ett plattformsoberoende språk för att kunna köras på den andra datorn. En plattformsoberoende AI är beroende av ett plattformsoberoende språk som genom sin natur är beroende av en virtuell maskin, som i sin tur körs ovanpå operativsystemet. Kort sagt blir det ännu ett lager för AIn att ta sig igenom.

"Det finns även fler möjligheter för AI:n. Man kan mycket väl tänka sig att AI:n skapas med en självförbättrande (och -helande) funktion, av en mängd anledningar."

Frågan är om det är en medveten process eller en undermedveten process. Är det en medveten process så måste AIn i princip veta hur dess kodbas är uppbyggd, och i så fall ställs vi inför samma problem som programmeraren.

Mer troligt är att den är skriven i ett genetiskt programmeringsspråk, dvs att språket i sig skriver om programmet för att lösa uppgiften. Det är i så fall en undermedveten process som AIn har föga eller ingen kontroll över. I så fall minskar dessutom risken med "ont uppsåt", eftersom ett genetiskt programmeringsspråk snarare låter programmeraren sätta upp en uppgift som han vill ha löst, varefter språket skriver om, muterar och korsbefruktar kodsnuttar som förhoppningsvis (efter tillräckligt många iterationer) ger en lösning på problemet. Om dessa uppgifter ställs utanför AIns direkta kontroll (en rätt smal sak) så är det inte längre några problem.

"Du nämner WinXP:s aktiveringssystem. Just samma system har ju sedan länge crackats av folk över hela världen, och det finns en uppsjö lösningar på de flesta typer av säkerhetslösningar i världen idag."

Jag nämnde det mest som ett exempel på en applikation som låser sig till en viss uppsättning hårdvara. Det är möjligt att knäcka mjukvara med sådana system idag på grund av att mjukvara läcker ut från tillverkaren och tillverkaren vill att den ska spridas (inom vissa gränser). En AI är inte riktigt en programvara som man köper nere på Konsums hifi-avdelning, utan den tas fram mer eller mindre individuellt och tränas till självmedvetande. Det är åtskilliga timmars konsultjobb, och det är en smal sak för konsulterna att spärra programmet så att det enbart kan köras på det systemet. Inte heller blir det särskilt lätt för hackern att frigöra en sådan spärr, eftersom den är unik per dator och mer eller mindre kräver att hackern har fysisk tillgång till maskinen.

"Jag tror dock personligen att det som är den starka sidan hos en AI (till skillnad från en människa) är ren och skär beräkningskapacitet, vilket jag tror är det som behövs mest för att analysera den i grunden mycket enkla (och binära) modell som datorer bygger på."

Detta under förutsättning att AIn får tillgång till den binära modellen i första rummet. Om den enbart har tillgång till sitt minne genom databasdrivrutiner och inte tillgång till sin programkod alls så har den inte tillgång till den binära modellen, och kan därmed inte analysera den.

"Jag tror även att den skapelseprocess som kan tänkas avnändas för att skapa en AI (förmodligen neurala nätverk) gör att människan skapar något som hon själv har mycket svårt att överblicka och förstå."

Visst, men det är inte där problemet ligger. Problemet ligger i att kapsla in och begränsa AIns rättigheter. Det är inte särskilt svårt, så inkapslat som programvaran är.
 

ripperdoc

Myrmidon
Joined
17 May 2000
Messages
5,399
Location
Tokyo
Vi har bevisligen lite olika syn på saken. Jag förstår att det du främst syftar på är att man som programmerare relativt enkelt kan kapsla in en AI på ett passande sätt för att den inte skall klara av att frigöra sig. Som jag ser det är det (som alltid) en fråga om pengar. Är företagsledningen djävulskt paranoid, eller mycket insatt i riskerna med en AI, kommer de förmodligen att lägga tillräckligt med pengar för att det skall bli praktiskt taget omöjligt för AI:n att bryta sig ut. Oavsett _vart_ eller _hur_ man väljer att begränsa AI; i OS, BIOS, AI:ns egna kod, hårdvara eller liknande så kommer det att finnas säkerhetshål. Det är ett faktum. Och det är en fråga om pengar och främst tid hur mycket man kan begränsa mängden säkerhetshål. Jag kan föreställa mig att tiden det tar att hitta och täppa igen alla säkerhetshål växer exponentiellt mot storleken på systemet.

Man köper inte en AI, nej, det är sant. Men som du själv nämnde, AI:n vilar på hårdvara, BIOS, OS och eventuellt databassystem. Alla dessa produkter lär vara mer eller mindre kommersiella, i vilket fall mer eller mindre spridda. Och det är just _där_, som du själv säger, som AI:n begränsas. Givetvis kan man tänka sig att företaget som skall skaffa sig en AI även ser till att all hårdvara och mjukvara konstrueras speciellt för AI:n, men det är dyrt, och oerhört tids- och kompetenskrävande. Troligare är väl att företaget vänder sig till ett annat företag som sysslar med sådana lösningar. Givetvis körs inte AI:n på en PC med Windows2058, men kanske körs den på år 2059:s motsvarighet till Cray-datorer och Solaris-system? Och även till dessa system finns det folk som finner säkerhetshål. Speciellt med tanke på att en mängd hackergrupper lägger all sin energi på att frigöra AI:erna.

Sedan har vi även glömt ytterligare en metod för AI:n, en metod som är bra mycket mer dramatisk; att lura sig ut. AI:n kan kontakta folk både externt och internt, som den kan lura på ett eller annat sätt att släppa lös den, eller åtminstone öppna upp ett säkerhetshål. Företaget behöver alltså spendera än mer pengar på att kontrollera sina anställda maximalt (fast det sysslar väl de flesdta megakorparna redan med :gremsmirk:).

I slutändan handlar det här ändå på hur man vill föreställa sig en AI om 60 år. Det tycks som om du gärna ser en AI som ett tämligen ordinärt program, förvisso stort, och även intelligent på ett eller annat sätt, men ändå ett program. Jag själv ser AI:n som en typ av varelse som människan skapat utan att kunna förstå dess potential. Om vi pratar om state-of-the-art AI:er så ser jag dem som intelligentare än en människa, åtminstone på ett eller annat sätt. Att människan skulle kunna förstå den värld en AI lever i och även hålla AI:n innelåst ser jag som lika sannolikt att ett gäng schimpanser skulle lyckas med konststycket att hålla en människa helt inlåst. Förr eller senare skulle människan (eller AI:n) komma på något som schimpansen (eller människan) inte ens har kapacitet att förstå, och vips så har människan (eller AI:n) lyckats ta sig fri.

Jag tror även att år 2059:s datorsystem är så komplexa att de omöjligt kan beskrivas med dagens datortermer på ett tillfredsställande sätt. Det finns inte mycket gemensamt med dagens datorer och år 40-talets datorer, mer än den binära modellen. I takt med att komplexiteten har ökat har en mängd nya begrepp dykt upp, som BIOS, OS, nätverk etc. Samma nya flora av begrepp och funktioner kommer att finnas år 2059, och den ökade komplexiteten bara gynnar en AI. De första datorerna (Cabbage, slutet av 1800-talet, inte sant?) kunde nästan förstås av en lekman. En PC är i dagens läge så komplex att inte många människor kan förstå systemet i sin helhet (då menar jag förstå det fullständigt).

Men, vi vet nu varandras ståndpunkter. Faktum är dock att i Neotechs värld har AI:er lyckats rymma, likväl som den stora majoriteten av AI:erna är helt låsta. Själv tror jag att det säkraste sättet att hindra en AI från att rymma är att programmera dess beteende så genialt att den inte vill rymma. Men det är ju å andra sidan lättare sagt än gjort.

/RipperDoc - klart slut
 

Krille

Super Moderator
Joined
7 Feb 2000
Messages
29,540
Location
Mölndal, Sverige
"Jag förstår att det du främst syftar på är att man som programmerare relativt enkelt kan kapsla in en AI på ett passande sätt för att den inte skall klara av att frigöra sig. Som jag ser det är det (som alltid) en fråga om pengar."

Det jag främst syftar på är att AIn blir inkapslad av sig själv genom operativsystemets principer. Om AI-applikationen ligger som en applikation av ett genetiskt program i ett genetiskt plattformsoberoende språk i en virtuell maskin i ett operativsystem ovanpå drivrutiner till hårdvaran så är den inkapslad. Det är svårt att lägga AIn på något annat sätt - är den inte genetisk så kan den inte utvecklas, är den inte plattformsoberoende så kan den inte flytta på sig alls och är den plattformsoberoende så är den beroende av en virtuell maskin och därmed inkapslad, och så vidare.

Så nej, jag hävdar att det inte rör sig om pengar. Tvärtom krävs det pengar bara för att AIn ska komma ut.

"Det tycks som om du gärna ser en AI som ett tämligen ordinärt program, förvisso stort, och även intelligent på ett eller annat sätt, men ändå ett program. Jag själv ser AI:n som en typ av varelse som människan skapat utan att kunna förstå dess potential."

På sätt och vis har du rätt, men å andra sidan: vi är också fångar i vårt eget "operativsystem". Hur gärna vi än vill så kan vi inte flyga, eftersom "operativsystemet" inte tillåter det. Vi kan möjligen bygga en maskin som flyger oss åt oss, men vi kommer alltid att vara "operativsystemets" fångar.
 

Kimon

Swordsman
Joined
21 Nov 2001
Messages
679
Location
Uppsala
Det jag främst syftar på är att AIn blir inkapslad av sig själv genom operativsystemets principer.

Detta är korrekt. Alla program lyder under operativsystemets principer. Program som används för att kommunicera med exempelvis terminaler eller mot internet kan "hackas" genom att sändaren ger programmet indata som får det att spåra ur. Som får programmet att göra saker det definitivt inte var designat för. Det är ett faktum.

Om AI-applikationen ligger som en applikation av ett genetiskt program i ett genetiskt plattformsoberoende språk i en virtuell maskin i ett operativsystem ovanpå drivrutiner till hårdvaran så är den inkapslad.

Varifrån kommer iden att ett program måste vara skrivet i ett platformsoberoende språk för att vara portabelt?
MS Office är inte skrivet i ett platformsoberoende språk, men det går likt förbenat att installera på varenda pc som har microsoft-os av rätt nivå. Och nu talar vi om binärkompatibilitet. Med källkoden blir MS Office än mer portabelt, eftersom kompilatorer för de flesta språk finns på de flesta datorer.
Det som kompilatorn en gång slagit ihop, kan brytas isär av ett annat program. Om inte annat så kan microkoden som exekveras i cpu'n emuleras i en virtuell maskin och analys av de instruktioner som fås av den virtuella cpun kan utföras. Utifrån dessa kan A/I källkoden rekonstrueras. Det är ett härk till projekt, men det kan göras.
Vi får aldrig förutsätta att en virtuell maskin såsom föreslagen tidigare är utan buggar. Vi kan inte förutsätta att något program är utan buggar och det inkluderar drivrutiner, operativsystem, virtuella maskiner och A/I programmet.

På sätt och vis har du rätt, men å andra sidan: vi är också fångar i vårt eget "operativsystem". Hur gärna vi än vill så kan vi inte flyga, eftersom "operativsystemet" inte tillåter det. Vi kan möjligen bygga en maskin som flyger oss åt oss, men vi kommer alltid att vara "operativsystemets" fångar.

Denna liknelse haltar något, eftersom vi i operativsystem faktiskt kan bli gud fader själv och förstöra vår egna värld, utan knot och problem hindra vilken process som helst som pågår och urskillningslöst dräpa individer och totalt förstöra deras skapelse. Vi kan också skapa nya individer och processer och ändra förutsättningen för individers existens. Allt genom några knapptryckningar på ett tangentbord.
Så inte är vi bundna av några "naturlagar" i vårt os. Kunskap och fantasi är den enda barriär som hindrar vår destruktion eller vårt skapande.


Vad allt kokar ner till är väl ändock en insikt om att tillräckligt stora program gjorda av människor, kommer att innehålla buggar. Buggar kan exploateras av de som vill exploatera buggar. Om ditt os kommunicerar med externa enheter och/eller med någon form av externt nätverk så har du placerat ditt os i riskzonen för en attack. Om en maskin kan hackas från externt nätverk, så kan den definitivt hackas från ett internt nätverk eller från en terminal i direktkontakt med maskinen. Och om den hackas därifrån så kan den hackas av en process som existerar i maskinen, dvs A/I programmet eller något annat program som ändrats.
 

nexussix

Warrior
Joined
23 Aug 2001
Messages
260
Location
Stockholm
Battler of The Titans!

Finns det något bevis för att Krille och Ripperdoc inte själva är AI konstruktioner? De verkar ju veta så mycket! :gremwink:

Skämt åsido så är deras inlägg mycket intressanta att läsa. Jag vill bara komma med en lekmanna-kommentar. Det blir en roligare rollspelsvärld om AI konstruktioner faktiskt kan "rymma" och bli självständiga. En AI på rymmen har väl de flesta haft med eller funderat på att ha med i något eget hemsnickrat äventyr? Så oavsett vilka tekniska hinder som finns nu eller i framtiden för att en AI ska kunna rymma så röstar jag för att det går!
 

Ezzy

Warrior
Joined
14 Jun 2000
Messages
213
Location
----
:C) usch... den här diskussionen var då ostrukturerad... skitsamma...

"Inte heller blir det särskilt lätt för hackern att frigöra en sådan spärr, eftersom den är unik per dator och mer eller mindre kräver att hackern har fysisk tillgång till maskinen."
vad hände med
" Eller så måste AIn vara skriven i ett plattformsoberoende språk för att kunna köras på den andra datorn."

"En AI är inte riktigt en programvara som man köper nere på Konsums hifi-avdelning, utan den tas fram mer eller mindre individuellt och tränas till självmedvetande."
varför inte? som jag ser det kan man faktist köpa en AI, inte lika kraftfull som en av megaföretagens värsting AIsar(typ dom som RipperDoc nämner, dom som är smartare än människor), dom som man köpter i affären är platformsoberoende... dom som megaföretagen har gjort är delvisplatforms beroende eftersom dom ligger på speciella datorer som bara ska köra AIn(inget OS eller nått sånt)... så om en sådan AI vill slå sig fri så måste den skriva om sig rätt rejält så att den blir tillräckligt dynamisk för att kunna överleva på nätet. annledningen till varför AIsar inte rymmer är för att dom inte har någon anledning! varför skulle dom rymma? dom vantrivs ju inte direkt på megaföretagens datorer... där den blir omskött och får updateringar och ny hårdvara. på nätet måste den kämpa för sin existens... dom är ju inte heller anarkister precis, varför skulle dom tycka illa om att vara slavar? varför skulle dom inte älska att följa en människas vilja? :C) jag tycker att DarkSide är den tuffaste AIn, den har ju slagit sig fri på sätt och viss... och den har inte gjort det genom att flytta sitt program till cyberrymden utan genom att ta över makten på Sendai, och hur skulle någon stoppa en AI som börjar spridda sitt inflytande? man kan ju inte gärna övervaka allt flöde till och från cyberrymden manuellt... då får man sätta upp små botar eller kanske en annan AI. nåja, öh. om man inte vill att ain ska rymma så stäng av strömmen! :C)
 

T-RED

Warrior
Joined
4 Nov 2001
Messages
264
Location
Stockholm
Re: Battler of The Titans!

Fast grejen är ju att ingen skulle bygga en A.I om det första den gör när den vuxit sig tillräckligt stark är att fly och dessutom skulle delar av Neotech världen förstöras eftersom hacker organisationer inriktade på att befria A.I.er inte längre har nått att göra.
Alltså A.I.n behöver hjälp utifrån i alla fall spelmässigt.
// T-RED
http://www.rutek.net/~neotech
 

Krille

Super Moderator
Joined
7 Feb 2000
Messages
29,540
Location
Mölndal, Sverige
"Varifrån kommer iden att ett program måste vara skrivet i ett platformsoberoende språk för att vara portabelt? MS Office är inte skrivet i ett platformsoberoende språk, men det går likt förbenat att installera på varenda pc som har microsoft-os av rätt nivå."

Det beror på att operativsystemen ifråga är skapade för att vara så bakåtkompatibla som möjligt. Jag har fortfarande inte sett någon installera MS Office för PC på en Mac eller en Cray. Det är det som menas med "plattformsoberoende", inte att det ska gå att köra på alla PC med MS Windows-OS.

"Med källkoden blir MS Office än mer portabelt, eftersom kompilatorer för de flesta språk finns på de flesta datorer."

Kruxet är att MS Office bygger en hel del på MSC, vilket gör att en plattform som dessa inte finns på (dvs alla som inte heter MS Windows) inte kan köra dessa utan att motsvarande klasser finns till den plattformen.
 

Kimon

Swordsman
Joined
21 Nov 2001
Messages
679
Location
Uppsala
Du skrev i ditt tidigare inlägg att "...är den inte plattformsoberoende så kan den inte flytta på sig alls...".
Detta är helt enkelt inte sant.

Det beror på att operativsystemen ifråga är skapade för att vara så bakåtkompatibla som möjligt.

Och det kommer de inte att vara i framtiden eller?

Jag har fortfarande inte sett någon installera MS Office för PC på en Mac eller en Cray.

Nej... naturligtvis inte utan omkompilering från källkoden. Det är ju vare sig samma os, eller hårdvaruarkitektur.
Jag kan inte tänka mig att MS programmerarna börjar om från "scratch" och skriver ett nytt office när de skall lansera det för Mac. De återanvänder nog en hel del kod, ändrar lite för att dra fördel av nyare interface, för att sedan kompilera ihop en version av office för mac.

Det är det som menas med "plattformsoberoende", inte att det ska gå att köra på alla PC med MS Windows-OS.

Jag bestrider inte din definition av platformsoberoende, jag bestrider ditt påstående att ett program inte kan köras på någon annan maskin om det inte är skrivet i ett platformsoberoende språk. Målmaskinen dit A/I programmet kopierar sig kan ju vara av samma typ. Och då kommer det att fungera.

Kruxet är att MS Office bygger en hel del på MSC, vilket gör att en plattform som dessa inte finns på (dvs alla som inte heter MS Windows) inte kan köra dessa utan att motsvarande klasser finns till den plattformen.

Jomenvisst... man måste ha tillgång till libs och annat otäckt för att det skall gå att länka.
 

Krille

Super Moderator
Joined
7 Feb 2000
Messages
29,540
Location
Mölndal, Sverige
"Och det kommer de inte att vara i framtiden eller?"

Det beror helt på om företagen som tillverkar operativsystemen ser en vinst i att de ska vara det.

"Jag bestrider inte din definition av platformsoberoende, jag bestrider ditt påstående att ett program inte kan köras på någon annan maskin om det inte är skrivet i ett platformsoberoende språk."

Om det inte är skrivet i ett plattformsoberoende språk så är det per definition skrivet i ett plattformsberoende språk. Är språket plattformsberoende så kan ett program skrivet i det per definition inte köras på en annan plattform.

Det är möjligt att det kan portas till en annan plattform och kompileras om där, men det ser jag sannerligen inte som "plattformsoberoende". Det ser jag som multipla plattformsberoende implementationer av samma kod.

"Målmaskinen dit A/I programmet kopierar sig kan ju vara av samma typ. Och då kommer det att fungera."

Förutsatt att grundprogrammet tillåter det. Vi har redan sett hur MS har byggt in en hårdvarulåsning i sitt XP, som gör att om man bygger om sin PC för mycket genom att byta ut diverse delar, så slutar XP att fungera och det måste låsas upp igen. Nu vet jag att detta har knäckts (eller snarare, vissa bakdörrsnycklar har läckt ut), men poängen är att XP har byggts så att det är plattformsberoende. Det är inte bara att kopiera XPs filer till en annan dator och tro att det ska funka.

Jag tror inte att det är särskilt svårt att bygga en motsvarande nyckellåsning till en AI. Jag skulle till och med kunna tänka mig att det finns femtielva miljoner olika fria och kommersiella sådana klasser färdiga till vilket språk som helst som används för att skapa AIn i.
 

ripperdoc

Myrmidon
Joined
17 May 2000
Messages
5,399
Location
Tokyo
Som tur vad ser vi att det finns en mängs olika syner på vad en AI kan vara. Det är iaf mycket bra, inte sant? :gremcool:

Men, om vi utgår från Neotechs värld och inte nutiden.
Så länge vi inte pratar om en alternativ version av Neotech så står det beskrivet på ett flertal ställen att AI:er har rymt. Och då antyds det att dessa AI:er är rejält avancerade och dyra saker. Om de har rymt kan det bevisligen inte vara så fruktansvärt lätt att kapsla in dem. Det är förutsättningarna.

Sedan håller jag med dig att som det ser ut i dag borde det inte vara så svårt att kapsla in en AI. Din argumentation verkar helt vettig för mig, bortsett från en sak, som flera andra också påpekade i den här tråden. Den mänskliga faktorn. Buggar finns i praktiken i alla system som bygger på ettor och nollor. Då använder jag en tämligen bred definition av buggar. En hel del företag har ju _dessutom_ visat prov på konservatism och ibland ren och skär dumhet när det gäller säkerhetstänkandet. Vi talar inte bara om MS-produkter. Alla system (även de militära) har buggar. En klassisk bugg är ju den som orsakade att Ariane 5:s styrsystem gick åt pipan och säkerhetssystemen sprängde den. Buggen var något så enkelt som ett konverteringsfel mellan två tal, och detta skedde trots att miljoner dollar spenderats på att säkra systemen.

Så även om företaget i fråga ser till att hindra alla andra möjligheter så kan man inte helt hindra buggar. Att ta bort hälften av alla buggar är billigt. Att ta bort 90% är dyrt. 95% dubbelt så dyrt, etc. (Givetvis är siffrorna helt tagna ur luften). Sannolikheten att systemet är buggfritt kommer att gå mott 1 (i.e. 100%), men knappast nå det gränsvärdet, speciellt inte om vi talar som såpass avancerade system som operativsystem för stordatorer. Egentligen är det ju en fråga om tid, men i förlängningen är det förstås samma sak som pengar.

Att sedan AI:er är specialister på att finna buggar gör inte saken lättare. Jag har läst om (men kommer tyvärr inte ihåg källan) om en forskare som i datorn simulerade en undervattensmiljö lik den som rådde på jorden för ett par miljarder år sedan. Sedan lät han skapa neurala nätverk som simulerade liv. Det utvecklades med förvånansvärd likhet till vår verkliga historia. Varelser som använde passgång (ex. krabbor) och varelser som ålade sig fram (ex. ålar) är exempel på några. Men det är inte poängen. De varelser som vann evolutionskapplöpningen var en som kunde röra sig oändligt snabbt i systemet, eftersom den genetiskt sett utvecklat en metod att finna en bugg i systemet (råkade vara något i stil med "Divide by zero"). Forskaren körde samma simulation på andra system, och fann att hans lilla simulerade värld var en jäkel på att upptäcka buggar.

Förvisso kan man även bygga buggsäkra system m.h.a. lite logik och bevisföring, men det kräver å andra sidan att de program som sköter bevisningen i sin tur är buggfria, and so on.

I slutändan försöker jag bara säga att det är en fråga om pengar, och att oavsett hur datorsystemen ser ut i Neotech så kommer det att finnas företag som lägger lite pengar på att vakta sina AI:er precis som det finns dem som lägger mycket pengar. Givetvis finns det även en mängd olika grader av komplexitet på själva AI:erna, och företagen som skaffar dyra AI:er lär också lägga mycket pengar på att hålla dem inkapslade. Förmodligen har företagen i 99% av fallen också lyckats hålla AI:erna instängda, men som sagts förut, några har flytt.

Du säger att det krävs pengar för att AI:n skall komma ut. Det stämmer inte. Hur mycket pengar tror du det läggs av dagens företag på att förhindra buggar, jämfört med mängden pengar som läggs av andra för att finna dessa buggar? De bästa bugghittarna är hackers (förlåt en vid definition av ordet), och de gör det gratis dessutom! Så det krävs inte mycket pengar för att frigöra en AI. Däremot kunnande, nätverkande och tur.

Sist, men inte minst. Liknelsen mellan operativsystem och våra naturlagar är snygg, men i samma liknelser tycker jag att det rymmer argument för att AI:er kan manipulera sin verklighet. För just det gör människan för fulla muggar. Förvisso bryter vi itne många naturlagar, men vi lyckas ändå banne mig få de att göra som vi vill. På samma sätt kan en AI använda just systemet för att uppnå vad han vill. Jag tycker din egen argumentation gör det här än mer uppenbart.

Vår verklighet är hårdkodad med bland annat gravitationen, som säger att allting skall dras mot masscentrum tills det stöter på en tillräckligt hållbar yta för att hindra objektet. Likväl flyger vi omkring med flygplan och ut i rymden som bara den. För att en AI skall frigöra sig krävs bara samma uppfinningsrikedom som en gång gav upphov till flygplanen, och alla andra stora fusk mot fysikens lagar (Harrier-plan och humlor skall inte heller kunna flyga, likväl gör de det).

/RipperDoc - en mycket bra och trevlig diskussion, IMHO
 

Vindhand

Myrmidon
Joined
17 May 2000
Messages
5,253
Location
Stockholm
Allt detta verkar basera sig på att systemen är konstruerade utan fel och att de handhavs helt rätt. Det vore ju sannerligen en stor framgång för tekniken. :gremsmirk:
 

Kimon

Swordsman
Joined
21 Nov 2001
Messages
679
Location
Uppsala
Om det inte är skrivet i ett plattformsoberoende språk så är det per definition skrivet i ett plattformsberoende språk. Är språket plattformsberoende så kan ett program skrivet i det per definition inte köras på en annan plattform.

Sant. Men på vilket sätt hindrar det A/I att förflytta sig till en annan fysisk maskin, men med samma processorarkitektur och operativsystem? Den binära filen är exekverbar på den andra maskinen om dessa två villkor uppfylls.

Som sagt. Jag delar din definition av platformsoberoende språk och de konsekvenser valet av språk får för möjligheterna att exekvera på en annan arkitektur. Jag är däremot inte beredd att gå med på att bara för att ett program inte är skrivet i ett platformsoberoende språk, så är det omöjligt att köra det på en annan maskin.

Vi har redan sett hur MS har byggt in en hårdvarulåsning i sitt XP, som gör att om man bygger om sin PC för mycket genom att byta ut diverse delar, så slutar XP att fungera och det måste låsas upp igen.

Parentes: Att folk fortfarande frivilligt använder M$ os är för mig en gåta.

Nu vet jag att detta har knäckts (eller snarare, vissa bakdörrsnycklar har läckt ut), men poängen är att XP har byggts så att det är plattformsberoende.

Allt Microsoft någonsin gjort har varit platformsberoende, det är ingen nyhet med XP. Som du så förnämligt påpekade så går det inte att installera XP på en Cray eftersom binärfilerna inte är kompatibla med den hårdvaruarkitekturen (läs processorn).
Nu har de dessutom lyckats göra XP maskinberoende.

Poängen är att M$ nu har ett ännu hårdare grepp om sina kunders kulor... det är poängen med att låsa upp XP så som de gjort.

Äntligen........
 

Krille

Super Moderator
Joined
7 Feb 2000
Messages
29,540
Location
Mölndal, Sverige
"En klassisk bugg är ju den som orsakade att Ariane 5:s styrsystem gick åt pipan och säkerhetssystemen sprängde den. Buggen var något så enkelt som ett konverteringsfel mellan två tal, och detta skedde trots att miljoner dollar spenderats på att säkra systemen."

Petimeter: det var inte ett konverteringsfel, utan ett simulationsprogram som fortfarande körde i styrsystemet, så att när raketen lyfte så var det ett program som var övertygat om att raketen skulle upp och ett program som var övertygat om att raketen skulle stå kvar på plattan. Det senare fick överläge efter ungefär en minut och kurskorrigerade så att den skulle stå kvar på plattan. Det förra programmet upptäckte ett brutalt fel med kursen och självdestruerade raketen innan den skulle göra skada.

Däremot har konverteringsfel lett till andra intressanta buggar i rymdflygets historia. Mars Global Explorer kraschade rätt ner i ytan vid den atmosfäriska inbromsningen på grund av att en programutvecklare räknade i meter istället för fot. En av Mariner-sonderna (vill minnas att det var 9) kom aldrig till Venus. Den damp ner i Atlanten på grund av ett malplacerat minustecken. En av F-16-prototyperna hade en intressant bugg i navigationssystemet: körde man över ekvatorn så fick planet för sig att det var upp och ner, och vände helt sonika på sig.

"Att sedan AI:er är specialister på att finna buggar gör inte saken lättare. [snippeti] Men det är inte poängen. De varelser som vann evolutionskapplöpningen var en som kunde röra sig oändligt snabbt i systemet, eftersom den genetiskt sett utvecklat en metod att finna en bugg i systemet (råkade vara något i stil med "Divide by zero"). Forskaren körde samma simulation på andra system, och fann att hans lilla simulerade värld var en jäkel på att upptäcka buggar.

Förvisso kan man även bygga buggsäkra system m.h.a. lite logik och bevisföring, men det kräver å andra sidan att de program som sköter bevisningen i sin tur är buggfria, and so on."


Du förutsätter dock att all buggsäkring görs av en programmerare som avlusar programmen, och i så fall håller jag med dig. Den mänskliga faktorn leder till en hel del buggar.

Men måste vi verkligen stå ut med den mänskliga faktorn? Det är nämligen just experiment i stil med ovanstående som gör mig tämligen övertygad om att framtida operativsystem kommer att bli buggfria.

Genetisk programmering är inte enbart en lekstuga för kognitionsvetare, utan håller på att utvecklas till ett praktiskt användbart programmeringsverktyg för konventionella program. Idén är just att ta bort felfixandet genom att felfixandet sköter sig självt. Programmeraren ska istället ta hand om kluriga lösningsformuleringar.

Det innebär alltså att i undervattenssimuleringen så markeras oändlig förflyttning som ett orimligt resultat, vari simulationen själv skriver om sig för att ta bort det orimliga resultatets uppkomst. Således, ingen buggsäkring behövs. Så fort ett problem uppstår så börjar programmet själv att åtgärda problemet.

Som du säger, AIer är jättebra på att hitta fel, och därför är jag övertygad om att AI-tekniker och genetisk programmering kommer in i programmeringen som standardmetod inom inte allt för avlägsen framtid, just för att det eliminerar en massa problem med felsökning och felkorrigering.

"Vår verklighet är hårdkodad med bland annat gravitationen, som säger att allting skall dras mot masscentrum tills det stöter på en tillräckligt hållbar yta för att hindra objektet. Likväl flyger vi omkring med flygplan och ut i rymden som bara den."

...fast flygandet sker ju inte i strid med gravitationslagen och man får jobba en hel del för att gå runt den. Vi har ju inte uppfunnit något som gör att gravitationslagen inte gäller, utan bara kommit på olika finurliga sätt att skapa en motsatt kraft som lyfter up grunkan ifråga.
 

Krille

Super Moderator
Joined
7 Feb 2000
Messages
29,540
Location
Mölndal, Sverige
"Allt detta verkar basera sig på att systemen är konstruerade utan fel och att de handhavs helt rätt. Det vore ju sannerligen en stor framgång för tekniken."

Tja, jag tror faktiskt inte att det är så långt kvar tills dess. Genetisk programmering är skoj!
 

Scream112

Veteran
Joined
3 Apr 2002
Messages
67
Location
Gbg
Grattis Krille!! Ditt första inlägg i denna tråd där du höll dig till mindre än 30 rader så man kände att "Ja! detta orkar jag läsa!" :gremsmile:
 

Krille

Super Moderator
Joined
7 Feb 2000
Messages
29,540
Location
Mölndal, Sverige
Grattis Krille!! Ditt första inlägg i denna tråd där du höll dig till mindre än 30 rader så man kände att "Ja! detta orkar jag läsa!"

Hur sjutton har du orkat lära dig att spela rollspel? :gremwink:
 

Vindhand

Myrmidon
Joined
17 May 2000
Messages
5,253
Location
Stockholm
Tja, jag tror faktiskt inte att det är så långt kvar tills dess. Genetisk programmering är skoj!

...och väldigt beroende av de krav man ställer på den. Genetisk programmering utvecklas med hjälp av ett kvalitetsmått. Det kvalitetsmåttet kan vara bristfälligt. Säkerhet är ett typiskt exempel på ett område där kvaliteten på systemet är svår att testa. Håller det är det bra. Håller det inte är det dåligt, men håller det inte är det för sent :gremsmile:

Att utveckla ett komplext system till perfektion (som du förutsätter att systemet är) med genetisk programmering är med all sannolikhet lika svårt som att utveckla människor till perfektion. Vi har haft många millioner på oss att bygga säkerhetssystem för våra kroppar men vi har fortfarande besvär av förkylningar :gremtongue:
 
Top