1 00:00:21,734 --> 00:00:24,784 La caduta dalla torre lascia Ethic e Hedge 2 00:00:24,784 --> 00:00:29,024 in balia dei flutti di un fiume di pura energia. 3 00:00:30,944 --> 00:00:36,881 Un torrente che scorre dalla Bradbarrier fino a Huxenborg, 4 00:00:36,881 --> 00:00:39,981 dove un'intera città di fabbriche 5 00:00:39,981 --> 00:00:43,061 costruisce robot e ospita il Nodo della Memoria, 6 00:00:43,061 --> 00:00:47,433 l'ultimo dei tre potenti artefatti che Ethic deve recuperare. 7 00:00:47,433 --> 00:00:49,943 Dopo una lunga giornata, e una notte ancor più lunga, 8 00:00:49,943 --> 00:00:53,663 si ritrovano in un canyon di mattoni e acciaio. 9 00:00:58,918 --> 00:01:01,573 Ma proprio quando stanno per giungere alla fine, 10 00:01:01,573 --> 00:01:03,323 una fune li agguanta. 11 00:01:07,023 --> 00:01:11,137 La loro salvatrice, Lemma, li stava aspettando. 12 00:01:11,137 --> 00:01:15,089 Quando Ethic ha rivendicato il Nodo della Creazione dalla torre, 13 00:01:15,089 --> 00:01:18,989 tutte le radio del territorio sono tornate in funzione. 14 00:01:18,989 --> 00:01:23,765 Adila, la leader della resistenza, ha subito contattato i suoi alleati, 15 00:01:23,765 --> 00:01:26,375 tra cui nientemeno che Lemma, 16 00:01:26,375 --> 00:01:32,268 una scienziata geniale, al lavoro da Huxenbourg per fermare le macchine. 17 00:01:32,268 --> 00:01:36,268 Purtroppo, le radio hanno allertato anche i robot. 18 00:01:36,268 --> 00:01:38,528 Questi hanno preso misure difensive 19 00:01:38,528 --> 00:01:43,356 per proteggere l'ultimo artefatto, al sicuro nel cuore della città. 20 00:01:43,356 --> 00:01:48,511 C'è solo un modo per arrivarci: la sfida dei sentieri che si biforcano. 21 00:01:48,511 --> 00:01:54,897 Una rete mortale di nastri trasportatori luminosi che si dirama sotto Huxenborg. 22 00:01:54,897 --> 00:01:56,717 Partendo dalla posizione attuale, 23 00:01:56,717 --> 00:02:01,112 ogni strada arriva fino a un certo punto, poi diventa un bivio. 24 00:02:01,112 --> 00:02:04,542 Ogni ramo fa la stessa cosa, ancora e ancora. 25 00:02:04,542 --> 00:02:06,942 Ci sono migliaia di ramificazioni. 26 00:02:06,942 --> 00:02:12,884 Una sola porta all'artefatto; tutte le altre, alla distruzione. 27 00:02:12,884 --> 00:02:17,503 Per fortuna, il Nodo della Creazione ha conferito a Hedge uno strano potere: 28 00:02:17,503 --> 00:02:21,223 può replicarsi in versioni leggermente più piccole. 29 00:02:21,223 --> 00:02:26,433 Ogni versione può fare solo due cose: rispedire informazioni al suo genitore, 30 00:02:26,433 --> 00:02:30,173 e produrre ulteriori repliche leggermente più piccole, 31 00:02:30,173 --> 00:02:33,863 che possono fare le stesse due cose, così come la loro prole, 32 00:02:33,863 --> 00:02:36,803 finché ce n'è bisogno. 33 00:02:36,803 --> 00:02:41,854 Una pattuglia è alle loro tracce, quindi Ethic ha poco tempo. 34 00:02:41,854 --> 00:02:47,057 Che istruzioni dovrebbe dare a Hedge per fargli trovare l'unica strada sicura? 35 00:02:47,057 --> 00:02:53,835 Metti il video in pausa e pensaci. 36 00:02:53,835 --> 00:02:54,825 Indizio tra 3 37 00:02:54,825 --> 00:02:56,025 Indizio tra 2 38 00:02:56,025 --> 00:02:56,985 Indizio tra 1 39 00:02:57,825 --> 00:03:02,987 I programmatori hanno un metodo elegante nel loro arsenale, chiamato ricorsione. 40 00:03:02,987 --> 00:03:08,328 La ricorsione si ha quando una serie di istruzioni si rivolge a se stessa. 41 00:03:08,328 --> 00:03:11,288 È come usare una parola nella propria definizione, 42 00:03:11,288 --> 00:03:15,848 a parte quando non è consono, questo è incredibilmente efficace. 43 00:03:15,848 --> 00:03:20,360 La ricorsione implica una ripetizione, ma in modo diverso dai loop. 44 00:03:20,360 --> 00:03:24,360 Laddove un loop prende un'azione e la ripete più e più volte, 45 00:03:24,360 --> 00:03:28,662 la ricorsione inizia un'azione e, prima che finisca, la usa ancora, 46 00:03:28,662 --> 00:03:32,662 e prima che finisca la usa ancora, e così via. 47 00:03:32,662 --> 00:03:36,662 Lo ripete finché lo stadio finale non viene raggiunto. 48 00:03:36,662 --> 00:03:40,824 Quindi ritrasmette l'informazione strato dopo strato, 49 00:03:40,824 --> 00:03:44,444 fino a tornare al primo e interrompere il ciclo. 50 00:03:44,444 --> 00:03:49,106 La ricorsione è perfetta per problemi che presentano autosimilarità, 51 00:03:49,106 --> 00:03:51,966 dove tutte le parti somigliano a un intero più grande. 52 00:03:51,966 --> 00:03:57,970 Come, ad esempio, un sistema di difesa mortale pensato per sterminare chiunque 53 00:03:57,970 --> 00:03:59,860 osi metterci piede. 54 00:03:59,860 --> 00:04:01,920 Metti il video in pausa e pensaci. 55 00:04:01,920 --> 00:04:02,713 Soluzione tra 3 56 00:04:02,713 --> 00:04:03,633 Soluzione tra 2 57 00:04:03,633 --> 00:04:04,713 Soluzione tra 1 58 00:04:04,993 --> 00:04:08,034 Il rompicapo di Ethic sembra tentacolare in apparenza, 59 00:04:08,034 --> 00:04:12,400 ma c'è una soluzione semplicissima se si usa la ricorsione. 60 00:04:12,400 --> 00:04:17,150 Per trovarla, guardiamo prima la versione più semplice di questo puzzle: 61 00:04:17,150 --> 00:04:20,420 e se nel labirinto ci fossero solo due percorsi? 62 00:04:20,420 --> 00:04:25,038 Se Hedge genera due cloni, quello che va dalla parte sbagliata sarà distrutto. 63 00:04:25,038 --> 00:04:27,757 Quindi l'altro, che raggiungerà l'artefatto, 64 00:04:27,757 --> 00:04:32,457 potrà comunicare la strada che ha preso, e quale che sia 65 00:04:32,457 --> 00:04:34,858 sarà la risposta che Hedge riceverà. 66 00:04:34,858 --> 00:04:38,438 Questo si chiama "caso base" di una ricorsione. 67 00:04:38,438 --> 00:04:41,778 Ora, supponiamo che il labirinto si biforchi due volte dall'inizio, 68 00:04:41,778 --> 00:04:44,760 e che a ogni bivio le copie di Hedge, 69 00:04:44,760 --> 00:04:47,620 pensiamole come rami, T1 e T2, 70 00:04:47,620 --> 00:04:52,627 generino altre copie, cioè le foglie, da L1 a L4. 71 00:04:52,627 --> 00:04:55,747 Tre copie L verranno distrutte. 72 00:04:55,747 --> 00:04:59,863 Quella che raggiunge l'artefatto comunicherà la risposta corretta, 73 00:04:59,863 --> 00:05:01,843 ma solo alla copia che l'ha generata. 74 00:05:01,843 --> 00:05:05,723 Quindi se le copie T1 o T2 stanno aspettando al bivio 75 00:05:05,723 --> 00:05:07,713 e ricevono una risposta radio, 76 00:05:07,713 --> 00:05:11,273 è quella la strada giusta da seguire per l'artefatto, da dove si trovano. 77 00:05:11,273 --> 00:05:14,563 Per segnalare a Hedge la risposta giusta dalla sua prospettiva, 78 00:05:14,563 --> 00:05:17,003 il ramo dovrebbe dire da che parte è andato, 79 00:05:17,003 --> 00:05:20,603 e poi la strada che gli è stata comunicata via radio. 80 00:05:20,603 --> 00:05:25,393 Lo stesso meccanismo funzionerà al di là di quante ramificazioni ci siano. 81 00:05:25,393 --> 00:05:28,353 Qualunque risposta un clone riceva per radio, 82 00:05:28,353 --> 00:05:31,653 sarà la strada per la sala controllo dalla sua posizione, 83 00:05:31,653 --> 00:05:34,003 e se a questa aggiunge la strada imboccata, 84 00:05:34,003 --> 00:05:37,223 può dire al suo genitore come arrivare fino a lì. 85 00:05:37,223 --> 00:05:41,223 Possiamo ricapitolare le istruzioni nell'azione di "Ricognizione", 86 00:05:41,223 --> 00:05:44,353 che tutti i cloni di Hedge eseguiranno. 87 00:05:44,353 --> 00:05:46,643 1. Se hai raggiunto l'artefatto, 88 00:05:46,643 --> 00:05:50,737 comunica al tuo genitore se hai svoltato a destra o sinistra. 89 00:05:50,737 --> 00:05:54,567 2. Quando arrivi a un bivio, scendi dal nastro trasportatore 90 00:05:54,567 --> 00:05:58,547 e manda nuovi cloni a destra e a sinistra. 91 00:05:58,547 --> 00:06:00,827 Fai fare la ricognizione a entrambi. 92 00:06:00,827 --> 00:06:02,867 Qui entra in gioco la ricorsione, 93 00:06:02,867 --> 00:06:07,961 ciò potrebbe ripetersi molte volte prima che scatti l'ultima istruzione: 94 00:06:07,961 --> 00:06:12,948 3. Se ricevi una comunicazione radio, di' al tuo genitore 95 00:06:12,948 --> 00:06:16,577 se sei arrivato alla tua posizione svoltando a destra o sinistra, 96 00:06:16,577 --> 00:06:19,427 e poi ripeti ogni comunicazione ricevuta. 97 00:06:19,427 --> 00:06:23,423 La ricognizione è un esempio di ciò che i programmatori chiamano funzione, 98 00:06:23,423 --> 00:06:26,113 subroutine o procedura. 99 00:06:26,113 --> 00:06:29,503 Comunque la si chiami, l'idea è la stessa: 100 00:06:29,503 --> 00:06:34,297 una serie di istruzioni, etichettata così che possa essere riutilizzata, 101 00:06:34,297 --> 00:06:36,607 potenzialmente anche da se stessa. 102 00:06:36,607 --> 00:06:39,583 E nel nostro caso funzionerà alla grande, 103 00:06:39,583 --> 00:06:44,813 un'intera rete di strade tracciata con tre sole istruzioni. 104 00:06:46,257 --> 00:06:47,887 Ecco cosa succede. 105 00:07:09,760 --> 00:07:15,537 Prima che la pattuglia svolti l'angolo, Ethic e Lemma si camuffano alla meglio. 106 00:07:15,537 --> 00:07:19,657 Provano a distrarre i robot per far guadagnare tempo a Hedge. 107 00:07:31,473 --> 00:07:36,251 Alla fine, la radio di Hedge torna in vita dando una serie di indicazioni. 108 00:07:36,251 --> 00:07:40,101 I tre si buttano sul nastro trasportatore e scappano a perdifiato, 109 00:07:40,101 --> 00:07:43,821 con uno squadrone di droni armati alle calcagna.